]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* Documentation/user/page.itely (Page formatting):
[lilypond.git] / ChangeLog
1 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
2
3         * Documentation/user/page.itely (Page formatting): 
4         document auto-first-page-number
5
6         * lily/page-breaking.cc (find_chunks_and_breaks): 
7         * lily/paper-score.cc (calc_breaking): Follow changes to the
8         Constrained_breaking interface
9
10         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
11         here backwards, as an optimisation
12         (initialize): new function; move most of the code in resize () here
13         (combine_demerits): cache ragged_right_
14         (Constrained_breaking): constructor now takes the Paper_score
15
16 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
17         
18         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
19         avoid parser lookahead for 0-ary functions.
20
21         * lily/translator.cc: Extract event classes from
22         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
23
24 2006-10-02  Heikki Junes  <hjunes@gmail.com>
25
26         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
27         KBabel fix tool.
28
29 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
30
31         * scm/layout-page-layout.scm (page-breaking-wrapper): new
32         function. Call the page breaking function selected in the
33         `page-breaking' \paper variable, then the post processing function
34         chosen using the `page-post-process' \paper variable.
35         (line-height): new function. Return the height of a system.
36         (line-minimum-position-on-page): new function. Return the position
37         of a system on page (using the previous line position), only
38         considering between system padding.
39         (stretchable-line?): new function. Says whether a line can be
40         stretched (ie. is not a title nor a single staff system).
41         (page-maximum-space-left): new function. Computes space left on a
42         page, when all systems are separated by their padding.
43
44         * lily/page-breaking.cc (breaking::make_pages): Move page post
45         processing function call to page breaking wrapper (common to all
46         page breakers).
47
48         * lily/paper-book.cc (book::pages): call the page breaking
49         wrapper, instead of the page breaker directly
50
51         * ly/paper-defaults.ly: Add \paper variables for page breaking
52         wrapper and page post processing function. Make
53         `write-page-layout' value depend on the 'dump-tweaks option. Add a
54         `system-maximum-stretch-procedure' variable for holding a function
55         computing the maximum stretch a system allows.
56
57         * scm/layout-page-dump.scm (write-page-breaks): computes the
58         stretch to apply to systems on a page to minimize left
59         space. Dump this stretch length.
60
61         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
62         the system-stretch property of the tweak data to stretch the
63         system.
64         (includePageLayoutFile): Void function which includes the
65         generated page-layout file if it exists and if the page layout
66         dumping is not asked.
67         (scoreTweak): if the score tweak named by the argument exists,
68         return it.
69
70 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
71
72         * lily/page-spacing.cc (compress_lines, uncompress_solution):
73         handle correctly the case where there are multiple \noPageBreaks
74         in a row.
75
76 2006-09-30  Laura Conrad <lconrad@laymusic.org>
77
78         * abc2ly.py adds segno (S) and Coda (O) to articulations.
79         
80         * abc2ly.py fix so that entering " -- " will translate to a -- in
81         the lilypond instead of a " - - "
82         
83 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
84
85         * lily/align-interface.cc: fix typo
86
87         * lily/dynamic-text-spanner.cc (print): Add a special case for
88         trill spanner right sides. 
89
90         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
91
92         * lily/align-interface.cc (get_extents_aligned_translates): add
93         support for padding variable.
94
95         * lily/break-align-interface.cc (self_align_callback): oops: use
96         loop variable in guard.
97
98         * input/regression/repeat-percent-grace.ly: new file.
99
100         * lily/percent-repeat-engraver.cc (start_translation_timestep):
101         remember first currentCommandColumn of a grace run. Fixes issue 70.
102
103         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
104         move class definition to CC file.
105
106         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
107
108         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
109         measure-long  repeats.
110
111         * flower/include/international.hh: include stdarg.h
112
113 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
114
115         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
116         put_systems_on_pages to return an empty result, we need to assign
117         demerits properly in that case.
118         (put_systems_on_pages): Make the number of pages depend on the
119         evenness of page_number. Add auto-first-page-number.
120         (calc_subproblem): ensure that the page-number is even for the
121         left-hand page. Warn if the first page-turn doesn't fit onto the
122         first (right-hand) page.
123
124         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
125         (min_page_count): make this publicly accessible
126         (min_page_count): fix a bug when there are forced page breaks that
127         was introduced when I made this loop run backwards
128         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
129         replace space_systems_on_min_pages with these two. The logic in
130         space_systems_on_min_pages was getting too convoluted and is better
131         contained in page-turn-page-breaking.
132
133         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
134         conditional
135         (breakable_column): typo
136
137         * lily/source-file.cc (get_line): fix off-by-one error
138         and clean up some of the logic
139
140 >>>>>>> 1.5342
141 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
142
143         * lily/page-breaking.cc (make_pages): honour the first-page-number
144         property
145
146 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
147
148         * VERSION (PACKAGE_NAME): bump version.
149
150 2006-09-26  Pal Benko  <benko.pal@gmail.com>
151
152         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
153         (the latter is the same as petrucci-f which is kept for compatibility)
154
155 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
156         
157         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
158
159 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
160
161         * lily/global-context.cc (run_iterator_on_me): break out of loop
162         if moment doesn't increase.
163
164         * scm/define-grob-properties.scm (all-user-grob-properties): add
165         forced property.
166
167         * lily/accidental.cc (after_line_breaking): read forced property.
168
169         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
170         property.
171
172         * input/regression/accidental-forced-tie.ly:  new file.
173
174 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
175
176         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
177
178         * lily/figured-bass-engraver.cc: only listen to rest events if
179         ignoreFiguredBassRest is not set.
180
181         * scm/define-context-properties.scm
182         (all-user-translation-properties): add ignoreFiguredBassRest property
183
184 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
185
186         * lily/paper-book.cc (get_system_specs):
187         (set_system_penalty): fix breakbefore.
188         We used to set a penalty on the system after the break, now we
189         set a permission on the system before the break
190
191         * lily/grob-property.cc: add scm debugging hooks into
192         property modification
193
194         * lily/context-property.cc:
195         * lily/engraver.cc:
196         rename make_foo_from_properties to internal_make_foo and
197         move it from context-property.cc to a member function of
198         Engraver.
199         
200         * lily/include/lily-guile-macros.hh:
201         overload ly_symbol2scm macro so that there is no more need
202         to use internal_foo
203
204         * lily/volta-repeat-iterator.cc:
205         * lily/tweak-engraver.cc:
206         * lily/tuplet-bracket.cc:
207         * lily/span-bar-engraver.cc:
208         * lily/script-engraver.cc:
209         * lily/prob-scheme.cc:
210         * lily/pointer-group-interface.cc:
211         * lily/parser.yy:
212         * lily/grob-scheme.cc:
213         * lily/grob-property.cc:
214         * lily/context.cc:
215         * lily/context-property.cc:
216         * lily/break-substitution.cc:
217         * lily/break-align-engraver.cc:
218         * lily/axis-group-interface.cc:
219         * lily/align-interface.cc:
220         remove calls to internal_FOO
221
222         * lily/system-start-delimiter-engraver.cc:
223         * lily/parenthesis-engraver.cc:
224         * lily/accidental-engraver.cc:
225         remove calls to make_foo_from_properties
226
227 2006-09-23  Graham Percival  <gpermus@gmail.com>
228
229         * Documentation/user/programming-iterfaces.itely: fix
230         def-music-function -> define-music... leftover.
231
232 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
233
234         * lily/page-spacing.cc (min_page_count): by running the loop
235         backwards, we can calculate ragged_last properly.
236
237 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
238
239         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
240         printfirst-page-number -> print-first-page-number
241
242         * python/convertrules.py: corresponding rule.
243
244         * Documentation/user/page.itely (Page formatting): Document the
245         default values of all page layout parameters. 
246
247 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
248
249         * lily/lexer.ll: remove limitation on music function arity. New
250         mode extratoken, which inserts extra EXPECT_* tokens after
251         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
252
253         * lily/parser.yy: Change grammar for music function accordingly.
254
255         * lily/include/lily-parser.hh: New method get_state, new member
256         hidden_state. Works around a problem when parser fetches
257         MUSIC_FUNCTION token but not the following EXPECT_* token.
258
259         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
260         remove try_music
261
262         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
263         references to Music; use ASSIGN_EVENT_ONCE everywhere
264
265         * lily/grob-info.cc: junk *music_cause
266
267         * lily/music.cc: copy eventified articulations to stream event
268
269         * lily/part-combine-iterator.cc: Cleanup using enums
270
271         * lily/translator-group.cc: Junk OldMusicEvent, and associated
272         methods
273
274         * lily/include/engraver.hh: Junk music.hh include
275
276         * lily/stream-event.cc: Changed constructors
277
278 2006-09-21  Graham Percival  <gpermus@gmail.com>
279
280         * Documentation/user/tweaks.itely (Fitting music onto fewer
281         pages): change settings to avoid warning messages.
282
283 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
284
285         * Documentation/user/tweaks.itely (Fitting music onto fewer
286         pages): Add between-system-space setting. 
287
288 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
289
290         * lily/accidental-placement.cc (calc_positioning_done): don't
291         trigger Y-extent calculation too early. Use pure_height instead.
292
293         * lily/scale.cc (LY_DEFINE): new file. 
294
295 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
296
297         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
298         that happen at the start of a score: having a zero-length
299         chunk was messing up min_system_count calculations.
300
301         * lily/source-file.cc (get_line): lower_bound, not
302         binary_search. Fixes problem where point-and-click would
303         always point to the first line.
304
305 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
306
307         * lily/accidental-placement.cc (calc_positioning_done): also put
308         stems into accidental support. 
309
310         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
311         event_ detected.
312
313         * scm/script.scm (default-script-alist): avoid-slur and
314         slur-padding for portato script.
315
316         * lily/stem-tremolo.cc (translated_stencil): new function. 
317         (height): use new function. Fixes tremolos on whole notes.
318
319         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
320         slur found.
321
322 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
323
324         * scripts/abc2ly.py (try_parse_comment): idem.
325
326         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
327         bar_string iso. string.find()
328
329         * lily/*.cc: idem.
330
331         * lily/slur.cc (get_curve): always use scm_is_pair() looping
332         scheme lists.  
333
334 2006-09-18  Graham Percival  <gpermus@gmail.com>
335
336         * Documentation/user/basic-notation.itely: add bug
337         warning about ties and octavation/clef.
338
339 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
340
341         * VERSION (PACKAGE_NAME): release 2.9.18
342
343 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
344
345         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
346         figure out midi file names right here.
347         
348 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
349
350         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
351
352         * scm/backend-library.scm: option naming:  gs-font-load*s*
353
354         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
355         include-eps-fonts
356
357 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
358
359         * scm/define-music-types.scm (music-descriptions): remove
360         BreakEvent and fix {Page,Line}{Break,Turn}Event so
361         Music::to_event doesn't complain.
362
363         * lily/accidental-placement.cc (ape_compare):
364         * lily/semi-tie.cc (compare): 
365         * lily/note-column.cc (shift_compare): replace by XXX_less
366
367         * lily/tie-formatting-problem.cc (set_chord_outline): 
368         * lily/tie-column.cc (calc_positioning_done): 
369         * lily/system.cc (post_processing)
370         (get_paper_system): 
371         * lily/stem.cc (note_head_positions)
372         (calc_positioning_done): 
373         * lily/spanner.cc (do_break_processing)
374         (find_broken_piece): 
375         * lily/span-bar.cc (print): 
376         * lily/semi-tie-column.cc (calc_positioning_done): 
377         * lily/rest-collision.cc (calc_positioning_done): 
378         * lily/program-option.cc (get_help_string): 
379         * lily/note-collision.cc (get_clash_groups):
380         * lily/new-fingering-engraver.cc (position_scripts):
381         * lily/keyword.cc (Keyword_table):
382         * lily/hara-kiri-group-spanner.cc (request_suicide):
383         * lily/grob-pq-engraver.cc (stop_translation_timestep):
384         * lily/accidental-placement.cc (calc_positioning_done):
385         (stagger_apes):
386         * lily/beam.cc (get_beam_segments):
387         * lily/grob-array.cc (remove_duplicates):
388         use new vector_sort
389         
390         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
391         ragged-last-bottom = ##f (test the new page breaker)
392
393         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
394
395         * scm/define-context-properties.scm
396         (all-internal-translation-properties): remove properties that
397         were used to communicate page-turn stuff to the paper-column
398         engraver.
399
400         * lily/lily-guile.cc (robust_scm2string): new function
401
402         * lily/paper-column-engraver.cc: Clean up page turn stuff
403
404         * lily/page-turn-engraver.cc: Re-write the page turn logic here
405         instead of cluttering up paper-column-engraver.cc
406
407 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
408
409         * scm/layout-page-dump.scm (scm): export utility function names,
410         to allow user writing cutsom dumping functions.
411
412         * scm/layout-page-layout.scm: export utility function names to
413         enable custom page breaking function writing. Tabify.
414         (line-next-space): use ?-suffix only for predicates
415         (page-maximum-space-to-fill): new function. Return the space
416         between first and bottom system of a page, to give to
417         space-systems.
418         (space-systems): use a space-to-fill argument (for instance as
419         computed by page-maximum-space-to-fill) instead of computing
420         internaly this space with the page height. That way, the caller
421         can adjust the space to use.
422         (make-page-from-systems, walk-paths): compute space to fill before
423         calling space-systems.
424
425 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
426
427         * scm/script.scm (default-script-alist): set paddings for every
428         type here, increase for portato mark.
429
430         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
431         -dinclude-eps-fonts
432
433 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
434
435         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
436         use spanner::set-spacing-rods
437
438         * lily/note-column.cc: reformat.
439
440         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
441         step positioning for note/rest combinations.
442
443         * input/regression/rest-note-collision.ly: new file.
444
445         * scm/define-grobs.scm (all-grob-descriptions): add
446         springs-and-rods
447
448         * flower/include/std-vector.hh: switch off again.
449
450         * VERSION (PATCH_LEVEL): bump to 2.9.18
451
452         * flower/include/std-string.hh: idem.
453
454         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
455
456 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
457
458         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
459         PianoStaff. 
460
461 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
462
463         * Documentation/user/page.itely: update page breaking documentation
464
465 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
466
467         * lily/note-collision.cc (calc_positioning_done): only access
468         first head if available.
469
470         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
471
472         * scm/framework-ps.scm (output-preview-framework): use new name.
473
474         * lily/program-option.cc (internal_set_option): use new names.
475
476         * Documentation/user/SConscript (lilypond_book_flags): update -d
477         variable names.
478
479         * Documentation/user/lilypond-book.itely (Inserting LilyPond
480         output into other programs): new variable names.
481
482         * scm/lily.scm (define-scheme-options): uniformize var names.
483
484         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
485         tuplets_ is non-empty before popping.
486
487 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
488
489         * lily/spanner.cc (find_broken_piece): 
490         * lily/spacing-spanner.cc (get_columns): 
491         * lily/source-file.cc (get_line): 
492         * lily/simple-spacer.cc (get_column_description): 
493         * lily/keyword.cc (lookup): 
494         use the new binary search.
495
496         * flower/include/std-vector.hh: replace binary_search with
497         a more STL-like version
498
499 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
500
501         * lily/tie-performer.cc: remove unused last_event_ property.
502         (class Tie_performer): add now_tied_heads_ property for
503         partially-tied heads.
504         (acknowledge_audio_element): when adding an Audio_note, put the
505         note in now_tied_heads_ if the audio note is partially tied.
506         (stop_translation_timestep): always include entries in
507         now_tied_heads_ in heads_to_tie_.
508
509         * lily/drum-note-performer.cc (process_music): look for tie-events
510         in the articulations; pass to Audio_note constructor.
511
512         * lily/note-performer.cc (process_music): look for tie-events in
513         the articulations; pass to Audio_note constructor.
514
515         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
516         constructor.
517
518         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
519         include initializer in constructor.
520
521 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
522
523         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
524         unless they are breakable. This fixes discrepancies between the forces
525         calculated here and the forces calculated in get_line_configuration.
526
527         * lily/grob.cc (pure_relative_y_coordinate): fix some
528         mis-estimation that was happening with piano staves.
529
530         * lily/constrained-breaking.cc (resize): don't choke if we get a
531         measure that won't fit on a line.
532         (combine_demerits): don't consider uniformity when ragged
533
534         * lily/page-spacing.cc (solve): why the f* were there two of these?
535         (calc_subproblem): properly handle the case where a system is taller
536         than the page.
537
538         * lily/system.cc (get_paper_system): ensure that all the permissions
539         and penalties are passed to the paper systems.
540
541         * lily/page-breaking.cc (create_system_list): support system-count.
542
543         * scm/define-grobs.scm (pure-print-callbacks): add
544         ly:script-interface::print
545
546         * lily/page-spacing.cc (min_page_count): fix calculation of min
547         pages if we are ragged and there are non-zero springs.
548
549         * scm/layout-page-layout.scm: if the pure-height estimates are under
550         the real height, allow space-systems to ignore padding if it is
551         needed in order to fit the systems on one page
552
553         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
554         ragged properties
555         (solve): fix performance problem. Make sure we always get at least
556         one solution
557
558         * lily/page-breaking.cc (make_pages): include write-page-breaks
559         and page-stencil
560
561         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
562
563         * scm/define-grobs.scm: add the new slur-callback
564         fix pure-relevant to not exclude grobs whose extent is already
565         calculated
566
567         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
568         page breaker
569
570         * lily/slur.cc (pure_height): new callback to estimate the height
571         of a slur
572
573 2006-09-02  Graham Percival  <gpermus@gmail.com>
574
575         * Documentation/user/invoking.itely: small update on
576         MacOS X notes; thanks Trevor!
577
578 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
579
580         * VERSION (MY_PATCH_LEVEL): release 2.9.17
581
582         * lily/lexer.ll: accept EOF in all states.
583
584         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
585
586         * lily/source-file.cc (Source_file): always 0-terminate character
587         array, to prevent Flex from barfing.
588
589         * lily/global-context.cc (get_output): robustness: don't crash if
590         no Score context found.
591
592         * lily/include/book.hh (class Book): idem.
593
594         * lily/include/context-def.hh (struct Context_def): idem.
595
596         * lily/include/score.hh (class Score): don't derive from Input.
597
598         * lily/book.cc (Book): add a copy ctor. 
599
600         * buildscripts/output-distance.py (FileLink.calc_distance): count
601         orphans in distance too.
602
603         * python/midi.c (midi_parse_track): robustness: don't read past
604         end of string.
605
606         * ly/performer-init.ly: add Control_track_performer, move
607         Tempo_performer and Time_signature_performer to Score.        
608
609         * lily/score-performer.cc (acknowledge_audio_elements): override
610         from base class: add to audio-columns
611
612         * lily/control-track-performer.cc (add_text): new file: generate
613         the control track.
614
615         * lily/performance.cc: move output_header_track to
616         Control_track_performer ()
617
618         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
619
620         * lily/include/midi-item.hh (class Midi_channel_item): insert
621         class into hierarchy, for items that can have a channel setting. Dehungarify.
622
623         * lily/include/performer.hh (class Performer): remove
624         play_element();  move functionality into announce/acknowledge.
625
626         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
627
628         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
629         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
630
631 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
632
633         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
634         ambituses.
635
636         * lily/all-font-metrics.cc: remove TFM support.
637
638         * lily/include/tfm.hh: remove TFM support, TFM reader.
639
640         * lily/include/binary-source-file.hh: remove Binary_source_file.
641
642 2006-08-27  Graham Percival  <gpermus@gmail.com>
643
644         * Documentation/topdocs/NEWS.itely: add @c marker for
645         stuff I've processed.
646
647         * Documentation/user/ various: info from NEWS.
648
649 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
650
651         * lily/paper-column-engraver.cc (finalize): Oops, this change
652         should have gone in on 2006-08-23
653
654 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
655
656         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
657         quotes to quote arguments. Fixes Windows problem.
658
659         * python/lilylib.py (progress): idem
660
661 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
662
663         * scripts/musicxml2ly.py: fix for importing
664         minor key signatures from MusicXML.  (Phillip Kirlin)
665
666 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
667
668         * python/musicxml.py: 
669         (Attributes.get_key_signature): now correctly retrieves mode from 
670         MusicXML. 
671
672 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
673
674         * lily/parser.yy (output_def_body): take ownership of identifier
675         back to C++.
676
677         * Documentation/user/advanced-notation.itely (Metronome marks):
678         update use of \tempo in \midi.
679
680         * VERSION: release 2.9.16
681         
682 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
683
684         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
685         web partially)
686
687 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
688
689         * input/regression/tie-chord-partial.ly: clarify example.
690
691         * scm/define-music-properties.scm (all-music-properties): remove
692         untied.
693
694         * ly/music-functions-init.ly: remove \untied.
695
696         * lily/tie-engraver.cc (struct Head_event_tuple): store both
697         stream events and music events.
698         (stop_translation_timestep): search acknowledged heads for
699         tie-event.
700
701         * input/regression/tie-chord-partial.ly: new file.
702
703         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
704         for \char markup command.
705
706         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
707
708         * scm/define-music-types.scm (music-descriptions): consistency:
709         Use solo-{one,two}-event iso. solo-[12]-event.
710
711         * lily/part-combine-engraver.cc (process_music):
712         Use solo-{one,two}-event iso. solo-[12]-event.
713
714         * ly/declarations-init.ly (partCombineListener): add Timing as
715         alias
716
717         * flower/std-string.cc (string_copy): use copy ()
718
719         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
720
721 2006-08-24  Graham Percival  <gpermus@gmail.com>
722
723         * Documentation/user/changing-defaults.itely, global.itely,
724         lilypond-book.itely, page.itely: minor changes from mailist.
725
726 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
727
728         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
729         snippet-map
730
731         * scm/define-context-properties.scm
732         (translator-property-description): robustness: detect type errors
733         in property definitions.
734
735         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
736         after getting it from SCM. 
737
738         * lily/smobs.cc (protect_smob): switch off fancy smob protection
739         for now. 
740
741         * lily/include/performer.hh (class Performer): strip get_tempo()
742         method.
743
744         * lily/midi-def.cc: strip file.
745
746         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
747
748         * lily/include/context-def.hh (struct Context_def): use
749         VIRTUAL_COPY_CONSTRUCTOR().
750
751         * lily/source-file.cc: smobification.
752
753         * lily/include/source-file.hh (class Source_file): smobify
754         Source_file. Trim redundant members.
755
756         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
757         clones after creation. This plugs a huge memory leak.
758
759         * python/convertrules.py (FatalConversionError.sub_tempo):
760         complete rule for \midi{ \tempo }
761
762         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
763
764         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
765
766 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
767
768         * input/regression/optimal-page-breaking-hstretch.ly: test for
769         ragged-last-bottom also
770
771         * lily/paper-column-engraver.cc (finalize): make the end of a score
772         breakable by default. This is to balance out a change in behaviour
773         of the page-turn-breaker which no longer makes the end of a score
774         breakable.
775
776         * lily/paper-book.cc (pages): set the systems_ once the pages are
777         broken
778
779         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
780         Page_breaking interface.
781
782         * lily/page-breaking.cc (class Page_breaking): make the interface
783         more consistent and provide abstractions for dealing with
784         Line_divisions.
785
786         * lily/optimal-page-breaking.cc (solve): use a more straightforward
787         algorithm. Use the new interface to Page_breaking.
788
789         * lily/page-spacing.cc: better support for ragged-bottom and
790         ragged-last-bottom
791
792 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
793
794         * python/convertrules.py (conv): warning on \tempo{}
795
796         * ly/performer-init.ly: set tempoWholesPerMinute.
797
798         * ly/midi-init.ly: remove \midi
799
800         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
801         MIDI tempo.
802
803         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
804         tempoUnitDuration for determining what to print.
805
806         * lily/lyric-extender.cc: typo.
807
808         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
809
810         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
811         function.
812
813         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
814
815         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
816         eps-pad-boxes is set.
817
818         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
819
820         * THANKS: update sponsors.
821
822         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
823
824         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
825
826         * input/regression/tie-chord-untied.ly: new file.
827
828         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
829
830         * scm/define-music-properties.scm (all-music-properties): add
831         'untied property.
832
833         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
834         than .ly.txt.
835         (headertext_nopics): sanitize no-examples text.
836
837         * scm/page.scm (make-page-stencil): don't rely on extents of
838         page-stencil. This fixes spurious space around .EPS files produced
839         with the EPS backend.
840
841 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
842
843         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
844
845         * lily/hara-kiri-engraver.cc (process_music): remember
846         keepAliveInterfaces after processing \set
847
848         * lily/lyric-extender.cc (print): support left/right-padding for
849         extenders.
850
851         * scm/documentation-generate.scm (string-append): revert lilypond/
852         path, doc why.
853
854 2006-08-20  Graham Percival  <gpermus@gmail.com>
855
856         * Documentation/user/lilypond.tely: clarification to
857         license presentation (not to actual license).
858
859         * Documentation/user/basic-notation.itely,
860         instrument-notation.itely: minor changes.
861
862         * input/ {regression, test}/+.ly: clarification to
863         text (you can click on examples).  Thanks, Mats!
864
865         * input/manual/bar-lines.ly: adds ||: repeats.
866
867 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
868
869         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
870
871         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
872
873         * Documentation/user/lilypond.tely: strip lilypond/ from info
874         links, rename to category LilyPond
875
876         * lily/pango-font.cc (description_string): new function.
877
878         * VERSION: release 2.9.15
879
880         * lily/spacing-engraver.cc (stop_translation_timestep): use
881         Dscho's fix for spacing spanner. 
882
883         * scm/define-music-types.scm (music-descriptions): use
884         apply-output-event for ApplyOutputEvent
885
886         * lily/output-property-engraver.cc (listen_apply_output): rename
887         from listen_layout_instruction.
888
889         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
890         function protect()
891
892 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
893
894         * scm/lily.scm (lilypond-all): option read-file-list: substitute
895         commandline args with contains, split by \n.
896
897         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
898         write snippet-names file, call with -dread-file-list. Fixes
899         command limitations on 64-bit systems.
900
901         * input/regression/stencil-color-rotation.ly: new file.
902
903         * lily/include/translator.hh (struct Acknowledge_information):
904         revert: don't use Protected_scm in global objects, as GUILE can't
905         handle gc_unprotect from automated destructors on MacOS X.
906  
907         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
908         color, not the original stencil. Fixes combinations of
909         color/transparency/rotation. 
910
911         * scripts/lilypond-book.py (main): add --formats=eps for
912         texinfo/latex.
913
914         * lily/spacing-engraver.cc (stop_translation_timestep): don't
915         crash if spacing_ is nonexistent.
916
917 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
918
919         * scripts/lilypond-book.py (output): Remove obsolete(!?)
920         \catcode`\@=12 in the LaTeX output.
921
922 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
923
924         * scm/define-music-types.scm (music-descriptions):
925         use sustain-event iso. sustain-pedal-event.
926
927 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
928
929         * scripts/convert-ly.py: honour the -n command-line switch
930
931 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
932
933         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
934         break specification.
935
936 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
937
938         * Documentation/user: convert-ly the user manual
939
940 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
941
942         * stepmake/aclocal.m4: version check patch (thanks MWD)
943
944         * ly/music-functions-init.ly: robustness. Don't crash if
945         currentBarNumber is not a number.
946
947         * VERSION (PATCH_LEVEL): bump.
948
949 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
950
951         * stepmake/aclocal.m4: better version check; handle fooX.Y
952         binaries too.
953
954         * ly/performer-init.ly: instrument name fixup.
955
956         * input/manual/chord-names-jazz.ly (banterProperties):
957         instrumentName update
958
959         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
960
961         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
962
963         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
964         function. Use hash tables to check membership.
965
966         * lily/general-scheme.cc (LY_DEFINE): new function.
967
968         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
969
970         * lily/include/translator.hh (struct Acknowledge_information): add
971         Protected_scm
972
973         * ly/music-functions-init.ly: change name to BreathingEvent
974
975         * input/regression/*.ly: apply it.
976
977         * python/convertrules.py (conv): better instrumentName conversion
978         rule.
979
980         * scm/define-music-types.scm (music-descriptions): add
981         line-break-event to LineBreakEvent music
982
983         * lily/music.cc (to_event): don't crash if music type not set.
984
985         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
986         spacing not set.
987
988         * lily/spacing-engraver.cc (stop_translation_timestep): set
989         spacing for proportional notation too.
990
991         * scm/translation-functions.scm (format-bass-figure): inspect
992         stream-event.
993
994         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
995
996 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
997
998         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
999
1000         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1001
1002         * scm/layout-page-layout.scm (make-page-from-systems): new function
1003         (optimal-page-breaks): use the new page-breaking calling convention
1004
1005         * scm/define-context-properties.scm (all-user-translation-properties):
1006         add revokePageTurns
1007
1008         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1009         revokePageTurns  functionality. If there is a special barline within
1010         the breakable region, break there instead of at the end of the region.
1011
1012         * lily/paper-book.cc (pages): use the new page-breaking calling
1013         convention
1014
1015 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1016
1017         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1018
1019         * scripts/lilypond-book.py: insert \sourcefileline command in
1020         output, so lilypond error messages refer to the spot in the
1021         original .lytex / .itely sourcefile.
1022
1023 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1024
1025         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1026         space to next column for distance to fixed col.
1027
1028         * VERSION (PACKAGE_NAME): release 2.9.14
1029
1030         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1031         if no accidental.
1032
1033         * lily/accidental-engraver.cc (process_acknowledged): don't create
1034         accidental for trill span event. This fixes spurious accidentals
1035         on trills.
1036
1037 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1038
1039         * scm/define-grob-properties.scm (all-user-grob-properties):
1040         Clarify documentation of side-axis and direction. Thanks to Paul
1041         for the inspiration.
1042
1043         * lily/bar-line.cc: Add documentation for "||:" also in the
1044         interface documentation.
1045
1046 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1047
1048         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1049
1050         * lily/paper-column.cc (set_system): new function.
1051
1052         * lily/spacing-engraver.cc (stop_translation_timestep): store
1053         SpacingSpanner refs in Paper_column.
1054
1055         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1056         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1057
1058 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1059
1060         * lily/beam-engraver.cc (listen_beam): add method for
1061         Grace_beam_engraver too.
1062
1063 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1064
1065         * python/convertrules.py: Fix indentation bug that broke
1066         conversion of files older than 1.3.117.
1067         Fix escape error in the description for 2.9.6.
1068
1069 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1070
1071         * lily/*-engraver.cc: convert all try_music functions to listen_*
1072         functions.
1073
1074         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1075         enums to represent pedal types, and calculate more data statically.
1076
1077         * scm/part-combiner.scm (recording-group-emulate): create a
1078         softcoded substitute for recording-group-engraver.cc.
1079
1080         * lily/music.cc: make a common transpose function for events and
1081         music
1082
1083         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1084         ManualMelismaEvent, and obsoletes Melisma_translator.
1085
1086 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1087
1088         * input/test/instrument-name-align.ly: update version.
1089
1090 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1091
1092         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1093         Doc the --pdf flag to lilypond-book.
1094
1095 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1096
1097         * Documentation/topdocs/NEWS.tely (Top): add description.
1098
1099         * input/regression/tuplet-full-length-note.ly: add file.
1100
1101         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1102         always store axis group.
1103
1104 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1105
1106         * input/regression/instrument-switch.ly: new file.
1107
1108         * lily/instrument-switch-engraver.cc (process_music): new file.
1109
1110         * ly/engraver-init.ly: add Instrument_switch_engraver
1111
1112         * ly/music-functions-init.ly: \instrumentSwitch
1113
1114         * scm/define-context-properties.scm
1115         (all-user-translation-properties): add instrumentCueName
1116
1117         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1118
1119 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1120
1121         * ly/music-functions-init.ly: music function \transposition.
1122
1123         * lily/parser.yy (command_element): softcode \transposition.
1124
1125         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1126         (process_music): oops.
1127
1128         * lily/instrument-name-engraver.cc (start_spanner): new
1129         function. Create spanner when property changes.
1130         (stop_spanner): new function.
1131
1132         * python/convertrules.py (conv): add rule.
1133
1134         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1135         shortInstrumentName iso. instr.
1136
1137         * scm/output-ps.scm (dashed-line): add phase argument to
1138         dashed-line.
1139
1140         * lily/bar-line.cc (dashed_bar_line): new function.
1141         (compound_barline): support \bar "dashed". 
1142
1143         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1144         --output=DIR to DIR/BASE if it is a dir. 
1145
1146         * flower/file-name.cc (file_part): new function
1147         (dir_part): new function
1148
1149         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1150
1151         * DEDICATION: update
1152
1153 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1154
1155         * lily/instrument-name-engraver.cc: formatting.
1156
1157         * python/convertrules.py (conv): bugfix for \epsfile.
1158
1159 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1160
1161         * lily/grob.cc:
1162         
1163         * lily/gourlay-breaking.cc: Oops, these should have been included
1164         in my last commit
1165
1166 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1167
1168         * scripts/*.py (program_name): cleanup relocation snippets.
1169
1170         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1171
1172 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1173
1174         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1175         page-breakable by default
1176
1177         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1178         correctly calculated for a single-system page
1179
1180         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1181         bigger than the second number
1182
1183         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1184         acknowledge that we aren't satisfying constraints)
1185
1186         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1187         non-Items
1188
1189         * lily/grob.cc (pure_height): add minimum-Y-extent
1190
1191         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1192         ragged
1193
1194         * lily/constrained-breaking.cc: convert code to use new Matrix class
1195         (get_best_solution): new function
1196
1197         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1198         is a page with no systems
1199
1200 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1201
1202         * VERSION (PACKAGE_NAME): release 2.9.13
1203
1204         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1205         assignment.
1206
1207 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1208
1209         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1210
1211         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1212         function.
1213
1214         * scm/define-grob-properties.scm (all-user-grob-properties):
1215         remove grace-space-factor.
1216
1217         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1218         grace-spacing-interface
1219         (spacing-options-interface): add.
1220
1221         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1222
1223         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1224
1225         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1226         GraceSpacing object.
1227
1228         * lily/note-spacing.cc: fix prop list formatting
1229
1230         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1231         beaming for grace notes too.
1232
1233         * input/regression/spacing-grace.ly: update.
1234
1235         * lily/grace-spacing-engraver.cc: new file.
1236
1237         * lily/spacing-spanner.cc: add strict-grace-spacing.
1238
1239 2006-07-20  Graham Percival  <gpermus@gmail.com>
1240
1241         * lily/parser.yy: compile fix.
1242
1243 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1244
1245         * scm/define-grobs.scm (all-grob-descriptions): typo.
1246
1247         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1248         .eps extension from includegraphics.
1249
1250         * scripts/lilypond-book.py (main): add support for --pdf. 
1251
1252         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1253         callback to compute common shortest duration.
1254         (set_springs): typo.
1255
1256         * scm/define-grob-properties.scm (all-user-grob-properties): add
1257         strict-grace-spacing.
1258
1259         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1260         support float_grace_columns_.
1261
1262         * lily/spacing-options.cc (init_from_grob): new file.
1263
1264         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1265
1266         * input/regression/spacing-loose-grace.ly: new file.
1267
1268         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1269
1270         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1271         tupletFullLengthNote too. Choose right bound depending on value.
1272
1273         * input/regression/tuplet-full-length-note.ly: new file.
1274
1275 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1276
1277         * lily/*-performer.cc: Converted try_music to listen_*
1278
1279         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1280         as a stream-event internally. Introduce event_cause (), deprecate
1281         music_cause ().
1282
1283         * scm/define-music-types.scm: Removed BusyPlayingEvent
1284         
1285 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1286
1287         * Documentation/user/advanced-notation.itely (Font selection):
1288         Document how to get a list of available fonts using 'lilypond
1289         -dshow-available-fonts blabla'.
1290
1291 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1292
1293         * GNUmakefile.in: filter lily-XXX.pdf files.
1294
1295         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1296
1297         * scm/define-grob-properties.scm (all-internal-grob-properties):
1298         remove delta-pitch. Use delta-position everywhere.
1299
1300         * scm/output-lib.scm (fall::print): use new order.
1301
1302         * scm/output-ps.scm (path): reorder arguments.
1303
1304         * scm/output-svg.scm (path): support for path primitive.
1305
1306         * input/regression/bend-after.ly: new file.
1307
1308         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1309         recipe for eps -> pdf conversion.
1310
1311 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1312
1313         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1314         Angelo Contardi.
1315
1316 2006-07-19  Graham Percival  <gpermus@gmail.com>
1317
1318         * input/manual/screech-boink.ly: moved to here.
1319
1320         * input/screech-boink.ly: deleted.
1321
1322         * scm/define-grob-properties.scm: clarify doc string.
1323
1324 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1325
1326         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1327
1328         * scm/output-ps.scm (path): define path.
1329
1330         * scm/define-stencil-commands.scm
1331         (ly:register-stencil-expression): add path.
1332
1333         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1334
1335         * ly/engraver-init.ly: add Fall_engraver
1336
1337         * lily/parser.yy (music_function_event): allow musicfunction
1338         without music arg as music_function_event.
1339
1340         * lily/grob-scheme.cc (LY_DEFINE):
1341         ly:grob-robust-relative-extent. New function.
1342
1343         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1344
1345         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1346
1347         * scm/output-lib.scm (fall::print): new function
1348
1349         * lily/fall-engraver.cc (stop_fall): new file.
1350
1351         * ly/music-functions-init.ly: alphabetise.
1352
1353         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1354         base.
1355
1356 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1357
1358         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1359
1360         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1361         doc pdftex usage.
1362
1363         * lily/translator-group.cc (connect_to_context): non const error message.
1364
1365         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1366
1367         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1368         if unset.
1369
1370         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1371
1372         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1373
1374         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1375         systems.pdftex too.
1376
1377         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1378
1379         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1380
1381         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1382
1383         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1384
1385         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1386
1387         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1388
1389 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1390
1391         * scm/layout-page-layout.scm: Define module, tidy code, use more
1392         functions iso. a single big one.
1393
1394         * scm/layout-page-dump.scm: move page dump functions used in two
1395         pass spacing to this file. Define module.
1396
1397         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1398          (separate module)
1399
1400         * ly/paper-defaults.ly: use module layout-page-layout.
1401
1402 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1403
1404         * lily/music.cc: Revised MusicEvent event class. It now contains
1405         event data directly instead of encapsulating it in music. The
1406         previously used class is renamed to OldMusicEvent.
1407
1408         * lily/stream-event.cc: Stream events are now probs.
1409         
1410         * lily/translator-group.cc, lily/translator.cc: Translators can
1411         now listen directly to stream events, by using macros
1412         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1413
1414         * lily/arpeggio-engraver.cc: Converted to use new event system
1415
1416         * THANKS: Corrected spelling mistake.
1417
1418 2006-07-12  Graham Percival  <gpermus@gmail.com>
1419
1420         * Documentation/user/SConscript, make/lilypond-vars.make,
1421         input/GNUmakefile: doc build looks in input/manual instead
1422         of input/test/
1423
1424         * input/manual/ GNUmakefile, SConscript: build files for
1425         input/manual/
1426
1427         * input/test/ various: some files moved to input/manual/ 
1428
1429         * Documentation/user/basic-notation.itely: small updates;
1430         thanks Kieren and Charles!
1431
1432 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1433
1434         * VERSION (PACKAGE_NAME): release 2.9.11
1435
1436         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1437
1438         * Documentation/user/basic-notation.itely (Tuplets): new property
1439         value.
1440
1441 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1442
1443         * python/convertrules.py (conv): tweaks. 
1444
1445         * VERSION (PATCH_LEVEL): bump version.
1446
1447         * python/convertrules.py (conv): add rule for
1448         tupletNumberFormatFunction.
1449
1450         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1451         tupletNumberFormatFunction.
1452
1453         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1454         text through 'text callback.
1455
1456         * lily/time-scaled-music-iterator.cc (construct_children): copy
1457         tweaks generated events.
1458
1459         * scm/define-context-properties.scm
1460         (all-user-translation-properties): remove tupletNumberFormatFunction
1461
1462         * lily/tuplet-engraver.cc (process_music): don't read
1463         tupletNumberFormatFunction
1464
1465         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1466         function.
1467
1468 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1469
1470         * lily/global-context-scheme.cc: Separated ly:run-translator into
1471         smaller pieces.
1472
1473         * lily/score-engraver.cc, lily/score-performer.cc,
1474         scm/define-context-properties.scm: Make paper/midi output
1475         accessable as a context property.
1476
1477         * lily/score-translator.cc, lily/score-context.cc: Removed.
1478
1479 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1480
1481         * scm/ps-to-png.scm (Module): 
1482         * scm/framework-tex.scm (Module): 
1483         * scm/framework-ps.scm (Module): 
1484         * scm/backend-library.scm (Module): 
1485         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1486         "dDEVICEHEIGHTPOINTS".
1487
1488 2006-07-04  Graham Percival  <gpermus@gmail.com>
1489
1490         * Documentation/user/ various: general improvements to
1491         "working with lilypond files" section.
1492
1493 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1494
1495         * lily/sequential-iterator.cc: Change the default get_music_list
1496         to read elements-callback music property
1497
1498         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1499         processing of multimeasure rests. Softcoded
1500         sequential-music-iterator.
1501
1502         * lily/sequential-music-iterator.cc: Removed.
1503
1504 2006-06-28  Graham Percival  <gpermus@gmail.com>
1505
1506         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1507
1508 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1509
1510         * lily/parser.yy: Wrap non-post-events in EventChords before
1511         assigning them to identifiers.
1512
1513 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1514
1515         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1516         gives correct vertical placement of \bar ":" in all staff
1517         sizes. Thanks Martial!
1518
1519 2006-06-26  Graham Percival  <gpermus@gmail.com>
1520
1521         * Documentation/user/invoking.itely : minor update from mailist.
1522
1523 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1524
1525         * lily/ various: Introduce stream events of types Prepare,
1526         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1527         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1528
1529         * lily/global-context*.cc: Time is now -inf before iteration
1530         starts.
1531
1532         * lily/include/context.hh: Removed unique_, init_
1533
1534         * Documentation/topdocs/NEWS: Make the feathered beam example
1535         avoid triggering a bug.
1536
1537 2006-06-24  Graham Percival  <gpermus@gmail.com>
1538
1539         * Documentation/user/ various: small additions from mailist.
1540
1541 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1542
1543         * ly/performer-init.ly: Add some missing links in the context
1544         hierarchy for MIDI output. There are probably some more missing!
1545
1546 2006-06-21  Graham Percival  <gpermus@gmail.com>
1547
1548         * Documentation/user/ various: minor spelling fixes;
1549         thanks Dave Luttinen!
1550
1551         * Documentation/user/ various: small clarifications;
1552         thanks Anthony Youngman!
1553
1554 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1555
1556         * po/fr.po: add \n appropriately.
1557
1558         * lily/lexer.ll: remove ? from version-seen?  
1559
1560 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1561
1562         * po/fr.po; update translation, by Jean-Charles Malahieude and
1563         John Mandereau.
1564
1565 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1566
1567         * THANKS: add Markus Schneider.
1568
1569         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1570         Staff_symbol_engraver
1571
1572         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1573         replace staff_engraver
1574
1575         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1576         spanner.
1577
1578         * lily/staff-collecting-engraver.cc
1579         (acknowledge_end_staff_symbol): new function
1580
1581         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1582
1583         * lily/staff-collecting-engraver.cc
1584         (acknowledge_end_staff_symbol): new function.
1585
1586         * lily/main.cc: switch on relocation by default.
1587
1588 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1589
1590         * lily/spacing-spanner.cc (musical_column_spacing): set
1591         compound_fixed_note_space to 0.0. Document why.
1592
1593         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1594         range of inverse_hooke_
1595         (Simple_spacer): init completely.
1596         (fits): const
1597         (get_line_configuration): don't use cols.resize(); it introduces
1598         initialized data.
1599
1600         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1601
1602         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1603
1604         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1605         try. Divide by beatlength.
1606
1607         * input/regression/beaming-ternary-metrum.ly: update doc.
1608         add beatLength hack.
1609
1610         * scm/music-functions.scm (make-time-signature-set): add
1611         standard-beat-grouping. 
1612
1613 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1614
1615         * input/regression/tie-whole.ly: new file.
1616
1617         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1618         cross center of note head in case of invisible stem. 
1619
1620 2006-06-16  Graham Percival  <gpermus@gmail.com>
1621
1622         * Documentation/user/ various: small fixes from mailist.
1623
1624 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1625
1626         * lily/breathing-sign.cc (offset_callback): idem.
1627
1628         * lily/align-interface.cc (align_to_fixed_distance): remove
1629         hungarian suffix.
1630
1631         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1632         x%2==0.
1633
1634 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1635
1636         * VERSION (PACKAGE_NAME): release 2.9.9
1637
1638         * ly/lilypond-book-preamble.ly: add \version
1639
1640 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1641
1642         * scripts/lilypond-book.py (PREAMBLE_LY): include
1643         lilypond-book-preamble.ly
1644
1645         * lily/stem.cc (get_beaming): return max of 0 and
1646         scm_ilength. Fixes slurring from/to beams.
1647
1648         * ly/lilypond-book-preamble.ly: new file.
1649
1650         * lily/slur.cc: add inspect-index feature.
1651
1652 2006-06-13  Graham Percival  <gpermus@gmail.com>
1653
1654         * Documentation/user/tutorial.itely: trivial fix.
1655
1656 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1657
1658         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1659         all non-event music in the parser via MAKE_SYNTAX.
1660
1661         * lily/parser-scheme.cc: Add ly:parser-error function
1662
1663         * scm/paper.scm: fix typo
1664
1665 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1666
1667         * THANKS: add RT.
1668
1669         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1670         is null.
1671
1672         * buildscripts/output-distance.py (test_compare_signatures):
1673         timing routines.
1674         (read_signature_file): use new signature format.
1675
1676         * scm/stencil.scm (write-system-signature): simpler signature
1677         format.
1678
1679         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1680         for beamed case. 
1681
1682         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1683         stem_end_position, but estimate instead. 
1684
1685         * lily/tuplet-bracket.cc (calc_positions): look at
1686         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1687         brackets narrower than beams. 
1688
1689         * lily/lexer.ll: set version-seen? even if version is
1690         INVALID. 
1691
1692         * lily/rest.cc (y_offset_callback): bugfix: decide position
1693         override based on scm_is_number(). Fixes \rest on center staff
1694         line. 
1695
1696         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1697         patterns for 16th triplets.
1698
1699 2006-06-10  Graham Percival  <gpermus@gmail.com>
1700
1701         * Documentation/user/ page.itely, global.itely: editing
1702         and reorg.
1703
1704         * Documentation/user/ various: findex -> funindex.
1705
1706 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1707
1708         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1709         insert extra tuplet events.
1710
1711 2006-06-10  Graham Percival  <gpermus@gmail.com>
1712
1713         * Documentation/user/programming-interfaces.itely: add
1714         info from NEWS.
1715
1716         * python/convertrules.py: add annotatefoo -> annotate-foo
1717         rules.
1718
1719         * Documentation/user/global.itely: start editing.
1720
1721         * Documentation/user/page.itely: major editing, new spacing
1722         docs.
1723
1724 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1725
1726         * scm/define-markup-commands.scm (wordwrap-markups): use
1727         output-def 'line-width if undefined.
1728
1729         * HACKING: trim outdated info.
1730
1731 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1732
1733         * scm/define-grobs.scm (all-grob-descriptions): Add
1734         line-spanner-interface to all grobs that already have
1735         text-spanner-interface or dynamic-text-spanner-interface
1736
1737         * scm/page.scm: Rename annotate{headers,systems,page}->
1738         annotate-*
1739
1740         * input/regression/page-spacing.ly,
1741         input/regression/page-layout-manual-position.ly: idem
1742
1743 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1744
1745         * lily/line-spanner.cc: cleanup property list.
1746
1747         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1748         generator expressions (2.3 compat). 
1749
1750 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1751
1752         * lily/vertical-align-engraver.cc: Make sure that the
1753         align{Above,Below}Context properties are included in the automatic
1754         documentation.
1755
1756 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1757
1758         * scm/paper-system.scm (paper-system-annotate): also annotate the
1759         estimated pure-Y-extent
1760
1761         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1762
1763         * lily/system.cc (break_into_pieces): set the estimated height
1764         of each child system
1765
1766         * lily/stem.cc (pure_height): new pure-Y-extent callback
1767
1768         * lily/staff-symbol-referencer.cc (callback): don't destroy
1769         the staff-position property
1770
1771         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1772         consider_suicide into two functions
1773
1774         * lily/constrained-breaking.cc (resize): use the new pure
1775         callbacks to estimate the height of a system
1776
1777         * lily/axis-group-interface.cc (pure_group_height): new
1778         side-effect-free VerticalAxisGroup height-callback
1779
1780         * lily/align-interface.cc (get_extents_aligned_translates):
1781         split align_elements_to_extents into two functions
1782         (get_pure_child_y_translation): new function
1783
1784         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1785
1786         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1787
1788         * lily/paper-score.cc: cache break_indices and columns
1789
1790         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1791         
1792 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1793
1794         * lily/font-config.cc (init_fontconfig): do the init if
1795         cache_file, but don't look at cache_file.
1796
1797         * input/regression/quote-tie.ly: new file.
1798
1799         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1800         to Head_event_tuple, so we deal gracefully with ties on
1801         cue-endings.
1802
1803         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1804         for FcChar8*
1805
1806 2006-06-08  Graham Percival  <gpermus@gmail.com>
1807
1808         * input/test/ smart-transpose.ly, reverse-music.ly:
1809         \applyMusic to music functions update, thanks Michael!
1810
1811 2006-06-07  Graham Percival  <gpermus@gmail.com>
1812
1813         * input/test/ add-staccato.ly, add-text-script.ly,
1814         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1815         music functions update, thanks to Michael Meixner.
1816
1817         * Documentation/user/music-glossary.tely: small fix
1818         from Francisco.
1819
1820         * Documentation/user/ various: minor additions from mailist.
1821
1822         * Documentation/user/lilypond.tely, basic-notation.itely:
1823         small test of @funindex.  (works here)
1824
1825         * input/test/font-table.ly: reduce size to partially
1826         de-ugly version in manual.
1827
1828         * Documentation/user/page.itely: new file (split former
1829         "global issues" into "page settings" and "non-musical
1830         output".
1831
1832         * Documentation/user/ various: fix @ref{}s to match
1833         new chapter names (above).
1834
1835 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1836
1837         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1838
1839 2006-06-06  Graham Percival  <gpermus@gmail.com>
1840
1841         * Documentation/user/advanced-notation.itely: add example
1842         for segno/coda on barline.
1843
1844         * tex/texinfo.tex: merge from upstream.
1845
1846 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1847
1848         * scripts/lilypond-book.py (process_snippets): Argument fix.
1849
1850         * SConstruct:
1851         * buildscripts/builder.py:
1852         * lily/SConscript: 
1853         * mf/SConscript: 
1854         * Documentation/user/SConscript:  More SCons fixes.
1855
1856 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1857
1858         * lily/font-config.cc (init_fontconfig): Only initialize if
1859         global cache_file is found.
1860
1861 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1862
1863         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1864         new \applyOutput.
1865
1866 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1867
1868         * VERSION (PACKAGE_NAME): release 2.9.8
1869
1870         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1871         function. Delay ledger modifying ledgered grobs to
1872         stop_translation_timestep(), to ensure that we're ledgering
1873         according to the new spanner.
1874         (acknowledge_staff_symbol): don't check for non-NULL
1875         staff_sym->get_bound()
1876
1877         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1878         creation.
1879
1880         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1881         pictures too.
1882
1883         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1884         directly from srcdir/stepmake/aclocal.m4
1885         
1886         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1887         disting MISC files.
1888
1889         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1890
1891 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1892
1893         * lily/simple-spacer.cc (get_line_configuration): add
1894         keep-inside-line rods
1895         (struct Column_desc): add constructor
1896         (struct Rod_desc): add constructor
1897         (get_line_forces): check for forced page breaks here too
1898
1899         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1900         support/elements cycles between InstrumentNames and AxisGroups
1901
1902 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1903
1904         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1905
1906         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1907         make-txt-files target.
1908
1909         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1910         make-txt-files target.
1911
1912         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1913
1914         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1915         top-build-dir.
1916
1917 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1918
1919         * Documentation/user/instrument-notation.itely,
1920         input/regression/breathing-sign-ancient.ly,
1921         input/test/divisiones.ly: Removed redundant property settings for
1922         vaticana contexts.
1923
1924         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1925         fix lyrics alignment problems.  They are implemented now as scheme
1926         functions that add the appropriate unicode char to the first lyric
1927         event rather than adding a separate lyric event.  Minor edit of
1928         comments.
1929
1930 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1931
1932         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1933         pollute src dir with built .txt files, but install directly from
1934         Documentation/topdocs/out/
1935
1936         * buildscripts/output-distance.py
1937         (ComparisonData.create_html_result_page): put version/directories
1938         in table header.
1939
1940         * Documentation/topdocs/NEWS.tely (Top): document spacing section
1941         feature.
1942
1943         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
1944         Patch by Karl Hammar
1945         
1946         * buildscripts/readlink.py: add  file.
1947         Patch by Karl Hammar
1948
1949 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1950
1951         * lily/tuplet-number.cc (print): prevent stencil from being
1952         garbage collected.
1953
1954 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1955
1956         * scm/stencil.scm (write-system-signature): explicitly 
1957         -well, superfluously- close output port.
1958
1959         * buildscripts/output-distance.py (main): oops. Add extra argument.
1960
1961 2006-06-05  Graham Percival  <gpermus@gmail.com>
1962
1963         * Documentation/user/music-glossary.tely: clarified example
1964         from Francisco Vila, thanks!
1965
1966 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1967
1968         * input/regression/spacing-section.ly: new file.
1969
1970         * lily/input.cc (programming_error): new function.
1971
1972         * lily/spacing-engraver.cc (try_music): new function. Accept
1973         spacing-section-event
1974
1975         * lily/spacing-spanner.cc (set_springs): take slices of all
1976         columns for spacing.
1977
1978         * lily/include/paper-column.hh (class Paper_column): add
1979         Paper_column::compare.
1980
1981         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
1982
1983         * scm/define-music-types.scm (music-descriptions): add
1984         SpacingSectionEvent
1985
1986         * lily/music-iterator.cc (report_event): use programming_error for
1987         sending non-event error.
1988
1989         * lily/input.cc (programming_error): new function
1990
1991         * buildscripts/output-distance.py (main): use compare-XXX for
1992         compare files.
1993         (main): --threshold option, default at 0.30
1994
1995         * output-distance.py (main): add --threshold option.
1996
1997 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1998
1999         * scm/paper-system.scm (paper-system-annotate): fix problem when
2000         annotating an empty system
2001
2002 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2003
2004         * GNUmakefile.in: reinstate old web tar/copying.
2005
2006 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2007
2008         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2009         nothing changes. (Erik S) 
2010
2011         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2012         count. (Erik S)
2013
2014 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2015
2016         * scm/define-markup-commands.scm (whiteout): do not force
2017         foreground color of argument markup to black.
2018
2019         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2020         the left of the arrow, instead of below the arrow name, so that,
2021         when two little arrows are vertically stacked, their dimensions
2022         and name should not overlap. Add a color key parameter.
2023
2024         * scm/paper-system.scm (paper-system-annotate): Annotate
2025         next-space+next-padding instead of next-space. Annotate space
2026         between next-padding and next-space+padding, respectively, and
2027         following system extent and refpoint-Y-extent. Use colors.
2028
2029         * scm/page.scm (annotate-page): translate annotations slightly to
2030         the right.
2031
2032 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2033
2034         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2035         fix for x-staff slurs. Thanks Joe!
2036
2037         * buildscripts/output-distance.py
2038         (SystemLink.output_expression_change_count): keep track of changed
2039         details, and dump in details html page.
2040  
2041         * input/regression/figured-bass-staff.ly: add note about setting
2042         properties in Staff context.
2043
2044         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2045         add slurs and ties to support too.
2046
2047         * buildscripts/output-distance.py (main): set dest_dir
2048         argument. Add --max-count option.
2049
2050 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2051
2052         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2053         shortcuts for special unicode chars that are useful in chant
2054         notation.  Revised exisiting and added new comments.
2055
2056 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2057
2058         * make/mutopia-rules.make: remove duplicate recipe.
2059
2060 2006-06-02  Werner Lemberg  <wl@gnu.org>
2061
2062         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2063         Add support for U+0132 (IJ) and U+0133 (ij).
2064
2065 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2066
2067         * buildscripts/output-distance.py (FileLink): new class. collect
2068         info systems from one .ly file. 
2069         (FileLink.link_files_for_html): further tweaks.
2070
2071 2006-06-02  Graham Percival  <gpermus@gmail.com>
2072
2073         * tex/texinfo.tex: partial fix for @funindex.
2074
2075         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2076         break anything).
2077
2078 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2079
2080         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2081
2082         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2083         @example too. Backportme.
2084
2085 2006-06-02  Graham Percival  <gpermus@gmail.com>
2086
2087         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2088         from Werner Lemberg.
2089
2090 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2091
2092         * Documentation/user/music-glossary.tely: additional spanish
2093         updates and a lyrics fix in an example.
2094
2095 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2096
2097         * scm/define-grob-properties.scm: Previous patch contained
2098         spurious line from another patch not yet committed.  Fixed.
2099
2100         * scm/define-grob-properties.scm: Add missing doc strings for
2101         ancient notation.
2102
2103 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2104
2105         * buildscripts/output-distance.py
2106         (ComparisonData.write_text_result_page): separate the scores, sort
2107         by geo_score.
2108
2109         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2110         system signatures.
2111
2112         * buildscripts/output-distance.py (me_path): use argv[0] for
2113         sys.path extension
2114         (ComparisonData.img_cell): use colored borders.
2115
2116         * scm/stencil.scm (write-system-signature): escape newlines too.
2117         (write-system-signature): use (1,-1) interval for empty interval
2118
2119 2006-01-01  Graham Percival  <gpermus@gmail.com>
2120
2121         * Documentation/user/music-glossary.tely: Spanish updates
2122         from Francisco Vila.
2123
2124         * Documentation/user/lilypond-book.itely: addition from
2125         Vaclav Smilauer.
2126
2127         * Documentation/user/ various: edits, small additions
2128         from mailist, etc.
2129
2130 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2131
2132         * GNUmakefile.in (tree-lib-prefix-current):
2133         (tree-share-prefix-current): Use version number in tree, add
2134         `current' symlinks.
2135
2136 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2137
2138         * GNUmakefile.in: write VERSION, again.
2139
2140         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2141         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2142
2143         * stepmake/aclocal.m4: robuster version detection.
2144
2145         * buildscripts/output-distance.py
2146         (ComparisonData.create_html_result_page): copy only if file
2147         exists, fixup src paths.
2148
2149         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2150
2151 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2152
2153         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2154         Another datarootdir reto.
2155
2156         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2157         available.  This should be moved to postinstall-lilypond-doc.
2158
2159 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2160
2161         * GNUmakefile.in: simplify local-WWW-post. 
2162         remove -type l from find.
2163
2164         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2165         fixes. Don't follow symlinks.
2166         (ComparisonData.create_html_result_page): remove previous results.
2167         insert ../python in path.
2168
2169         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2170
2171 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2172
2173         * config.make.in (datadir): Add datarootdir to silence autoconf.
2174
2175         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2176
2177 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2178
2179         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2180
2181         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2182         slash beams too wide.
2183
2184 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2185
2186         * VERSION: release 2.9.7
2187         
2188 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2189
2190         * lily/relocate.cc (read_relocation_dir): Do not blindly
2191         dereference DIR.
2192
2193 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2194
2195         * lily/parser.yy: replace THIS by PARSER
2196
2197         * Documentation/index.html.in: add link to test-results.html page.
2198
2199         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2200
2201         * scm/translation-functions.scm (format-bass-figure): translate
2202         digits over 10 to the left
2203
2204         * scm/define-markup-commands.scm (translate-scaled): new markup.
2205
2206         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2207         7 glyph. 
2208
2209         * ly/engraver-init.ly: add Figured_bass_engraver
2210
2211         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2212
2213         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2214
2215         * lily/score-engraver.cc (announce_grob): only note START announces.
2216
2217         * lily/include/engraver-group.hh (Translator_group):
2218         acknowledge_hash_table_ is now drul.
2219
2220         * lily/engraver.cc (announce_end_grob): new method.
2221
2222         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2223
2224         * lily/translator-dispatch-list.cc (create): take start_end argument.
2225
2226         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2227         acknowledge_static_array_ to drul
2228
2229         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2230
2231         * scm/define-grob-interfaces.scm
2232         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2233
2234         * scm/define-grobs.scm (all-grob-descriptions): add
2235         BassFigureAlignmentPositioning
2236
2237         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2238         number stays up to date. Backportme.
2239
2240 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2241
2242         * Documentation/user/basic-notation.itely (Bar lines): Document
2243         the "||:" bar type. 
2244
2245 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2246
2247         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2248
2249         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2250         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2251         build.
2252
2253         * Resurrect `scons lily' build.
2254
2255         * SConstruct (symlink_tree): Bugfix: link
2256         music-drawing-routines.ps to file iso directory.
2257
2258         * lily/SConscript: Remove kpath-guile from LIBS.
2259
2260         * SConstruct (libdir_package_version): Typo.
2261         (configure): Comment-out fontforge for lack of fontforge.pc .
2262         Also add libdir* to environment.
2263
2264 2006-05-30  Graham Percival  <gpermus@gmail.com>
2265
2266         * Documentation/user/ various: minor additions from mailist and
2267         editing.
2268
2269 2006-05-30  Paco <fravd@ya.com>
2270
2271         * Documentation/user/music-glossary.tely: numerous corrections and
2272         some new translations.
2273
2274 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2275
2276         * BackportmeStart.
2277         
2278         * buildscripts/output-distance.py
2279         (ComparisonData.create_html_result_page): new routine: summarise
2280         results in HTML page with images. 
2281         (ComparisonData.create_text_result_page): create summary text files too.
2282
2283         * GNUmakefile.in (web-ext): package .signature files too. They
2284         compress well. 
2285
2286         * scm/stencil.scm (write-system-signature): typo.
2287
2288         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2289
2290         * scm/stencil.scm (write-system-signature): better escaping.
2291         only write signature for music systems, not for markup systems.
2292
2293         * scm/framework-ps.scm (output-framework): dump-signatures support
2294         for plain output.
2295
2296         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2297
2298         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2299         for -dno-point-and-click
2300
2301         * lily/grob.cc (get_print_stencil): don't read
2302         point_and_click_global to determine whether to set grob-cause.
2303
2304 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2305
2306         * buildscripts/output-distance.py (main): new function.
2307         (ComparisonData): new class.
2308
2309         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2310         careful with generating new LedgerLineSpanners.
2311
2312         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2313
2314         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2315         context. This fixes double ledger lines in output. 
2316
2317         * lily/system.cc (get_paper_system): remove 3 layer limit.
2318
2319         * buildscripts/output-distance.py (SystemLink.distance): new
2320         file. Compare signatures.
2321
2322         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2323
2324         * lily/grob-array.cc (remove_duplicates): rename from
2325         uniq(). Sort before calling uniq() so it actually works.
2326
2327 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2328
2329         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2330         \version from lilypond file snippet.
2331         (Lilypond_file_snippet.ly): oops. typo.
2332         (find_toplevel_snippets): urgh. again.
2333
2334         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2335         prevent duplicated broken items in output.
2336
2337         * scm/framework-eps.scm (output-classic-framework): only dump if
2338         dump-signatures is set.
2339
2340         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2341
2342         * scm/stencil.scm (write-system-signature): new routine: write
2343         python parseable signature of a separate paper system.
2344         BackportmeEnd.
2345         
2346 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2347
2348         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2349         iso is_string().
2350         include header.
2351
2352 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2353
2354         * translator-group.cc: send music events to engravers in
2355         non-bottom contexts.
2356
2357         * tuplet-engraver.cc: process tuplet brackets in correct order.
2358
2359 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2360
2361         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2362         arg 2 might point us to a new binary (patch by Karl Hammar)
2363         
2364 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2365
2366         * VERSION (PACKAGE_NAME): release 2.9.6
2367
2368         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2369
2370         * Documentation/user/*.itely: 2nd
2371         attempt: replace funindex -> findex globally.
2372
2373 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2374
2375         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2376         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2377
2378         * scm/define-music-display-methods.scm: display methods for
2379         breaks. Fix \applyOutput.
2380
2381 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2382
2383         * Documentation/user/macros.itexi: comment out funindex expansion. 
2384
2385         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2386         everywhere.
2387
2388         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2389         Karl Hammar. Backportme.
2390  
2391         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2392
2393         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2394
2395         * Documentation/user/programming-interface.itely (Running a
2396         function on all layout objects): idem.
2397
2398         * Documentation/user/introduction.itely (Automated engraving):
2399         update \applyOutput syntax
2400
2401         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2402         remove debugging hook.
2403
2404         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2405         expansion. 
2406
2407         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2408
2409         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2410         TEXI2DVI_FLAGS to texi2dvi invocation. 
2411
2412 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2413
2414         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2415         works. More work is done by iterator now, and engraver has been
2416         very much simplified.
2417
2418         * lily/translator-group.cc: try_music is now invoked through a
2419         listener
2420
2421         * lily/*-iterator.cc: Massive cleanups. Junked
2422         try_music_in_children globally. Renamed try_music to report_event,
2423         and made that method descend to a bottom context automatically.
2424
2425         * lily/event-iterator.cc: New file.
2426
2427         * lily/output-property-iterator.cc,
2428         lily/old-lyric-combine-music-iterator.cc: Removed.
2429
2430         * python/convert-rules.py: Modified the syntax for \applyOutput.
2431
2432 2006-05-23  Graham Percival  <gpermus@gmail.com>
2433
2434         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2435         creation.
2436
2437         * Documentation/user/ various: stuff that might have helped
2438         to fix the pdf creation, plus some minor doc additions.
2439
2440         * Documentation/user/changing-defaults.itely: remove @b from
2441         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2442
2443 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2444
2445         * lily/beaming-pattern.cc (beamify): deal with negative start
2446         moments for beaming patterns.
2447
2448 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2449
2450         * lily/beaming-info.cc (beamify): new function: read beatLength
2451         and beatGrouping from context. 
2452
2453         * input/regression/beam-beat-grouping.ly (Module): new file.
2454
2455         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2456
2457         * lily/beam.cc (get_beam_segments): generate events for
2458         max_connect_ case too.
2459         (get_beam_segments): read Stem::max-beam-connect.
2460
2461         * input/regression/beam-single-stem.ly: new file.
2462
2463         * lily/stem.cc (set_beaming): use #f as signaling value for
2464         beamcount 0.
2465
2466         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2467
2468         * lily/beam.cc (set_beaming): read clip-edges property.
2469         (calc_direction): don't suicide for single stem.
2470
2471         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2472         argument, remove 1<<15 hack. Remove clip_edges() 
2473
2474         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2475
2476 2006-05-21  Graham Percival  <gpermus@gmail.com>
2477
2478         * Documentation/user/basic-notation.itely: reorg.
2479
2480         * Documentation/user/ various: minor fixes.
2481
2482 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2483
2484         * lily/stencil-expression.cc (register_stencil_head): opps, append
2485         to cdr of static SCM object.
2486
2487 2006-05-19  Graham Percival  <gpermus@gmail.com>
2488
2489         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2490         update framework for command index.  DOC WRITERS: use @funindex
2491         instead of @cindex @code{}.
2492
2493         * Documentation/user/ various: replace @cindex @code{} => @funindex
2494
2495 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2496
2497         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2498         case positions is set manually. 
2499
2500 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2501         
2502         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2503         rules to Scheme.
2504
2505 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2506
2507         * Documentation/user/changing-defaults.itely (Contexts explained):
2508         use absolute dimension for @image.
2509
2510         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2511         out image for illustration too.
2512         ($(outdir)/%.png): add more png <-> eps rules. 
2513
2514 2006-05-17  Graham Percival  <gpermus@gmail.com>
2515
2516         * Documentation/user/ various: remove trailing whitespace, cosmetic
2517         change to reduce changes produced by diff.
2518
2519 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2520
2521         * lily/main.cc (do_chroot_jail): correctness tweak.
2522
2523         * python/lilylib.py (system): import subprocess in system () only.
2524
2525         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2526
2527         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2528         variable. Backportme.
2529
2530 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2531         
2532         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2533
2534 2006-05-17  Werner Lemberg  <wl@gnu.org>
2535
2536         * lily/lexer.ll (init_signature_has_table): Add
2537         `scm-scm-music-music'.
2538
2539         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2540         (Generic_prefix_music_scm): Add rule for it.
2541
2542         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2543         `quoted-transposition' property.
2544
2545         * ly/music-functions-init.ly (transposedCueDuring): New function.
2546
2547         * scm/define-music-properties.scm (all-music-properties): Updated.
2548
2549         * Documenation/topdocs/NEWS.itely: Document it.
2550
2551 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2552
2553         * python/lilylib.py (system): move import subprocess to system()
2554         definition. 
2555
2556         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2557
2558         * VERSION (PATCH_LEVEL): release 2.9.5
2559         
2560         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2561         build instructions. 
2562
2563         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2564
2565 2006-05-16  Graham Percival  <gpermus@gmail.com>
2566
2567         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2568
2569         * Documentation/user/ various: minor fixes.
2570
2571 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2572
2573         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2574
2575 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2576
2577         * Documentation/user/advanced-notation.itely (Instrument names):
2578         Modified obsolete instruction on how to move instrument names away
2579         from the staves. Hmm, at second thought the bug probably has been
2580         solved, so the full bug description should probably be removed.
2581
2582 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2583
2584         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2585         currentCommandColumn. 
2586
2587         * lily/hairpin.cc (print): also add padding for non-neighbor
2588         hairpin bounds.
2589
2590         * scm/define-context-properties.scm
2591         (all-user-translation-properties): add hairpinToBarline
2592
2593         * input/regression/hairpin-to-barline.ly: new file.
2594
2595         * lily/context.cc (internal_send_stream_event): thinko fix.
2596
2597         * lily/tie.cc (set_default_control_points): robustness fix.
2598
2599         * python/musicxml.py (Part.interpret): don't complain about
2600         incomplete measures.
2601
2602         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2603         new music if last_event_chord() returned None.
2604
2605         * python/musicxml.py (Part.interpret): skip back over chord notes.
2606
2607 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2608         
2609         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2610         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2611         lily/slash-repeat-engraver.cc,
2612         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2613         iterator sends PercentEvents
2614
2615         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2616         rework tuplets: send start/stop events to engraver
2617
2618         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2619         dispatchers event-source and events-below to Context
2620         
2621 2006-05-15  Graham Percival  <gpermus@gmail.com>
2622
2623         * Documentation/user/README.txt: update info for doc writers.
2624
2625         * Documentation/user/programming-interface.itely: integrate
2626         Nicolas' fixes for chapter rewrite.
2627
2628         * Documentation/user/ various: minor fixes.
2629
2630 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2631
2632         * lily/clef-engraver.cc: cleanup.
2633
2634         * Documentation/user/GNUmakefile: dist context-example.eps too.
2635
2636         * lily/key-engraver.cc (create_key): use
2637         explicitKeySignatureVisibility for cancellation too. 
2638
2639         * lily/font-config.cc (init_fontconfig): don't close file if
2640         f==NULL. 
2641
2642 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2643
2644         * Documentation/topdocs/NEWS.tely: niente and rotation news
2645
2646 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2647
2648         * lily/include/stencil.hh
2649         * lily/stencil.cc (rotate): new function. Makes it possible
2650         to rotate a stencil around a given offset.
2651
2652         * lily/grob.cc (get_print_stencil): add rotation support
2653
2654         * lily/stencil-interpret.cc (interpret_stencil_expression):
2655         add rotation support
2656
2657         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2658
2659         * scm/define-grob-properties.scm: add 'rotation property
2660
2661         * scm/define-markup-commands.scm: add rotate markup command
2662         
2663         * scm/output-ps.scm: add rotation support in PostScript backend
2664
2665         * scm/output-svg.scm: add rotation support in SVG backend
2666
2667 2006-05-13  Graham Percival  <gpermus@gmail.com>
2668
2669         * Documentation/user/music-glossary.itely: French correction.
2670
2671         * Documentation/user/programming-interface.itely: major
2672         new docs, some reorg, some info from Nicolas.
2673
2674         * Documentation/user/ various: small fixes.
2675
2676 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2677
2678         * Documentation/user/programming-interface.itely (Markup
2679         programmer interface): Remove duplicate text.
2680
2681 2006-05-12  Graham Percival  <gpermus@gmail.com>
2682
2683         * Documentation/user/context-example.eps: new file.
2684
2685         * Documentation/user/changing-defaults.itely: set up file to
2686         use eps image.
2687
2688         * Documentation/user/programming-interface.itely: changes
2689         from mailist.
2690
2691 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2692
2693         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2694
2695 2006-05-11  Graham Percival  <gpermus@gmail.com>
2696
2697         * Documentation/user/programming-interface.itely: first round of
2698         editing and merging emails from Nicolas.
2699
2700         * Documentation/user/scheme-tutorial: minor edit.
2701
2702 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2703
2704         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2705         XML attributes.
2706         (Xml_node.message): use it.
2707
2708         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2709         oops. Add duration argument.
2710
2711 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2712
2713         * lily/paper-column-engraver.cc (make_columns):
2714         * scm/define-grobs.scm: Revert my previous change and set the default
2715         in define-grobs.scm instead.
2716
2717 2006-05-09  Graham Percival  <gpermus@gmail.com>
2718         
2719         * Documentation/user/changing-defaults.itely: general editing,
2720         info about \set and \override.
2721
2722         * Documentation/user/tweaking.itely, advanced-notation.itely:
2723         fixes from Dave Luttinen, thanks!
2724
2725 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2726
2727         * lily/paper-column-engraver.cc (make_columns): By default, a column
2728         needs to be breakable.
2729
2730 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2731
2732         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2733         Attributes methods
2734         (musicxml_time_to_lily): idem
2735         (musicxml_key_to_lily): idem
2736         (instrument_drumtype_dict): dict for supported drumtypes.
2737         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2738         moments and pending mm rests
2739         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2740         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2741         (musicxml_voice_to_lily_voice): add mode change.
2742         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2743         speed and less memory usage (factor 5 to 10).
2744         (convert): write -defs.ly  and driver file separately so people
2745         can script their own part extraction.
2746
2747         * python/musicxml.py (minidom_demarshal_node): new function:
2748         separate minidom handling.
2749         (lxml_demarshal_node): new function: support lxml.etree too.
2750         (Xml_node.message): new function: verbose error message, with XML
2751         path to offending node.
2752         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2753         (Part_list.generate_id_instrument_dict): new method: collect
2754         instrument names, to be able to set drum_type.
2755         (Part.interpret): handle underfull measures
2756         (Part.interpret): assign instrument names.
2757
2758         * python/musicexp.py (Output_printer.close): new method
2759         (MusicWrapper.print_ly): new class: support other modes,
2760         eg. \drummode
2761         (BarCheck.print_ly): new class. Support bar checks, with comments
2762         and fancy barchecks. 
2763         (NoteEvent.__init__): also set drum_type for drum notes.
2764         (MultiMeasureRest.lisp_expression): dump mm rests.
2765
2766         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2767         line-break-permission if forbidBreak is not set.
2768
2769 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2770
2771         * scm/define-context-properties.scm:
2772         * scm/define-grob-properties.scm:
2773         * scm/define-grobs.scm:
2774         * scm/define-music-display-methods.scm:
2775         * scm/define-music-properties.scm:
2776         * scm/define-music-types.scm:
2777         * scm/music-functions.scm:
2778         * ly/declarations-init.ly:
2779         * lily/include/constrained-breaking.hh:
2780         * lily/system.cc:
2781         * lily/spaceable-grob.cc:
2782         * lily/simple-spacer.cc:
2783         * lily/paper-score.cc:
2784         * lily/paper-column.cc:
2785         * lily/paper-column-engraver.cc:
2786         * lily/item.cc:
2787         * lily/gourlay-breaking.cc:
2788         * lily/constrained-breaking.cc:
2789         * python/convertrules.py:
2790         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2791         "page-break-penalty" and "line-break-permission".
2792         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2793         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2794
2795         * lily/bar-engraver.cc:
2796         * lily/beam-engraver.cc:
2797         * lily/forbid-break-engraver.cc:
2798         * lily/ligature-engraver.cc:
2799         * lily/paper-column-engraver.cc:
2800         * lily/percent-repeat-engraver.cc:
2801         * lily/score-engraver.cc:
2802         * lily/score-engraver.hh:
2803         * lily/paper-column-engraver.hh:
2804         Inter-engraver communication regarding line breaks is done through context
2805         properties (Score.forbidBreak) instead of function calls.
2806
2807 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2808
2809         * VERSION (PACKAGE_NAME): release 2.9.4
2810
2811 2006-05-08  Graham Percival  <gpermus@gmail.com>
2812
2813         * Documentation/user/working.itely: proofreading from Dave
2814         Luttinen, thanks.
2815
2816         * Doucmentation/user/README.txt: updated with manual style info.
2817
2818         * Documentation/user/ various: trim linewidth to 78 chars.
2819
2820 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2821
2822         * scm/define-grob-properties.scm (all-internal-grob-properties):
2823         remove chord-tremolo property.
2824
2825         * lily/beam.cc (get_beam_segments): don't use stem position as
2826         base for broken ends.
2827
2828 2006-05-06  Graham Percival  <gpermus@gmail.com>
2829
2830         * Documentation/user/putting.itely: proofreading from Dave
2831         Luttinen, thanks!
2832
2833         * Documentation/user/ various: more reorg and clarifications.
2834
2835 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2836
2837         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2838
2839         * ly/music-functions-init.ly: new function featherDurations
2840
2841         * lily/beam.cc: read grow-direction for feathered beaming.
2842
2843         * Documentation/topdocs/NEWS.tely (Top): typo.
2844
2845 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2846
2847         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2848         tremolo beams.
2849
2850 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2851         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2852         used by music streams.
2853
2854         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2855         lily/stream-event.cc, lily/stream-event-scheme.cc,
2856         lily/listener.cc, lily/scheme-listener.cc,
2857         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2858         lily/include/stream-event.hh, lily/include/listener.hh,
2859         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2860         Created data structures for music streams.
2861         
2862 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2863
2864         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2865         construction of a beam. 
2866         (print): rewrite. 
2867
2868         * flower/include/std-vector.hh (default_compare): use only one comparison.
2869
2870         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2871         (note-by-number): further attachment fixes.
2872
2873         * scm/lily-library.scm (ordered-cons): new function.
2874         (interval-index): new function
2875
2876         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2877
2878         * lily/note-head.cc (get_stem_attachment): new function.
2879
2880         * scm/define-markup-commands.scm (note-by-number): read 'style
2881         property. 
2882
2883         * input/regression/markup-note.ly: show note-head style option.
2884
2885         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2886         triangle head.
2887
2888 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2889
2890         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2891
2892         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2893
2894         * lily/include/constrained-breaking.hh: GCC 4 fix.
2895
2896 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2897
2898         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2899         Replace it with functions get_line_forces and get_line_configuration.
2900         (class Simple_spacer): Make data private.
2901         Rewrite compression algorithm to be faster and simpler.
2902
2903         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2904         * lily/gourlay-breaking.cc (solve):
2905         * lily/constrained_breaking.cc (space_line):
2906         Change it to the new simple-spacer code.
2907
2908         * lily/paper-score.cc (get_paper_systems):
2909         (Paper_score):
2910         (process):
2911         Delay breaking the systems until they are requested.
2912         (find_break_indices):
2913         Use vsize for indices.
2914         (calc_breaking):
2915         Move the "Calculating line breaks" message here.
2916
2917         * lily/system.cc (pre_processing):
2918         Move the "Calculating line breaks" message away from here.
2919         (break_into_pieces):
2920         Allow multiple calls to this function in sequence (with touching-but-
2921         not-overlapping breakpoints).
2922
2923         * lily/constrained-breaking.cc:
2924         Replace most of the get_XXXX functions with get_line_details.
2925         Only calculate the force for each line. Calculate configurations only
2926         for the lines we will actually use.
2927         Replace cols_ with lines_.
2928
2929 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2930
2931         * mf/GNUmakefile (depth): remove FC_FIND.
2932
2933         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2934
2935         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
2936
2937         * scm/framework-ps.scm (write-preamble): new function.
2938         (write-preamble): load mac fonts via fondu, even if gs-font-load
2939         is set.
2940
2941 2006-05-03  Werner Lemberg  <wl@gnu.org>
2942
2943         * mf/GNUmakefile (FC_FIND): Fix typo.
2944
2945 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
2946
2947         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
2948
2949 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2950
2951         * stepmake/aclocal.m4: run python-config for crosscompiling
2952         flags. 
2953
2954         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
2955         -f png for HTML, TEXINFO formats. 
2956
2957         * input/tutorial/lbook-html-test.html: new file.
2958
2959         * lily/include/tie-formatting-problem.hh (class
2960         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
2961         [column, direction]. This fixes laissez vibrer ties.
2962  
2963         * flower/include/tuple.hh (struct Tuple2): new file.
2964
2965         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
2966         $(FCMATCH), only if $(NCSB_DIR) not set. 
2967
2968         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
2969
2970         * config.make.in (DOCUMENTATION): set FCMATCH.  
2971
2972         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
2973
2974 2006-05-03  Graham Percival  <gpermus@gmail.com>
2975
2976         * Documentation/user/ various: final round of reorg.
2977
2978         * Documentation/user/instrument-notation.itely: some more
2979         fixes from Eduardo, thanks!
2980
2981 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2982
2983         * VERSION (PACKAGE_NAME): release 2.9.3
2984
2985         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
2986
2987         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
2988
2989 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
2990
2991         * scm/define-grob-properties.scm (all-user-grob-properties):
2992         Correct typo, thanks to Eduardo.
2993
2994 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2995
2996         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
2997
2998         * buildscripts/lilypond-words.py (F): indent fix.
2999
3000         * input/regression/tie-arpeggio-collision.ly: new file.
3001
3002         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3003         function: store outlines per column rank.
3004
3005         * lily/include/tie-configuration.hh (class Tie_configuration): add
3006         column_ranks_ to specification and configuration, to distinguish
3007         between ties for different heads in arpegiated chords.
3008
3009         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3010
3011         * *.py: more 4 space indents.
3012
3013         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3014
3015 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3016
3017         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3018
3019 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3020
3021         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3022
3023         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3024
3025         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3026
3027 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3028
3029         * python/convertrules.py (conv): indent 4 for python files.
3030
3031 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3032
3033         * Documentation/user/changing-defaults.itely (Creating contexts):
3034         Clarify \new semantics.
3035
3036 2006-04-28  Graham Percival  <gpermus@gmail.com>
3037
3038         * Documentation/user/ various: major new sections in the
3039         Learning manual, slight reorg elsewhere.
3040
3041 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3042
3043         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3044
3045         * scm/framework-ps.scm (output-framework): remove PageMedia
3046
3047 2006-04-27  Graham Percival  <gpermus@gmail.com>
3048
3049         * Documentation/user/ tweaks.itely, working.itely: new
3050         files, being more advanced "learning manual" chapters.
3051
3052         * Documentation/user/ tutorial, putting, lilypond: reorg.
3053
3054 2006-04-26  Graham Percival  <gpermus@gmail.com>
3055
3056         * input/regression/lyric-combine-polyphonic.ly: fixed test
3057         (no more "can't find context `one'" error).
3058
3059 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3060
3061         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3062
3063         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3064         
3065 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3066
3067         * lily/relocate.cc (read_relocation_dir): new function.
3068
3069 2006-04-26  Graham Percival  <gpermus@gmail.com>
3070
3071         * Documentation/user/instrument-notation.itely: a few more fixes
3072         from Eduardo, thanks!
3073
3074         * Documentation/user/README.txt: new file; contains info on
3075         style that used to be in lilypond.tely.
3076
3077         * Documentation/user/ various: first round of doc reorg.
3078
3079         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3080         graphic; this probably causes problems on some pdf
3081         viewers, notably Adobe Acrobat.
3082
3083 2006-04-24  Graham Percival  <gpermus@gmail.com>
3084
3085         * Documentation/user/instrument-notation.itely: many alterations
3086         to Vocal music, from Eduardo Viera.
3087
3088 2006-04-23  Graham Percival  <gpermus@gmail.com>
3089
3090         * Documentation/user/instrument-notation.itely: fix \new
3091         instead of \context problem.
3092
3093 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3094
3095         * lily/relocate.cc (expand_environment_variables): new function.
3096         (read_line): id.
3097         (read_relocation_file): id.
3098
3099         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3100
3101 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3102
3103         * ly/engraver-init.ly: remove old comments from TabVoice
3104
3105 2006-04-20  Graham Percival  <gpermus@gmail.com>
3106
3107         * Documentation/user/instrument-notation.itely: added Erlend's
3108         latest doc patch, thanks!
3109
3110 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3111
3112         * lily/include/slur.hh:
3113         * lily/slur.cc:
3114         * lily/phrasing-slur-engraver.cc:
3115         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3116         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3117         Slur_engraver:: and putting it in
3118         Slur::auxiliary_acknowledge_extra_object ().
3119
3120         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3121
3122         * lily/note-collision.cc: fix a comment
3123
3124 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3125
3126         * stepmake/bin/add-html-footer.py: fix footer position in
3127         generated html files: before </body> and </html> tags.
3128
3129 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3130
3131         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3132         Earlier successive `make' commands finally compiled ok.
3133
3134         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3135
3136 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3137
3138         * lily/include/stem-tremolo.hh:
3139         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3140         callers.
3141
3142         * lily/lookup.cc:
3143         * lily/include/lookup.hh: add rotated_box ()
3144
3145 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3146
3147         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3148         been generated. Fixes "can't get `--help'" bug after make clean.
3149
3150         * THANKS: alphabetize contributors.
3151
3152 2006-04-17  Graham Percival  <gpermus@gmail.com>
3153
3154         * Documentation/user/instrument-notation.itely: added Erlend's
3155         tabs and banjo doc patch.  Thanks!
3156
3157 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3158
3159         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3160
3161         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3162
3163         * scm/output-lib.scm: add some more predefined string tunings.
3164
3165         * Documentation/user/instrument-notation.itely: and doc them.
3166
3167 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3168
3169         * ly/engraver.ly: Remove obsolete comments.
3170
3171         * ly/gregorian-init.ly: Define default layout block.
3172
3173         * input/puer-fragment.ly: Updated and extended.
3174
3175 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3176
3177         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3178         pdf conversion behaviour.
3179
3180         * flower/file-name.cc (dir_name)
3181         (get_working_directory): Move from relocate.cc.
3182
3183         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3184         
3185         * lily/relocate.cc: Encapsulate sys/stat.h in
3186         HAVE_STAT_H.
3187
3188 2006-04-14  Graham Percival  <gpermus@gmail.com>
3189
3190         * Documentation/user/ various: small updates from Cameron
3191         and Juergen, thanks!
3192
3193         * Documentation/user/ various: small updates of my own.
3194
3195         * THANKS: 2.7 -> 2.8.
3196
3197 2006-04-11  Graham Percival  <gpermus@gmail.com>
3198
3199         * scm/define-context-properties.scm: typo.
3200
3201         * Documentation/user/ : many more small updates.
3202
3203 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3204
3205         * scm/define-music-types.scm: disposed "docme".
3206
3207 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3208
3209         * lily/hairpin.cc: make niente circles a bit smaller.
3210
3211 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3212
3213         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3214         get-pfa and get-*-fonts targets.
3215
3216 2006-04-10  Graham Percival  <gpermus@gmail.com>
3217
3218         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3219         music-glossary, programming-interface: more minor fixes
3220         from mailist.
3221
3222         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3223
3224         * scm/define-context-properties.scm: another old \property update.
3225         This time tested for compiling!
3226
3227 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3228
3229         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3230
3231 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3232
3233         * scm/define-context-properties.scm (all-user-translation-properties): 
3234         * Documentation/user/global.itely (Page formatting): Compile fix.
3235
3236 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3237
3238         * Documentation/user/advanced-notation.itely (Polymetric
3239         notation): Update the example to use the "+" symbol and add link
3240         to input/test/compound-time.ly.
3241
3242 2006-04-08  Graham Percival  <gpermus@gmail.com>
3243
3244         * scm/define-grob-properties.scm: clarify docs for #'direction.
3245
3246         * scm/define-context-properties.scm: update old \property override.
3247
3248         * Documentation/user/ advanced-notation, global, lilypond-book:
3249         more minor doc updates.
3250
3251 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3252
3253         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3254
3255         * scm/backend-library.scm (search-gs): oops.
3256
3257 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3258
3259         * scripts/lilypond-book.py (output): use base, not filename for href.
3260
3261         * scm/backend-library.scm: only look for gs.
3262
3263         * scripts/lilypond-book.py (output): fix printfilename.
3264
3265         * lily/parser.yy (music_function_musicless_prefix): fold together
3266         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3267
3268         * lily/slur.cc (print): only set font-size if not set yet.
3269
3270         * lily/slur-configuration.cc (add_score): improved layout of debug
3271         scoring output.
3272
3273 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3274
3275         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3276         (draw_circle): Hopefully fixed regression.
3277         Improved documentation for several procedures.
3278         
3279 2006-03-04  Werner Lemberg  <wl@gnu.org>
3280
3281         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3282
3283 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3284
3285         * scripts/musicxml2ly.py (bindir): add dynamic
3286         relocation. 
3287
3288 2006-04-04  Graham Percival  <gpermus@gmail.com>
3289
3290         * Documentation/user/ basic-notation, advanced-notation, putting,
3291         instrument-notation, invoking, lilypond, THANKS: another ream of small
3292         fixes from the Doc Helpers.
3293
3294 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3295
3296         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3297
3298         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3299
3300         * Cleaned up interfaces between PostScript and Scheme, and moved
3301         computations from PostScript to Scheme:
3302
3303         * music-drawing-routines.ps
3304         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3305         with stroke_and_fill throughout.
3306         (euclidean_length, print_letter, draw_box): Deleted unused
3307         procedures.  If someone needs draw_box, implement it using
3308         draw_round_box; don't duplicate code.
3309         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3310         Refactored/cleaned up interfaces.
3311         (mark_URI): Moved.
3312
3313         * output-ps.scm: reordered arguments to PostScript functions to
3314         match new interfaces
3315         (glyph-string): Rewrote glyph-string.
3316         (grob-cause): Replaced string-append with format.
3317         (repeat-slash): Rewrote to do computation here.
3318         (round-filled-box): Rewrote to do computation here.
3319
3320 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3321
3322         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3323
3324         * stepmake/stepmake/toplevel- targets.make: print help info about
3325         cvs-clean
3326
3327 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3328
3329         * input/regression/hairpin-circled.ly: new file
3330
3331 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3332
3333         * lily/hairpin.cc (print): add support for circled tip
3334
3335         * scm/define-grob-properties.scm: add circled-tip parameter
3336
3337         * scm/define-grobs.scm: init circled-tip to false
3338         
3339 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3340
3341         * scm/music-functions.scm (quote-substitute): set
3342         iterators-ctor. 
3343
3344 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3345
3346         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3347         BSTINPUTS. 
3348
3349         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3350
3351         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3352
3353 2006-03-31  David Feuer  <david.feuer@gmail.com>
3354         
3355         * scm/framework-ps.scm:
3356         
3357         * scm/output-ps.scm: glyph-string now produces smaller, more
3358         readable, and probably faster PostScript.  Several findfont
3359         scalefont setfont instances changed to selectfont
3360         Hacked-up string-appends changed to formats.
3361
3362         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3363         
3364 2006-03-30  Graham Percival  <gpermus@gmail.com>
3365
3366         * scm/lily-library.scm: make "no version" warning message more polite.
3367
3368         * lily/music.cc: add double quotes to failed octave check.
3369
3370         * Documentation/user/ advanced-notation, changing-defaults,
3371         instrument-notation, invoking, music-glossary: whole bunch of minor
3372         fixes from mailist.
3373
3374 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3375
3376         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3377         $(buildscriptdir) iso. depth.
3378
3379         * VERSION (PACKAGE_NAME): release 2.9.1
3380
3381 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3382
3383         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3384
3385         * VERSION (PATCH_LEVEL): bump version number.
3386
3387         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3388         scm_from_uint32 ()
3389
3390         * lily/pango-font.cc (pango_item_string_stencil): use
3391         scm_from_uint32 ()
3392
3393         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3394         $(outdir)/emmentaler-%.svg): remove canary.
3395
3396         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3397         glyphnames if we have a ttf font.
3398
3399 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3400
3401         * Documentation/user/advanced-notation.itely (Font selection):
3402         Corrected reference to the font-family-override.ly example.
3403
3404 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3405         
3406         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3407         stem-tremolo object in the stem (or else the stem might not be
3408         long enough).
3409
3410 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3411
3412         * lily/ttf.cc (print_trailer): only print existing glyphs.
3413
3414 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3415
3416         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3417         position the tremolo based on the position of the notehead.
3418
3419         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3420         notes and update the texidoc line with the new positioning rules.
3421         
3422 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3423
3424         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3425
3426         * scripts/lilypond-book.py (Module): set default for linewidth if
3427         preamble not found.
3428
3429 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3430
3431         * VERSION (PACKAGE_NAME): release 2.9.0.
3432
3433         * input/regression/stem-tremolo-position.ly: new file.
3434
3435         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3436
3437 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3438
3439         * lily/stem-tremolo.cc (print): position
3440         the tremolo depending only on the end of the stem
3441         and not on the notehead
3442         (raw_stencil): center, on the middle staff line, the
3443         flag that is closest to the end of the stem (previously
3444         the bottom flag)
3445         (calc_width): add this callback to shorten a tremolo when
3446         it is beamed or it is stemup with a flag
3447         (style): add this callback to make a tremolo rectangular when
3448         it is beamed or it is stemup with a flag
3449         (rotated_box): this is like Lookup::beam but makes a rotated
3450         rectangle instead of a parallelogram
3451
3452         * lily/stem.cc (calc_stem_info): make sure the stem
3453         is long enough to fit the tremolo
3454         (calc-length): reduce the length of tremolo stems since the
3455         tremolo code is now capable of better positioning
3456
3457         * scm/define-grobs.scm: make calc_width the default beam-width
3458         callback for stem-tremolo and add the style callback
3459                 
3460 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3461
3462         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3463         case. 
3464
3465 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3466
3467         * lily/ttf.cc (make_index_to_charcode_map): restore old
3468         cmap. 
3469
3470 2006-03-28  Werner Lemberg  <wl@gnu.org>
3471
3472         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3473
3474 2006-03-28  Graham Percival  <gpermus@gmail.com>
3475
3476         * THANKS: update for 2.9, add section for Documentation helpers.
3477
3478         * Documentation/topdocs/NEWS.tely: compile fix.
3479
3480         * Documentation/user/ basic-notation, global, advanced-notation,
3481         examples.itely: minor fixes from mailist.
3482
3483 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3484
3485         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3486         note heads. 
3487
3488         * lily/ttf.cc (print_trailer): use it.
3489
3490         * lily/pango-font.cc (get_unicode_name): new function.
3491
3492         * lily/ttf.cc (make_index_to_charcode_map): move function from
3493         open-type-font.cc
3494         (print_trailer): substitute uniXXXX name if applicable. 
3495
3496         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3497         (pango_item_string_stencil): use it to generate uniXXXX names.
3498
3499         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3500         note heads, for uniform widths in shape note output.
3501         (overdone_heads): hmm. remove them again.
3502
3503         * scripts/lilypond-book.py (output): add links to filenames.
3504
3505         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3506
3507         * lily/note-collision.cc (get_clash_groups): only consider when
3508         Note_column::dir <> CENTER. 
3509
3510         * scripts/lilypond-book.py (get_option_parser): init output_name
3511         to ''. 
3512
3513 2006-03-24  Graham Percival  <gpermus@gmail.com>
3514
3515         * Documentation/topdocs/NEWS.tely: add @end itemize
3516
3517         * Documentation/user/ global, advanced-notation: minor
3518         stuff from mailist.
3519
3520 2006-03-23  Graham Percival  <gpermus@gmail.com>
3521
3522         * Documentation/user/ lilypond.tely, music-glossary,
3523         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3524
3525 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3526
3527         * mf/GNUmakefile: don't install .enc files.
3528
3529         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3530
3531         * VERSION (PATCH_LEVEL): bump to 2.9.0
3532
3533 2006-03-22  Graham Percival  <gpermus@gmail.com>
3534
3535         * Documentation/user/advanced-notation.itely: minor fixes
3536         from mailist.
3537
3538 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3539
3540         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3541
3542         * branch lilypond_2_8
3543
3544 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3545
3546         * scripts/lilypond-book.py (samefile): new function, for windoze
3547         compatibility.
3548
3549 2006-03-21  Graham Percival  <gpermus@gmail.com>
3550
3551         * ly/engraver-init.ly: add info about StaffGroup.
3552
3553 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3554
3555         * input/regression/stem-direction-context.ly: idem.
3556
3557         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3558
3559         * THANKS: add Mats.
3560
3561         * input/regression/page-layout-twopass.ly: comment out \markup so
3562         tweak-file is left.
3563
3564         * lily/instrument-name-engraver.cc (finalize): add to instrument
3565         name global System. This also fixes chopped instrument names, but
3566         doesn't crash when there are slurs/beams.
3567
3568         * lily/slur-configuration.cc (add_score): disallow negative slur
3569         scores.
3570         
3571 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3572
3573         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3574
3575         * lily/instrument-name-engraver.cc (process_music): kludge: add
3576         InstrumentName spanner to axis group of left bound. Fixes chopped
3577         off instrument names in EPS images.
3578
3579         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3580
3581         * scripts/abc2ly.py (option_parser): update to 2.7.40
3582
3583 2006-03-20  Graham Percival  <gpermus@gmail.com>
3584
3585         * THANKS: move small doc contributors to SUGGESTIONS.
3586
3587         * Documentation/user/ basic-notation, advanced-notation,
3588         global: small changes from mailist.
3589
3590 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3591
3592         * Documentation/user/advanced-notation.itely (Text marks): update
3593         for new rehearsalMarkAlignSymbol convention.
3594
3595         * VERSION (PATCH_LEVEL): bump version.
3596
3597         * input/test/instrument-name-align.ly: new file.
3598
3599         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3600
3601         * input/test/instrument-name-align.ly: new file. Document how to
3602         align instrument names.
3603
3604         * lily/mark-engraver.cc: remove properties.
3605
3606         * scm/define-context-properties.scm
3607         (all-user-translation-properties): remove align symbol properties
3608         for barnumber/reh. mark.
3609
3610         * lily/break-align-interface.cc (self_align_callback): new
3611         interface, new function. Look at complete alignment. This handles
3612         tunable break alignments in case break-align-symbols are missing.
3613
3614         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3615
3616         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3617
3618         * python/convertrules.py (conv): mark/bar number alignment rule.
3619
3620         * lily/break-align-interface.cc (calc_positioning_done): also
3621         store offset from last visible break-alignment to its
3622         neighbor. This makes alignment on non-visible objects more reliable.
3623
3624         * po/lilypond.pot (Module): ran po-replace.
3625
3626         * input/regression/tie-single-manual.ly (Module): new file.
3627
3628         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3629         look at has_manual_position_.
3630         (from_ties): set has_manual_position_ if tie has staff-position set.
3631
3632         * lily/tuplet-bracket.cc (calc_positions): idem.
3633
3634         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3635         doesn't span time.
3636
3637 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3638
3639         * scm/define-markup-commands.scm (smallCaps): new markup command
3640         for turning a text to small caps using smaller font size and upper
3641         casing.
3642
3643 2006-03-17  Graham Percival  <gpermus@gmail.com>
3644
3645         * Documentation/user/ examples, instrument-notation,
3646         advnaced-notation: minor fixes from mailist.
3647
3648 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3649
3650         * Documentation/user/tutorial.itely (First steps): change example
3651         to verbatim.  
3652
3653 2006-03-17  Graham Percival  <gpermus@gmail.com>
3654
3655         * Documentation/user/ examples, advanced: minor changes from mailist.
3656
3657         * THANKS: add Geoff Horton, for documentation stuff.
3658
3659 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3660
3661         * python/lilylib.py (system): revert have_select kludge.
3662
3663         * Documentation/user/tutorial.itely (Commenting input files):
3664         update version numbers in doc. 
3665
3666         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3667         bound-padding to multi-measure-interface
3668
3669 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3670
3671         * input/test/engraver-example.ily: update version number.
3672
3673         * VERSION (PACKAGE_NAME): release 2.7.39
3674
3675         * lily/note-spacing.cc (get_spacing): heighten threshold where
3676         accidentals/arpeggios influence previous spacing fully.
3677
3678         * lily/rest.cc (y_offset_callback): only use direction if
3679         staff-position wasn't set before.
3680
3681         * lily/bar-number-engraver.cc: add support for
3682         barNumberAlignSymbol. 
3683         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3684
3685         * lily/pointer-group-interface.cc (set_ordered): new function. 
3686         (add_unordered_grob): new function.
3687
3688         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3689         to ordered, unless the opposite has been proved.  This fixes
3690         random reordering of large object groups across linebreaks,
3691         eg. beams.
3692
3693         * lily/main.cc (do_chroot_jail): printf format fix.
3694
3695         * lily/tie-formatting-problem.cc (generate_configuration):
3696         multiply y-shift for dot with direction.
3697  
3698         * scm/define-markup-commands.scm (note-by-number): put (magstep
3699         size) in y-attach too.
3700
3701         * Documentation/topdocs/NEWS.tely (Top): show override.
3702
3703         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3704         direction for stems.
3705         
3706 2006-03-15  Graham Percival  <gpermus@gmail.com>
3707
3708         * Documentation/user/ changing-defaults, global: minor
3709         fixes from mailist.
3710
3711 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3712
3713         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3714
3715         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3716         breakable items after uniformly stretched notes.
3717
3718         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3719         outline with outer edge of note heads. This prevents infinity
3720         problems with tied whole notes.
3721
3722         * scripts/lilypond-book.py (do_file): use os.popen
3723
3724         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3725
3726 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3727
3728         * Documentation/user/invoking.itely: Add ragged-right to bug report
3729         guidelines.
3730
3731 2006-03-14  Graham Percival  <gpermus@gmail.com>
3732
3733         * Documentation/user/global.itely: small fix from mailist.
3734
3735 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3736
3737         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3738         file descriptor returned by tempfile.mkstemp() when writing
3739         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3740         on mingw.
3741
3742 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3743
3744         * po/fi.po: newline bugfix.
3745
3746 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3747
3748         * scm/paper.scm (paper-alist): Rounding fixes.
3749
3750 2006-03-13  Graham Percival  <gpermus@gmail.com>
3751
3752         * Documentation/user/ changing-defaults, instrument-notation,
3753         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3754
3755 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3756
3757         * po/fi.po: update.
3758
3759 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3760
3761         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3762         mailto: to http:// 
3763
3764         * python/lilylib.py (print_environment): move ps_page_count to
3765         lilypond-book.py
3766
3767 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3768
3769         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3770
3771         * scm/framework-ps.scm (embed-document): new function. Use to
3772         embed PFA files.
3773
3774         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3775
3776 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3777
3778         * Documentation/user/instrument-notation.itely (Setting simple
3779         songs): Added \book{...} around the full example, so the separate
3780         markups are included in the printed example. 
3781
3782 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3783
3784         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3785         tmphandle.
3786
3787         * python/lilylib.py (system): rewrite system() using
3788         subprocess. Remove >& redirection trickery.
3789
3790 2006-03-11  Graham Percival  <gpermus@gmail.com>
3791
3792         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3793         notation-appendices.itely: minor fixes from mailist.
3794
3795 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3796
3797         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3798         unsplit man also needs images.
3799
3800         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3801
3802         * VERSION (PACKAGE_NAME): 2.7.38 released.
3803
3804 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3805
3806         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3807         log in output dir.
3808
3809 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3810
3811         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3812         respects the Score.skipTypesetting property.
3813         
3814 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3815
3816         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3817         Prolog. No %%EOF after CFF file.
3818
3819 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3820         
3821         * lily/constrained-breaking.cc (get_max_systems): used to return a
3822         much too big value
3823         (combine_demerits): use pointers to reduce copying data
3824         (calc_subproblem): idem
3825         (get_page_penalty): add page turn penalties
3826         
3827 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3828
3829         * Documentation/user/invoking.itely (Invoking lilypond): better
3830         explanation of -e usage.
3831
3832         * lily/main.cc (main_with_guile): don't append to
3833         init_scheme_code_string
3834
3835         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3836
3837         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3838
3839         * scripts/convert-ly.py (do_options): don't print help for
3840         --show-rules rule.
3841
3842         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3843         @code and @example. Update from texinfo.tex from CVS.
3844
3845 2006-03-08  Graham Percival  <gpermus@gmail.com>
3846
3847         * Documentation/user/scheme-tutorial.itely: clarifies distances
3848         measured in staff-spaces.
3849
3850 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3851
3852         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3853         consider[k] is true.
3854
3855         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3856
3857         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3858         consider columns that have originals.  Unifies spacing for mm
3859         rests around line breaks.
3860
3861         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3862         (set_text_rods): idem.
3863         (calculate_spacing_rods): new function: share code between
3864         set_text_rods and set_spacing_rods.
3865         (set_text_rods): take extents of bounds into account.  
3866
3867 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3868
3869         * Documentation/user/basic-notation.itely (Writing music in
3870         parallel): don't use relative.
3871
3872 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3873
3874         * ly/music-functions-init.ly (Module): add shiftDurations
3875
3876         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3877
3878         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3879
3880         * ly/engraver-init.ly: init vocalName to nil.
3881
3882 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3883
3884         * scm/music-functions.scm (music->make-music): bugfix,
3885         KeyChangeEvents are now handled correctly.
3886
3887         * scripts/lilypond-book.py: Add --debug option.
3888
3889 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3890
3891         * python/lilylib.py: add tempfile.
3892
3893 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3894
3895         * VERSION (PACKAGE_NAME): release 2.7.37
3896
3897         * python/lilylib.py (ps_page_count): remove make_ps_images().
3898         (ps_page_count): remove mkdir_p
3899         (system): remove cleanup_temp.
3900         (exit): remove lilypond_version_(check)
3901         (error_log): remove pseudo_filter_p
3902         remove read_pipe
3903         remove cp_to_dir
3904         remove identify
3905
3906         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3907         use __main__
3908
3909         * lily/accidental-engraver.cc (make_standard_accidental): only add
3910         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3911
3912         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3913         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3914         Make incompatibilities.
3915
3916         * scm/output-ps.scm (grob-cause): replace backslashes by /
3917         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3918
3919 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3920
3921         * cygwin/GNUmakefile: Install fixes.
3922
3923         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3924
3925         * lily/note-head.cc (head::get_balltype): Compile fix.
3926
3927         * flower/file-name.cc (dos_to_posix): Flower string fix.
3928
3929 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3930
3931         * python/lilylib.py: pychecker cleanups.
3932
3933         * scripts/lilypond-book.py
3934         (Lilypond_snippet.output_print_filename): pychecker cleanups
3935
3936         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
3937
3938         * python/lilylib.py (underscore): remove identify() , warranty()
3939
3940         * ps/music-drawing-routines.ps: change Border routine for GSView
3941         compatibility.
3942
3943         * lily/stem.cc (height): use quantize-positions.  This triggers
3944         set_stem_lengths, so scripts on beamed stems are handled correctly.
3945
3946         * lily/side-position-interface.cc (aligned_side): check if edges
3947         of script are inside staff. Fixes accent of edge of the staff.
3948
3949         * input/regression/staccato-pos.ly: more examples.
3950
3951         * stepmake/aclocal.m4 (depth): fix bashism.
3952
3953         * lily/lyric-combine-music-iterator.cc: move from
3954         new-lyric-combine-iterator.cc
3955         (process): add pending_grace_lyric_ member to delay lyrics on
3956         grace notes.
3957
3958         * lily/system-start-text.cc (print): suicide if we don't have any
3959         elements. Fixes hara kiri'd instrument names.
3960
3961         * scripts/mup2ly.py (Module): remove.
3962
3963 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3964
3965         * Documentation/user/global.itely (A single music expression):
3966         close @lilypond properly
3967
3968         * lily/volta-bracket.cc (modify_edge_height): change from
3969         after_line_breaking_callback. Suicide last bracket if appropriate.
3970  
3971         * python/lilylib.py: strip getopt support
3972
3973         * scripts/etf2ly.py (do_options): use optparse
3974
3975         * scripts/midi2ly.py: optparse, strip lilylib copy. 
3976
3977         * scripts/abc2ly.py (voices): use optparse.
3978
3979         * stepmake/stepmake/generic-vars.make: new function absdir.
3980
3981         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
3982
3983         * scripts/lilypond-book.py (find_file): use global_options for
3984         include path
3985
3986         * scm/ps-to-png.scm (ps-page-count): prevent null characters
3987         entering C code.
3988
3989 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3990
3991         * python/lilylib.py (get_global_option): ughness for extracting
3992         global options from lilylib.
3993         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
3994
3995         * scripts/lilypond-book.py (get_option_parser): use optparse for
3996         option handling.  Put options in global_options variable.
3997
3998 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
3999
4000         * Documentation/index.html.in: clarify.
4001
4002 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4003
4004         * scm/layout-page-layout.scm (write-page-breaks): add a
4005         music-system-heights property to the page layout output.
4006
4007         * scm/page.scm (make-page-stencil): take footer into account when
4008         computing the 'space-left page property
4009         (annotate-space-left): take footer into account when annonating
4010         space left.
4011
4012 2006-02-28  Graham Percival  <gpermus@gmail.com>
4013
4014         * Documentation/user/ advanced-notation, global: more (final)
4015         docs for music expressions, removed special fermatas.
4016
4017 2006-02-27  Graham Percival  <gpermus@gmail.com>
4018
4019         * Documentation/user/ basic-notation, global: minor changes
4020         from mailist.
4021
4022 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4023
4024         * scm/framework-ps.scm:         
4025         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4026         layer for inf? and nan? from framework-ps to lily-library.
4027
4028 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4029
4030         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4031         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4032
4033         * buildscripts/substitute-encoding.py (Module): remove file.
4034
4035         * mf/GNUmakefile: more PFA strippage.
4036
4037         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4038
4039         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4040         generation
4041
4042         * scm/framework-ps.scm: remove font name munging.
4043
4044         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4045
4046 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4047
4048         * scm/markup.scm (define-markup-command): change
4049         def-markup-command to define-markup-command
4050
4051         * scm/music-functions.scm (define-music-function): change
4052         def-music-function to define-music-function.
4053
4054         * python/convertrules.py (conv): rules for def-music-function
4055         and def-markup-commands
4056
4057         * Documentation/user/programming-interface.itely,
4058         input/no-notation/display-lily-tests.ly,
4059         input/regression/lily-in-scheme.ly,
4060         input/regression/markup-user.ly,
4061         input/regression/music-function.ly, input/regression/tie-chord.ly,
4062         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4063         ly/gregorian-init.ly: use new macro names (define-music-function,
4064         define-markup-command).
4065
4066 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4067
4068         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4069         (output): add comments to lp-book latex output.
4070
4071         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4072         address.
4073
4074 2006-02-23  Graham Percival  <gpermus@gmail.com>
4075
4076         * Documentation/user/ tutorial, global: minor changes.
4077
4078 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4079
4080         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4081         blocks (for make 3.80)
4082
4083         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4084         \notemode so that user should not have to explicitely type it.
4085
4086         * scm/define-music-display-methods.scm: various
4087         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4088         constructs)
4089
4090         * input/no-notation/display-lily-tests.ly: new tests for
4091         \applyOutput and \applyContext
4092
4093 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4094
4095         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4096         changed it slightly so that the number of systems returned by
4097         solve () will be the same as the last value passed to resize
4098         (). I've also added more documentation, removed casts, fixed style
4099         problems and put in some recovery if constraints aren't satisfied."
4100
4101 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4102
4103         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4104         for emacs < 22 compatibility.
4105         (count-rexp): Use it.
4106         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4107         substring juggling (Milan Zamazal).
4108
4109 2006-02-23  Graham Percival  <gpermus@gmail.com>
4110
4111         * Documentation/user/ basic-notation, advanced-notation,
4112         global.itely, invoking.itely, tutorial,itely:
4113         minor fixes from mailist.
4114
4115         * scm/define-markup-commands.scm: improve docs of \filled-box.
4116
4117 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4118
4119         * Documentation/index.html.in: changes concern the previous release.
4120
4121         * input/regression/+.ly: cultivate typographical terminology.
4122
4123 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4124
4125         * scm/define-grob-interfaces.scm (parentheses-interface): add
4126         padding to parentheses-interface.
4127
4128         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4129         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4130
4131         * VERSION (PATCH_LEVEL): release 2.7.36
4132
4133         * lily/slur.cc: add avoid-slur (ugh.)
4134         
4135         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4136         intersection gets smaller. This fixes slurs over extreme points.
4137
4138         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4139         stems with neutral-direction set.
4140
4141         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4142
4143         * lily/open-type-font.cc (load_table): format error.
4144
4145         * lily/change-iterator.cc (process): format fix.
4146
4147         * flower/include/international.hh (_f): idem.
4148
4149         * flower/include/std-string.hh: add format printf attribute.
4150
4151         * scm/define-grobs.scm (all-grob-descriptions): height of all
4152         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4153
4154         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4155         ambitus lines.
4156
4157         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4158
4159 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4160
4161         * input/regression/: upgraded syntax for some files.
4162
4163         * THANKS: Add bughunters.
4164
4165 2006-02-22  Graham Percival  <gpermus@gmail.com>
4166
4167         * Documentation/user/ invoking.itely, advanced-notation.itely,
4168         global.itely: long-awaited "let's make chapter 10 not suck"
4169         update.  Rearrange chapter 10; now called "global issues",
4170         addresses file structure, etc.  Some info from other files
4171         moved into global.itely.
4172
4173 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4174
4175         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4176         catch trill-span-event notes.
4177
4178         * Documentation/user/examples.itely (Ancient notation templates): typo.
4179         (Jazz combo): typo.
4180
4181         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4182
4183         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4184
4185         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4186
4187         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4188
4189         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4190         froum Laissez_vibrer_engraver.
4191
4192         * ly/declarations-init.ly (repeatTie): add \repeatTie
4193
4194         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4195
4196         * scm/define-grob-properties.scm (all-user-grob-properties): add
4197         head-direction property.
4198
4199         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4200         from_lv_ties. Take head direction argument.
4201
4202         * lily/semi-tie-column.cc: rename from
4203         laissez-vibrer-tie-column.cc. Rename class too.
4204
4205         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4206         class too.
4207
4208         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4209
4210         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4211         0 case.
4212         (find_breaks): idem.
4213
4214 2006-02-21  Graham Percival  <gpermus@gmail.com>
4215
4216         * Documentation/user/advanced-notation.itely: fixed make-moment]
4217         example.
4218
4219         * Documentation/user/basic-notation.itely: more clarification to
4220         transpose.
4221
4222 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4223
4224         * lily/include/constrained-breaking.hh (class
4225         Constrained_breaking): new file.
4226
4227         * lily/constrained-breaking.cc (resize): new file.
4228
4229         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4230
4231         * Documentation/user/advanced-notation.itely (Clusters): insert
4232         end ignore too.
4233
4234         * lily/tie-column.cc (calc_positioning_done): support for
4235         tie-score debugging
4236
4237         * lily/tie-formatting-problem.cc
4238         (generate_extremal_tie_variations): factor out.
4239         (score_ties_configuration): annotate all tie 
4240         (print_ties_configuration): new routine.
4241         (generate_configuration): nudge extremal ties outside of the head
4242         Y extents.
4243         (score_ties_configuration): oops. convert to staff-space before
4244         determining position symmetry.
4245
4246 2006-02-20  Graham Percival  <gpermus@gmail.com>
4247
4248         * Documentation/user/*-notation.itely: misc minor editing,
4249         shifting doc sections around.
4250
4251         * Documentation/user/*-notation-itely, global.itely,
4252         changing-defaults.itely: added new stuff from NEWS.
4253
4254 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4255
4256         * po/fi.po: update.
4257
4258 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4259
4260         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4261         lilypond --verbose for lp-book.
4262
4263         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4264         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4265
4266         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4267         $(buildscript-dir) iso. absolute depth.
4268
4269         * buildscripts/genicon.py (dir): thinko.
4270
4271         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4272
4273 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4274
4275         * scm/output-lib.scm: swap darkcyan/darkyellow
4276
4277         * THANKS: Add bughunters.
4278
4279 2006-02-19  Graham Percival  <gpermus@gmail.com>
4280
4281         * Documentation/user/programming-interfaces.itely: fixed example.
4282
4283         * Documentation/user/instrument-notation.itely: fix @{ @}.
4284
4285         * scm/script.scm: add avoid-slur for \open.
4286
4287 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4288
4289         * lily/tie-formatting-problem.cc (score_configuration): use
4290         sliding score for min-length. 
4291
4292         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4293         spaghetti for icons.
4294
4295         * buildscripts/genicon.py (program_name): new file.
4296
4297         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4298         in outline too.  
4299         (generate_configuration): for small ties, also look for collisions
4300         at Y + DIR*h + DELTA_Y.
4301         (get_variations): consider variation for dot positions too.
4302
4303         * lily/side-position-interface.cc (aligned_side): take abs for
4304         quantized rounded position. Fixes tenuto below staff.
4305
4306         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4307         markers when necessary.
4308
4309         * lily/program-option.cc (internal_set_option): add
4310         strict_infinity_checking option.
4311
4312         * scm/output-lib.scm (cyan): swap yellow and cyan.
4313
4314 2006-02-19  Graham Percival  <gpermus@gmail.com>
4315
4316         * darwin.patch: trivial linenumber update.
4317
4318         * Documentation/user/ {various}: `\context foo = named' changed
4319         to `\new foo = "name"' in docs.
4320
4321 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4322
4323         * scm/stencil.scm (annotate-y-interval): use it.
4324
4325         * scm/lily-library.scm (interval-sane?): new function.
4326
4327         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4328         tfm_checksum stuff.
4329
4330         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4331         common refpoint.
4332
4333         * flower/include/std-vector.hh (iterof): add iterof macro.
4334
4335         * lily/enclosing-bracket.cc (width): new function.
4336
4337         * lily/align-interface.cc (align_elements_to_extents): reinstate
4338         warning.
4339
4340 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4341
4342         * Documentation/index.html.in: fix spelling: thankyous.
4343
4344 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4345
4346         * lily/lyric-hyphen.cc: typo.
4347
4348 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4349
4350         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4351         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4352         builds don't work. 
4353
4354         * VERSION: release 2.7.35
4355
4356         * lily/beam.cc (get_default_dir): oops. Take abs () for
4357         extremes[DOWN].
4358         (get_default_dir): use extreme position criterion only in absence
4359         of forced stem directions.
4360
4361         * VERSION (PATCH_LEVEL): bump VERSION.
4362
4363         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4364         dependencies. Necessary for -jX builds.  
4365
4366 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4367
4368         * lily/relocate.cc (setup_paths): Yet another const fix.
4369
4370 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4371
4372         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4373
4374         * lily/relocate.cc (setup_paths): oops.
4375
4376 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4377
4378         * Documentation/index.html.in: order links: html before PDF.
4379
4380 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4381
4382         * lily/tie-column-format.cc (Module): remove.
4383
4384         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4385
4386         * lily/text-spanner.cc (print): idem.
4387
4388         * lily/dynamic-text-spanner.cc (print): only print line if longer
4389         than dash-period.
4390
4391         * lily/auto-change-iterator.cc (change_to): formatting.
4392
4393         * lily/beam.cc (get_default_dir): take extreme note head as input
4394         for stem direction.
4395
4396         * lily/tie.cc (get_default_dir): only look directions for visible
4397         stems. 
4398
4399         * lily/side-position-interface.cc (aligned_side): oops. Don't
4400         mutiply with direction. This fixes quantized (staccato, tenuto)
4401         scripts below notes.
4402
4403         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4404         direction. Fixes c-lyrics-center-align.ly
4405
4406 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4407
4408         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4409         constructor.
4410
4411         * lily/std-string.cc:
4412         * lily/include/std-vector.hh (split_string): Move and rename from
4413         lily/include/misc.hh, lily/misc.cc.  Update callers.
4414
4415 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4416
4417         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4418
4419 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4420
4421         * flower/test-file.cc: New file.
4422
4423         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4424         libraries.
4425
4426         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4427
4428 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4429
4430         * flower/include/file-storage.hh: remove file.
4431
4432         * lily/include/midi-item.hh (class Midi_track): idem.
4433
4434         * lily/include/source.hh (class Sources): idem.
4435
4436         * lily/include/performance.hh (class Performance): use vector
4437         iso. Cons<>
4438
4439         * flower/include/cons.hh (class Cons): remove file.
4440
4441         * flower/include/flower-proto.hh: remove template cruft.
4442
4443         * lily/include/font-metric.hh: use size_t not vsize for indices.
4444
4445         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4446         from proto.
4447
4448         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4449
4450         * lily/include/paper-book.hh (class Paper_book):
4451         make get_system_specs() public.
4452
4453         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4454         the force=10000 case if we don't have a current-best. 
4455
4456         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4457         vsize 
4458
4459         * flower/include/flower-proto.hh: remove outdated templates.
4460
4461         * scm/page.scm: use annotate-spacing
4462
4463 2006-02-15  Graham Percival  <gpermus@gmail.com>
4464
4465         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4466
4467         * THANKS: moved Erlend Aasland to contributors.
4468
4469 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4470
4471         * config.hh.in: remove HAVE_PANGO_16
4472
4473         * lily/tuplet-bracket.cc (calc_positions): multiply with
4474         staff-space for beam case. This fixes tuplets+beams on scaled
4475         staves.
4476
4477         * config.hh.in: remove all Kpathsea related defines.
4478
4479         * lily/dot-column.cc (side_position): reach stem via dots->
4480         head->stem. Inspect all stems for dot collisions. 
4481
4482         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4483         stem handling.
4484
4485         * lily/bar-number-engraver.cc (process_music): document function
4486         of whichBar.
4487
4488         * lily/score.cc (default_rendering): add pscore, not systems
4489         themselves.
4490
4491         * lily/paper-book.cc (get_system_specs): separate generation of
4492         titles and systems.
4493
4494         * flower/include/std-vector.hh: don't include config.hh
4495
4496 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4497
4498         * flower/include/std-vector.hh: Better wrapper compatibility with
4499         std::vector.
4500
4501         * flower/include/flower-proto.hh: Remove cheap forward declaration
4502         attempts.
4503
4504         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4505
4506 2006-02-14  Graham Percival  <gpermus@gmail.com>
4507
4508         * Documentation/user/invoking.itely: add warning about command line.
4509
4510 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4511
4512         * lily/include/lily-proto.hh: add Prob, rm Page.
4513
4514         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4515
4516         * VERSION: release 2.7.34
4517
4518         * lily/relocate.cc (framework_relocation): show canary if
4519         GHOSTSCRIPT_VERSION undefined.
4520
4521         * GNUmakefile.in: remove $(VERSION) symlink.
4522
4523         * lily/relocate.cc (setup_paths): add + 
4524
4525 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4526
4527         * Documentation/index.html.in: specify sizes for all big HTML pages.
4528
4529 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4530
4531         * config.hh.in: remove @FRAMEWORKDIR@
4532
4533         * lily/system-start-text.cc (get_stencil): new file: separate out
4534         system-start-delimiter text support.
4535
4536         * input/**ly: replace \context with \new where appropriate.
4537         
4538         * THANKS: add Don.
4539
4540         * lily/slur-scoring.cc (get_base_attachments): use
4541         robust_relative_extent. This fixes problems with empty paper-columns. 
4542
4543 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4544
4545         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4546
4547         * scm/define-music-properties.scm (all-music-properties):
4548         create-new property.
4549
4550         * lily/context-specced-music-iterator.cc (construct_children):
4551         inspect 'create-new property iso. magical $uniqueContextId context
4552         id.
4553
4554         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4555
4556         * lily/context-key-manager.cc (Module): new file. Encapsulate
4557         object key generation.
4558
4559         * lily/include/context-key-manager.hh (Module): new file.
4560
4561 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4562
4563         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4564         names vertically
4565
4566         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4567         options.
4568         (reloc_b): excise --enable-framework-dir
4569
4570         * lily/relocate.cc (framework_relocation): use getenv
4571         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4572
4573 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4574
4575         * flower/include/std-string.hh: 
4576         * flower/include/std-vector.hh: Finish std:: conversion; move
4577         flower extensions from std:: namespace.  Update users.
4578
4579         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4580         their expansion to vector<*>.  Update users.
4581
4582 2006-02-10  Graham Percival  <gpermus@gmail.com>
4583
4584         * Documentation/user/invoking.itely: add example to File structure.
4585
4586         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4587         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4588
4589 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4590
4591         * ly/paper-defaults.ly: typo.
4592
4593         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4594         set_parent() for parentheses. This will make it show up in bbox
4595         calculations.
4596
4597         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4598         ly:grob-common* functions.
4599
4600         * lily/grob-scheme.cc (LY_DEFINE):
4601         ly:grob-common-refpoint-of-array: new function 
4602         ly:grob-common-refpoint: new function 
4603         ly:grob-relative-coordinate: new function 
4604
4605         * lily/instrument-name-engraver.cc (process_music): use
4606         Text_interface::is_markup(). This fixes \markup on instrument names.  
4607
4608         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4609         for ties and slurs.
4610
4611         * lily/slur.cc (print): idem.
4612
4613         * lily/tie.cc: add line-thickness for ties. 
4614
4615 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4616
4617         * scm/output-svg.scm: Document diversion from GNU coding standards
4618         as a workaround for a bug in Microsoft Internet Explorer.
4619
4620 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4621
4622         * lily/instrument-name-engraver.cc (process_music): use
4623         is_markup() iso. is_string()
4624
4625         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4626
4627         * lily/percent-repeat-engraver.cc (process_music): only look at
4628         main_part_ for % repeats.
4629
4630         * lily/stem-tremolo.cc (get_beam_translation): new function.
4631         (calc_slope): new function.
4632         (height): don't use real slope.
4633
4634 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4635
4636         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4637         new connect-to-neighbor, control-points and staff-padding
4638         properties to make ligature brackets showing up again.
4639
4640 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4641
4642         * VERSION: release 2.7.33
4643
4644         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4645         too many.
4646
4647         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4648         remove applyOutput example.
4649         (Objects connected to the input): document \tweak, \parenthesize
4650
4651         * lily/relocate.cc (prefix_relocation): allow "current"
4652         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4653         changing VERSION in a lily tree less painful.
4654
4655         * input/regression/parenthesize.ly: new file. 
4656
4657         * scm/output-lib.scm (parenthesize-element): new function.
4658
4659         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4660
4661         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4662
4663         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4664         cause: accidentals are caused by note heads, not note events. 
4665
4666 2006-02-08  Graham Percival  <gpermus@gmail.com>
4667
4668         * darwin.patch: small patch from Erlend, thanks!
4669
4670         * Documentation/user/basic-notation.itely: add stem-neutral example.
4671
4672         * Documentation/user/putting.itely: clarifications.
4673
4674 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4675
4676         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4677         note, add more guidelines to what should go into NEWS.
4678
4679         * input/sakura-sakura.ly: document how to override font.
4680
4681         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4682
4683 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4684
4685         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4686
4687 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4688
4689         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4690         convertrules.  Add explicit grouping, needed for python2.2.
4691
4692 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4693
4694         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4695
4696 2006-02-07  Graham Percival  <gpermus@gmail.com>
4697
4698         * Documentation/user/global.itely: fix line-width in (text) docs.
4699
4700         * Documentation/user/lilypond-book.itely: same.
4701
4702 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4703
4704         * VERSION (PACKAGE_NAME): release 2.7.32
4705
4706         * Documentation/topdocs/NEWS.tely (Top): document new variable
4707         naming.
4708
4709         * flower/include/array.icc (Message): remove file.
4710
4711         * flower/include/std-vector.hh: make sure vsize and VPOS are
4712         defined for binary_search_bounds().
4713
4714         * flower/std-string.cc (std): add to_string(long unsigned).
4715
4716         * configure.in (gui_b): excise std_string option.
4717         (gui_b): excise std_vector option.
4718
4719         * flower/string.cc (Module): excise flower array & string
4720
4721         * flower/include/std-string.hh: excise flower string.
4722
4723         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4724
4725         * python/convertrules.py (lilypond_version_re_str): require
4726         only numbers and dots in \version string.
4727
4728 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4729
4730         * lily/system-start-delimiter.cc (print): allow style = text too.
4731
4732         * lily/system-start-delimiter-engraver.cc
4733         (acknowledge_system_start_text): new function, also add add to
4734         support of system-start-text (instrument names). This fixes
4735         instrument names on piano staves.
4736
4737         * lily/instrument-name-engraver.cc: rewrite. Use
4738         system-start-delimiter approach. This save memory and cpu.
4739
4740         * scm/define-grobs.scm (all-grob-descriptions): remove
4741         instrument-name from break-alignment.
4742
4743         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4744
4745 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4746
4747         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4748         jobserver going.
4749
4750         * configure.in (std_vector): On by default.
4751
4752         * lily/include/font-metric.hh:
4753         * lily/include/tfm-reader.hh: 
4754         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4755         Update users.
4756
4757         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4758
4759 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4760
4761         * VERSION (PACKAGE_NAME): 2.7.31
4762
4763         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4764         EPS edge at 0, but take minimum with left-overshoot. This fixes
4765         cut off system start delims. 
4766
4767         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4768         hack: add to axis group if not added yet. This fixes hara kiri'd
4769         piano staves.
4770
4771         * lily/hara-kiri-group-spanner.cc
4772         (force_hara_kiri_in_y_parent_callback): fix signatures.
4773
4774         * lily/hairpin.cc (print): check next hairpin to see whether or
4775         not to be continuing.
4776
4777 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4778
4779         * Remove trailing whitespace from makefiles.
4780         
4781         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4782         for earlier gcc.
4783
4784         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4785
4786         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4787
4788         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4789
4790         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4791
4792         * configure.in: Use it.
4793
4794 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4795
4796         * scm/music-functions.scm (pitch-of-note): new function.
4797
4798         * ly/music-functions-init.ly: add \octave and \addquote
4799
4800         * lily/parser.yy (music_function_chord_body): softcode \octave.
4801         (lilypond_header): softcode \addquote
4802
4803 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4804
4805         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4806         array.hh, parray.hh at all.  Getting ready to flip the
4807         configure default.
4808
4809         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4810
4811         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4812         a bit.
4813
4814         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4815
4816 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4817
4818         * flower/include/array.hh: typo. 
4819
4820 2006-02-02  Graham Percival  <gpermus@gmail.com>
4821
4822         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4823
4824 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4825
4826         * flower/include/pqueue.hh: Derive from std::vector.
4827
4828         * flower/include/parray.hh: Conform to std::vector interface.
4829         Update users.
4830
4831 2006-02-02  Graham Percival  <gpermus@gmail.com>
4832
4833         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4834
4835 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4836
4837         * flower/file-path.cc (is_file): remove if 0 section.
4838
4839         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4840         selecting afii61352.
4841
4842 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4843
4844         * flower/include/std-vector.hh (boundary): Oops, reverse.
4845
4846         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4847         remove superfluous `d'.
4848
4849         * flower/include/std-vector.hh (boundary, top): Detach from class.
4850         Remove empty vector shell.
4851
4852         * flower/include/array.hh (reverse, swap): Detach from class.
4853         Update users.
4854         
4855         * flower/include/std-vector.hh
4856         * flower/include/array.hh (concat): Globally change to insert ().
4857
4858         
4859         * flower/include/std-vector.hh
4860         * flower/include/parray.hh
4861         * flower/include/array.hh (elem, elem_ref): Globally replace by
4862         at ().
4863
4864 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4865
4866         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4867
4868         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4869         anticipate on identifier substitutions.
4870
4871 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4872
4873         * flower/include/std-vector.hh (insert): Remove, replace by
4874         std::vector interface.  Update callers.
4875
4876         * flower/include/array.icc (insert): Change signature to
4877         match std::vector interface.
4878         
4879         * flower/include/array.icc (vector_sort): Bugfix.
4880
4881 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4882
4883         * lily/parser.yy (output_def_head_with_mode_switch): new
4884         production. Result: dashes and underscores may be used in the
4885         \paper block.
4886
4887         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4888
4889         * python/convertrules.py (conv): oops. One slash too much.
4890
4891 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4892
4893         * flower/include/std-vector.hh (sort): Remove, replace by
4894         ::vector_sort.  Update callers.
4895
4896         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4897         (sort): Bugfix.
4898
4899         * flower/test-std.cc (vector_sort): New test.
4900
4901 2006-02-01  Graham Percival  <gpermus@gmail.com>
4902
4903         * Documentation/user/putting.itely: fixes from Erik.
4904
4905 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4906
4907         * flower/test-std.cc: Add simple unit test for vector migration.
4908
4909         * stepmake/stepmake/test*: Unit test support.
4910
4911         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4912         update callers.
4913
4914         * flower/include/array.hh (begin, end): Add.
4915         (del, get): Remove.
4916
4917 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4918
4919         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4920         std::string not String. 
4921
4922         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4923         iso UINT_MAX.
4924
4925         * lily/prob.cc (Prob): copy type_ too.
4926
4927         * lily/lily-guile.cc (mangle_cxx_identifier): new
4928         function. Class_bla::foo_bar_[px] ->
4929         ly:class-bla::foo-bar[?!]. Changes throughout
4930
4931 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4932
4933         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4934
4935         * lily/beam.cc (calc_direction): take dir from visible stem in
4936         degenerate case.
4937
4938 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4939
4940         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
4941         Fix -1, >=0 boundary checks for unsigned vsize.
4942
4943         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
4944         loop for unsigned vsize.
4945
4946         * configure.in (--enable-std-vector): New option.
4947         (--enable-std-string): On by default.
4948
4949         * flower/include/std-vector.hh: New file.  Enable switch to
4950         std::vector, update client code.
4951
4952 2006-01-30  Graham Percival  <gpermus@gmail.com>
4953
4954         * scm/document-translation.scm: clarify "this context is also
4955         known as".  Thanks, Werner!
4956
4957         * Documentation/user/putting.itely: small fixes from Don Blaheta.
4958
4959         * Documentation/user/invoking.itely: small fix from Don.
4960
4961 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4962
4963         * scm/lily.scm (define-scheme-options): rename option
4964         preview-include-book-title to book-title-preview
4965         (define-scheme-options): move force-eps-font-include (from paper
4966         block) to eps-font-include -d option.
4967
4968         * VERSION (PATCH_LEVEL): release 2.7.30
4969
4970         * input/bach-schenker.ly (staffPiano): new file.
4971
4972         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
4973
4974         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
4975         credits to Nicolas.
4976
4977         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
4978
4979         * ps/lilyponddefs.ps: remove start-system, stop-system,
4980         start-page fluff. This saves putting { } code on the stack, fixing
4981         stack overflows when including EPS files.
4982
4983 2006-01-29  Graham Percival  <gpermus@gmail.com>
4984
4985         * Documentation/user/putting.itely: minor fixes (comments on -devel).
4986
4987 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4988
4989         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
4990
4991 2006-01-28  Graham Percival  <gpermus@gmail.com>
4992
4993         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
4994
4995 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4996
4997         * input/mutopia/claop.py: Update.
4998
4999 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5000
5001         * input/regression/completion-heads.ly (texidoc): fix.
5002
5003         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5004
5005         * lily/tie-formatting-problem.cc
5006         (set_ties_config_standard_directions): use abs iso fabs for ints.
5007
5008         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5009
5010         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5011         little less than noteheight, to prevent overlaps in chords.
5012
5013         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5014         head, and fudge stem-attachment.
5015
5016         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5017
5018         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5019
5020 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5021
5022         * lily/main.cc (main): Debugging aid: catch exceptions.
5023
5024         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5025         output with std::string.
5026
5027 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5028
5029         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5030
5031 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5032
5033         * Fix -DSTRING_UTILS_INLINED.
5034
5035 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5036
5037         * VERSION (PATCH_LEVEL): release 2.7.29
5038
5039         * lily/relocate.cc (setup_paths): mingw uses std string too.
5040
5041         * lily/*.cc: various fixes for substr(ARG).
5042
5043         * lily/sustain-pedal.cc (print): 
5044
5045         * flower/file-name.cc (slashify): use std strings.
5046
5047         * flower/string-convert.cc: remove publib.h
5048
5049         * scm/define-markup-commands.scm (verbatim-file): new markup
5050         command \verbatim-file
5051
5052         * Documentation/topdocs/NEWS.tely: fixup URLs
5053
5054         * input/regression/alignment-vertical-manual-setting.ly (Module):
5055         new file.
5056
5057         * lily/align-interface.cc (align_elements_to_extents): overwrite
5058         translations with numbers in alignment-offsets from left bound
5059
5060         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5061         (page-translate-systems): new function: take into account Y-offset.
5062
5063         * Documentation/topdocs/NEWS.tely (Top): document new features.
5064
5065         * input/regression/page-layout-manual-position.ly (Module): new
5066         file.
5067
5068 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5069
5070         * flower/file-path.cc (path::parse_path): Oops.
5071
5072         * Finish std::string interface.  For now, use std:: marker
5073         throughout for easy s/r.
5074
5075 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5076
5077         * Documentation/user/putting.itely (Score is a single musical
5078         expression): typo.
5079         (Score is a single musical expression): more typos.
5080
5081         * scm/page.scm (annotate-space-left): thinko.
5082         (annotate-page): more thinkos.
5083
5084 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5085
5086         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5087         for different \score blocks separately.
5088         (post-process-pages): put write-page-layout into paper block.
5089
5090         * lily/output-def.cc (get_parser): new file.
5091
5092         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5093         file.
5094
5095         * lily/include/output-def.hh (class Output_def): add parser_ member.
5096
5097         * input/regression/page-layout-twopass.ly (Module): new file.
5098
5099         * scm/lily.scm: remove cpp hack.
5100
5101         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5102
5103 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5104
5105         * GNUmakefile.in (c-clean): New target.
5106
5107         * flower/include/std-string.hh: String/std::string compatibility:
5108         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5109         type.
5110
5111         * flower/rational.cc: 
5112         * flower/include/rational.hh: 
5113
5114         * flower/offset.cc: 
5115         * flower/include/offset.hh: 
5116
5117         * flower/interval.cc: 
5118         * flower/include/interval.hh: 
5119
5120         * flower/string-convert.cc: 
5121         * flower/include/string-convert.hh: Use std::string [interface].
5122         Update callers.
5123
5124 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5125
5126         * Documentation/index.html.in: clean up.
5127
5128 2006-01-25  Graham Percival  <gpermus@gmail.com>
5129
5130         * Documentation/user/putting.itely: another new untested doc section.
5131
5132 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5133
5134         * scm/layout-page-layout.scm (write-page-breaks): write
5135         \spacingTweaks #ALIST. Handle grace timing.
5136
5137         * scm/: more imports.
5138
5139         * scm/page.scm (make-page): add footer/header.
5140         (annotate-space-left): revise: only take page argument.
5141         (layout->page-init): new function.
5142
5143         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5144         version of the system/spacing/linebreak hack writing to the output
5145
5146         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5147         ly:make-prob.
5148
5149         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5150         ly:spanner-bound
5151
5152 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5153
5154         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5155
5156         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5157
5158         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5159         handling to page.scm
5160
5161         * lily/prob-scheme.cc (LY_DEFINE): new file.
5162         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5163
5164         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5165         prob functions.
5166
5167         * lily/music.cc (derived_mark): derive Music from Prob.
5168
5169         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5170
5171         * lily/prob.cc (Module): Implement Prob (Property Object), object
5172         with shared and r/w property alists.  
5173
5174         * lily/include/prob.hh (Module): new file. Declare Prob.
5175
5176         * flower/string.cc: remove is_empty().
5177
5178         * flower/include/string.hh (class String): remove String:: qualifier.
5179
5180         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5181         substitute appropriate functions.
5182
5183         * flower/include/string.hh (class String): remove to_str0 and
5184         is_empty(). S&R everywhere.
5185
5186 2006-01-23  Graham Percival  <gpermus@gmail.com>
5187
5188         * Documentation/user/basic-notation.itely: add hairpin
5189         after-linebreak tweak to commonprop.
5190
5191         * Documentation/user/putting.itely: added two new sections.
5192
5193 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5194
5195         * flower/international.cc: 
5196         * flower/include/international.hh: 
5197
5198         * flower/getopt-long.cc: 
5199         * flower/include/getopt-long.hh: Use std::string [interface].
5200         Update callers.
5201
5202         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5203
5204         * stepmake/stepmake/executable-rules.make: Add dependency on
5205         module libraries.
5206
5207 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5208
5209         * flower/file-path.cc: 
5210         * flower/include/file-path.hh: Use std::string [interface].
5211         Update callers.
5212
5213         * flower/direction.cc: 
5214         * flower/axis.cc: Unused.  Remove.
5215
5216         * configure.in (--enable-std-string): New option.
5217
5218         * flower/std-string.cc: 
5219         * flower/include/std-string.hh: New file.
5220
5221         * flower/file-name.cc[STD_STRING]:
5222         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5223
5224 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5225
5226         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5227
5228         * scm/define-markup-commands.scm (with-dimensions):
5229         with-dimensions markup command.
5230
5231         * input/test/font-table.ly: use it.
5232
5233         * lily/open-type-font.cc (glyph_list): new function.
5234
5235         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5236
5237         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5238
5239 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5240
5241         * ly/music-functions-init.ly (parallelMusic): new music function
5242         for parallel music entry.
5243
5244         * scm/define-music-properties.scm (all-music-properties): new
5245         'void music property
5246
5247         * scm/music-functions.scm (ly:music-message): make public, to be
5248         used in music function definitions
5249
5250         * scm/lily-library.scm (collect-music-for-book): discard music
5251         when the 'void property is set.
5252
5253 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5254
5255         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5256
5257         * mf/GNUmakefile: idem.
5258
5259         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5260
5261         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5262
5263         * Documentation/user/notation-appendices.itely (The Feta font):
5264         use it.
5265
5266         * input/test/font-table.ly: new file. Generate font table within lily.
5267
5268         * Documentation/user/notation-appendices.itely (The Feta font):
5269         use new font-table.ly file. 
5270
5271         * stepmake/stepmake/install-out-targets.make
5272         (local-install-outfiles): only create directory if
5273         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5274
5275 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5276
5277         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5278
5279         * VERSION (PACKAGE_NAME): release 2.7.28
5280
5281         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5282         the right font from a Mac dfont.
5283         (write-preamble): don't forget directory, only look at files.
5284
5285         This fixes problems with TTF files in dfonts that don't match
5286         their PostScript names.
5287          
5288         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5289         PS name from TTF font.
5290
5291         * input/regression/tie-manual.ly: document new feature.
5292
5293         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5294
5295         * VERSION (MY_PATCH_LEVEL): bump to .28
5296
5297         * Documentation/user/basic-notation.itely (Ties): add tie examples
5298         refs.
5299
5300         * lily/tie-formatting-problem.cc (score_ties_configuration):
5301         symmetry penalties for outer ties.
5302
5303 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5304
5305         * lily/tie-formatting-problem.cc (generate_configuration) 
5306         (set_manual_tie_configuration): skip non-pair manual
5307         tie-configuration, so you can set individual ties as
5308
5309           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5310
5311         * input/regression/tie-chord.ly: use generateTiePattern to
5312         simplify file.
5313
5314         * lily/tie-formatting-problem.cc (peak_around): new function.
5315         (score_configuration): use sliding criterion for staff line collisions. 
5316         (score_configuration): idem for dot collisions.
5317         (generate_configuration): use separate stem_gap for gap to stem.
5318
5319         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5320         separate penalty factors for x and y distance.
5321         (struct Tie_details): separate penalties for tip and center line collisions.
5322
5323 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5324
5325         * lily/tie-formatting-problem.cc (generate_configuration): make
5326         large ties avoid stafflines in the horizontal section.
5327         (score_configuration): use softcoded penalties
5328         (score_aptitude): idem.
5329
5330         * lily/tie-helper.cc (from_grob): softcode tie details
5331
5332         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5333
5334         * lily/staff-symbol-referencer.cc (on_line): rename from
5335         on_staffline 
5336
5337 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5338
5339         * ly/music-functions-init.ly: remove duplicate tag.
5340
5341         * lily/include/*.hh: GCC 4.1 fixes.
5342
5343 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5344
5345         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5346
5347         * scm/define-music-types.scm: fix bug in desc. string
5348         for OverrideProperty
5349
5350 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5351
5352         * scripts/lilypond-book.py: bugfix
5353
5354         * scm/define-music-types.scm: fix typos.
5355
5356 2006-01-14  Graham Percival  <gpermus@gmail.com>
5357
5358         * Documentation/user/ basic-notation.itely, global.itely,
5359         advanced-notation.itely, instrument-notation.itely: small
5360         additions (bugs and commonly tweaked properties).
5361
5362 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5363
5364         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5365         detection of mingw build.
5366         (MINGW_BUILD): opps.
5367
5368 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5369
5370         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5371         i686-mingw32.
5372
5373 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5374
5375         * scm/music-functions.scm (skip->rest): add skip->rest
5376
5377 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5378
5379         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5380         explicitly.
5381
5382         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5383         config dirs. Aids debugging. 
5384         (display_config): also display config files.
5385
5386 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5387
5388         * VERSION: release 2.7.27
5389
5390         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5391         for determining bar size.
5392
5393         * lily/staff-symbol.cc (print): place lines at distance line-positions
5394
5395         * scm/define-grob-properties.scm (all-user-grob-properties): add
5396         line-positions.
5397
5398         * lily/staff-symbol.cc (height): new function.
5399
5400         * input/regression/staff-line-positions.ly:  new file.
5401
5402 2006-01-06  Graham Percival  <gpermus@gmail.com>
5403
5404         * input/test/add-staccato.ly: remove reference to old file.
5405
5406 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5407
5408         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5409         lilypond binary too.
5410
5411 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5412
5413         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5414
5415 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5416
5417         * scripts/midi2ly.py: Bugfix: Declare datadir.
5418
5419         * make/ly-rules.make:
5420         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5421         that seems to be gone). Fixes make web.
5422
5423         * The grand 2005-2006 replace.
5424
5425         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5426
5427 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5428
5429         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5430         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5431         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5432         like -dgs-font-load.
5433
5434         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5435         remove absolute path to lilypond binary.
5436         
5437 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5438
5439         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5440
5441 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5442
5443         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5444
5445         * mf/GNUmakefile: remove broken dvips map symlink.
5446
5447 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5448
5449         * lily/main.cc: 
5450         * configure.in: Cosmetic fixes.
5451
5452 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5453
5454         * Documentation/user/music-glossary.tely (Pitch names): Added
5455         Spanish pitch names and durations, thanks to Ernesto Gancedo
5456
5457 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5458
5459         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5460         init. Fixes verbose printing of .scm files.
5461
5462         * stepmake/aclocal.m4: add spaces before - options.
5463         
5464 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5465
5466         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5467         of path search in local block variable.
5468
5469 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5470
5471         * configure.in (NCSB_DIR): --enable-ncsb-dir
5472         (LINK_GXX_STATICALLY): denko.
5473
5474         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5475
5476         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5477         use locate to find c059033l.pfb. 
5478         
5479 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5480
5481         * lily/tie-formatting-problem.cc
5482         (problem::generate_base_chord_configuration): Use my_round (was
5483         round).
5484
5485         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5486         do not invoke mbrtowc.
5487
5488         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5489
5490 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5491
5492         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5493
5494 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5495
5496         * Documentation/user/invoking.itely (svg): revise.
5497
5498 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5499
5500         * lily/lexer.ll: use sourcefilename iso. renameinput.
5501
5502 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5503
5504         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5505         <PostScriptName>.ttf instead of c059XXXttf.
5506
5507         * lily/program-option.cc (LY_DEFINE): special support for
5508         --verbose, so it works before option init too.
5509  
5510         * mf/GNUmakefile (local-install): oops.
5511
5512         * lily/lyric-hyphen.cc (print): oops.
5513
5514         * buildscripts/pfx2ttf.fontforge: new file.
5515         
5516         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5517         ($(outdir)/%.ttf): new rule. 
5518
5519         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5520         to LyricHyphen.
5521
5522         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5523         font-size
5524
5525 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5526
5527         * VERSION: release 2.7.26
5528         
5529         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5530
5531 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5532
5533         * lily/font-config.cc (init_fontconfig): verbosity.
5534
5535         * THANKS: add Muziekacademie Lede. 
5536
5537         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5538         (print_score_setup): new function
5539         (convert): read part definition to output staves properly.
5540
5541         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5542         Music_xml notes.
5543
5544         * python/musicexp.py (Output_printer.__init__): use _ in data
5545         members.
5546         (Output_printer.unformatted_output): new function: no formatting,
5547         but count braces.
5548         (Duration.get_length): remove isinstance() checks for
5549         Output_printer everywhere.
5550
5551         * input/regression/lyrics-bar.ly (texidoc): add
5552         Separating_line_group_engraver.
5553
5554 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5555
5556         * lily/relocate.cc (framework_relocation): New function,
5557         factored from set_relocation ().
5558         (prefix_relocation): Rename from set_relocation ().
5559         (setup_paths): Use it.
5560
5561 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5562
5563         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5564         numbers. Patch by Erlend Aasland.
5565
5566 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5567
5568         * lily/font-config.cc (init_fontconfig): print warning if cache
5569         file is not existant.
5570
5571         * lily/main.cc: don't use #ifdef but #if
5572
5573 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5574
5575         * lily/grob-property.cc (internal_set_property): don't abort on
5576         calculation-in-progress.
5577
5578         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5579
5580         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5581         connect-to-neighbor property not connect-to-other
5582
5583         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5584         (LY_DEFINE): oops. don't forget protection.
5585
5586         * flower/parse-afm.cc (Module): strip AFM handling completely.
5587
5588         * lily/stencil-expression.cc: idem.
5589
5590         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5591
5592         * lily/function-documentation.cc (ly_add_function_documentation):
5593         use static member iso. Protected_scm
5594
5595         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5596
5597         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5598
5599 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5600
5601         * lily/relocate.cc (set_env_dir): New function.
5602         (set_relocation): Use it to fix setting PANGO_PREFIX.
5603
5604 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5605
5606         * input/regression/stem-direction-context.ly: remove rest.
5607
5608         * lily/melody-engraver.cc (process_music): restart for bar lines.
5609         (acknowledge_slur): restart for slurs.
5610
5611 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5612
5613         * Documentation/user/invoking.itely: describe how to view SVG 
5614         output using Inkscape which replace embedded fonts with OTF fonts.
5615
5616 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5617
5618         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5619
5620 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5621
5622         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5623         comment.
5624
5625 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5626
5627         * VERSION (PACKAGE_NAME): release 2.7.25
5628
5629         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5630
5631         * input/regression/stem-direction-context.ly: new file.
5632
5633         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5634
5635         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5636         on rest.
5637
5638         * ly/engraver-init.ly: add Melody_engraver
5639
5640         * lily/beam.cc (calc_direction): use default-direction
5641         iso. get_default_direction()
5642
5643         * scm/define-grob-properties.scm (all-user-grob-properties): add
5644         default-direction property.
5645
5646         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5647
5648         * lily/stem.cc (calc_default_direction): remove
5649         Stem::get_default_direction, use default-direction with callback
5650         instead.
5651
5652         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5653
5654         * lily/melody-engraver.cc: new file. Acknowledge stems for
5655         interpolated stem directions. 
5656
5657         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5658
5659         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5660
5661         * lily/slur-configuration.cc (fit_factor): more robust check for
5662         point in curve X-extent.
5663
5664         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5665         (outside_slur_callback): check for 'outside avoidance.
5666
5667         * lily/slur-configuration.cc (score_extra_encompass): don't use
5668         bound->column() == avoid->column() for checking extents, as this
5669         doesn't work for accidentals. 
5670
5671         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5672         DynamicText hardcoding.
5673
5674         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5675         crash if bound stem is NULL
5676
5677         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5678         pedals.
5679
5680 2005-12-22  Graham Percival  <gpermus@gmail.com>
5681
5682         * scm/define-markup-commands.scm: typo.  @code{\raise}
5683         => @code{\\raise}.
5684
5685         * darwin.patch: now used again, includes a
5686         required patch from fink.
5687
5688 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5689
5690         * po/TODO: mention gtranslator along with kbabel.
5691         * po/fi.po: update translations.
5692
5693 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5694
5695         * lily/relocate.cc (setup_paths): Bugfix.
5696
5697 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5698
5699         * lily/slur-configuration.cc (score_extra_encompass): don't use
5700         "avoid" choice for avoid-slur.
5701
5702         * stepmake/bin/install.py (dest): don't create existing dir.
5703
5704 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5705
5706         * stepmake/bin/install.py: Remove file before copying.
5707
5708         * config.make.in: 
5709         * stepmake/aclocal.m4: Do not substitute INSTALL.
5710
5711 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5712
5713         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5714         depend on link-tree.
5715
5716         * lily/relocate.cc (setup_paths): only check path for non-absolute
5717         dir without directory part.
5718
5719         * flower/file-name.cc (is_absolute):  new method.
5720         (is_absolute): check root_ too.
5721
5722 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5723
5724         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5725         relocation code.  Oops, don't comment out too much.
5726
5727         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5728         iso itself.
5729
5730         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5731         compile.
5732
5733 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5734
5735         * .cvsignore: Add install-sh.
5736
5737         * autogen.sh (srcdir): Typo.
5738
5739 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5740
5741         * autogen.sh (srcdir): urg. Touch install-sh.
5742
5743         * stepmake/bin/install-sh (Module): remove.
5744
5745         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5746
5747         * lily/include/relocate.hh: new file.
5748
5749         * lily/relocate.cc: new file. Contain relocation logic.
5750
5751         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5752         (main): read LILYPOND_VERBOSE as the first thing.
5753
5754         * stepmake/aclocal.m4: remove INSTALL variable.
5755
5756         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5757         separate target for making font symlinks.
5758         (documentation-dir): use $(if $(findstring )) for switching off
5759         Documentation.
5760
5761         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5762         something if DOCUMENTATION is no.
5763
5764 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5765
5766         * VERSION: release 2.7.24
5767
5768         * lily/script-column-engraver.cc (stop_translation_timestep):
5769         delay adding to script-column.
5770
5771         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5772
5773         * python/convertrules.py (conv): rule for number-visibility
5774
5775         * lily/slur-configuration.cc (score_extra_encompass): different
5776         distance measure for avoid and inside avoidance.
5777         (score_extra_encompass): use 1/(distance+eps) as penalty.
5778
5779         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5780         encompass objects for generating slur curves.
5781
5782         * lily/slur.cc: use details iso. slur-details property.
5783
5784         * input/regression/slur-tuplet.ly: new file.
5785
5786         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5787
5788         * flower/include/offset.hh (class Offset): new operator /=
5789
5790         * lily/tuplet-number.cc (print): new file, new interface.
5791
5792         * scm/define-grob-properties.scm (all-user-grob-properties):
5793         remove number-visibility property.
5794
5795         * lily/tuplet-bracket.cc (calc_control_points): new function
5796         (calc_connect_to_neighbors): new function.
5797         (print): remove text handling for tuplet numberdef.
5798
5799         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5800         TupletNumbers too. 
5801
5802         * lily/lily-guile.cc (robust_scm2booldrul): new function
5803
5804         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5805
5806         * lily/tuplet-bracket.cc (calc_position_and_height): use
5807         staff-padding to control whether tuplet brackets are over staves.
5808
5809         * lily/grob.cc (suicide): clear dim_caches_.
5810
5811         * lily/dimension-cache.cc (clear): new function.
5812
5813         * lily/grob.cc (extent): swap order of min-extent and extent
5814         calculations. This fixes hara kiri staves. 
5815
5816 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5817
5818         * lily/main.cc: Nitpick: relocation is not based on path, but on
5819         directory (location).
5820
5821 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5822
5823         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5824
5825         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5826
5827         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5828
5829         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5830
5831         * stepmake/stepmake/generic-vars.make (Module): idem.
5832
5833         * stepmake/stepmake/executable-targets.make (default): use it.
5834
5835         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5836
5837         * make/GNUmakefile: don't install make rules.
5838
5839         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5840         slashes.
5841         (prepend_env_path): more verbosity.
5842
5843 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5844
5845         * GNUmakefile.in: add dir argument for find command.
5846
5847         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5848         fixes weird line numbers for point & click.
5849
5850         * lily/source-file.cc (get_counts): init line/column/char counts.
5851
5852 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5853
5854         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5855
5856 2005-12-16  Graham Percival  <gpermus@gmail.com>
5857
5858         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5859         minor fixes from Fredric.  Thanks!
5860
5861 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5862
5863         * ly/music-functions-init.ly: add \bar and \clef music function 
5864
5865         * lily/lily-lexer.cc: idem.
5866
5867         * lily/parser.yy (FIXME): remove BAR and CLEF.
5868
5869 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5870
5871         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5872
5873         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5874         function arguments too
5875
5876         * lily/main.cc (set_relocation): new function.
5877
5878         * scripts/musicxml2ly.py (convert): add \version
5879
5880         * lily/tie.cc: remove get_default_attachments()
5881
5882         * VERSION (PACKAGE_NAME): release 2.7.23
5883         
5884         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5885         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5886
5887         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5888
5889         * lily/tie-formatting-problem.cc (score_ties): new function
5890         (get_variations): new function. Try flipping dirs for collisions.
5891         (generate_optimal_chord_configuration): new function. 1-opt search
5892         for better configuration.
5893
5894         * lily/tie-configuration.cc: new file.
5895
5896         * lily/tie.cc: junk Tie::get_configuration()
5897
5898         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5899         (score_ties_configuration): new function.
5900         (generate_ties_configuration): new function.
5901         (generate_base_chord_configuration): new function.
5902         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5903         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5904
5905         * input/regression/tie-dot.ly: new file.
5906
5907         * lily/tie-formatting-problem.cc (score_configuration): score
5908         tie/dot collisions.
5909
5910         * lily/tie-helper.cc (get_transformed_bezier): new function
5911
5912         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5913
5914         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5915         -undefined suppress iso. -framework Python 
5916
5917         * scm/define-grobs.scm (all-grob-descriptions): set
5918         springs-and-rods (thanks Joe Neeman!)
5919
5920 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5921
5922         * input/no-notation/display-lily-tests.ly (test): 
5923         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5924         changed from \tag #'(a b) to \tag #'a \tag #'b
5925
5926 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5927
5928         * Documentation/topdocs/NEWS.tely: strip out-www.
5929
5930         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5931
5932         * config.make.in (AR): add AR and RANLIB
5933
5934         * flower/libc-extension.cc: include cassert
5935
5936         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
5937         darwin check.
5938
5939 2005-12-11  Graham Percival  <gpermus@gmail.com>
5940
5941         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
5942
5943         * stepmake/stepmake/python-modules-vars.make: define
5944         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
5945
5946         * THANKS: added Johannes Schindelin.
5947
5948 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5949
5950         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
5951
5952         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5953         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
5954
5955         * lily/parser.yy: reorganize file layout.
5956
5957         * ly/music-functions-init.ly: add tweak music function.
5958
5959         * lily/grob-info.cc (ultimate_music_cause): new function:
5960         recursively lookup causes. 
5961
5962         * lily/parser.yy (chord_body_element): allow music functions for
5963         post-events, allow music functions for chord elements. 
5964  
5965         * lily/font-config-scheme.cc (display_fontset): add cast.
5966
5967         * python/convertrules.py (FatalConversionError.sub_syms): \tag
5968         #'(a b) -> \tag #'a \tag #'b rule.
5969
5970         * python/musicexp.py (Output_printer.dump_version): new function
5971
5972 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5973
5974         * lily/parser.yy (FIXME): remove \tag
5975         (FIXME): remove tag_music() function.
5976
5977         * lily/lily-lexer.cc: remove \tag
5978
5979         * ly/music-functions-init.ly: define music-function "tag"
5980
5981         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
5982
5983 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5984
5985         * VERSION (PATCH_LEVEL): release 2.7.22
5986
5987         * input/regression/lyric-hyphen-retain.ly: renew.
5988
5989         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
5990         grob
5991
5992         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
5993         iso. minimum-length property for rods.
5994
5995         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
5996         LyricSpace item to keep lyrics spaced apart.
5997
5998         * ly/engraver-init.ly: remove Separating_line_group_engraver
5999
6000         * Documentation/user/music-glossary.tely: do setfilename before
6001         music-glossary.
6002
6003 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6004
6005         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6006         See xref documentation, for example.
6007
6008 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6009
6010         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6011         pending_skip iso. ly_voice[-1]
6012         (main): add if __main__ for debugging.
6013
6014         * python/musicxml.py (Accidental.__init__): new class.
6015
6016         * scripts/musicxml2ly.py (progress): new function
6017         (musicxml_key_to_lily): don't barf on modeless keys.
6018         (create_skip_music): new function.
6019         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6020         (musicxml_note_to_lily_main_event): new function.
6021
6022         * python/musicexp.py (Music.__init__): add comment field.
6023         (NestedMusic.append): new routine.
6024         (SequentialMusic.print_ly): print comment.
6025         (ArpeggioEvent.ly_expression): new class
6026         (BeamEvent.ly_expression): new class
6027         (NoteEvent.__init__): support for cautionary/forced accs.
6028
6029         * lily/lookup.cc (slur): normal order for array loop.
6030
6031         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6032         to 0.0.
6033
6034         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6035         collapsed.
6036
6037 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6038
6039         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6040
6041         * scripts/lilypond-book.py: Introduce option
6042             --preserve-line-breaks, for usage with srcltx
6043
6044 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6045
6046         * scm/output-lib.scm (print-circled-text-callback): draw circle
6047         around text using make-circle-markup.
6048
6049         * Documentation/user/*: strip out-www from file names.
6050
6051 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6052
6053         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6054         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6055
6056 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6057
6058         * Documentation/user/GNUmakefile: idem.
6059
6060         * Documentation/user/macros.itexi: strip out-www
6061
6062         * python/rational.py: python 2.3 compat.
6063
6064         * VERSION (PATCH_LEVEL): release 2.7.21
6065
6066         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6067         option formatting, lilypond style.
6068
6069         * python/musicexp.py: grab from Ikebana: a library for composing
6070         ly music expressions. 
6071         (Output_printer): class for advanced .ly printing.
6072         (eg. tupletting) 
6073
6074         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6075         convert to pythonesque structure.
6076
6077         * python/rational.py: PD rational number class.
6078
6079         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6080
6081 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6082
6083         * lily/part-combine-iterator.cc: Minor bugfix
6084         
6085         * THANKS: Update bughunters
6086
6087 2005-12-02  Werner Lemberg  <wl@gnu.org>
6088
6089         * mf/README: Document process for proper mf2pt1 conversion.
6090
6091         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6092         overlapping.
6093
6094         * mf/feta-harmonica.mf: Removed.  Unused.
6095
6096 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6097
6098         * scripts/lilypond-book.py (do_file): fix thinkos.
6099
6100 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6101
6102         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6103         ($(outdir)/parser.cc): 
6104         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6105
6106 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6107
6108         * ly/titling-init.ly (tagline): it should be a space between
6109         "Music engraving by LilyPond" and the version number.
6110
6111 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6112
6113         * VERSION (PACKAGE_NAME): release 2.7.20
6114
6115 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6116
6117         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6118
6119         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6120         1.0.
6121         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6122
6123 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6124
6125         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6126
6127         * kpath-guile/: remove directory
6128
6129         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6130         file. Encapsulate kpathsea using commandline tools.
6131
6132         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6133         kpathsea) module.
6134
6135 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6136
6137         * Documentation/user/advanced-notation.itely (Setting automatic
6138         beam behavior): Correct a few typos. Thanks to David Bobroff.
6139
6140         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6141         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6142
6143 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6144
6145         * scripts/*.py: gmane address for bugs.
6146
6147 2005-11-28 Pal Benko <benkop@freestart.hu>
6148         
6149         * make/ly-rules.make: add -f switch to mv
6150
6151         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6152
6153         * lily/bar-line.cc: interpret it
6154
6155 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6156
6157         * configure.in (--disable-documentation): New switch.
6158
6159         * GNUmakefile.in: Use it.
6160
6161         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6162
6163 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6164
6165         * scripts/lilypond-book.py (do_file): search chunks for
6166         \\begin{document}
6167
6168         * GNUmakefile.in: add copy step in between so we can lose the
6169         out-www directories.
6170
6171 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6172
6173         * lily/pango-font.cc (pango_item_string_stencil): put
6174         geometry.width into glyph-string too.
6175
6176 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6177
6178         * scm/define-music-display-methods.scm (RevertProperty):
6179         (OverrideProperty): Use grob-property-path property, a list of
6180         symbols, instead of grob-property, which used to be a single
6181         symbol.
6182         (BassFigureEvent): a figure can be a plain number, not necessarily a
6183         markup.
6184
6185 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6186
6187         * VERSION: release 2.7.19
6188         
6189         * lily/figured-bass-engraver.cc (process_music): check
6190         figuredBassCenterContinuations first.
6191
6192         * scm/translation-functions.scm (format-bass-figure): make double
6193         sharp larger. 
6194
6195         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6196         determine X-parent.
6197
6198         * lily/system-start-delimiter-engraver.cc: move from
6199         Nested_system_start_delimiter_engraver, rename
6200         Nested_system_start_delimiter_engraver ->
6201         System_start_delimiter_engraver.
6202
6203         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6204         bracket type from hierarchy.
6205
6206 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6207
6208         * lily/rest.cc (y_offset_callback): read staff-position.
6209
6210         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6211         mark after-line-breaking-callback as internal.
6212
6213         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6214
6215 2005-11-25  Werner Lemberg  <wl@gnu.org>
6216
6217         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6218
6219 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6220
6221         * stepmake/bin/add-html-footer.py (do_file): add google
6222
6223         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6224         staff if first_start_ is true.
6225
6226 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6227
6228         * scripts/midi2ly.py (split_track): add __repr__ members.
6229         (track_first_item): only return Item if not None. This fixes a
6230         problem when dumping a track that starts with an empty channel.
6231
6232         * python/midi.c: doc module.
6233
6234 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6235
6236         * Documentation/user/global.itely (Creating MIDI files): Fix
6237         compilation problem.
6238
6239 2005-11-22  Graham Percival  <gpermus@gmail.com>
6240
6241         * Documentation/user/basic-notation.itely: clarify dynamic
6242         padding text.
6243
6244         * Documentation/user/advanced-notation.itely: add unicode
6245         escape control example, whatever that is.  :)
6246
6247         * Documentation/user/global.itely: added "removing dynamics
6248         from MIDI" code.
6249
6250 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6251
6252         * VERSION (PATCH_LEVEL): release 2.7.18
6253
6254         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6255         System_start_delimiter_engraver by
6256         Nested_system_start_delimiter_engraver.
6257
6258         * lily/nested-system-start-delimiter-engraver.cc (struct
6259         Bracket_nesting_node): new class.
6260         (struct Bracket_nesting_group): new class
6261         (struct Bracket_nesting_staff): new class.
6262         (process_music): create hierarchy of grobs. This allows separate
6263         tuning of different SSDs. 
6264
6265         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6266         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6267
6268 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6269
6270         * lily/side-position-interface.cc (aligned_side): multiply
6271         staff_radius by 2.
6272
6273         * lily/script-engraver.cc (make_script_from_event): allow setting
6274         values to '()
6275
6276 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6277
6278         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6279
6280         * scm/define-grobs.scm (all-grob-descriptions): new grob
6281         NestedSystemStartDelimiter.
6282
6283         * input/regression/system-start-heavy-bar.ly: new file.
6284
6285         * lily/nested-system-start-delimiter-engraver.cc: new file.
6286
6287         * lily/nested-system-start-delimiter.cc: new file.
6288
6289         * input/regression/system-start-nesting.ly: new file.
6290
6291         * scm/define-grobs.scm (all-grob-descriptions): use X side
6292         positioning for positioning braces for nested contexts.
6293
6294         * lily/system-start-delimiter.cc (print): don't divide extent by
6295         staff_space.
6296         (print): use style iso. glyph.
6297         (staff_bracket): translate glyph inside routine already.
6298
6299 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6300
6301         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6302         names.
6303
6304 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6305
6306         * scm/define-context-properties.scm
6307         (all-user-translation-properties): rename figuredBassFormatter
6308         from newFiguredBassFormatter.
6309
6310         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6311
6312         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6313
6314         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6315
6316         * lily/beam.cc (calc_beaming): new function.
6317         (calc_shorten): new function.
6318
6319         * THANKS: add Edward Neeman.
6320
6321         * input/regression/accidental-clef-change.ly: new file.
6322
6323         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6324
6325         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6326
6327         * lily/clef-engraver.cc (inspect_clef_properties): reset
6328         localKeySignature for clef changes.
6329
6330 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6331
6332         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6333         add dummy definition that works in Linux and add information in
6334         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6335
6336         * Documentation/user/changing-defaults.itely (Modifying context
6337         plug-ins): Add index for \with.
6338
6339         * Documentation/user/music-glossary.tely (dal segno): Updated
6340         example to version >=2.6.
6341
6342 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6343
6344         * Documentation/user/instrument-notation.itely (Printing chord
6345         names): Reorder \chordmode and \repeat in one example.
6346
6347 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6348
6349         * VERSION: release 2.7.17
6350         
6351         * Documentation/topdocs/NEWS.tely (Top): add note about
6352         refactoring.
6353
6354         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6355         new function. Search region of 3 positions for best tie.
6356         (score_configuration): new function.
6357         (score_aptitude): new function.
6358         (generate_configuration): new function.
6359         (get_configuration): new function.
6360         (Tie_formatting_problem): new function
6361
6362         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6363
6364         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6365
6366         * THANKS: add Eduardo Vieira & Ralph Little
6367
6368         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6369         narrower.
6370
6371         * lily/include/tie-formatting-problem.hh (class
6372         Tie_formatting_problem): add Tie_details to
6373         Tie_formatting_problem. Update calling conventions.
6374
6375         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6376         config.make.
6377
6378         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6379
6380 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6381
6382         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6383         scm/define-context-properties.scm: Maintenance bugfix: make
6384         ligature brackets work again by removing obsolete ligature
6385         primitive callback push/pop.
6386
6387         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6388         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6389         value.
6390
6391 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6392
6393         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6394         used and do not call it a path.
6395         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6396
6397 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6398
6399         * lily/include/tie-formatting-problem.hh (class
6400         Tie_formatting_problem): new file.
6401
6402         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6403
6404         * Documentation/misc/ChangeLog-2.3:  new file.
6405
6406         * lily/audio-staff.cc (output): degarianize.
6407
6408 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6409
6410         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6411         Unset PYTHONOPTIMIZE.  Fixes install if set.
6412
6413 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6414
6415         * python/convertrules.py (conv): add warning about drums. 
6416
6417         * make/stepmake.make: include toplevel-version.make after config.make.
6418
6419         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6420         also allow python2.4
6421
6422         * config.make.in (configure-srcdir): remove GXX GCC vars.
6423
6424         * stepmake/aclocal.m4: don't do non-srcdir build with
6425         symlinks. Use inclusion, so the src directory name can be changed.
6426
6427 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6428
6429         * make/mutopia-vars.make:
6430         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6431         files.
6432
6433 2005-11-13  Werner Lemberg  <wl@gnu.org>
6434
6435         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6436         but the affected path.  This ensures that the (overlapping) outlines
6437         have the same direction, which is a necessary prerequisite for
6438         FontForge's algorithm to remove overlaps.
6439         Formatting.
6440
6441         * mf/feta-haak.mf: Formatting.
6442         (draw_bracket): Slightly modify outline to avoid an unnecessary
6443         corner.
6444         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6445         them from the affected paths.
6446
6447 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6448
6449         * mf/README: remove xpm / accordion notes.
6450
6451         * lily/tie-column-format.cc (set_chord_outline): add dots into
6452         skyline extents. This fixes tie formatting if the left head has dots.
6453
6454         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6455         space inside the staff.
6456         (get_configuration): shift another position if necessary in case
6457         of left head tie  
6458
6459 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6460
6461         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6462         buildscript-dir iso. $(depth)/buildscripts.
6463
6464         * tex/GNUmakefile (local-uninstall): remove
6465         music-drawing-routines.ps juggling.
6466
6467         * stepmake/stepmake/install-targets.make (local-install-files):
6468         prepend src-dir to install targets.
6469
6470         * lily/system-start-delimiter-engraver.cc
6471         (acknowledge_system_start_delimiter): use
6472         add_offset_callback(). This fixes translation of nested
6473         staffgroups.
6474
6475         * lily/grob-closure.cc (add_offset_callback): only encaps in
6476         simple_closure if it's a procedure.
6477         
6478         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6479         from bar-line.
6480
6481         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6482         remove-empty where pertinent.
6483
6484 2005-11-12  Graham Percival  <gpermus@gmail.com>
6485
6486         * Documentation/user/instrument-notation.itely: added
6487         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6488
6489 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6490
6491         * lily/GNUmakefile
6492         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6493         make picture in builddir, not srcdir.
6494
6495 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6496
6497         * VERSION: release 2.7.16
6498         
6499         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6500         shell arguments. 
6501
6502 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6503
6504         * Documentation/user/examples.itely (Piano templates): Minor
6505         modification to the Piano centered lyrics example.
6506
6507 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6508
6509         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6510         $BROWSER.
6511
6512         * Documentation/user/point-and-click.itely: simplify p&c
6513         instruction: don't configure firefox. Put lilypond-invoke-editor
6514         in front of the browser.
6515
6516         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6517         (run-browser): new function.
6518
6519         * lily/parser.yy (Lily_lexer): recognize Book
6520
6521         * lily/book.cc (clone): new function
6522
6523         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6524
6525 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6526
6527         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6528         Maintenance bugfix: reduce number of font related warnings by
6529         updating naming conventions for glyph-name.
6530
6531 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6532
6533         * scm/define-grobs.scm (all-grob-descriptions): add
6534         rhythmic-grob-interface to TabNoteHead.
6535
6536         * scm/layout-beam.scm (check-quant-callbacks): remove
6537         set_stem_lengths()
6538
6539 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6540
6541         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6542         alignment of centered divisiones.
6543
6544         * scm/scripts.scm (articulations): Maintenance bugfix:
6545         follow-into-staff -> quantize-position.
6546
6547         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6548         plica head in porrectus deminutus.
6549
6550 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6551
6552         * make/lilypond.fedora.spec.in (Group): add %clean section.
6553
6554         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6555         less then 1/5th of total length.  
6556         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6557
6558         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6559         events into EventChord. This fixes textspanners on mm rests. Fixes
6560         spanner-rest.ly
6561
6562         * lily/side-position-interface.cc (get_axis): read side-axis
6563         (set_axis): set side-axis.
6564
6565         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6566         properties everywhere.
6567
6568         * lily/spacing-spanner.cc (breakable_column_spacing): add
6569         average-spacing-wishes. Take maximum if not set.
6570         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6571
6572         * scm/define-grobs.scm (all-grob-descriptions): add
6573         average-spacing-wishes.
6574
6575         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6576         offset callbacks. This fixes alignment for Fingering objects.
6577
6578         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6579         space for key - timesig combination. 
6580
6581         * input/regression/script-stem-tremolo.ly (Module): new file.
6582
6583         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6584         to key sig.
6585
6586         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6587         Fixes: c-tremolo-script.ly.
6588         
6589         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6590
6591         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6592         
6593         * scm/define-grobs.scm (all-grob-descriptions): remove
6594         self-X-offset. Fixes alignment of octavate-8.
6595
6596         * scripts/lilypond-book.py (datadir): look in
6597         LILYPONDPREFIX/share/lilypond/current/
6598
6599         * GNUmakefile.in: symlink current to <VERSION>. 
6600
6601 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6602
6603         * lily/main.cc: eps listed as a backend.
6604
6605 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6606
6607         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6608
6609 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6610
6611         * lily/include/score.hh (class Score): remove texts_ member.
6612
6613         * lily/beam.cc (set_stem_lengths): force direction callback.
6614         (print): read quantized-positions, so we can force
6615         Beam::set_stem_lengths to occur.
6616         (rest_collision_callback): use common X parent. 
6617
6618 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6619
6620         * flower/file-path.cc (find): Bugfix: Return name of file found.
6621
6622         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6623         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6624         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6625
6626 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6627
6628         * flower/offset.cc: idem.
6629
6630         * mf/*.mf: update email address.
6631
6632         * lily/font-config-scheme.cc:  new file.
6633
6634         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6635
6636         * lily/*:  cs.uu.nl -> xs4all.nl
6637
6638         * VERSION (PATCH_LEVEL): release 2.7.15
6639
6640         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6641         spec files.
6642
6643         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6644
6645 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6646
6647         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6648
6649         * lily/staff-performer.cc (process_music): add audio
6650         elements. This makes MIDI instrument changes work once again.
6651
6652         * lily/main.cc (LY_DEFINE): add gmane address.
6653
6654         * lily/beam.cc: remove calc_positions()
6655
6656         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6657         original_ in private scope.
6658         (class Grob): drop pscore_ pointer, change to output_def pointer.
6659         (class Grob): cleanup class definition.
6660
6661         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6662
6663 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6664
6665         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6666         absolute.  Better diagnostics.
6667
6668         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6669         This makes lilypond run from the build directory using argv0
6670         relocation (without any --prefix or LILYPONDPREFIX setting).
6671
6672 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6673
6674         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6675
6676         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6677         with simple-closure.
6678
6679         * lily/self-aligment-interface.cc (set_align_self): new function
6680         (set_center_parent): new function.
6681
6682         * lily/side-position-interface.cc (set_axis): new function.
6683
6684         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6685         generic code. 
6686
6687         * scm/define-grob-properties.scm (all-user-grob-properties):
6688         remove [XY]-offset-callbacks add [YX]-offset
6689         
6690 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6691
6692         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6693         entry for time signatures after breathing signs. Bug report by
6694         Scott Russell.
6695
6696 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6697
6698         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6699         not absolute, make it absolute using PATH.
6700
6701 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6702
6703         * python/midi.c (initmidi): Fix type for mingw.
6704
6705 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6706
6707         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6708
6709         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6710         cross compiling.
6711
6712         * stepmake/aclocal.m4: Support python cross compiling.
6713
6714         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6715         Add mingw section.
6716
6717 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6718
6719         * scm/output-lib.scm (chain-grob-member-functions): replace
6720         chained-callback.cc
6721
6722         * lily/chained-callback.cc (Module): remove file.
6723
6724         * lily/rest-collision.cc (force_shift_callback_rest): change to
6725         chained callback.
6726
6727         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6728
6729         * lily/grob.cc (y_parent_positioning): remove axis argument from
6730         parent_positioning callbacks.
6731         (Grob): junk init code
6732         (get_offset): use generic property callbacks for
6733         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6734         (axis_parent_positioning): new function
6735         (axis_offset_symbol): new function
6736         (chain_offset_callback): new function
6737         (add_offset_callback): new function
6738
6739         * lily/beam.cc (rest_collision_callback): change signature; this
6740         is now a chained callback.
6741
6742         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6743         callback administration.
6744
6745         * lily/simple-closure.cc: new file. Smob type that allows "grob
6746         member functions",
6747
6748             (ly:make-simple-closure FUNC A B)
6749
6750         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6751         in various ways.
6752
6753         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6754         callbacks.
6755
6756         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6757
6758         * lily/rest.cc (polyphonic_offset_callback): remove.
6759
6760         * lily/script-engraver.cc (try_music): remove bool* argument.
6761
6762         * scm/script.scm (default-script-alist): set quantize-position
6763         appropriately.
6764
6765         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6766
6767         * lily/side-position-interface.cc (aligned_side): move staff
6768         position quantization from
6769         Side_position_interface::quantised_position().
6770         (quantised_position): remove
6771         
6772 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6773
6774         * input/regression/beam-quant-standard.ly: reindent, set
6775         debug-beam-quanting to #t.
6776
6777         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6778         10000 if this is a "hard" concave beam.
6779
6780         * lily/beam.cc (calc_least_squares_positions): change from
6781         calc_least_squares_dy
6782         (set_stem_lengths): this is now a chained callback.
6783
6784         * lily/context-property.cc (execute_general_pushpop_property):
6785         bugfix override with procedure should have effect.
6786
6787         * scm/define-grob-properties.scm (all-internal-grob-properties):
6788         remove position-callbacks.
6789
6790         * scm/define-grobs.scm (all-grob-descriptions): use
6791         ly:make-callback-chain for positions property.
6792
6793         * scm/layout-beam.scm (check-quant-callbacks): return list of
6794         chained callbacks.
6795
6796         * scm/lily.scm (type-p-name-alist): add callback-chain
6797
6798         * lily/lily-guile.cc (type_check_assignment): type check failure
6799         is warning not message.
6800
6801         * lily/grob-property.cc (try_callback): walk callback chain if
6802         appropriate.
6803
6804         * lily/chained-callback.cc: new file. new smob type.
6805
6806         * lily/lily-guile.cc (procedure_arity): new function.
6807
6808 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6809
6810         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6811
6812 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6813  
6814         * Documentation/user/instrument-notation.itely (Figured bass):
6815         describe new features
6816
6817 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6818
6819         * lily/beam.cc (calc_least_squares_dy): use property callback.
6820
6821         * lily/beam-concave.cc (calc_concaveness): use property callback.
6822
6823         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6824
6825 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6826
6827         * HACKING: Update.
6828
6829 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6830
6831         * scm/layout-page-layout.scm (page-headfoot): annotate
6832         pagetopspace too.
6833
6834         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6835
6836         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6837         doesn't take y-space.
6838
6839         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6840
6841 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6842
6843         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6844         src-wildcard, remove $(wildcard).
6845
6846         * po/GNUmakefile (PO_FILES): 
6847         * ps/GNUmakefile (PS_FILES): 
6848         * tex/GNUmakefile (TEX_FILES): 
6849         * cygwin/GNUmakefile (POSTINSTALLS):
6850         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6851         some wildcard calls.
6852
6853 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6854
6855         * THANKS: add Thomas Bushnell.
6856
6857 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6858
6859         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6860         (lilypond-main): Redirect to gui-main if 'gui is set.
6861
6862         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6863         for alternative installations kludging s/share/lib/g
6864         LILYPONDPREFIX. 
6865
6866         * SConstruct (libdir_package_version): Define.
6867
6868         * python/SConscript: 
6869         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6870         module in libdir.  
6871
6872 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6873
6874         * lily/main.cc: clarify --safe.
6875
6876 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6877
6878         * VERSION: release 2.7.14
6879         
6880         * Documentation/user/*.itely: remove minimumVerticalExtent.
6881
6882         * scm/define-grobs.scm (all-grob-descriptions): remove
6883         RemoveEmptyVerticalGroup
6884
6885         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6886
6887         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6888         compile on MOSX
6889
6890         * python/convertrules.py (conv): add rules.
6891
6892         * lily/grob.cc: remove is_empty()
6893
6894         * lily/grob-property.cc: remove add_to_list_property().
6895
6896         * scripts/convert-ly.py (datadir): add prefix switching hack to
6897         .py too.
6898
6899         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6900         space-function tweak.
6901
6902         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6903
6904         * scm/define-grob-properties.scm (all-user-grob-properties):
6905         remove callback property.
6906
6907         * lily/include/grob.hh (class Grob): remove property_callbacks_
6908         member. Properties of procedure type are assumed to be callbacks.
6909
6910         * lily/ligature-engraver.cc (override_stencil_callback):
6911         rewrite. Use noteHeadLigaturePrimitive as source.
6912
6913         * scm/define-grob-properties.scm (all-internal-grob-properties):
6914         remove ligature-primitive-callback
6915
6916         * lily/include/dimension-cache.hh (class Dimension_cache): make
6917         class, with Grob as friend.
6918
6919         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6920         has_extent_callback()
6921
6922         * scm/translation-functions.scm (format-new-bass-figure): read
6923         figuredBassPlusDirection
6924
6925         * scm/define-context-properties.scm
6926         (all-user-translation-properties): add figuredBassPlusDirection.
6927
6928         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6929
6930         * lily/align-interface.cc (set_ordered): new function.
6931
6932         * lily/grob.cc (flush_extent_cache): rewrite.
6933
6934         * lily/dimension-cache.cc (Dimension_cache): cache extent as
6935         Interval pointer directly.
6936
6937         * lily/main.cc (setup_paths): insert extra / .
6938         (setup_paths): junk cff entry.
6939
6940         * lily/font-config.cc (init_fontconfig): only add type1 / otf
6941         directories.
6942
6943         * lily/axis-group-engraver.cc (finalize): remove
6944         extraVerticalExtent, minimumVerticalExtent verticalExtent.
6945
6946         * lily/grob.cc (Grob): don't set extent from ctor.
6947         (extent): use property callbacks. 
6948
6949         * lily/axis-group-interface.cc: remove set_axes() function.
6950
6951         * lily/grob-property.cc (del_property): new function.
6952
6953 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6954
6955         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
6956         
6957 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6958
6959         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
6960
6961 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6962
6963         * mf/SConscript: Updates.
6964
6965         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
6966
6967         * stepmake/stepmake/*:
6968         * */GNUmakefile:
6969         * config.make.in:
6970         * GNUmakefile.in:
6971         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
6972         from any directory in build-dir.  Cleanups.
6973
6974         * make/srcdir.make.in: Remove.
6975
6976         * lily/main.cc (setup_paths): Fix and document build-dir hack.
6977
6978         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
6979         main).
6980
6981         * lily/SConscript: Remove ttftools.
6982
6983         * SConstruct: Resurrect.
6984
6985 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6986
6987         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
6988         Y coordinate. 
6989
6990         * lily/paper-book.cc (add_score_title): put Paper_score title into
6991         systems_ list.
6992
6993         * scm/translation-functions.scm (format-new-bass-figure): also
6994         allow plus in combination with _
6995
6996 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6997
6998         * VERSION: 2.7.13 released.
6999
7000         * lily/note-collision.cc (check_meshing_chords): don't wipe
7001         stencil, merely set transparent.
7002
7003         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7004         (Top): document #'callbacks.
7005         (Top): document nested \override.
7006
7007         * input/regression/figured-bass.ly: update for slash and pluses.
7008
7009         * input/regression/figured-bass-continuation-forbid.ly (Module):
7010         new file.
7011
7012         * scm/translation-functions.scm (format-new-bass-figure): use
7013         slashed-digit if diminished is set.
7014         (format-new-bass-figure): add + if 'augmented is set.
7015
7016         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7017
7018         * input/test/piano-staff-distance.ly: remove file.
7019
7020         * Documentation/user/advanced-notation.itely (Formatting cue
7021         notes): use length-fraction for making stems/beams smaller.
7022
7023         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7024         modifications.
7025
7026         * lily/new-figured-bass-engraver.cc: new property
7027         centerFiguredBassContinuations
7028
7029         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7030         use callbacks.
7031
7032         * lily/context-property.cc (execute_general_pushpop_property):
7033         robustness checks.
7034
7035         * input/regression/override-nest.ly: new file.
7036
7037         * python/convertrules.py (FatalConversionError.subber): conversion
7038         rule for #'callbacks
7039
7040         * input/regression/override-nest.ly: new function.
7041
7042         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7043         #c too. 
7044
7045         * lily/context-property.cc (lookup_nested_property): new function.
7046         (evict_from_alist): new function.
7047         (general_pushpop_property): new function.
7048         (execute_general_pushpop_property): rewrite. Support nested
7049         properties too.
7050
7051 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7052
7053         * lily/beam.cc: use length-fraction too.
7054
7055         * scm/define-grob-properties.scm (all-user-grob-properties):
7056         remove property flag-width-function
7057         (all-user-grob-properties): remove space-function.
7058
7059         * scm/layout-beam.scm: remove flag-width-function.
7060
7061         * lily/beam.cc: remove flag-width-function
7062
7063         * scm/layout-beam.scm: remove beam dir functions.
7064
7065         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7066
7067         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7068         for easier grace tweaks.
7069
7070         * lily/beam.cc: remove dir-function.
7071
7072         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7073
7074         * lily/grob.cc: remove spacing-procedure.
7075
7076         * lily/note-head.cc (calc_stem_attachment): new function.
7077         (internal_print): use callback to get glyph-name.
7078
7079         * lily/grob-property.cc (get_interfaces): new function.
7080
7081         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7082
7083         * lily/stem.cc (calc_stem_end_position): new function.
7084         (calc_length): new function.
7085         document details for stem.
7086         remove Stem::get_direction()
7087
7088         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7089
7090         * lily/grob-property.cc (set_callback): new function.
7091
7092         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7093
7094         * lily/item-scheme.cc: new file.
7095
7096         * lily/bar-line.cc (before_line_breaking): remove function.
7097         remove bar-size-procedure, break-glyph-function
7098
7099         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7100
7101         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7102
7103         * lily/system-start-delimiter.cc (print): suicide from
7104         here. Remove after_line_breaking_callback.
7105
7106         * lily/script-interface.cc (calc_direction): use callback for direction.
7107
7108         * lily/side-position-interface.cc (aligned_side): don't use
7109         Side_position_interface::get_direction directly. Use callback. 
7110
7111         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7112         calculate stencil.
7113         (get_print_stencil): rename from get_stencil: create stencil with
7114         transparency, color and cause. 
7115
7116         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7117
7118         * python/convertrules.py (conv): insert temporary warning rule.
7119
7120         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7121
7122         * lily/grob-property.cc (try_callback): remove marker if applicable.
7123
7124         * lily/grob.cc: elucidate doc about after/before-line-breaking
7125
7126         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7127
7128         * lily/stem.cc (height): idem.
7129
7130         * lily/stem-tremolo.cc: idem.
7131
7132         * lily/slur.cc (height): don't use get_uncached_stencil()
7133
7134         * lily/rest.cc (y_offset_callback): use offset callback
7135         iso. after-line-breaking callback.
7136
7137         * lily/grob.cc: change after/before-line-breaking-callback to
7138         after/before-line-breaking dummy properties.
7139
7140         * lily/include/grob.hh: remove Grob_status.
7141
7142         * scm/define-context-properties.scm
7143         (all-user-translation-properties): remove verticalAlignmentChildCallback
7144
7145         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7146         (calc_direction): use callback
7147         (calc_positions): use callback.
7148
7149         * lily/tie.cc (calc_direction): use callback. Only call parent
7150         positioning for more than one tie.
7151
7152         * lily/tie-column.cc (calc_positioning_done): use callback
7153
7154         * lily/slur-scoring.cc (calc_control_points): use callback
7155
7156         * lily/slur.cc (calc_direction): use callback.
7157
7158         * lily/note-collision.cc (force_shift_callback): remove.
7159
7160         * lily/dot-column.cc (force_shift_callback): remove. Use
7161         other_axis_parent_positioning.
7162
7163         * lily/grob.cc (other_axis_parent_positioning): new function.
7164         (same_axis_parent_positioning): new function
7165
7166         * lily/align-interface.cc (alignment_callback): remove function.
7167
7168         * lily/note-collision.cc (calc_positioning_done): use callback.
7169
7170         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7171         (calc_direction): idem.
7172         remove print function.
7173
7174         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7175
7176         * lily/dot-column.cc (calc_positioning_done): use callback.
7177
7178         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7179
7180         * lily/beam.cc (calc_direction): use pseudo-property for beam
7181         direction callback.
7182         (calc_positions): use callback 
7183
7184         * lily/align-interface.cc (calc_positioning_done): use
7185         callback. Fold fixed  distance and normal alignment in one function.
7186
7187         * lily/stem.cc (calc_stem_end_position): use callback.
7188         (calc_positioning_done): idem.
7189         (calc_direction): idem.
7190         (calc_stem_end_position): idem
7191         (calc_stem_info): idem.
7192
7193         * lily/grob-property.cc (get_property_data): new function: 
7194         (try_callback): new function.
7195
7196         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7197         callbacks property.
7198
7199         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7200
7201 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7202
7203         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7204         tie
7205         has no heads.
7206         
7207         * lily/include/*.hh (Module): compile fixes.
7208
7209 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7210
7211         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7212         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7213         instead of (char-syntax nil), thanks to Milan Zamazal.
7214
7215 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7216
7217         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7218         dist.
7219
7220         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7221         themselves.
7222
7223 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7224
7225         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7226         add class_name() method.
7227
7228         * lily/music-scheme.cc: remove ly:music-name.
7229
7230 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7231
7232         * cygwin/postinstall-lilypond.sh: Remove cruft.
7233
7234         * cygwin/postremove-lilypond.sh: Remove.
7235
7236         * cygwin/GNUmakefile (default): Remove postremove rules.
7237
7238 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7239
7240         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7241         even header too.
7242         
7243         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7244         MacOS 9 users.
7245
7246         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7247         consider break index for broken spanner.
7248
7249         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7250         characters from string before splitting.
7251
7252 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7253
7254         * scm/framework-ps.scm (output-preview-framework): use
7255         is-book-title to determine whether to chop off the booktitle.
7256
7257         * lily/paper-book.cc (systems): init from book-title-properties
7258         (add_score_title): init score-title-properties.
7259
7260         * ly/paper-defaults.ly: add {score,book}-title-properties.
7261
7262         * scm/document-backend.scm (lookup-interface): error message if
7263         using unknown interface.
7264
7265         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7266         edge-height.
7267
7268         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7269         make_bracket.
7270         (make_bracket): new function.
7271
7272         * scm/lily.scm (define-scheme-options): add paper-size option.
7273
7274         * ly/declarations-init.ly (laissezVibrer): get paper size from
7275         -dpaper-size
7276
7277         * scm/translation-functions.scm: use \fontsize for changing the
7278         fontsize.
7279
7280         * scm/define-grobs.scm (all-grob-descriptions): set
7281         between-length-limit to 1.0
7282
7283         * lily/tie-helper.cc: add between_length_limit_ detail property.
7284
7285         * mf/feta-bolletjes.mf: typos.
7286
7287         * lily/note-head.cc (internal_print): don't shadow idx
7288         parameter. This fixes wrong attachment for do shape heads.
7289
7290 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7291
7292         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7293
7294         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7295
7296         * scm/layout-slur.scm: rename from slur.scm
7297
7298         * scm/layout-page-layout.scm: rename from page-layout.scm
7299
7300         * scm/layout-beam.scm: rename from beam.scm
7301
7302         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7303         bass-figure-interface
7304
7305         * lily/new-figured-bass-engraver.cc (process_music): add
7306         implicitBassFigures property.
7307         
7308         * scm/define-markup-commands.scm (pad-x): new markup.
7309
7310         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7311         minimumVerticalExtent on FiguredBass context.
7312
7313         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7314         case the continuation crosses a line break.
7315
7316 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7317
7318         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7319         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7320         absolute file name bug.  
7321
7322 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7323
7324         * VERSION (PACKAGE_NAME): release 2.7.12
7325
7326         * input/regression/figured-bass-continuation-center.ly: new file.
7327
7328         * input/regression/beam-outside-beamlets.ly: new file.
7329
7330         * lily/beam.cc (set_beaming): don't clip edges.
7331         (connect_beams): don't clip edges.
7332
7333         * lily/beaming-info.cc (clip_edges): new function.
7334
7335         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7336
7337         * Documentation/user/instrument-notation.itely (Figured bass):
7338         demonstrate extenders, update seealso links.
7339
7340         * scm/titling.scm (marked-up-headfoot): change tagline
7341         handling. tagline = ##f will blank the tagline as well.
7342
7343 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7344
7345         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7346
7347         * lily/new-figured-bass-engraver.cc (struct
7348         New_figured_bass_engraver): add new_music_found_ member.
7349
7350         * lily/lilypond-version.cc (Lilypond_version): deal with
7351         incorrectly formatted version strings. 
7352
7353         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7354         New_figured_bass_engraver by default.
7355
7356         * lily/ttf.cc (print_trailer): only define glyph names when
7357         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7358
7359 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7360
7361         * lily/horizontal-bracket.cc (make_bracket): new function.
7362
7363         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7364         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7365         BassFigureLine, BassFigureAlignment
7366
7367         * lily/new-figured-bass-engraver.cc (process_music): new file.
7368
7369         * lily/figured-bass-continuation.cc: new file.
7370
7371         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7372         new file.
7373
7374 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7375
7376         * scripts/lilypond-book.py: Bug fix, put the quote around the
7377         actual score for LaTeX documents.
7378
7379         * scm/define-grobs.scm (all-grob-descriptions): Change
7380         collapse-height of the SystemStartBracket grob to 5.0, 
7381         so the bracket disappears for single stave score lines (similarly
7382         to SystemStartBraces). 
7383
7384         * Documentation/user/advanced-notation.itely (Polymetric
7385         notation): Clarify the use of compressMusic.
7386
7387         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7388         that the grace spacer note in other staves need the same duration
7389         and document the stroke-style property.
7390
7391 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7392
7393         * Documentation/user/global.itely (Vertical spacing): document
7394         alignment-extra-space and fixed-alignment-extra-space.
7395
7396         * Documentation/topdocs/NEWS.tely (Top): add entry.
7397
7398         * input/regression/alignment-vertical-spacing.ly: new file.
7399
7400         * python/convertrules.py (conv): add rule.
7401
7402         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7403
7404         * lily/align-interface.cc (stretch_after_break): new
7405         function. Read fixed-alignment-extra-space property.
7406         (align_elements_to_extents): read alignment-extra-space property.
7407
7408         * lily/lily-guile.cc (robust_scm2dir): new function.
7409
7410         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7411         (annotate-space-left): new function. Annotate space left on page. 
7412         (annotate-y-interval): new function.
7413         (paper-system-annotate-last): new function. Annotate bottom-space.
7414
7415         * mf/feta-beugel.mf (y): 
7416
7417 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7418
7419         * VERSION (PACKAGE_NAME):  release 2.7.11
7420
7421         * scm/lily-library.scm (interval-translate): new function
7422         (interval-center): new function. 
7423
7424         * scm/page-layout.scm (paper-system-annotate): new function. Add
7425         arrows for dimensions.
7426  
7427         * scm/stencil.scm (dimension-arrows): new function.
7428
7429         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7430
7431         * input/regression/page-spacing.ly: add annotatespacing
7432
7433         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7434         (LY_DEFINE): new function ly:paper-system-set-property!
7435
7436         * Documentation/user/global.itely (Paper size): explain how to add
7437         sizes.
7438
7439         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7440         correspond to GS's definition.
7441
7442         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7443         tuplet bracket.
7444         (print): only connect to next bracket if the next one is alive.
7445         (print): set padding to 0.0 if the bound is a breakable
7446         column. This makes tupletFullLength brackets reach up to the staff
7447         line if it doesn't connect to the next line.
7448
7449 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7450
7451         * lily/bar-number-engraver.cc: correct docs.
7452
7453         * scm/output-lib.scm (first-bar-number-invisible): rename from
7454         default-bar-number-visibility
7455
7456 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7457
7458         * scm/define-music-properties.scm (all-music-properties): remove
7459         predicate property.
7460
7461 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7462
7463         * po/fi.po: refresh.
7464
7465 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7466
7467         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7468         superfluous s1.
7469         (disappear): bugfix.
7470
7471         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7472
7473         * lily/include/paper-system.hh (class Paper_system): remove
7474         staff_extents_ member.
7475
7476         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7477
7478         * lily/include/paper-system.hh (class Paper_system): remove
7479         number_ variable. Remove is_title_. Remove break_before_penalty_
7480
7481         * lily/paper-book.cc (systems): use 'number property iso. number_
7482         member.
7483
7484         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7485         remove ly:paper-system-number.
7486
7487         * scm/lily-library.scm (paper-system-title?): new function.
7488
7489         * lily/book.cc (process): bugfix: flip ?: cases. 
7490
7491         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7492         add outputProperty.
7493
7494         * ly/music-functions-init.ly: add outputProperty music function.
7495
7496         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7497
7498         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7499         and next-padding.
7500         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7501
7502         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7503
7504         * lily/paper-system.cc (internal_get_property): new function.
7505
7506         * Documentation/user/global.itely (Vertical spacing): refer to
7507         page-spacing.ly
7508
7509         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7510         pagetopspace
7511
7512         * input/regression/page-spacing.ly: new file.
7513
7514         * input/regression/page-top-space.ly: new file.
7515
7516         * lily/spacing-spanner.cc: cmath -> math.h
7517
7518         * lily/paper-system.cc (read_left_bound): new function. Read
7519         line-break-system-details from left bound to determine extents.
7520  
7521         * Documentation/user/programming-interface.itely (Using LilyPond
7522         syntax inside Scheme): change applyxxx -> applyXxx.
7523
7524         * ly/music-functions-init.ly: add outputProperty music function.
7525
7526         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7527
7528         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7529
7530         * python/convertrules.py (conv): rule
7531
7532         * ly/music-functions-init.ly: applyxxx -> applyXxx
7533
7534         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7535         TabVoice to Voice.
7536
7537 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7538
7539         * flower/include/real.hh: include <math.h> iso. <cmath>
7540
7541         * flower/include/offset.hh: include real.hh
7542
7543 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7544
7545         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7546         fix example, now that 'interfaces is no longer directly available.
7547
7548         * lily/book.cc (process): don't crash if paper == NULL.
7549
7550         * po/fr.po: update.
7551
7552 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7553
7554         * scm/define-music-types.scm (music-descriptions): set length and
7555         start-callback for QuoteMusic
7556
7557 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7558
7559         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7560         arguments. Fixes compilation error with gcc 3.3.
7561
7562 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7563
7564         * VERSION: release 2.7.10
7565
7566         * stepmake/stepmake/python-module-rules.make
7567         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7568
7569         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7570         real.hh
7571
7572 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7573
7574         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7575         -Werror. Otherwise GCC barfs over various optimizations.
7576
7577         * scm/define-grob-properties.scm (all-internal-grob-properties):
7578         add note-head property
7579
7580         * Documentation/user/instrument-notation.itely (Laissez vibrer
7581         ties): new node.
7582
7583         * input/regression/laissez-vibrer-ties.ly: new file.
7584
7585         * lily/laissez-vibrer-engraver.cc: new file.    
7586
7587         * lily/include/tie-column-format.hh: new file.
7588
7589         * lily/tie-column-format.cc: new file. 
7590
7591         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7592
7593         * lily/laissez-vibrer-tie.cc: new file.
7594
7595         * lily/include/laissez-vibrer-tie.hh: new file.
7596
7597         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7598
7599         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7600
7601         * scm/define-grobs.scm (all-grob-descriptions): add
7602         LaissezVibrerTie, LaissezVibrerTieColumn
7603
7604         * lily/tie-column.cc (set_tie_config_directions): new function
7605         (final_shape_adjustment): new function.
7606         (shift_small_ties): new function.
7607
7608         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7609
7610         * lily/include/tie.hh (struct Tie_details): add x_gap_
7611         (struct Tie_configuration): add head_position_
7612
7613         * lily/tie-column.cc (set_chord_outline): new function.
7614
7615         * mf/cmr.enc.in:  remove file.
7616
7617 2005-09-11  Graham Percival  <gpermus@gmail.com>
7618
7619         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7620
7621 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7622
7623         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7624         reduce aliasing effects.
7625
7626         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7627         box in skyline.
7628
7629 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7630
7631         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7632
7633         * flower/include/real.hh: std::fabs too.
7634
7635 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7636
7637         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7638
7639         * lily, flower: Include C++ iso C headers.  Import namespace std
7640         throughout.
7641
7642         * lily/side-position-interface.cc: 
7643         * lily/scm-hash.cc: 
7644         * lily/note-head.cc: 
7645         * lily/include/includable-lexer.hh: 
7646         * flower/include/string-data.icc: Remove using std::*.
7647
7648         * lily, flower: Include C++ iso C headers.  Import namespace std
7649         throughout.
7650
7651         * lily/side-position-interface.cc: 
7652         * lily/scm-hash.cc: 
7653         * lily/note-head.cc: 
7654         * lily/include/includable-lexer.hh: 
7655         * flower/include/string-data.icc: Remove using std::*.
7656
7657         * Documentation/user/instrument-notation.itely (Entering lyrics):
7658         Multiple latin-1->utf-8 conversion fix.
7659
7660         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7661
7662 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7663
7664         * lily/tie.cc (get_configuration): also avoid dots for non-space
7665         situations.
7666
7667 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7668
7669         * Documentation/user/instrument-notation.itely: Bugfix.
7670
7671 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7672
7673         * tex/GNUmakefile: don't install texinfo.tex
7674
7675         * tex/ : cleanup: remove unused files.
7676
7677         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7678
7679         * flower/include/real.hh: using std::{isnan,isinf}
7680         
7681         * VERSION (PATCH_LEVEL): release 2.7.9
7682
7683 2005-09-05  Graham Percival  <gpermus@gmail.com>
7684
7685         * Documentation/user/ instrument-notation.itely,
7686         advanced-notation.itely: minor tweaks.
7687
7688         * input/test/script-chart.ly: add item padding.
7689
7690 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7691
7692         * flower/offset.cc: use math.h iso. <cmath>
7693
7694         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7695         of IE users.
7696
7697         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7698         (widen-left-stencil-edges): new function. Fix alignment problems
7699         with LaTeX includegraphics.
7700
7701         * lily/text-interface.cc (interpret_markup): use abort().
7702
7703 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7704
7705         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7706
7707         * lily/tie.cc (get_configuration): update bezier shape as we
7708         change Y positions.
7709         (get_configuration): don't move large ties if we're outside of the
7710         staff.
7711
7712 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7713
7714         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7715         
7716 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7717
7718         * .cvsignore: Add auto-generated configure files and then some.
7719
7720 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7721
7722         * scm/define-grobs.scm (DynamicLineSpanner): Add
7723         X-extent-callback.  Fixes hairpin-slur collision.
7724
7725 2005-08-31  Graham Percival  <gpermus@gmail.com>
7726
7727         * Documentation/user/advanced-notation.itely,
7728         basic-notation.itely: minor changes.
7729
7730 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7731
7732         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7733         \linebreak between each .eps file if \betweenLilyPondSystem is
7734         undefined. 
7735
7736         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7737         music): Document the \linebreak
7738
7739         * Documentation/user/lilypond-book.itely,
7740         input/tutorial/lbook-latex-test.tex,
7741         Documentation/user/examples.itely: Remove \usepackage{graphics}
7742
7743 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7744
7745         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7746
7747         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7748         compat bugfix.
7749
7750         * scripts/lilypond-book.py (PREAMBLE_LY): define
7751         inside-lilypond-book
7752         (modify_preamble): new function. Insert \RequirePackage{graphics}
7753         when no {graphics found in preamble.  
7754
7755 2005-08030  Graham Percival  <gpermus@gmail.com>
7756
7757         * Documentation/user/basic-notation.itely, global.itely,
7758         tutorial.itely: misc small changes.
7759
7760 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7761
7762         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7763         VERSION.
7764
7765 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7766
7767         * lily/tie-column.cc (new_directions): put Tie down on center
7768         staff line. 
7769
7770         * lily/script-interface.cc (before_line_breaking): use
7771         Grob::programming_error
7772
7773         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7774
7775         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7776         of splitext.
7777
7778 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7779
7780         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7781
7782 2005-08-29  Werner Lemberg  <wl@gnu.org>
7783
7784         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7785         the `*.scale.pfa' files to avoid warnings.
7786
7787 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7788
7789         * lily/tempo-performer.cc (process_music): idem.
7790
7791         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7792
7793 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7794
7795         * Documentation/user/advanced-notation.itely (Text markup): not a
7796         fragment.
7797
7798         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7799
7800         * lily/staff-performer.cc (initialize): add tempo/name to
7801         audio_staff_
7802
7803
7804 2005-08-26  Graham Percival  <gpermus@gmail.com>
7805
7806         * Documentation/user/advanced.itely: add text-only example.
7807
7808         * Documentation/user/invoking.itely: add index entries for
7809         convert-ly.
7810
7811         * Documentation/user/ tutorial.itely, basic-notation.itely:
7812         small fixes suggested by Steve D.  Thanks!
7813
7814 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7815
7816         * input/regression/markup-bidi-pango.ly: new file.
7817
7818         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7819         standard. Remove #ifdef. Remove memleak.
7820         (text_stencil): use text_dir to decide how to composite items.
7821         (text_stencil): determine uniform text direction for the entire
7822         string.
7823
7824         * scripts/lilypond-book.py (output_name): remove
7825         latex_filter_cmd. Non-portable to non-Unix systems. 
7826         (get_latex_textwidth): use File.write and os.unlink() instead.
7827
7828         * THANKS: add Vicente & Trevor.
7829
7830         * lily/grob.cc (discretionary_processing): look up origin for
7831         programming_error too. 
7832
7833         * input/regression/tie-broken.ly: new file.
7834
7835         * lily/tie-column.cc (set_chord_outlines): set outline for line
7836         break case too.
7837         
7838 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7839
7840         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7841         unscaled transform, just translate stencils.
7842
7843         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7844         MIDI.
7845
7846         * scm/define-markup-commands.scm (wordwrap-string): use
7847         text-direction
7848         (wordwrap-stencils): idem.
7849         (line): idem.
7850         (fill-line): idem.
7851         (wordwrap-stencils): translate last line to right for
7852         text-direction = LEFT.
7853
7854         * scm/define-grob-properties.scm (all-user-grob-properties): add
7855         text-direction.
7856
7857 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7858
7859         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7860         when copying a Lily_parser object.
7861
7862 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7863
7864         * scm/define-markup-commands.scm (null): add null markup.
7865
7866 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7867
7868         * lily/item.cc: Add documentation of center-invisible
7869
7870 2005-08-24  Graham Percival  <gpermus@gmail.com>
7871
7872         * Documentation/user/advanced-notation.itely: add info about
7873         raising text.
7874
7875         * Documentation/user/programming-interface.itely: fix example
7876         involving raised text.
7877
7878 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7879
7880         * lily/beam.cc (print): fix X start/end points of isolated
7881         beamlets.
7882
7883         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7884
7885         * lily/multi-measure-rest.cc (set_text_rods): new function.
7886
7887         * lily/vertical-align-engraver.cc (process_music): call
7888         Align_interface::set_axis(). This forces #'elements to be ordered,
7889         preventing random vertical reordering of staves.
7890
7891         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7892         add avoid-slur property. 
7893
7894         * Documentation/user/basic-notation.itely (Measure repeats): add
7895         countPercentRepeats example.
7896
7897         * Documentation/user/advanced-notation.itely (Other text markup
7898         issues): remove remark about normal-font.  We have \normal-text
7899
7900         * input/regression/tie-chord.ly: add note about remaining bugs.
7901
7902         * lily/tie.cc (print): try Tie_column::set_directions () if
7903         control-points not yet defined.
7904
7905 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7906
7907         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7908         extent. This fixes braces falling out of the EPS bbox.
7909
7910         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7911         exactly to bbox.
7912
7913 2005-08-23  Graham Percival  <gpermus@gmail.com>
7914
7915         * {various} : change #up->#UP and #down->#DOWN.
7916
7917         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7918
7919         * Documentation/user/advanced-notation.itely: clarify
7920         what objects handles text on a multimeasure rest.
7921
7922 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7923
7924         * VERSION (PATCH_LEVEL): release 2.7.7
7925
7926 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7927
7928         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7929
7930         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7931
7932         * input/regression/*.ly: formatting clean-up. Default layout
7933         before music expression.
7934
7935         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
7936         romanze28-2 example.
7937
7938         * scm/ps-to-png.scm: remove dir-re function.
7939         (make-ps-images): generate page names, instead of globbing them.
7940         This brings down LilyPond memory usage for make web by a factor
7941         10. 
7942
7943         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
7944         don't use glob. With 3000 files, globbing
7945         Documentation/user/out-www/ can take too much time. 
7946         
7947         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
7948
7949         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
7950
7951         * input/regression/tie-manual.ly: new file
7952
7953         * input/regression/tie-chord.ly: update.
7954
7955         * flower/include/interval.hh (struct Interval_t): 
7956
7957         * lily/tie.cc (distance): new function 
7958         (height): new function.
7959         (init): new function
7960         (Tie_details): new struct.
7961
7962         * lily/skyline.cc (skyline_height): new function.
7963
7964         * lily/tie-column.cc (set_chord_outlines): new function.
7965         (new_directions): read tie-configuration
7966
7967         * lily/skyline.cc: fix ASCII art.
7968         
7969 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
7970
7971         * python/convertrules.py (string_or_scheme): Fix spelling error
7972
7973 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7974         
7975         * lily/tie-column.cc (set_directions): set directions only once.
7976         (add_configuration): new function.
7977
7978         * lily/tie.cc (set_control_points): new function
7979
7980         * lily/tie-column.cc (new_directions): new function.
7981
7982         * ly/music-functions-init.ly: set 'pitch property
7983         iso. trill-pitch. This makes \relative work with \pitchedTrill
7984
7985         * lily/tie.cc (get_configuration): new function. Don't generate
7986         control points, rather, generate configuration.
7987         remove head-pair property.
7988
7989         * lily/include/tie.hh (struct Tie_configuration): new struct.
7990
7991 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
7992
7993         * Documentation/topdocs/NEWS.tely: clarify.
7994
7995 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7996
7997         * lily/tie.cc: remove minimum-length
7998
7999         * scm/define-grob-properties.scm (all-user-grob-properties):
8000         remove staffline-clearance, y-offset 
8001
8002         * input/regression/tie-dots.ly (Module): remove.
8003
8004         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8005         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8006
8007         * input/regression/tie-single.ly: new file.
8008
8009 2005-08-21  Graham Percival  <gpermus@gmail.com>
8010
8011         * ly/bagpipe.ly: fix compile problem.
8012
8013 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8014
8015         * lily/midi-item.cc (name): new method.
8016
8017         * lily/staff-performer.cc (acknowledge_audio_element): use
8018         signature of baseclass.
8019
8020         * lily/engraver-group.cc (do_announces): move recursion call out
8021         of while loop. 
8022
8023         * lily/drum-note-performer.cc (class Drum_note_performer): use
8024         process_music everywhere.
8025
8026         * ly/performer-init.ly: add default children everywhere.
8027
8028         * lily/paper-book.cc (output): call paper-book-write-midis
8029         directly: always write MIDI, even if no \layout {} block. 
8030
8031 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8032
8033         * VERSION (PACKAGE_NAME): release 2.7.6
8034
8035         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8036         about not being able to handle repeat.
8037
8038 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8039
8040         * Documentation/user/examples.itely (Piano templates):
8041         * lily/include/performer-group.hh: Remove last traces of
8042         Performer_group_performer.  Fixes make web.
8043
8044 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8045
8046         * Documentation/user/examples.itely (Piano templates): change
8047         Engraver_group_engraver -> Engraver_group
8048
8049         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8050         scm_stand_in_procs is not weak_any.
8051
8052         * lily/volta-bracket.cc (print): don't use strcmp().
8053
8054         * lily/volta-engraver.cc (process_music): use
8055         Text_interface::is_markup() for setting the 'text property of the
8056         volta bracket.
8057
8058         * input/mutopia/claop.py (accents): update syntax to 2.6
8059
8060         * scm/define-context-properties.scm
8061         (all-user-translation-properties): add countPercentRepeats.
8062
8063         * Documentation/user/basic-notation.itely (Measure repeats): add
8064         isolated percent example.
8065
8066 2005-08-18  Graham Percival  <gpermus@gmail.com>
8067
8068         * input/ {various}: change direction #1, #-1 to
8069         #up/#down or \fooUp, \fooDown.
8070
8071         * Documentation/user/music-glossary.tely: #-1 to #down.
8072
8073         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8074         to #up, #-1 to #down.
8075
8076 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8077
8078         * lily/include/engraver-group.hh: rename.
8079
8080         * lily/include/performer-group.hh: rename.
8081
8082 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8083
8084         * input/test/script-abbreviations.ly: Removed some old LaTeX
8085         left overs.
8086
8087 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8088
8089         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8090         Remove functions.  Remove if 1: constructs, reindent.
8091
8092         * scripts/convert-ly.py (add_version): Add functions from
8093         convertrules.py
8094
8095         * scm/script.scm (default-script-alist):
8096         s/priority/script-priority.  Fixes script stacking.  Backportme.
8097         (Fermata): Very low priority.
8098
8099 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8100
8101         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8102
8103         * input/regression/slur-script.ly: remove padding tweaks. Add
8104         comment strings.
8105
8106         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8107         time sigs and related stuff.
8108
8109         * scm/define-grob-properties.scm (all-user-grob-properties): add
8110         @code{} tags to property description.
8111
8112         * lily/include/line-group-group-engraver.hh (Module): remove file.
8113
8114         * python/convertrules.py (conv): add rule for
8115         Engraver_group_engraver -> Engraver_group.
8116
8117         * lily/include/performer-group-performer.hh: analogous.
8118
8119         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8120
8121         * lily/context-def.cc (instantiate): check for
8122         Engraver_group_engraver and Performer_group_performer not
8123         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8124  
8125 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8126
8127         * input/les-nereides.ly: Remove three fingering tweaks, update
8128         remaining one.
8129
8130         * input/regression/slur-script-inside.ly: Update, fix doc.
8131
8132         * scm/script.scm: Update to avoid-slur.
8133
8134         * scm/define-grob-properties.scm (avoid-slur): New property.
8135
8136         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8137         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8138         outside_slur_callback if avoid-slur != #'inside.
8139
8140         * scm/define-grobs.scm (Fingering, Textscript): No
8141         inside-slur/outside-slur preference.
8142         (DynamicLineSpanner): Always outside slur.
8143
8144         * input/regression/slur-script.ly: More tests.
8145
8146 2005-08-17  Graham Percival  <gpermus@gmail.com>
8147
8148         * Documentation/user/lilypond-book: fix notime entry.
8149
8150         * Documentation/user/advanced-notation.itely: add info on
8151         getting an I rehearsal mark.
8152
8153         * Documentation/user/putting.itely: reinstate "I", re-enforce
8154         the fact that \override numbers are the result of
8155         experimentation and personal taste.
8156
8157         * Documentation/user/invoking.itely: update convert-ly bugs.
8158
8159 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8160
8161         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8162         to #t.
8163
8164         * lily/timing-translator.cc (initialize): don't initialize timing.
8165
8166         * input/regression/stem-spacing.ly (Module): remove file.
8167
8168         * input/regression/spacing-stick-out.ly: specify Score context for
8169         \override
8170
8171         * input/regression/clefs.ly: remove spurious {}s 
8172
8173 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8174
8175         * Documentation/topdocs/NEWS.tely,
8176         input/regression/repeat-percent-count.ly: clarify a bit.
8177
8178 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8179
8180         * input/no-notation/display-lily-tests.ly: delete
8181         display-lily-init call.
8182
8183         * ly/music-functions-init.ly (displayLilyMusic): move
8184         display-lily-init call at top level, so that the user should not
8185         have to call it.
8186
8187         * scm/define-music-display-methods.scm (note-name->lily-string):
8188         retrieve note names directly from pitchnames using new function `rassoc'.
8189         (display-lily-init): note names list construction removed.
8190
8191 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8192
8193         * THANKS: spello.
8194
8195         * lily/lily-parser.cc (get_header): copy module, instead of
8196         returning it.
8197
8198         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8199         counters.
8200
8201         * Documentation/user/basic-notation.itely (Measure repeats): add
8202         links to Counter grobs.
8203
8204         * scm/define-grobs.scm (all-grob-descriptions): add
8205         DoublePercentRepeatCounter
8206         (all-grob-descriptions): add PercentRepeatCounter
8207
8208         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8209         also create counter grobs.
8210
8211         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8212         return grob without space-alist.
8213
8214         * input/proportional.ly: tune staff-padding.
8215
8216         * input/regression/repeat-percent-count.ly: new file. 
8217
8218 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8219
8220         * input/no-notation/display-lily-tests.ly: moved from
8221         input/regression/ to input/no-notation. Be sure to call
8222         `display-lily-init' before trying to use the display function.
8223
8224 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8225
8226         * scripts/lilypond-book.py (option_definitions): Don't localize
8227         the empty string. Fixes bug when --psfonts was used with
8228         non-English locale.
8229
8230 2005-08-15  Graham Percival  <gpermus@gmail.com>
8231
8232         * lily/tuplet-bracket.cc: simple build fix.
8233
8234         * Documentation/user/putting.itely: use "we" instead of "I".
8235
8236         * Documentation/user/basic-notation.itely: cautionary accidentals
8237         work with naturals, too.
8238
8239 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8240
8241         * lily/tuplet-bracket.cc (calc_position_and_height): add
8242         staff-padding support.
8243
8244         * input/proportional.ly: set staff-padding.
8245         
8246         * VERSION (PATCH_LEVEL): release 2.7.5
8247
8248         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8249         fixes. Remove tweaks.
8250
8251         * input/regression/tuplet-slope.ly: add a test case.
8252
8253         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8254         erroneous fix. Add spanner bounds to offset array with relative X
8255         positions.
8256
8257         * ly/engraver-init.ly: add Rest_engraver only once.
8258
8259         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8260         (*parser*) lookup if (*parser*) != #f.
8261
8262 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8263
8264         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8265         Cut-and paste update.
8266
8267         * input/regression/slur-script.ly: Add example of reverting
8268         inside-slur for fingering.
8269
8270         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8271         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8272
8273         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8274         outside_slur_callback if inside-slur == #f (as opposed to unset).
8275
8276 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8277
8278         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8279         encoding files are already removed.
8280
8281 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8282
8283         * Documentation/user/advanced-notation.itely (Instrument names):
8284         Document a workaround for instrument names that collide with
8285         system start braces/brackets.
8286
8287 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8288
8289         * lily/rest-collision.cc (do_shift): spello.
8290
8291         * input/proportional.ly: use #'used property. Set break-overshoot
8292         property.
8293
8294         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8295
8296         * lily/paper-column.cc: add #'used property
8297
8298         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8299         array for staves found.
8300
8301         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8302         array for stavesFound.
8303
8304         * lily/staff-spacing.cc (next_note_correction): add fixed and
8305         space to calling convention. This fixes spacing of accidentals
8306         after barlines.
8307
8308         * input/regression/spacing-accidental-stretch.ly: add barline -
8309         accidental case.
8310
8311         * scm/framework-ps.scm (page-header): add version number to
8312         creator
8313         (eps-header): idem.
8314
8315         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8316         
8317 2005-08-13  Graham Percival  <gpermus@gmail.com>
8318
8319         * Documentation/user/global.itely: add "fit as much as
8320         possible onto this page" example (Vertical spacing).
8321
8322 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8323
8324         * *: Nitpick run.
8325
8326         * buildscripts/fixcc.py: Fixes.
8327
8328 2005-08-12  Graham Percival  <gpermus@gmail.com>
8329
8330         * Documentation/user/advanced-notation.itely: add markup
8331         example to Text spanners.
8332
8333 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8334
8335         * Documentation/user/basic-notation.itely (Ties): Add example of
8336         tying a tremolo to a chord. Thanks to Steve Doonan. 
8337
8338         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8339         properties and move tieMelismaBusy to the list of written
8340         properties. 
8341
8342 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8343
8344         * po/TODO: suggest to use a dedicated tool like kbabel.
8345
8346         * po/fi.po: update using kbabel.
8347
8348 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8349
8350         * *: Remove obsolete files.  Nitpick run.
8351
8352         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8353
8354 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8355
8356         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8357         too.
8358
8359         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8360
8361         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8362         whitespace as symbol separator.
8363
8364         * lily/side-position-interface.cc: Add slur-padding.
8365
8366         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8367         quite a large fix, and it never worked in a stable release; so not
8368         really a regression.
8369
8370         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8371         Update cut and paste code from Slur_engraver.
8372
8373         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8374         Add.
8375
8376         * scm/define-grobs.scm (DynamicLineSpanner): Add
8377         dynamic-line-spanner-interface.
8378         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8379
8380 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8381
8382         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8383         to_boolean () so that non-set 'inside-slur means false.
8384
8385         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8386         slur has control-points.  Skip script without direction.  Always
8387         do_shift if script inside slur, even if slur not contained in
8388         script y-extent.  Increment k in loop.
8389
8390 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8391
8392         * scm/define-markup-commands.scm: Improved regexp to search for
8393         EPS bounding boxes and corrected call to ly:warning.
8394
8395 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8396
8397         * Documentation/user/programming-interface.itely (Displaying music
8398         expressions): doc for \displayLilyMusic. Also some precisions in
8399         "Markup construction in Scheme"
8400
8401 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8402
8403         * scm/define-markup-commands.scm (normal-text): Added 2 new
8404         markup commands, \normal-text and \medium (the latter thanks to
8405         Bruce Fairchild). 
8406
8407 2005-08-08  Graham Percival  <gpermus@gmail.com>
8408
8409         * Documentation/user/programming-interface.itely: fix @{ @}.
8410
8411         * scm/define-markup-commands.scm: add linewidth info to
8412         \justify and \wordwrap, add "upright is the opposite of italic".
8413
8414         * Documentation/user/advanced-notation.itely: shaped->shape,
8415         add (cons (markup "foo")) type of example to text markup,
8416         reword multi-measure rests section.
8417
8418         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8419         comment.  No actual code was touched.
8420
8421         * Documentation/user/invoking.itely: add more info about
8422         \include.  Thanks, Bruce!
8423
8424         * THANKS: add Bruce Fairchild, alphabetise.
8425
8426         * Documentation/user/global.itely: document \score{\header{}}
8427         behavior.
8428
8429         * Documentation/user/basic-notation.itely: reword multi-measure
8430         rest discussion in Rests.
8431
8432 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8433
8434         * Documentation/user/programming-interface.itely (Markup
8435         construction in Scheme): Corrected example and tried to clarify
8436         the implicit \line in the table.
8437
8438 2005-08-07  Graham Percival  <gpermus@gmail.com>
8439
8440         * Documentation/user/instrument-notation.itely: moved
8441         some bagpipe info back into the bagpipe section.  Somehow
8442         it ended up in the "other vocal issues" section?!  :o_O
8443
8444 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8445
8446         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8447         directories, not paths).
8448
8449 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8450
8451         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8452         plain emmentaler/aybabtu.  Backportme.
8453
8454         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8455         missing dir correction.
8456
8457 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8458
8459         * scm/define-markup-commands: fix reversed justify/wordwrap
8460         doc strings.
8461
8462 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8463
8464         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8465         lily/gregorian-ligature-engaver.cc,
8466         lily/include/ligature-engraver.hh,
8467         lily/include/coherent-ligature-engraver.hh,
8468         lily/include/gregorian-ligature-engraver.hh: make these classes
8469         truely abstract.  This should fix some internal oddities such as
8470         duplicate as well as dead translator/property declarations, and
8471         also some dead code.
8472
8473         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8474         bugfix: avoid message "junking empty ligature" on ligature
8475         brackets by collecting dummy grobs.
8476
8477 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8478
8479         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8480
8481         * input/proportional.ly (staffKind): bugfix.
8482         (staffKind): updates by Trevor Baca.
8483
8484         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8485         default layout. 
8486
8487         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8488         pair.
8489
8490         * lily/beam.cc (rest_collision_callback): call position_beam() if
8491         necessary.
8492
8493         * VERSION: release 2.7.4
8494
8495         * input/regression/spacing-uniform-stretching.ly: new file.
8496
8497         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8498
8499         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8500         contributor.
8501
8502         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8503
8504         * input/proportional.ly: new file.
8505
8506         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8507         columns is empty
8508
8509         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8510         bounds to currentCommandColumn for the last step.
8511         (start_translation_timestep): if tupletFullLength is set, set
8512         bound to Paper Column
8513
8514         * input/regression/tuplet-full-length.ly (indent): new file.
8515
8516         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8517         clique of loose columns, eg. a set of grace notes in strict
8518         notespacing.
8519
8520         * input/regression/spacing-strict-spacing-grace.ly: new file.
8521
8522         * lily/key-signature-interface.cc: change property name to
8523         alteration-alist
8524
8525         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8526         keyAccidentalOrder
8527
8528         * python/convertrules.py (conv): keyAccidentalOrder ->
8529         keyAlterationOrder
8530
8531         * lily/key-engraver.cc (create_key): always print a cancellation
8532         for going to C-major/A-minor, regardless of printKeyCancellation.
8533         (create_key): remove typecheck for visibility. This fixes key
8534         signature not being printed.
8535
8536         * lily/spacing-determine-loose-columns.cc: new file.
8537
8538         * input/regression/spacing-strict-notespacing.ly: new file.
8539
8540         * lily/spacing-spanner.cc (generate_springs): rename from
8541         do_measure. 
8542         (generate_pair_spacing): new function.
8543         (init, generate_pair_spacing): set between-cols for floating
8544         nonmusical columns.
8545
8546         * lily/spaceable-grob.cc (get_spring): new function. 
8547
8548         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8549         relative to the right edge of the prefatory matter.
8550
8551         * lily/beam.cc (print): read break-overshoot to determine where to
8552         stop/start broken beams.
8553
8554         * input/regression/spanner-break-overshoot.ly: new file.
8555
8556 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8557
8558         * ly/bagpipe.ly: updated.
8559
8560         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8561
8562 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8563
8564         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8565         support: now (de)crescs avoid slurs as well.
8566
8567         * Documentation/user/instrument-notation.itely (Bagpipe example):
8568         comment out non-functioning bagpipe example.
8569         (Bagpipe definitions): idem.
8570
8571         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8572         (Top): add proportionalNotationDuration example.
8573
8574         * input/regression/spacing-proportional.ly: new file.
8575
8576         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8577         synched to a beam.
8578
8579         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8580         fixes beams with a single stem (eg. beams across linebreaks.)
8581
8582         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8583
8584         * flower/rational.cc (operator +): prevent overflow. This fixes
8585         heavily nested tuplets.
8586
8587         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8588         have to protect even those unlikely to be corrupted data members.  
8589
8590 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8591
8592         * ly/bagpipe.ly: new file.
8593
8594         * THANKS: added Sven Axelsson.
8595
8596 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8597
8598         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8599         copy proportionalNotationDuration into currentMusicalColumn if
8600         set.
8601
8602         * lily/spacing-spanner.cc (musical_column_spacing): if
8603         uniform-stretching set, fixed space is 0.0
8604
8605         * input/regression/spacing-multi-tuplet.ly: show
8606         uniform-stretching property.
8607
8608         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8609
8610         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8611         (struct Spacing_options): new struct.
8612
8613         * lily/spacing-basic.cc: new file.
8614
8615         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8616         delta_t doesn't have to be smaller than shortest_playing_len
8617
8618 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8619
8620         * input/regression/markup-arrows.ly:  new file.
8621
8622         * lily/tuplet-bracket.cc: document new behavior.
8623
8624         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8625         with line breaks.
8626
8627         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8628
8629         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8630         default 
8631
8632         * lily/tuplet-bracket.cc: add edge-text property.
8633         add break-overshoot.
8634         (print): read break-overshoot.
8635         (print): read edge-text, add stencils.
8636
8637         * mf/feta-arrow.mf: new file.
8638
8639         * mf/feta-generic.mf: add feta-arrow.
8640
8641 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8642
8643         * Documentation/user/lilypond-book.itely (An example of a
8644         musicological document): Added flag -o to dvips for people who use
8645         the default setting in teTeX where output is sent to the printer. 
8646
8647         * Documentation/user/global.itely (Vertical spacing): Added
8648         reference to the Axis_group_engraver which documents the *Extent
8649         properties.
8650
8651 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8652
8653         * Documentation/user/basic-notation.itely (Tuplets): add note
8654         about nested tuplets. Remove BUG. 
8655
8656         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8657
8658         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8659         (print): manually call print() for subtuplets.
8660         (calc_position_and_height): add subtuplets to the
8661         support. Vertically shift outer tuplet 
8662
8663         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8664         remove-first for Lyrics, ChordNames and FiguredBass
8665
8666         * scm/define-grob-properties.scm (all-internal-grob-properties):
8667         use ly:grob-array? iso. grob-list?
8668         (all-internal-grob-properties): add tuplets grob-array.
8669
8670         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8671         new function
8672
8673 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8674
8675         * input/test/time-signature-staff.ly: new file.
8676
8677         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8678         spurious #<Music FingerEvent> errors. Backportme.
8679
8680 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8681
8682         * Documentation/user/programming-interface.itely (Markup
8683         construction in Scheme): Corrected markup syntax in the
8684         translation table.
8685
8686 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8687
8688         * Documentation/user/instrument-notation.itely: small update
8689         to bagpipe notation docs; thanks Sven!
8690
8691         * Documentation/user/basic-notation.itely: add link about trills.
8692
8693 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8694
8695         * Documentation/user/music-glossary: remove accidentally committed
8696         fink patch.
8697
8698 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8699
8700         * lily/lily-parser.cc (get_header): new function. Enable multiple
8701         \header definitions.
8702
8703         * lily/parser.yy (lilypond_header_body): use get_header.
8704
8705         * ly/init.ly:
8706         * scm/lily-library.scm (print-score-with-defaults): renamed
8707         $globalheader to $defaultheader
8708             
8709         * Documentation/user/global.itely (Creating titles): added short
8710         explanation that multiple headers are useable.
8711
8712
8713 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8714
8715         * lily/module-scheme.cc (LY_DEFINE): new file. 
8716
8717         * Documentation/user/advanced-notation.itely (Font selection): add
8718         doco for make-pango-font-tree.
8719
8720 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8721
8722         * Documentation/user/music-glossary: more languages
8723         for tenuto.
8724
8725         * Docuemntation/user/instrument-notation.itely: minor
8726         update for bagpipe example.
8727
8728 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8729
8730         * input/regression/+.ly (TODO): add some text.
8731
8732 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8733
8734         * Documentation/user/invoking.itely: \score begins with music.
8735
8736         * Documentation/user/ basic-notation.itely,
8737         instrument-notation.itely: minor changes.
8738
8739         * Documentation/user/music-glossary.itely: began tenuto entry.
8740
8741 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8742
8743         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8744
8745         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8746
8747 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8748
8749         * Documentation/user/examples.itely: remove bagpipe template.
8750
8751         * Documentation/user/instrument-notation.itely: add bagpipe
8752         section, maybe fix quotes in lyrics.  I hate text encoding.
8753         Clarify chord durations, more bagpipe stuff.
8754
8755 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8756  
8757         * lily/accidental-engraver.cc: formatting fixes.
8758
8759         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8760         grob-array.
8761
8762         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8763
8764         * lily/note-column.cc (arpeggio): new function.
8765
8766         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8767         account for spacing.
8768
8769 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8770
8771         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8772         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8773         mingw build.
8774         
8775 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8776
8777         * scm/lily.scm (lilypond-all): clear anonymous modules after
8778         processing files.
8779
8780 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8781
8782         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8783         SCM_I_CONSP
8784
8785         * VERSION: 2.7.3 released
8786
8787         * Documentation/user/invoking.itely (Invoking lilypond): add
8788         LILYPOND_GC_YIELD documentation.
8789
8790         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8791         scm_from_real / scm_make_real.
8792
8793         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8794         higher. This increases memory footprint, but provides overall
8795         speedup of 15 to 20%. 
8796
8797         * lily/include/translator.hh (class Translator): remove
8798         PRECOMPUTED_VIRTUAL everywhere.
8799
8800         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8801
8802         * lily/context.cc (now_mom): non-recursive now_mom() 
8803
8804         * lily/include/profile.hh: new file.
8805
8806         * lily/profile.cc: new file.
8807
8808         * lily/grob.cc (Grob::Grob): look properties up directly.
8809
8810         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8811         lookups.
8812
8813         * lily/include/box.hh (class Box): smob Box type.
8814
8815         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8816
8817         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8818         protect() and unprotect(). Use throughout.
8819
8820 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8821
8822         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8823
8824         * scm/define-music-display-methods.scm (markup->lily-string):
8825         markup elements can also be strings (without simple-markup
8826         appended)
8827
8828 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8829
8830         * lily/context.cc (where_defined): also assign value in
8831         where_defined().
8832
8833         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8834         (curve_coordinate): new function
8835
8836         * lily/simple-spacer.cc (add_columns): only add rods between
8837         column i and begin/end if keep-inside-line is set (this repleces
8838         allow-outside-line as default)
8839
8840 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8841
8842         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8843         tupletSpannerDuration if applicable.
8844
8845         * lily/font-size-engraver.cc (process_music): read fontSize only
8846         once per timestep.
8847
8848         * lily/engraver*cc: use throughout.
8849         
8850         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8851
8852         * lily/translator.cc (add_acknowledger): new file. Directly jump
8853         into an Engraver::acknowledge_xxx () method based on a grobs
8854         interface-list.
8855
8856         * lily/include/translator-dispatch-list.hh (class
8857         Engraver_dispatch_list): new struct, new file.
8858
8859         * scm/define-context-properties.scm
8860         (all-internal-translation-properties): remove acceptHashTable,
8861         acknowledgeHashTable
8862
8863         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8864
8865         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8866         change acknowledgeHashTable to C++ member. 
8867
8868         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8869
8870 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8871
8872         * scm/display-lily.scm: new file. Define a `display-lily-music'
8873         function, that displays the music expression given as an argument,
8874         using LilyPond notation.
8875
8876         * scm/define-music-display-methods.scm: new file. Implementation
8877         of display methods for each music type.
8878
8879         * ly/music-functions-init.ly (displayLilyMusic): new function for
8880         displaying music with LilyPond notation.
8881
8882         * input/regression/display-lily-tests.ly: new regression test file
8883         for `display-lily-music'.
8884
8885         * scm/markup.scm: remove obsolete debugging code (for printing
8886         markups with LilyPond notation).
8887
8888         * scm/define-music-types.scm (music-name-to-property-table):
8889         * scm/clef.scm (supported-clefs): export, in order to be accessible
8890         from the (scm display-lily) module.
8891
8892 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8893
8894         * Documentation/topdocs/NEWS.tely (Top): Typo.
8895
8896 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8897
8898         * Documentation/index.html.in, Documentation/texinfo.css,
8899           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8900           Documentation/bibliography/index.html.in,
8901           Documentation/bibliography/html-long.bst: revert css-width patch,
8902           it does not work with IE6.
8903
8904 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8905
8906         * Documentation/texinfo.css: revert 760px hack. 
8907
8908         * VERSION: release 2.7.2
8909
8910         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8911
8912         * Documentation/user/basic-notation.itely (Barnumber check): add
8913         section.
8914
8915         * scm/music-functions.scm (skip-to-last): new function. Show only
8916         last showLastLength part of the \score.
8917
8918         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8919
8920         * python/convertrules.py (conv): add ly:x-moment rule
8921
8922         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8923
8924         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8925
8926         * Documentation/user/instrument-notation.itely (Flexibility in
8927         alignment): options in subsections.
8928
8929         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8930         syllable text. Instead, assume that the previous lyric text is a
8931         melismated text.
8932
8933         * Documentation/index.html.in: revert 800x600 change.
8934
8935 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8936
8937         * lily/main.cc (main): Remove invalid handle kludge.
8938
8939         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
8940         (lambda): add gui define.
8941
8942 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8943
8944         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
8945
8946         * Documentation/user/instrument-notation.itely (Musica ficta
8947         accidentals): add section Musica ficta accidentals
8948
8949         * lily/accidental-engraver.cc (make_suggested_accidental): new
8950         function.
8951         (make_standard_accidental): move into new function.
8952         (create_accidental): new function.
8953
8954         * scm/define-grobs.scm (all-grob-descriptions): new Grob
8955         AccidentalSuggestion
8956
8957         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
8958
8959         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
8960         undefined.
8961
8962         * Documentation/user/global.itely (Page formatting): document
8963         horizontalshift.
8964
8965         * scm/page-layout.scm (default-page-music-height):
8966         horizontalshift: new variable, shift all systems by
8967         horizontalshift to the right, to make space for instrument names.
8968
8969         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
8970
8971         * lily/input-scheme.cc (LY_DEFINE): take format commands.
8972
8973 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8974
8975         * lily/note-column.cc (dir): idem.
8976
8977         * lily/spacing-spanner.cc (Module): idem.
8978
8979         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
8980
8981         * lily/include/paper-column.hh (class Paper_column): add
8982         non-static get_rank() member.
8983
8984         * VERSION: release 2.7.1
8985         
8986         * scm/framework-null.scm: new file, used for benchmarking.
8987
8988 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
8989
8990         * Documentation/topdocs/INSTALL.texi, configure.in: fix
8991         version dependencies for fontforge and gs.
8992
8993         * Documentation/index.html.in, Documentation/texinfo.css,
8994         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8995         Documentation/bibliography/index.html.in, 
8996         Documentation/bibliography/html-long.bst: optimize width of
8997         html for a 800x600 screen (width:760), increases printability
8998         when 'fit to page' is not set and readability in wide screens.
8999
9000         * stepmake/bin/add-html-footer.py: add missing </p>.
9001
9002 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9003
9004         * scm/define-markup-commands.scm (beam): use polygon in beam
9005         command.
9006
9007         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9008         all acknowledged grobs, and do potentially expensive merge and
9009         write in one go.
9010
9011         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9012
9013         * configure.in (reloc_b): add --enable-static-gxx to statically
9014         link to libstdc++
9015
9016         * lily/GNUmakefile (static-gxx-libs): new target
9017         static-gxx-libs. Create symlink to libstdc++.a
9018
9019         * lily/new-lyric-combine-music-iterator.cc: rename to
9020         Lyric_combine_music_iterator
9021
9022         * lily/lyric-combine-music-iterator.cc
9023         (Old_lyric_combine_music_iterator): rename to
9024         Old_lyric_combine_music_iterator
9025
9026         * lily/*-engraver.cc (various): remove double use of
9027         PRECOMPUTED_VIRTUAL function: only use
9028         start_translation_timestep() and stop_translation_timestep(), not
9029         both.
9030
9031         * lily/break-substitution.cc (fast_substitute_grob_array): do
9032         fast_substitute_grob_array for all unordered grob_arrays.
9033         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9034         (substitute_grob_array): optimize.
9035
9036         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9037
9038         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9039
9040         * lily/parser.yy: revert $globalheader patch.
9041         
9042         * lily/include/translator.icc
9043         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9044         Translator methods, without _static helper.
9045  
9046         * lily/grob-smob.cc (derived_mark): rename from
9047         do_derived_mark(). Return void.
9048
9049         * scm/define-context-properties.scm
9050         (all-internal-translation-properties): remove tweakCount/tweakRank.
9051
9052         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9053         predefined break-visibilities.
9054
9055         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9056         booleans for break-visibility.
9057
9058         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9059
9060         * python/convertrules.py (conv): rule for Timing_translator. 
9061
9062         * lily/include/translator.icc: new file. 
9063
9064         * lily/paper-column-engraver.cc (process_music): new
9065         file. Separate Paper_column factory from Score_engraver.
9066
9067         * lily/vertically-spaced-context-engraver.cc: administer
9068         spaceable-staves property of System.
9069
9070         * lily/translator-group-ctors.cc: new file.
9071
9072         * lily/context-property.cc (make_grob_from_properties): construct
9073         the right Grob class programmatically, looking at the class entry
9074         for the meta property.
9075
9076         * lily/break-align-engraver.cc (stop_translation_timestep): call
9077         Break_align_interface::add_element() directly.
9078
9079         * lily/context.cc (measure_position): measure_position() is now a
9080         normal function.
9081
9082         * lily/include/translator.hh (class Translator): rename
9083         process_acknowledged_grobs() to process_acknowledged() and move to
9084         Translator.
9085
9086         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9087         field for each grob description.
9088
9089         * lily/include/translator-group.hh (class Translator_group):
9090         change to base class. Separate class from Translator. This gets
9091         rid of virtual inheritance for Engravers/Performers.
9092
9093         * lily/staff-performer.cc (class Staff_performer): derive
9094         Staff_performer from Performer, not Performer_group_performer 
9095
9096         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9097         new function.
9098         (precompute_method_bindings): new function. Precompute lists of
9099         Translators, so we only call methods (process_music,
9100         start_translation_timestep, etc.) for Translators needing
9101         it. Also: dispose of pointer-to-member-function calls.
9102
9103         * lily/engraver-group-engraver.cc: remove engraver_each,
9104         recurse_down_engravers ()
9105
9106         * lily/note-head.cc (internal_print): only call
9107         glyph-name-procedure if style != default. 
9108
9109 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9110
9111         * ly/titling-init.ly: add printallheaders option.
9112
9113         * Documentation/user/global.itely: document printallheaders.
9114
9115 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9116
9117         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9118         anymore, but do it centrally.  
9119
9120         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9121         hammer hack.
9122
9123         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9124
9125         * scm/output-lib.scm: remove hammer-print-function.
9126
9127         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9128         macro. Declare a Link_array<Grob> and fill it from a grob.
9129         (extract_item_set): idem for item.
9130
9131         * lily/break-substitution.cc: add header.
9132         (fast_substitute_grob_array): rewrite for Grob_arrays.
9133         (substitute_grob_array): idem.
9134
9135         * lily/group-interface.cc (add_thing): remove file.
9136
9137         * flower/include/parray.hh (class Link_array): slice() is const.
9138
9139         * lily/include/grob-array.hh: new file.
9140
9141         * lily/grob-array.cc (spanner): new file.
9142
9143         * lily/beam-quanting.cc (fill): read details property from beam.
9144
9145         * lily/beam.cc: support details property.
9146
9147         * total speedups below: approx 10%.
9148
9149         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9150
9151         * lily/include/grob.hh (class Grob): add interfaces_ member.
9152
9153         * lily/bezier.cc (init_polynomial_cache): new function: cache
9154         binom(3,j) t^j (1-t)^{3-j}
9155         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9156
9157         * lily/*.cc: substitution throughout.
9158
9159         * lily/grob-property.cc (internal_get_object): new routine.
9160         (internal_set_object): idem. Store grob refrences in separate
9161         alist. This saves processing time, since properties aren't
9162         break-substituted, and the per grob namespace is smaller, both for
9163         grobs and non-grob properties.
9164
9165         * scm/define-grob-properties.scm (all-internal-grob-properties):
9166         remove center-element.
9167
9168         * lily/grob.cc: remove tweak-count, tweak-rank.
9169
9170 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9171
9172         * Documentation/user/lilypond-book.itely: fixes example.
9173
9174 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9175
9176         * Documentation/user/global.itely (Creating titles):    
9177         * Documentation/user/examples.itely (All headers): change the
9178         place of \header in \score blocks (after music block) to make
9179         examples compile (cf. changes on parser.yy on 2005-07-10)
9180
9181 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9182
9183         * python/convertrules.py: add exc -> ecc rule.
9184
9185         * scripts/convert-ly.py: add location of convertrules.py
9186         in a comment.
9187
9188         * Documentation/user/changing-defaults.itely: fix language.
9189
9190 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9191
9192         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9193
9194 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9195
9196         * scm/output-socket.scm (grob-bbox): don't use inf? 
9197
9198         * flower/include/rational.hh: add operator bool() 
9199
9200         * scm/define-music-types.scm (music-descriptions): remove
9201         internal-class-name properties.
9202
9203         * lily/include/event.hh: remove file.
9204
9205         * lily/include/music-constructor.hh: remove file.
9206
9207         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9208         in 'types property.
9209
9210         * lily/music.cc (duration_length_callback): new function.
9211
9212         * lily/event.cc: remove file.
9213
9214         * lily/music-constructor.cc: remove file.
9215
9216         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9217
9218         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9219         (get_context_key): idem.
9220
9221         * scm/lily.scm (lambda): new option object-keys (default to #f)
9222
9223         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9224
9225         * scm/output-gnome.scm: remove beam routine.
9226
9227         * scm/output-ps.scm (scm): idem.
9228
9229         * scm/output-svg.scm: remove beam.
9230
9231         * ps/music-drawing-routines.ps: remove draw_beam.
9232
9233         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9234
9235         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9236         add scm_from_locale_string compatibility glue. 
9237
9238 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9239
9240         * scripts/lilypond-book.py: Prevent occuring error when
9241         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9242         times and target file shoud be overwritten.  (Error message said
9243         'input file and output file is same'.)
9244
9245 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9246
9247         * input/regression/slur-extreme.ly,
9248         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9249         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9250         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9251         "excentricity" to "eccentricity".
9252
9253         * Documentation/user/converters.itely: fix URL for Noteedit and
9254         Rosegarden.
9255
9256         * THANKS: added Yoshinobu Ishizaki.
9257
9258 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9259
9260         * scm/define-markup-commands.scm (justify-field): add. 
9261
9262         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9263
9264 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9265
9266         * lily/lookup.cc (filled_box): express filled_box with
9267         round_filled_box
9268
9269         * scm/midi.scm (paper-book-write-midis): new function. Write all
9270         performances in numbered MIDI files.
9271
9272         * lily/performance-scheme.cc (LY_DEFINE): new file.
9273         (LY_DEFINE): new function ly:performance-write.
9274
9275         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9276         new function.
9277         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9278
9279         * scm/framework-*.scm: use port arguments throughout.
9280
9281         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9282
9283         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9284
9285         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9286
9287         * scm/framework-texstr.scm (output-framework): 
9288
9289         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9290
9291         * scm/output-lib.scm (tablature-stem-attachment-function):
9292         tablature stem attachment fix. 
9293
9294 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9295
9296         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9297
9298         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9299
9300         * scm/define-music-types.scm (music-descriptions): don't use
9301         Music_wrapper type.
9302
9303         * lily/paper-column.cc (print): print moment too.
9304
9305         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9306         remove compatibility cruft.
9307
9308         * lily/parser.yy (score_body): \score can only begin with Music. 
9309
9310         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9311         make-score. Take music argument only. Move parser interaction to
9312         Scheme.
9313
9314         * scm/lily-library.scm (scorify-music): new function.
9315
9316         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9317         (datadir): remove resource import.
9318         (print_environment): remove get_bbox()
9319         (cp_to_dir): remove pre 1.5.2 compat glue.
9320
9321 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9322
9323         * lily/include/simple-spacer.hh (Module): idem.
9324
9325         * lily/include/spring.hh (struct Spring): store inverse
9326         strength. This prevents division by zero.
9327
9328         * VERSION: release 2.7.0
9329         
9330         * lily/include/music.hh (class Music): remove Music::duration_log()
9331
9332         * lily/stem-engraver.cc (make_stem): take duration log from event.
9333
9334         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9335
9336 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9337
9338         * scm/lily.scm (ly:load): load autochange.scm
9339
9340         * Documentation/user/tutorial.itely (Running LilyPond for the
9341         first time): remove reference to DVI/TeX
9342
9343         * scm/define-markup-commands.scm (text): add \text markup command.
9344
9345         * configure.in (reloc_b): bump requirement to Python 2.2.
9346
9347         * lily/include/dots.hh (class Dots): make has_interface() static.
9348
9349         * python/convertrules.py (conv): add rule for ly:grob-default-font
9350
9351         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9352         alphabetical order.
9353
9354         * input/regression/trill-spanner-pitched.ly: new file.
9355
9356         * lily/font-interface-scheme.cc (LY_DEFINE): function
9357         ly:grob-default-font (changed from get-default-font).
9358
9359         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9360
9361         * lily/note-head.cc (internal_print): if style is not a symbol,
9362         set style to 'default. 
9363         (internal_print): no style suffix if glyph-name-procedure not
9364         set. Default to quarter head.
9365
9366         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9367
9368         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9369
9370         * ly/music-functions-init.ly: \pitchedTrill
9371
9372         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9373
9374         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9375
9376         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9377
9378         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9379
9380         * po/fr.po: update
9381
9382         * po/de.po: update.
9383
9384 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9385
9386         * Documentation/user/changing-defaults.itely: add link
9387         to grob-iterface.
9388
9389         * Documentation/user/advanced-notation.itely: add material
9390         to Setting automatic beam behaviour.  Thanks, Joe!
9391
9392         * Documentation/user/lilypond.itely: change encoding to utf-8.
9393
9394 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9395
9396         * Documentation/user/advanced-notation.itely (Setting automatic
9397         beam behavior): Correct the documentation of
9398         revert-auto-beam-setting (backportme)
9399
9400 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9401
9402         * lily/ly-module.cc (ly_make_anonymous_module): define
9403         %module-public-interface of module. 
9404
9405         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9406         without lexer.
9407
9408 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9409
9410         * input/regression/fret-diagrams.ly: stretch example.
9411
9412 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9413
9414         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9415         Fodor).
9416
9417 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9418
9419         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9420
9421         * Documentation/user/examples.itely, lilypond-book.itely:
9422         change \RequirePackage to \usepackage.
9423
9424         * Documentation/user/global.itely: document copyright and tagline.
9425
9426 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9427
9428         * Documentation/user/basic-notation.itely (Transpose): remove link
9429         to nonexistent UntransposableMusic.
9430
9431         * scm/output-svg.scm: remove old definitions.
9432
9433         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9434         invoking.
9435
9436         * python/lilylib.py (search_exe_path): new function.
9437
9438 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9439
9440         * python/lilylib.py (mkdir_p): remove setup_environment()
9441         (backportme)
9442
9443         * buildscripts/mutopia-index.py (headertext): trim text.
9444
9445         * Documentation/topdocs/NEWS.tely (Top): refresh.
9446
9447         * scm/define-markup-commands.scm (wordwrap-string): new function:
9448         split string in paras and words.
9449         (wordwrap-markups): new function.
9450         (wordwrap-stencils): new function. 
9451         (justify): use it.
9452         (wordwrap): use it.
9453         (wordwrap-string): use it
9454         (justify-string): use it.
9455
9456         * scm/lily-library.scm (regexp-split): new function.
9457
9458         * scm/define-markup-commands.scm: remove encoded-simple. 
9459         remove font-markup.
9460         (fontsize): remove old version  of fontsize.
9461         (wordwrap): new markup function. Wrap into paragraphs.
9462
9463         * VERSION: Branch lilypond_2_6
9464         (MINOR_VERSION): go to 2.7.0
9465
9466 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9467
9468         * po/zh_TW.po: update from translation project.
9469
9470 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9471
9472         * scm/midi.scm: compile fix.
9473
9474 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9475
9476         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9477         patch. Now, the tempfile module is loaded too, not only used.
9478
9479 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9480
9481         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9482         0.05 - 1.00 to 0.25 - 1.00
9483
9484         * scm/midi.scm: moved the default-instrument-equalizer procedure
9485         to just under the insturment-equalizer-alist it takes as an
9486         argument.
9487
9488 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9489
9490         * Documentation/user/advanced-notation.itely (Font selection):
9491         remove CMR note.
9492
9493         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9494
9495 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9496
9497         * THANKS: Add UTF-8 marker.
9498
9499         * Documentation/user/point-and-click.itely (http): Update: use
9500         lilypond-invoke-editor.  Fix: instruct to use user.js.
9501
9502 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9503
9504         * ly/titling-init.ly: implements printpagenumber, increases
9505         space between dedication and title (to avoid collisions with
9506         "g" and "q" in dedication), and nicer logic about copyright
9507         and instrument fields being printed on the first page.
9508         Thanks Vincent!
9509
9510         * Documentation/user/global.itely: document printpagenumber.
9511
9512 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9513
9514         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9515
9516 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9517
9518         * THANKS: update to 2.6
9519
9520         * VERSION: 2.6.0 released.
9521
9522 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9523
9524         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9525         rule, errorneously removed probably because of misleading comment.
9526
9527 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9528
9529         * python/lilylib.py (datadir): py2exe comments.
9530
9531         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9532
9533         * configure.in (reloc_b): make fontconfig REQUIRED.
9534
9535 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9536
9537         * po/fi.po: add latest translations.
9538
9539 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9540
9541         * ChangeLog: recode utf-8
9542
9543         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9544         logo.
9545
9546         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9547
9548         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9549
9550         * python/convertrules.py (do_conversion): don't print program_name
9551         from within a module
9552
9553         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9554
9555         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9556
9557 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9558
9559         * Documentation/user/lilypond-book.itely,
9560         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9561
9562         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9563         fixes baseline-skip.  Thanks Vincent!
9564
9565         * Documentation/user/advanced-notation.itely, global.itely:
9566         moved "Selecting font sizes" to global, since it deals with
9567         notation font size, not text fonts.
9568
9569 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9570
9571         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9572         to fonts.
9573
9574 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9575
9576         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9577         workaround since /dev/stdin doesn't work on Cygwin. Using a
9578         temporary file in the current directory since latex doesn't
9579         understand the path name to the default TMP in Cygwin (at least on
9580         win XP).
9581         
9582         * Documentation/user/global.itely (Creating titles): Correct
9583         misprint in example. Thanks to Rob Vlasaty.
9584
9585 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9586
9587         * VERSION (PATCH_LEVEL): release 2.5.32
9588
9589         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9590         variable in lily module
9591
9592         * scm/framework-ps.scm (output-classic-framework): error message
9593         regarding the classic framework.
9594
9595         * Documentation/user/henle-flat-gray.png (Module): new file.
9596
9597         * Documentation/user/baer-flat-gray.png (Module): new file.
9598
9599         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9600         whiteout for markups.
9601
9602         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9603         regex too. This fixes change clef appearance in PDF. 
9604
9605         * ttftool/include/*: remove.
9606
9607         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9608
9609         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9610
9611         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9612
9613         * ttftool/*: remove ttftool subdirectory.
9614
9615         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9616
9617         * lily/ttf.cc (print_header): new file. Convert to type42, using
9618         FreeType to parse the TTF. 
9619
9620         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9621         and post table may differ. Pass around post_nglyphs as well.
9622
9623 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9624
9625         * ly/music-functions-init.ly (musicMap): new music function
9626         musicMap. 
9627         
9628 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9629
9630         * make/mutopia-rules.make: anti-alias-factor = 2
9631
9632         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9633         page switch.
9634
9635         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9636         anti-alias-factor for lilypond-book runs.
9637
9638         * scm/ps-to-png.scm (scale-down-image): new function.
9639         (my-system): new function.
9640         (make-ps-images): blow up GS resolution by anti-alias-factor,
9641         scale down image by anti-alias-factor.  This improves appearance
9642         of bitmaps
9643         (make-ps-images): remove showpage. Fixes spurious empty png at
9644         end.
9645
9646         * scm/framework-ps.scm (write-preamble): downcase filename before
9647         string-matching. Should fix .TTF files (as opposed to ttf files)  
9648
9649         * Documentation/user/tutorial.itely (Running LilyPond for the
9650         first time): separate subsections for windows, macos and unix.  
9651
9652         * Documentation/user/invoking.itely (Updating files with
9653         convert-ly): add MacOS X note.
9654
9655 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9656
9657         * Documentation/user/introduction.itely (Engraving): don't include
9658         file optical-spacing, add directly.
9659
9660         * lily/paper-outputter.cc (file): open file in binary mode. This
9661         fixes OTF embedding on windows.
9662
9663 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9664
9665         * scm/framework-ps.scm (write-preamble): remove debugging output.
9666
9667         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9668
9669         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9670         outdir.
9671         (install-fc-cache): install font cache in installation directories.
9672
9673 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9674
9675         * scm/editor.scm (editor-command-template-alist): Use char iso
9676         column, except for Emacs.
9677         (get-editor-command): Substitute char too (Bertalan Fodor).
9678
9679 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9680
9681         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9682         quoted ~s.  This should fix PNG output on Windows; single quotes
9683         are regular characters on Windows.
9684
9685 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9686
9687         * Documentation/user/basic-notation.itely: include ChoirStaff
9688         in System start delimiters.
9689
9690         * Documentation/user/putting.itely: new doc section on
9691         fixing overlapping notation.
9692
9693 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9694
9695         * Documentation/user/global.itely (Paper size): \paper is in
9696         \book, not \score.
9697
9698         * make/mutopia-rules.make: -ddelete-intermediate-files
9699
9700         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9701
9702 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9703
9704         * ChangeLog: Recode utf-8.
9705
9706         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9707         datadir with .py modules.
9708
9709 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9710
9711         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9712
9713 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9714
9715         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9716         
9717         * scm/framework-ps.scm (write-preamble): remove status check.
9718
9719         * Documentation/user/invoking.itely (Updating files with
9720         convert-ly): remove -o option.
9721
9722         * VERSION (PACKAGE_NAME): release 2.5.31
9723
9724         * scm/framework-ps.scm (write-preamble): use ly:system.
9725         (write-preamble): verbosity.
9726
9727         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9728
9729         * python/convertrules.py: new file. Store conversion rules
9730         separately.
9731
9732 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9733
9734         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9735
9736 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9737
9738         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9739         \musicDisplay 
9740
9741         * Documentation/user/instrument-notation.itely (More stanzas): Add
9742         reference to StanzaNumber.
9743
9744 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9745
9746         * THANKS: separate section for website translators.
9747
9748 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9749
9750         * Documentation/topdocs/INSTALL.texi: update vim info;
9751         thanks Simon Bailey!
9752
9753         * Documentation/user/advanced-notation.itely: included
9754         color names.
9755
9756         * Documentation/user/advanced-notation.itely,
9757         Documentation/usr/notation-appendices.itely: moved
9758         color names into an appendix.
9759
9760 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9761         
9762         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9763
9764         * scm/lily.scm (lambda): initialize program options from here.
9765
9766         * scm/framework-*.scm: add header info.
9767
9768         * lily/main.cc (parse_argv): only set output format to pdf if no
9769         other format specified.
9770
9771         * scm/backend-library.scm (postprocess-output): process
9772         'delete-intermediate-files after running convert-to-*. This fixes
9773         PNG generation when 'delete-intermediate-files is set.
9774         
9775 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9776
9777         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9778         links on website. 
9779
9780 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9781
9782         * Documentation/topdocs/INSTALL.texi,
9783         Documentation/user/lilypond-book.itely: typos.
9784
9785 2005-06-12  Pal Benko  <benkop@freestart.hu>
9786
9787         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9788         added between program name and switch; -b changed to -f not
9789         to generate pdf
9790
9791 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9792
9793         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9794         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9795
9796         * input/sakura-sakura.ly: add \midi.
9797
9798         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9799         iso. python find. 
9800
9801         * ttftool/test.c (main): cosmetics.
9802
9803         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9804
9805         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9806         create a ttf2ps binary.
9807
9808         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9809
9810         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9811         true.
9812
9813 2005-06-11  Graham Percival <gperlist@shaw.ca>
9814
9815         * Documentation/user/lilypond-book.itely: add warning about
9816         the font warnings in dvips.
9817
9818 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9819
9820         * THANKS: typo
9821
9822         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9823
9824         * GNUmakefile.in: remove links for .map, .enc
9825         don't fail if out/ doesn't exist yet.
9826
9827 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9828
9829         * ttftool/util.c (surely_read): return nbytes
9830
9831         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9832
9833         * VERSION (PACKAGE_NAME): release 2.5.30
9834
9835         * flower/string-convert.cc (precision_string): >? fix.
9836
9837         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9838         (make-ps-images): add verbose -q too.
9839
9840         * lily/default-actions.cc (Module): new file. default
9841         {book,score}-print functions.
9842
9843         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9844         pass results via parseStringResult, lookup via ly:parser-lookup.  
9845
9846         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9847         constructors.
9848         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9849         (parse_string): idem.
9850
9851         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9852
9853         * lily/main.cc (main_with_guile): copy be_verbose_global into
9854         ly_set_option()
9855
9856 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9857
9858         * scm/backend-library.scm (postscript->pdf):
9859         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9860         verbose mode.  Search for several names of gs executable.
9861
9862 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9863
9864         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9865         directly. This fixes a massive memory leak, provided you use CVS
9866         GUILE.
9867
9868 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9869
9870         * ly/property-init.ly: Added tieDashed.
9871
9872         * THANKS: Added some bughunters for 2.5.
9873
9874 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9875
9876         * lily/program-option.cc: add debug-gc option.
9877
9878         * lily/include/lily-guile-macros.hh: don't protect exported module
9879         objects.
9880
9881         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9882
9883         * scm/backend-library.scm (postscript->pdf): use
9884         delete-intermediate-files iso. running-from-gui? 
9885
9886         * ttftool/util.c (surely_read): robustness. Allow read() to return
9887         less bytes than requested, as per posix standards.
9888
9889         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9890         program option.
9891
9892         * ttftool/include/ttftool.h ("C"): rename verbosity to
9893         ttf_verbosity. Add to public interface.
9894
9895         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9896
9897         * lily/program-option.cc: rename from scm-option.cc
9898
9899         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9900         (get_help_string): Print pretty help string.
9901
9902         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9903         to snippet preamble.
9904
9905         * lily/scm-option.cc: remove command-line-settings option. Fold
9906         all command-line options plus default settings in a generic
9907         interface. 
9908
9909         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9910         texts too.
9911
9912 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9913
9914         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9915         or EXT_ components non-empty.
9916
9917 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9918
9919         * scm/lily.scm (running-from-gui?): Export.
9920
9921         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9922         output in .ly source directory.
9923
9924 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9925
9926         * ttftool/util.c (surely_lseek): more verbosity.
9927
9928         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9929         compile.
9930
9931         * lily/parser.yy (Repeated_music): remove >? 
9932
9933         * scm/backend-library.scm (postscript->pdf): Support for
9934         -dgs-font-load=1
9935
9936         * scm/framework-ps.scm (write-preamble): make font loading
9937         switchable to GS via --define-default gs-font-load=1
9938
9939 2005-06-09  Graham Percival  <gperlist@shaw.ca>
9940
9941         * Documentation/user/global.itely: added \layout docs.
9942
9943 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9944
9945         * lily/lily-parser-scheme.cc: add unistd.h
9946
9947 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9948
9949         * scm/editor.scm: add char argument.
9950
9951         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
9952
9953         * ttftool/util.c (syserror): use errno for better error reporting.
9954
9955         * lily/source-file.cc (get_counts): new function. Calc column,
9956         line and char count in one go.
9957
9958         * lily/binary-source-file.cc (quote_input): rename to quote_input
9959
9960         * lily/input.cc (set): new function.
9961
9962 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9963
9964         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
9965         directory part of file name to search directory.
9966
9967         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
9968         search path and chdir to DIR if --outname=DIR used.
9969
9970         * lily/main.cc (prepend_env_path): Bugfix: Check directory
9971         existence before appending original path.
9972
9973 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9974
9975         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
9976         file" massage.
9977
9978         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
9979         texinfo.tex is always used.
9980         
9981 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9982
9983         * flower/include/axis.hh: rename from axes.hh
9984
9985         * lily/include/text-interface.hh (Module): rename from text-item.hh
9986
9987         * VERSION (PATCH_LEVEL): release 2.5.29
9988
9989         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
9990
9991         * scm/framework-ps.scm (font-file-as-ps-string): new function.
9992         (handle-macfont): new function. Call fondu for Native mac fonts.
9993
9994         * scm/define-markup-commands.scm (fill-line): handle text-widths =
9995         '() case.
9996
9997 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9998
9999         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10000         multi-page.  Fix .eps regular expression.
10001
10002 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10003
10004         * Documentation/user/putting.itely: add info on modifying templates.
10005
10006         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10007         misc small changes.
10008
10009 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10010
10011         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10012
10013         * scripts/lilypond-ps2png.scm
10014
10015         * VERSION (PACKAGE_NAME): release 2.5.28
10016
10017 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10018
10019         * lily/main.cc (prepend_env_path): Do not append /, that does not
10020         work.  Localedir lives in datadir, not in prefix.
10021
10022         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10023         hack for windows.
10024
10025         * flower/include/file-cookie.hh: Compile fix.
10026
10027 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10028
10029         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10030
10031         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10032         system primitives.
10033         (gulp-port): using read-string!/partial. We don't want to read an
10034         entire PS file  (GUILE 1.6 limits strings to 16M) 
10035
10036         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10037         properties. Add font-interface. 
10038
10039         * scm/define-grob-properties.scm (all-user-grob-properties):
10040         remove old bracket properties.
10041
10042         * scm/x11-color.scm: reformat. 
10043
10044         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10045         LedgerLineSpanner if new StaffSymbol is found. 
10046
10047         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10048         staff-symbol for finishing staff. 
10049
10050         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10051
10052         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10053         change black to currentColor everywhere. This fixes color support
10054         in SVG.
10055
10056 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10057
10058         * input/regression/fret-diagrams.ly: new file to test fret diagram
10059         capability
10060
10061         * scm/output-tex.scm: remove white-dot and white-text
10062
10063         * scm/output-ps.scm: remove white-dot and white-text
10064
10065         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10066         using ly:stencil-in-color instead
10067         (draw-dots) : remove call to white-dot
10068
10069 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10070
10071         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10072         support.
10073
10074         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10075
10076         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10077
10078         * flower/file-cookie.cc: new file. lily_cookie extension.
10079         
10080 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10081
10082         * scm/editor.scm (editor-command-template-alist): Add syn
10083         editor (Jaap [de Vos]).
10084
10085 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10086
10087         * scripts/lilypond-ps2png.scm:
10088         * scm/ps-to-png.scm: New file.
10089
10090         * scm/backend-library.scm (postscript->png): Use it.
10091
10092         * scripts/lilypond-ps-to-png.py: Remove file.
10093
10094         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10095
10096 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10097
10098         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10099
10100         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10101         start on grace moment. Fixes autobeam-grace.ly.
10102
10103         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10104         process anything unless we're at the end of a pending beam. Fixes
10105         syncopated 8ths beamed across a beat.
10106
10107 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10108
10109         * scm/editor.scm (editor-command-template-alist): Start emacs if
10110         emacslient fails.
10111
10112         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10113
10114         * flower/file-path.cc (is_file, is_dir): Export.
10115
10116         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10117
10118 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10119
10120         * lily/easy-notation.cc: Added include cctype to correct
10121         compilation error.
10122
10123 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10124
10125         * scm/backend-library.scm (postscript->pdf): set resolution to
10126         1200, so bitmap fonts aren't that ugly. 
10127
10128         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10129
10130         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10131         parent if we have a notehead. Fixes incorrect offsets when
10132         Paper_column is very wide in the X direction.
10133
10134         * input/regression/font-family-override.ly (Module): new file.
10135
10136         * scm/font.scm (make-pango-font-tree): new function.
10137
10138         * lily/beam.cc (before_line_breaking): remove warning about less
10139         than 2 visible stems. We still get a warning when there is only
10140         one stem.
10141
10142 2005-06-01  Werner Lemberg  <wl@gnu.org>
10143
10144         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10145         correctly.
10146
10147 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10148
10149         * lily/slur-scoring.cc (generate_avoid_offsets): new
10150         function. Generate avoid offsets once per slur.
10151
10152         * lily/slur.cc (add_extra_encompass): add dependency to
10153         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10154
10155         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10156         too. Fixes inf error with added bass notes.
10157
10158         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10159         argument anymore.
10160
10161         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10162
10163         * input/tutorial/lbook-latex-test.tex: add line length test.
10164
10165         * scripts/lilypond-book.py (set_default_options): new
10166         function. Call this before dissecting snippets, so linewidth
10167         settings reach the snippets.
10168
10169 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10170
10171         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10172
10173 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10174
10175         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10176
10177 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10178
10179         * stepmake/aclocal.m4: More autopackage friendliness.
10180
10181 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10182
10183         * Documentation/index.html.in: remove link to LSR.
10184
10185         * Documentation/user/global.itely: remove duplicate
10186         "dedication" \header{} section.
10187
10188 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10189
10190         * VERSION (PACKAGE_NAME): release 2.5.27.
10191
10192         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10193         too. Plugs memory leak.
10194
10195         * make/lilypond.fedora.spec.in (Group): remove
10196         lilypond-pdfpc-helper.
10197
10198         * scripts/GNUmakefile (SEXECUTABLES): remove
10199         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10200
10201         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10202         'typewriter family.
10203
10204         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10205         memory leak.
10206
10207         * lily/parser.yy (score_body): don't clone Score, that's done in
10208         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10209
10210         * lily/score-engraver.cc (derived_mark): new function.
10211         (initialize): unprotect Paper_score. This fixes a memory leak.
10212
10213         * lily/score-performer.cc (derived_mark): new function.
10214
10215         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10216
10217         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10218         spurious warning.
10219
10220         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10221         serif.
10222
10223 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10224
10225         * configure.in (reloc_b): Add --enable-relocation.
10226
10227 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10228
10229         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10230
10231         * input/regression/alignment-order.ly: add Staff example.
10232
10233 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10234
10235         * po/fr.po: update.
10236
10237 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10238
10239         * Documentation/index.html.in: add link to LSR.
10240
10241 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10242
10243         * scm/define-stencil-commands.scm (Module): new file. Register all
10244         allowed stencil expression heads in a central place.
10245
10246         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10247         ly:make-stencil
10248
10249         * lily/stencil-expression.cc (all_stencil_heads): registering
10250         stencil expressions.
10251
10252         * lily/stencil-interpret.cc: new file. Stencil expression
10253         interpreting.
10254
10255         * input/xiao-haizi-guai-guai.ly: move file back.
10256
10257 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10258
10259         * Documentation/user/advanced.itely, converters.itely,
10260         instrument-notation.itely, lilypond-book.itely: misc small
10261         changes.
10262
10263 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10264
10265         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10266
10267         * make/lilypond.fedora.spec.in: Fix source url.
10268
10269         * cygwin: Update from mingw patches.
10270
10271         * scm/editor.scm (editor-command-template-alist): Use jedit
10272         -reuseview (Bertalan), add uedit (Patrick Huberts).
10273
10274         * input/xiao-hai-zi-guai-guai.ly: Rename from
10275         xiao-haizi-guai-guai.ly.
10276
10277         * input/*: Reindent, do not use TAB.
10278
10279         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10280         white background.
10281
10282 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10283
10284         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10285         numerical overflow error.
10286
10287 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10288         
10289         * abc2ly.py: fix to syntax error in multi-part output.
10290
10291 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10292
10293         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10294         with disappearing span bars when alignAboveContext is active
10295
10296         * lily/property-iterator.cc (check_grob): use is-grob?
10297         object-property. Fixes crash-key-sig-font-size.ly. 
10298
10299 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10300
10301         * lily/bar-line.cc (print): don't round barlines; this produces
10302         odd aliasing effects in Acroread.
10303
10304         * lily/timing-engraver.cc (process_music): robustness fix.
10305
10306         * lily/context-def.cc (filter_engravers): bugfix.
10307
10308 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10309
10310         * lily/lilypond.rc.in: Add ly-icon.
10311
10312         * lily/GNUmakefile: 
10313         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10314         rules.
10315
10316 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10317
10318         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10319
10320         * ps/music-drawing-routines.ps: 
10321
10322         * scm/output-ps.scm: remove draw ez_ball.
10323
10324         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10325         EasyNotation context definition.
10326
10327         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10328         Text_interface and color for making easy note heads.
10329
10330         * lily/stencil.cc (with_color): new function.
10331
10332         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10333
10334         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10335         output routine. Zigzag now works in SVG too.
10336
10337         * scm/output-tex.scm (filledbox): idem.
10338
10339         * scm/output-svg.scm (filledbox): idem.
10340
10341         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10342
10343         * lily/lookup.cc (horizontal_line): use draw-line. 
10344
10345         * lily/system-start-delimiter.cc: remove old staff bracket code.
10346
10347         * mf/feta-haak.mf: further tweaks.
10348
10349         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10350
10351         * mf/feta-generic.mf: include feta-haak.
10352
10353         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10354
10355         * scm/framework-ps.scm (write-preamble): only load fonts if their
10356         filename is a string. 
10357
10358 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10359
10360         * scm/output-svg.scm (circle): support circle.
10361         (bracket): stub for bracket.
10362
10363         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10364         correct.
10365
10366 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10367
10368         * Documentation/user/lilypond.tely, advanced-notation.itely,
10369         basic-notation.itely, instrument-notation.itely, global.itely,
10370         introduction.itely, tutorial.itely: rearranging, editing,
10371         clean-up.
10372
10373         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10374         for compiling on FreeBSD.
10375
10376 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10377
10378         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10379         otf files.
10380
10381         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10382         bugfixes.
10383
10384         * VERSION: 2.5.26 released.
10385
10386         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10387
10388 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10389
10390         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10391         if printpagenumber is false.
10392
10393 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10394
10395         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10396         cache warning.
10397
10398         * lily/tie.cc (print): support dotted ties.
10399         
10400 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10401
10402         * scm/define-grobs.scm (all-grob-descriptions): switch off
10403         debugging
10404         (all-grob-descriptions): Arpeggio has Y-extent.
10405
10406         * scm/define-music-properties.scm (all-music-properties): document
10407         length-callback and start-callback as "read-only".
10408
10409         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10410         length-callback after creation. 
10411
10412         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10413         compressmusic -> compressMusic.
10414
10415         * ly/music-functions-init.ly (oldaddlyrics): idem.
10416
10417         * lily/parser.yy: NewLyricCombineMusic ->
10418         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10419
10420 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10421
10422         * ly/Welcome_to_LilyPond.ly: typo.
10423
10424 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10425
10426         * Documentation/user/lilypond.tely: move changing-defaults to be
10427         before global issues.
10428
10429         * Documentation/user/basic-notation.itely: move Transpose section
10430         here from advanced/Other.
10431
10432         * Documentation/user/changing-defaults.itely,
10433         advanced-notation.itely: move Fonts to advanced, edit.
10434
10435 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10436
10437         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10438         # before negative integers.
10439
10440 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10441
10442         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10443
10444         * Documentation/user/lilypond.tely: change Unified index to
10445         LilyPond index.
10446
10447         * Documentation/user/advanced-notation.itely,
10448         instrument-notation.itely: editing.
10449
10450 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10451
10452         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10453
10454         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10455
10456 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10457
10458         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10459         ly:port-move.  Needs to be stderr-specific on mingw.
10460         Run fixcc.
10461
10462 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10463
10464         * lily/general-scheme.cc (ly:port-move): Remove.
10465
10466         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10467         windows.
10468
10469         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10470         variables.  This eliminates the need for a gs.bat wrapper, which
10471         opens a console.
10472
10473         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10474         * scm/lily.scm (running-from-gui?): 
10475         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10476         artifact of not compiling with -mwindows.
10477
10478         * scm/editor.scm: Define PLATFORM.
10479
10480 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10481
10482         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10483         can start to cut & paste lilypond-book fragments.  
10484
10485         * scm/define-music-types.scm (music-descriptions): remove
10486         UntransposableMusic
10487
10488 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10489
10490         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10491
10492 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10493
10494         * Documentation/user/instrument-notation.itely: remove *Engraver.
10495
10496         * Documentation/user/advanced-notation.itely: edit, rearrange.
10497
10498 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10499
10500         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10501         findresource iso. findfont for CID CFF fonts.
10502
10503         * VERSION (PACKAGE_NAME): release 2.5.25
10504
10505         * ly/Welcome_to_LilyPond.ly: add  \version
10506
10507 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10508
10509         * Documentation/user/programming-interface.itely: move
10510         \displayMusic into its own section.
10511
10512         * Documentation/user/basic-notation.itely: finish editing.
10513
10514 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10515
10516         * flower/file-path.cc (find): don't throw away file_name.dir, but
10517         append to it. Fixes \include with directories.
10518
10519         * flower/include/file-path.hh (class File_path): don't derive from
10520         Array<String>.
10521
10522         * flower/include/file-name.hh (class File_name): remove to_str0()
10523
10524         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10525         Hara_kiri_engraver in separate file.
10526
10527         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10528         translation went wrong. Fixes vertically translated slurs.
10529
10530 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10531
10532         * Documentation/user/basic-notaton.itely: editing.
10533
10534 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10535
10536         * Documentation/user/macros.itexi, basic-notation.itely:
10537         add @commonprop (commonly used properties) macro.
10538
10539 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10540
10541         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10542
10543         * scripts/lilypond-book.py (invokes_lilypond): new function
10544         (main): only run fontextract if invokes_lilypond() is true.
10545
10546         * lily/function-documentation.cc (ly_add_function_documentation):
10547         duh, use !=
10548
10549         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10550
10551         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10552
10553         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10554
10555         * lily/function-documentation.cc (ly_add_function_documentation):
10556         use scm_hash_table_p() for checking.
10557
10558 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10559
10560         * Documentation/user/advanced-notation.itely (Text scripts):
10561         Change nonexisting @internalsref{Text markup} to @ref{Text
10562         markup}.  Change @internalsref{Text script} to
10563         @internalsref{TextScript}.
10564
10565         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10566
10567 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10568
10569         * Documentation/user/tutorial.itely, basic-notation.itely,
10570         changing-defaults.itely: remove duplicate cindex entries
10571         that appear on the same page.
10572
10573         * scm/define-grobs.scm: change default padding for TextSpanner.
10574
10575         * Documentation/topdocs/AUTHORS.texi: update email address.
10576
10577         * Documentation/user/global.itely: add info about \include.
10578
10579 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10580
10581         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10582         when running-from-gui.
10583
10584         * scm/editor.scm (get-editor): Add platform defaults.
10585
10586         * scm/backend-library.scm (postscript->pdf): Typo.
10587
10588 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10589
10590         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10591
10592         * lily/font-config.cc (init_fontconfig): add warning about cache.
10593
10594 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10595
10596         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10597
10598 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10599
10600         * lily/horizontal-bracket.cc (print): Take care of the direction
10601         property so brackets above the stave point downwards. 
10602
10603         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10604         for HorizontalBracket so it doesn't end up within the stave.
10605
10606 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10607
10608         * lily/GNUmakefile (default): Typo.
10609
10610         * scm/lily.scm (PLATFORM): Export.
10611
10612         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10613         load-font-via-GS, ttftool or fopencookie is broken on windows.
10614         
10615         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10616         -dSAFER, that is broken on windows.
10617
10618 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10619
10620         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10621         for FlexLexer.h
10622
10623         * scripts/lilypond-invoke-editor.scm: remove stray -
10624
10625 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10626
10627         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10628         Fixes deprecation warning.
10629
10630         * flower/include/string.icc (to_string): Only inline if
10631         -DSTRING_UTILS_INLINED.
10632
10633         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10634         name.  Remove windows comment.
10635
10636         * scm/editor.scm (slashify): New function.
10637         (get-editor-command): Use it.
10638         (get-command-template): Do not alter editor command if
10639         environment value includes `%(file)s' magic.
10640
10641         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10642         (dissect-uri): Use it.
10643         (unquote-uri): Bugfix.
10644
10645 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10646
10647         * scm/framework-ps.scm (write-preamble): add TTF rule.
10648
10649         * Documentation/topdocs/README.texi (Top): remove note about
10650         xdelta.
10651
10652         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10653         requirement.
10654
10655         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10656         function. Figure out where FlexLexer.h lives
10657
10658         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10659         
10660 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10661
10662         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10663         with Windows root in file name.
10664
10665         * scm/backend-library.scm (ly:system): Only redirect output (using
10666         system and shell, ugh) if /dev/null is writable.
10667
10668         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10669         windows icon.
10670
10671         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10672         on Mingw.
10673
10674         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10675         click.
10676
10677         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10678         use result of stat when available.
10679
10680         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10681         absolute file name and root.
10682
10683         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10684
10685         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10686
10687         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10688         slashes in file name.
10689
10690 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10691
10692         * Documentation/user/preface.itely (Preface): Run
10693         texinfo-all-menus-update.
10694
10695         * scm/editor.scm (get-editor-command): Bugfix: allow full
10696         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10697
10698         * Documentation/pictures/lilypond-48.xpm: New file.
10699
10700         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10701
10702         * ly/Welcome_to_LilyPond.ly: New file.
10703
10704         * lily/main.cc (main): Only identify if we have a terminal.
10705
10706         * scm/backend-library.scm (postscript->png)
10707         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10708         non-/bin/sh).
10709
10710 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10711
10712         * Documentation/topdocs/AUTHORS.texi: polish, update.
10713
10714 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10715
10716         * Documentation/user/preface.itely (Notes for version 2.6): new
10717         notes for 2.6
10718
10719         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10720         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10721         is not fully contained" warnings.
10722
10723         * lily/slur-scoring.cc (get_bound_info): remove warning.
10724
10725         * lily/staff-symbol-engraver.cc (process_music): start initial
10726         spanner in process_music(). This fixes overrides of StaffSymbol
10727         properties.
10728
10729         * scm/framework-pdf.scm (Module): remove.
10730
10731         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10732
10733         * lily/ambitus-engraver.cc: formatting cleanups.
10734
10735         * mf/feta-solfa.mf (Module): remove.
10736
10737         * ChangeLog: more details about contributions.
10738
10739 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10740
10741         * lily/align-interface.cc (align_elements_to_extents): warn if
10742         called too early. Fixes: disappearing-staff-lines.ly
10743
10744         * VERSION (PACKAGE_NAME): release 2.5.24
10745
10746 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10747
10748         * stepmake/aclocal.m4: Typo.
10749
10750         * flower/string.cc (substitute): Take two strings or two
10751         characters.  Update callers.
10752
10753 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10754
10755         * flower/file-name.cc (File_name): Slashify.
10756
10757         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10758
10759         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10760
10761         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10762
10763         * configure.in (gui_b): Use it.
10764
10765         * lily/lilypond.rc.in: New file.
10766
10767         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10768
10769 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10770
10771         * Documentation/user/advanced-notation.itely: edit of Text
10772         section; clarify text scripts vs. text markup.
10773
10774 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10775
10776         * lily/multi-measure-rest-engraver.cc
10777         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10778         separation items on start. Fixes mm rests in start of score.
10779
10780         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10781         don't access StaffSymbol if not there.
10782         Fixes: crash-staff-symbol-engraver.ly.
10783
10784         * lily/instrument-name-engraver.cc (class
10785         Instrument_name_engraver): data member first_. Create
10786         InstrumentName on start. 
10787
10788 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10789
10790         * Documentation/user/instrument-notation.itely: add guitar
10791         position.
10792
10793         * Documentation/user/introduction.itely,
10794         Documentation/user/lilypond.tely,
10795         Documentation/user/tutorial.itely: begin pruning
10796         unused (duplicated) cindex entries and misc cleanup.
10797
10798 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10799
10800         * input/test/volta-chord-names.ly: Bring the explanation up to
10801         date.
10802
10803 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10804
10805         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10806         Specify `@documentencoding utf-8' for html, ignore warnings.
10807
10808 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10809
10810         * THANKS: Added bughunters.
10811
10812 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10813
10814         * lily/main.cc: update help string for `lilypond -H'.
10815
10816         * po/fi.po: update.
10817         
10818 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10819
10820         * Documentation/user/advanced-notation.itely: minor fixes.
10821
10822 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10823
10824         * scm/editor.scm: New module.
10825
10826         * scm/lily.scm (gui-main): Use it.
10827
10828         * scm/framework-gnome.scm (spawn-editor): Use it.
10829
10830         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10831
10832 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10833
10834         * scm/framework-ps.scm (load-font-via-GS):  new function.
10835
10836         * lily/pango-font.cc (pango_item_string_stencil): add support for
10837         CID keyed font.
10838
10839         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10840
10841 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10842
10843         * Documentation/user/basic-notation.itely: add @ref.
10844
10845         * Documentation/user/advanced-notation.itely: add example
10846         of 5/8 beaming.
10847
10848 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10849
10850         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10851
10852         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10853         going through ps2pdf wrappers.
10854
10855 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10856
10857         * Documentation/user/instrument-notation.itely: petrucci note
10858         heads: updated docu
10859
10860         * input/regression/note-head-style.ly: updated regression test;
10861         indentation fixes
10862
10863         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10864         heads as default
10865
10866         * mf/parmesan-heads.mf: minor editing; use musicological names
10867         (rather than optical description) as note head names
10868
10869         * scm/output-lib.scm: complete petrucci heads
10870
10871 2005-05-09  Pal Benko  <benkop@freestart.hu>
10872
10873         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10874         heads, but bigger)
10875
10876 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10877
10878         * lily/main.cc (main_with_guile): Remove no files check.
10879
10880         * lily/main.cc (ly:usage): Export to Scheme.
10881
10882         * scm/lily.scm (no-files-handler): New function.
10883
10884         * scm/lily.scm (lilypond-main): Use it.
10885
10886         * configure.in (gui_b): Add mbrtowc checking.
10887         Resurrect [utf8/]wchar.h checking.
10888
10889 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10890
10891         * Documentation/user/advanced-notation.itely (Metronome marks):
10892         Add link to the program reference for MetronomeMark
10893
10894         * Documentation/user/lilypond-book.itely (An example of a
10895         musicological document): Correct the example using psfonts 
10896
10897 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10898
10899         * po/fi.po: update after a lesson how to update entries against
10900         source.
10901         
10902         * po/TODO: document the lesson.
10903
10904 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10905
10906         * configure.in (gui_b): remove wcrtomb checking.
10907
10908         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10909         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10910
10911 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10912
10913         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10914         keep Scheme expressions and strings unmodified when doing the
10915         conversion to postfix notation for slurs and beams. Should
10916         hopefully solve most related conversion problems. 
10917
10918         * Documentation/user/lilypond-book.itely : Clarify and correct how
10919         to call dvips with -h psfonts.
10920
10921 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10922
10923         * Documentation/user/instrument-notation.itely (Entering lyrics):
10924         Typo.  Fixes build.
10925
10926 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10927
10928         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10929
10930         * Documentation/user/lilypond.tely, lilypond-book.itely,
10931         tutorial.itely: change references to 2.5.x to 2.6.x.
10932
10933         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10934         vs \lyricmode.
10935
10936         * Documentation/user/invoking.itely: remove old info about
10937         lilypond-profile.
10938
10939         * Documentation/topdocs/INSTALL.texi: remove old info about
10940         lilypond-profile, add warning about needing international fonts
10941         to build docs.
10942
10943 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10944
10945         * lily/include/grob-info.hh (class Grob_info): make data member
10946         private. Changes throughout.
10947
10948         * input/regression/alignment-order.ly: new file. 
10949
10950         * lily/vertical-align-engraver.cc (acknowledge_grob): read
10951         alignAboveContext and alignBelowContext
10952
10953 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10954
10955         * lily/pfb.cc (LY_DEFINE): add cast.
10956
10957         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
10958         matches .otf
10959         (write-preamble): warn about unknown fonts.
10960
10961         * lily/pfb.cc (Module): new function ly:otf->cff
10962
10963         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
10964         (get_otf_table): new function.
10965
10966 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10967
10968         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
10969         iso. ps2png.
10970
10971 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
10972
10973         * po/fi.po: apply second round of update.
10974
10975 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10976
10977         * scm/x11-color.scm (make-x11-color-handler): don't use
10978         #\sp. Apparently doesn't work on all platforms. 
10979
10980 2005-05-06  Graham Percival  <gperlist@shaw.ca>
10981
10982         * Documentation/user/advanced-notation.itely, putting.itely,
10983         tutorial.itely, global.itely, introduction.itely: really minor fixes.
10984
10985 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10986
10987         * VERSION (PACKAGE_NAME): release 2.5.23
10988
10989 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10990
10991         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
10992         convert to utf-8.
10993
10994         * THANKS: Add translators for this release, convert to utf-8.
10995
10996         * mf/GNUmakefile (MFTRACE_FLAGS):
10997         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
10998         outdir as option (WAS: hardcoded).
10999
11000 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11001
11002         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11003         finished_span_
11004
11005         * THANKS: add Hans Forbrich.
11006
11007         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11008
11009         * Documentation/user/basic-notation.itely (Staff symbol): document
11010         start/stop staff. Reference to ossia.ly
11011
11012         * input/test/ossia.ly: new example using stop and startStaff.
11013
11014         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11015         in other words, don't create "|" barline at start of the score.
11016         (start_translation_timestep): don't set whichBar for start of score.
11017
11018         * input/regression/staff-halfway.ly: use new functionality.
11019
11020         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11021         start and stop staff based on events.
11022
11023         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11024
11025         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11026
11027 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11028
11029         * Documentation/user/programming-interface.itely (How markups work
11030         internally ): remove \encoding reference.
11031
11032 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11033
11034         * scripts/convert-ly.py: Attempt to do a smarter update of 
11035         text markups from versions < 1.9.0 with arbitrary nesting.
11036
11037 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11038
11039         * po/fi.po: convert to utf-8, and update.
11040
11041 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11042
11043         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11044
11045         * lily/*.cc: more <? >? to min/max changes
11046
11047         * lily/include/interpretation-context-handle.hh: rename
11048         Interpretation_context_handle to Context_handle.
11049
11050 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11051
11052         * input/regression/GNUmakefile (local_delete): use `find` together 
11053         with `xargs` to avoid too long argument-lists in cmd line.
11054
11055 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11056
11057         * Documentation/user/introduction.itely: updates "About this manual".
11058
11059         * Documentation/user/advanced-notation.itely,
11060         invoking.itely: minor fixes.
11061
11062 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11063
11064         * COPYING: add font exception. Update FSF address. 
11065
11066         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11067         should be taken without child context.
11068
11069         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11070
11071         * scm/define-markup-commands.scm (triangle): new command, as
11072         robust replacement for unicode Delta/Triangle.
11073
11074 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11075
11076         * ps/music-drawing-routines.ps: add fillp argument.
11077
11078         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11079
11080         * lily/font-config.cc (init_fontconfig): don't add cff/
11081
11082         * VERSION (PACKAGE_NAME): release 2.5.22
11083
11084         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11085
11086         * lily/grace-engraver.cc (consider_change_grace_settings): use
11087         is_alias(). Fixes problem with CueVoice grace notes. 
11088
11089         * lily/simultaneous-music-iterator.cc (construct_children): call
11090         Music_iterator::quit() for iterators that start out invalid. This
11091         fixes indefinitely continuing contexts.
11092
11093         * buildscripts/substitute-encoding.py: new file
11094
11095         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11096         missing @end 
11097
11098         * scripts/lilypond-book.py (write_if_updated): print file name.
11099
11100         * Documentation/user/basic-notation.itely (Explicitly
11101         instantiating voices): idem.
11102
11103         * Documentation/user/advanced-notation.itely (Text spanners):
11104         remove stray { } 
11105
11106         * lily/context.cc (default_child_context_name): the default child
11107         is now first in accepts_list_.
11108
11109         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11110         \defaultchild to all relevant contexts.  This fixes:
11111         drums-pitch.ly.
11112
11113         (Probably also fixes similar problems with ancient
11114         transcriptions getting CueVoices instead of the desired voices.)
11115  
11116         * lily/context-def.cc (get_default_child): new function.
11117         (get_accepted): place default child in front of list.
11118
11119         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11120
11121         * lily/include/context-def.hh (struct Context_def): add
11122         default_accept_
11123
11124 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11125
11126         * scm/define-grobs.scm: remove "remove-first" line, since
11127         the absent property is set to #f anyway.
11128
11129         * Documentation/user/basic-notation.itely,
11130         advanced-notation.itely, instrument-notation.itely: minor
11131         fixes.
11132
11133         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11134
11135         * Documentation/user/advanced-notation.itely,
11136         changing-defaults.itely: consolidate Text stuff in
11137         advanced notation.
11138
11139         * Documentation/user/global.itely: better docs for \header.
11140
11141         * Documentation/user/putting.itely: new chapter; placeholder
11142         for future expansion.
11143
11144         * Documentation/user/examples.itely: moved "suggestions for
11145         writing LP files" section into putting.itely.
11146
11147         * Documentation/user/lilypond.itely: added new chapter,
11148         fixed the short table of contents.
11149
11150 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11151
11152         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11153         infinity for unfeasible beams.
11154
11155         * make/lilypond.fedora.spec.in (Group): idem.
11156
11157         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11158
11159         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11160
11161         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11162         fonts directly.
11163
11164         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11165
11166         * mf/GNUmakefile: remove all CFF rules.
11167
11168         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11169
11170         * lily/open-type-font-scheme.cc (LY_DEFINE):
11171         new function ly:otf-font-table-data.
11172         (LY_DEFINE): new function otf-font?
11173
11174 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11175
11176         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11177         ($(outdir)/Fontmap.lily): idem.
11178
11179         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11180         for PFAEmmentaler-XXX.pfa. 
11181
11182         * Documentation/user/music-glossary.tely (accidental): NL
11183         translation of accidental.
11184
11185 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11186
11187         * flower/include/international.hh: Bugfix: include "string.hh".
11188
11189         * lily/include/mingw-compatibility.hh: New file.
11190
11191         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11192
11193         * configure.in: Search for mingw wcrtomb library.
11194
11195 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11196
11197         * scripts/convert-ly.py: Bug fix
11198
11199         * Documentation/user/changing-defaults.itely (Common tweaks):
11200         Added example where the context has to be specified explicitly
11201         (MetronomeMark). 
11202
11203 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11204
11205         * scripts/lilypond-book.py (ly_options): set timing to #f for
11206         notime option.
11207
11208         * scripts/convert-ly.py (conv): typo.
11209
11210         * flower/*.cc: remove <? and >?
11211         
11212         * lily/*.cc: remove <? and >?
11213
11214         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11215         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11216         editor.
11217
11218 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11219
11220         * lily/part-combine-engraver.cc: add space to variable list.
11221
11222 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11223
11224         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11225         remove-first to false (matches docs)
11226
11227         * Documentation/user/advanced-notation.itely: corrected docs
11228         concerning remove-first.
11229
11230 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11231
11232         * lily/part-combine-engraver.cc: make sure that the relevant
11233         properties are included in the documentation.
11234
11235 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11236
11237         * Documentation/user/lilypond-book.itely: Bernard's docs
11238         for \betweenLilyPondSystem.
11239
11240 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11241
11242         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11243         remarks.
11244
11245 2005-04-28  Pal Benko  <benkop@freestart.hu>
11246
11247         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11248         only on vertical lines of flexa shape, and use a constant
11249         thickness value for horizontal lines (patch slightly modified by
11250         Jürgen Reuter)
11251
11252         * lily/include/mensural-ligature.hh: make 2 comments clearer
11253
11254 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11255
11256         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11257         to need_extra_horizontal_space; bugfix: use class scope to avoid
11258         global namespace pollution
11259
11260         * Documentation/user/instrument-notation.itely (ligatures): added
11261         comment on possible future syntax change and how to work around
11262
11263         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11264         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11265         intervals (fixes agnus dei example)
11266
11267         * Documentation/user/instrument-notation.itely (white mensural
11268         ligatures): selected a more illustrative example
11269
11270 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11271
11272         * Documentation/index.html.in: specify utf-8 charset in meta content.
11273
11274 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11275
11276         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11277         empty 2nd page for single page.
11278
11279         * scm/lily.scm: remove p&c definitions.
11280
11281         * po/zh_TW.po (Module): new translation.
11282
11283         * lily/lily-guile.cc (ly_chain_assoc): remove.
11284
11285         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11286         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11287
11288 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11289
11290         * lily/beaming-info.cc: remove infinity_i
11291
11292         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11293
11294 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11295
11296         * Documentation/user/basic-notation.itely,
11297         instrument-notation.itely, advanced-notation.itely,
11298         changing-defaults.itely: minor fixes.  Added docs
11299         for colors to advanced-notation.itely.
11300
11301         * Documentation/user/advanced-notation.itely: fixed compile
11302         problem and added Bernard's x11-color doc patch.
11303
11304 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11305
11306         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11307         alright this time round.
11308
11309 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11310
11311         * Documentation/topdocs/INSTALL.texi (Top): idem.
11312
11313         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11314
11315         * VERSION (MAJOR_VERSION): release 2.5.21
11316
11317         * scm/output-ps.scm (grob-cause): bugfix.
11318
11319 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11320
11321         * cygwin/*: Update.
11322
11323         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11324         stuff.
11325
11326         * scm/output-ps.scm (grob-cause): Bugfix.
11327
11328         * scm/lily.scm (ly:load): Remove x11-color.
11329
11330         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11331         quote executable, fixes getting version from program --with
11332         --options.
11333         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11334         $ac_exeect.
11335
11336         * Documentation/user/GNUmakefile: Only build music-glossary with
11337         rendered lilypond snippets during web.
11338
11339 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11340
11341         * po/de.po: update.
11342
11343         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11344
11345 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11346  
11347         * scripts/abc2ly:
11348         second title line append with punctuation dash character;
11349         encode abc2ly python strings in utf-8
11350        
11351 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11352
11353         * scripts/abc2ly fix chords (again)
11354  
11355 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11356
11357         * scm/x11-color.scm: new file
11358         All x11 color names can be accessed with:
11359         #(x11-color 'ColorName),
11360         #(x11-color "ColorName") or:
11361         #(x11-color "color name")
11362         If the x11 color name is not recognised then it defaults
11363         to black
11364
11365         * scm/lily.scm: amended to call scm/x11-color.scm
11366
11367 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11368
11369         * Documentation/user/invoking.itely (Reporting bugs): comment out
11370         reference to online PNG bug repository.
11371
11372 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11373
11374         * lily/translator-scheme.cc (ly:translator-property): Remove.
11375         Update callers.
11376
11377         * lily/context-scheme.cc (ly:context-now): Move from translator.
11378         Update callers.
11379
11380 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11381
11382         * input/regression/grid-lines.ly (skips): refine example.
11383
11384         * scm/define-context-properties.scm
11385         (all-user-translation-properties): doc autoBeamCheck
11386
11387         * input/regression/grid-lines.ly (Module): new file.
11388
11389         * lily/grid-point-engraver.cc (Module): new file.
11390
11391         * lily/grid-line.cc (Module): new file.
11392
11393         * lily/grid-line-span-engraver.cc (Module): new file.
11394
11395         * lily/grid-line-interface.cc (Module): new file.
11396
11397 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11398
11399         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11400         missing parameter, actualy cdr through list.  Actually return a
11401         list with ENTRY removed (was '()).
11402
11403         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11404         opened.
11405         (do_conversion): Fix printing of continuation comma.
11406
11407         * Documentation/user/advanced-notation.itely (Beam formatting):
11408         Remove refbugs about compound time and mixed duration.
11409
11410         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11411         modulo moments explicitely.
11412
11413         * lily/moment.cc (operator %): New function.
11414
11415         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11416
11417         * lily/translator-scheme.cc (ly:translator-now,
11418         ly:translator-property): New function.
11419
11420         * scm/auto-beam.scm (default-auto-beam-check): New function.
11421
11422         * lily/auto-beam-engraver.cc (test_moment): Use it.
11423
11424         * flower/rational.cc (operator %): Bugfix.
11425
11426 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11427
11428         * scripts/abc2ly: Bugfix
11429
11430 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11431
11432         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11433         %'s on EndFont comment.
11434
11435         * lily/ledger-line-spanner.cc: some more words of explanation.
11436
11437 2005-04-20  John Williams <williams@tni.com>  
11438         
11439         * scripts/lilypond-book.py: htmlquote bugfix.
11440         Allow snippets to be given distinct filenames.
11441         Allow the default alt text to be overridden.
11442
11443 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11444
11445         * ly/performer-init.ly: Bugfix
11446
11447         * THANKS: Added bughunters.
11448
11449 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11450
11451         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11452
11453         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11454         position (was: use modulo measure length).
11455
11456         * configure.in (no gui_b): Remove optional gtk+ requirement.
11457
11458 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11459
11460         * Documentation/user/basic-notation.itely (Pitches): add
11461         LedgerLineSpanner.
11462
11463         * lily/dynamic-engraver.cc (process_music): set right bound to
11464         script if present. Else, do not set.
11465         (acknowledge_grob): only set right bound of finished spanner to
11466         note column if no other bound is set.
11467
11468         * python/lilylib.py (make_ps_images): switch back to png16m.
11469         
11470 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11471
11472         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11473         writing up to date file.  Add dvips usage suggestion.
11474
11475         * scripts/convert-ly.py: Fix error message.
11476         Print usage if no files on command line.
11477         (usage): Add example usage.
11478
11479         * input/test/compound-time.ly: New file.
11480
11481         * input/test/circle.ly: New file.
11482
11483         * Documentation/topdocs/NEWS.tely: Use them.
11484
11485         * input/test/boxed-stencil.ly: Remove \score.
11486
11487         * buildscripts/mf-to-table.py (base): Add .log dependency.
11488
11489         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11490         pfa's.  Add .log dependency
11491
11492         * scm/define-markup-commands.scm (lower): New command.
11493
11494         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11495         make it default.
11496
11497 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11498
11499         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11500         also to finished cresc as right bound. This fixes:
11501         skip-string-decresc.ly
11502
11503         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11504         relative_coordinate if extent is empty.
11505
11506         * lily/stem.cc (width_callback): determine correct extent if flag
11507         is not there. This fixes slur-no-flag.ly
11508
11509         * lily/grace-engraver.cc (consider_change_grace_settings): new
11510         function.
11511         (initialize): also consider_change_grace_settings() on
11512         initialization. Fixes large grace notes at start of score.
11513
11514         * lily/break-align-interface.cc (do_alignment): don't translate if
11515         total_extent is empty.
11516
11517         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11518
11519 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11520
11521         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11522         with slash.
11523
11524 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11525
11526         * stepmake/aclocal.m4: Remove tfm_path.
11527
11528 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11529
11530         * scm/music-functions.scm (markup-expression->make-markup): fix
11531         bug with cons arguments of markup commands.
11532         (music->make-music): fix music expression property list building
11533
11534 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11535
11536         * aclocal.m4: Massage package names.
11537
11538         * SCons updates.
11539
11540 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11541
11542         * VERSION (PACKAGE_NAME): release 2.5.20
11543
11544         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11545         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11546
11547         * lily/percent-repeat-engraver.cc (try_music): add measure before
11548         next_moment to future processing moment. Fixes:
11549         percent-repeat-mm-rest.ly
11550         (process_music): don't add moment for 2nd time.
11551
11552         * input/regression/repeat-percent.ly: add mmrests as extra test.
11553
11554         * lily/axis-group-engraver.cc (acknowledge_grob): read
11555         keepAliveInterfaces to decide what to kill.
11556
11557         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11558         percent-repeat-interface to keepAliveInterfaces. This fixes
11559         percent-repeat-harakiri.
11560
11561 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11562
11563         * SCons updates.
11564
11565 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11566
11567         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11568
11569         * aclocal.m4: remove --enable-tfm-path configure option
11570
11571         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11572
11573         * scm/backend-library.scm (postscript->png): newline after
11574         finishing command.
11575
11576         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11577         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11578
11579         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11580
11581         * lily/score.cc (default_rendering): use Music_output too.
11582
11583         * input/test/chord-names-languages.ly (Module): rename file.
11584
11585         * lily/text-spanner.cc: add bound-padding.
11586
11587         * lily/paper-book.cc (systems): accept Paper_score
11588         iso. Paper_system vector. 
11589
11590         * input/regression/line-arrows.ly: new file.
11591
11592         * lily/paper-score.cc (process): run get_paper_systems() only once.
11593
11594         * lily/line-spanner.cc (line_stencil): add arrows.
11595
11596 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11597
11598         * lily/line-interface.cc (make_arrow): new function. 
11599         (arrows): idem.
11600
11601 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11602
11603         * input/test/chord-names-german.ly: update for italian/french
11604         chords.
11605         
11606         * Documentation/user/instrument-notation.itely (Printing chord
11607         names): update.
11608
11609 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11610
11611         * lily/include/paper-score.hh (class Paper_score): remove unused
11612         prototypes.
11613
11614         * lily/book.cc (process): add -COUNT to midi output.
11615
11616         * lily/score.cc (book_rendering): remove outname argument
11617         (book_rendering): return list of Music_outputs. 
11618
11619         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11620
11621         * lily/book.cc (process): loop over Music_outputs returned from
11622         Score::book_rendering().
11623
11624         * lily/*.cc (width_callback): remove spurious "unused" warnings
11625         for assert (axis==[XY]_AXIS); 
11626
11627         * lily/include/music-output.hh (class Music_output): smobify class.
11628
11629         * lily/include/paper-score.hh (class Paper_score): make members
11630         private.
11631
11632         * lily/performance.cc (process): return #f iso. #<undefined>. This
11633         prevents #<undefined> leaking into GUILE-userspace.
11634
11635 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11636
11637         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11638
11639 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11640
11641         * scm/chord-name.scm : support for italian and french
11642         chords names.
11643
11644         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11645         a space defined by chordPrefixSpacer when the root name is
11646         direclty followed by a prefix.
11647
11648         * ly/engraver-init.ly : chordPrefixSpacer       
11649         * scm/define-context-properties.scm : chordPrefixSpacer
11650         * ly/property-init.ly : italianChords, frenchChords 
11651
11652 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11653
11654         * mf/feta-din.mf: Remove.
11655
11656         * mf/GNUmakefile (fontdir): Bugfix.
11657
11658         * mf/SConstruct: Some updates.
11659
11660         * SConstruct: Require pkg-config.
11661         (test_program): Bugfix for double digit version compares, use
11662         integer (not string-) compare.
11663         Optionally require gs 8.14.
11664
11665         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11666
11667         * lily/*: s/ifdef HAVE_*/if have/.
11668
11669         * SConstruct (test_lib): New function.  Update pkg-config and some
11670         other requirements.
11671
11672         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11673         freetype, pangof2t.
11674
11675 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11676
11677         * po/lilypond.pot, ...: Update using bison-CVS.
11678
11679         * python/lilylib.py (make_ps_images): Fixo.
11680
11681 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11682
11683         * python/lilylib.py (make_ps_images): typo.
11684
11685         * configure.in (gui_b): make bison optional.
11686
11687         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11688
11689 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11690
11691         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11692         with one parameter can be defined in a LaTeX file when processed
11693         by lilypond-book this will be evaluated between the systems of
11694         a multi-system score. The parameter is the number of systems processed.
11695
11696 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11697
11698         * python/lilylib.py (make_ps_images): Escape newline.
11699
11700         * Documentation/user/music-glossary.tely: Run
11701         texinfo-all-menus-update.
11702
11703 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11704
11705         * scm/lily-library.scm (old-relative-not-used-message)
11706         (version-not-seen-message): Add input-file-name-location to message.
11707
11708         * lily/parser.yy (lilypond): Add token aliases.
11709
11710         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11711         not confuse with alteration.
11712         (alteration): Add.
11713
11714 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11715
11716         * python/lilylib.py (make_ps_images): use -dEPSCrop
11717
11718         * VERSION (PACKAGE_NAME): release 2.5.19 
11719
11720         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11721         only put xrefs in info documentation.
11722
11723         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11724         .pdf rule to tex-rules.make.
11725
11726         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11727         from -systems.* output.
11728
11729         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11730         directly, remove -$(PAGESIZE) target.
11731
11732         * input/test/embedded-postscript.ly: update.
11733
11734 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11735
11736         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11737
11738         * Documentation/user/changing-defaults.itely (Font selection):
11739         document font-name.
11740
11741         * input/regression/font-name.ly: show Pango fonts for
11742         font-name. Update example. 
11743
11744         * lily/pango-select.cc (properties_to_pango_description): don't
11745         convert symbol font-size to number, but use to lookup.
11746
11747         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11748
11749         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11750         (NAME . FILE-NAME) tuples for font descriptions. 
11751         (write-preamble): display BeginFont DSC comments.
11752
11753         * python/fontextract.py (write_extracted_fonts): new file. Extract
11754         font resources from a PS file.
11755
11756         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11757         (Compile_error.process_include): do_file returns chunks.
11758
11759         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11760
11761         * make/lysdoc-targets.make: .texi is .PRECIOUS
11762
11763         * scripts/lilypond-book.py (write_if_updated): new function.
11764
11765 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11766
11767         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11768
11769 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11770
11771         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11772
11773         * input/regression/markup-syntax.ly: remove \score.
11774
11775         * scm/define-markup-commands.scm (draw-circle): add fill argument
11776
11777         * scm/stencil.scm (make-circle-stencil): add fill argument
11778
11779         * ps/music-drawing-routines.ps: add fill argument.
11780
11781         * ly/performer-init.ly: add CueVoice to MIDI too.
11782
11783         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11784         EndEPSF.
11785
11786         * input/regression/markup-eps.ly: new file.
11787
11788         * scm/framework-ps.scm (write-preamble): change order: vars should
11789         be inited before procedures.
11790
11791         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11792         for EPS files.
11793
11794         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11795
11796 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11797
11798         * configure.in (gui_b): add check for ghostscript 8.15
11799
11800 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11801
11802         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11803         start of line. Fixes cresc-after-newline.ly
11804
11805         * lily/source-file.cc (file_line_column_string): use get_column().
11806
11807 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11808
11809         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11810
11811 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11812
11813         * lily/*: use message () iso progress_indication () for messages.
11814         Revise/uniformise user messages.
11815
11816         * flower/warn.cc (progress_indication): New function.
11817         (message): Use it.  Fixes newline problems.
11818
11819         * config.make.in (webdir): Sort out install dirs.
11820
11821         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11822
11823         * python/lilylib.py (command_name): Bugfix.
11824         (make_ps_images):
11825
11826 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11827
11828         * lily/main.cc: --help says what types of backends are availabe
11829
11830 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11831
11832         Fix ./VERSION dependency, and without need to reconfigure.
11833
11834         * lily/main.cc (setup_paths): Update.
11835
11836         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11837
11838         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11839
11840         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11841         Add \line for some simplistic cases.
11842
11843         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11844
11845 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11846
11847         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11848         to compile LY files (useful for adding eg. "-I" args)
11849         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11850         2Gnome command for gnome backend.
11851         (LilyPond-command-formatgnome): call the 2Gnome command. key
11852         binding: C-c C-g
11853
11854 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11855
11856         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11857         depend on all PNG images.
11858
11859 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11860
11861         * GNUmakefile.in: Bugfix: also link .map files.
11862
11863 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11864
11865         * scm/music-functions.scm (music->make-music): generate 
11866         a (make-music ...) sexpr from a music expression.
11867         (display-scheme-music): use guile pretty printer to display the
11868         make-music sexpr.
11869
11870 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11871
11872         * ly/engraver-init.ly: reindent.
11873         Add CueVoice.
11874
11875         * scm/music-functions.scm (music-pretty-string): handle moments
11876         too.
11877         (music-pretty-string): only print non-empty lists.
11878         (cue-substitute): create CueVoice context, which has smaller type.
11879
11880         * lily/moment-scheme.cc (LY_DEFINE): new methods
11881         ly:moment-grace-{numerator,denominator}
11882
11883         * lily/context-handle.cc: remove quit() method. 
11884
11885         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11886         (init_fontconfig): success is 0, not !0
11887
11888 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11889
11890         * mf/feta-nummer-code.mf (code): add plus glyph.
11891
11892         * lily/tie.cc (print): idem.
11893
11894         * lily/slur.cc (print): don't use thickness property for
11895         slur shape-thickness.
11896
11897         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11898         while adding stencils.
11899
11900         * scm/define-markup-commands.scm (with-color): with-color markup
11901         command.
11902         (whiteout): new markup command 
11903         (filled-box): new markup command
11904
11905 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11906
11907         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11908         test for PDF docs.
11909
11910         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11911         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11912         
11913         Notes for tetex-3.0 make web:
11914            psclean.map: s/uhv8a/uhvr8a/
11915            config.ps add:
11916                 p +psfonts_t1.map
11917                 p +psclean.map
11918                 p +typeface.map
11919
11920 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11921
11922         * scm/music-functions.scm (music-pretty-string): fix bug with
11923         string argument.
11924
11925 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11926
11927         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11928
11929 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11930
11931         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11932         only process options if they're there.
11933         (write_file_map): add version-seen? to snippet-map.ly
11934
11935 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11936
11937         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
11938         formatting cleanups.
11939
11940         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
11941         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
11942
11943 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11944
11945         * scm/framework-ps.scm (ps-font-command): don't hash, just use
11946         name directly.
11947
11948         * lily/main.cc (setup_paths): either add mf/out to search path or 
11949         fonts/{otf,type1,etc}
11950         
11951         * lily/font-config.cc (init_fontconfig): either add mf/out to
11952         FontConfig or fonts/{otf,type1,etc}
11953
11954         * GNUmakefile.in: don't put mf/ link in share/ dir.
11955
11956         * lily/staff-spacing.cc: move same-direction-correction to
11957         note-spacing-interface
11958
11959         * scm/lily.scm (lilypond-main): use variable argument count for
11960         exception handler.
11961
11962         * lily/font-config.cc (init_fontconfig): add operator pacification
11963         message.
11964
11965         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
11966
11967         * buildscripts/gen-emmentaler-scripts.py (i): generate
11968         PFAEmmentaler as well.
11969
11970         * scm/framework-ps.scm (munge-lily-font-name): new function
11971         (write-preamble): hack: insert PFA equivalent of CFF into
11972         .PS. This makes LilyPond output printable on normal PS printers
11973         again.
11974
11975         * buildscripts/gen-emmentaler-scripts.py (i): generate
11976         PFAEmmentaler.pfa aswell.
11977
11978 2005-04-06  John Williams <williams@tni.com>  
11979         
11980         * scripts/lilypond-book.py: refactor the compose_ly procedure.
11981         
11982 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11983
11984         * scm/page-layout.scm (default-page-make-stencil): always combine
11985         the header stencil, even if empty. This prevents the body text to
11986         reach up to the margins.
11987
11988         * po/rw.po (Module): new file, for Kinyarwanda.
11989
11990         * input/test/spacing-optical.ly (Module): new file.
11991
11992         * lily/staff-spacing.cc: add same-direction-correction
11993
11994 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11995
11996         * Documentation/user/introduction.itely (Engraving): Comment-out
11997         non-existent file.
11998
11999 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12000
12001         * scm/define-grob-properties.scm (all-user-grob-properties): add
12002         same-direction-correction
12003
12004         * VERSION: release 2.5.18
12005
12006 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12007
12008         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12009         dereferencing.  Fixes make web.
12010
12011         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12012         errno.h.
12013
12014         * Documentation/user/: Fix links.
12015
12016 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12017
12018         * lily/text-interface.cc (Module): rename from text-item.cc
12019
12020         * input/regression/apply-output.ly (texidoc): function naming fix.
12021
12022         * lily/time-signature-performer.cc (derived_mark): new function.
12023
12024         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12025
12026         * scripts/lilypond-book.py (find_linestarts): new function.
12027         (find_toplevel_snippets): keep track of line numbers.
12028
12029         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12030         all key changes.
12031
12032         * ly/declarations-init.ly (partCombineListener): use
12033         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12034
12035         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12036
12037 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12038
12039         * lily/text-item.cc: Fix link.
12040
12041         * Documentation/user/changing-defaults.itely (Changing defaults):
12042         Fix programs reference links.
12043
12044         * Documentation/user/music-glossary.tely: Convert to utf-8.
12045
12046 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12047
12048         * make/lilypond-vars.make: remove TEXMF from variables.
12049         remove DEB_BUILD pk font variables.
12050         remove GUILE_LOAD_PATH
12051         remove TeX memory vars.
12052
12053 2005-04-04  Werner Lemberg  <wl@gnu.org>
12054
12055         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12056
12057 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12058
12059         * ps/lilyponddefs.ps: remove reencode-font
12060
12061         * lily/simple-spacer.cc (add_columns): also compare
12062         directly. Column rank doesn't distinguish between broken and
12063         unbroken columns. This fixes large spaces before time sig changes.
12064
12065         * Documentation/user/point-and-click.itely: document ly:set-option.
12066
12067         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12068         point_and_click_global is set.
12069
12070         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12071         ly:set-option argument.
12072
12073 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12074
12075         * GNUmakefile.in: Include symlinks in webball.
12076
12077         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12078         source dir for split and non-split manuals.
12079
12080         * Documentation/user/*y: Fix @uref/@inputfile links for
12081         split/non-split HTML documents.
12082
12083         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12084         .ps.gz.
12085         
12086 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12087
12088         * GNUmakefile.in: Add newline.
12089
12090 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12091
12092         * tex/lilyponddefs.tex: use color instead of xcolor
12093         * scm/output-tex.scm: minor editing
12094
12095 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12096
12097         * scm/music-functions.scm (display-scheme-music): pretty printer
12098         for music expressions.
12099
12100 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12101
12102         * buildscripts/install-info-html.sh (index_file): Fix link.
12103
12104 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12105
12106         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12107
12108         * Documentation/index.html.in: Add size estimates with some big pages.
12109
12110         * Documentation/user/tutorial.itely (Running LilyPond for the
12111         first time): Add/replace some @rglos links.  TODO: add more
12112         @rglos links in tutorial, test non-intrusiveness (.css).
12113
12114         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12115         annoying's indication of referencing external document.
12116
12117         * Documentation/user/GNUmakefile: Split version of glossary too.
12118         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12119         links, not only for html.
12120
12121         * Documentation/user/introduction.itely: Fix some links for other
12122         than html, do not use `here' as link name.
12123
12124 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12125
12126         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12127         @glossaryref.
12128
12129 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12130
12131         * scm/page-layout.scm (default-page-make-stencil): only add header
12132         if existing and not empty. Fixes spurious programming error.
12133
12134         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12135
12136 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12137
12138         * scm/output-tex.scm: implement {re,}setcolor
12139         * tex/lilyponddefs.tex: use color package
12140
12141 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12142
12143         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12144         additions to website.
12145
12146         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12147
12148         * Documentation/user/macros.itexi: Fix @usermanref html links in
12149         split documents: use @inforef.
12150
12151 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12152
12153         * Documentation/user/programming-interface.itely: minor fix.
12154
12155         * Documentation/user/advanced-notation.itely: added info to
12156         Metronome markings.
12157
12158 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12159
12160         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12161         use box-stencil.  Remove y-padding argument.
12162         (make-stencil-circler): New function.
12163
12164         * buildscripts/lilypond-words.py (F): 
12165         * elisp/SConscript (a): 
12166         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12167         * vim/SConscript (a): 
12168         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12169
12170         * lily/general-scheme.cc: Build fix.
12171
12172         * scm/markup.scm:
12173         * input/regression/markup-scheme.ly: 
12174         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12175
12176         * scm/stencil.scm (make-circle-stencil): New function.
12177
12178         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12179         name (was cicle).  Update callers.
12180         (circle): New markup command, similar to box.
12181
12182         * scm/stencil.scm (circle-stencil): New function.
12183
12184 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12185
12186         * configure.in: Detect libutf8/wchar.h variant.
12187
12188         * stepmake/aclocal.m4: Modify shared size test.
12189
12190 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12191
12192         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12193
12194 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12195
12196         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12197         
12198         * VERSION (PACKAGE_NAME):  release 2.5.17
12199
12200 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12201
12202         * scm/backend-library.scm (postscript->png): Fix comment and png
12203         message.
12204
12205         * GNUmakefile.in (link-tree): Fix locales.
12206
12207 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12208
12209         * lily/stencil-scheme.cc (LY_DEFINE): change to
12210         ly:stencil-aligned-to, non mutating.
12211
12212         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12213
12214         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12215
12216         * lily/quote-iterator.cc (derived_mark): call
12217         Music_wrapper_iterator::derived_mark() too.
12218
12219         * lily/grace-engraver.cc (derived_mark): change signature, add
12220         const.
12221
12222 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12223
12224         * SConstruct (symlink): 
12225         * GNUmakefile.in (link-tree): Add scripts to prefix.
12226
12227         * lily/general-scheme.cc (ly:effective-prefix): New function.
12228
12229         * scm/backend-library.scm (postscript->png): Use it.
12230
12231 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12232
12233         * lily/paper-score.cc (process): don't delete grobs after
12234         producing stencils. 
12235
12236         * scm/part-combiner.scm (determine-split-list): switch off
12237         debugging info.
12238
12239         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12240         if available.
12241
12242         * scm/define-context-properties.scm
12243         (all-user-translation-properties): add stringNumberOrientations.
12244
12245         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12246         so fingering and string-numbers are separately controlled.
12247
12248 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12249
12250         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12251         not use debugging.
12252
12253 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12254
12255         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12256
12257         * config.hh.in: add HAVE_FONTCONFIG.
12258
12259         * Documentation/user/instrument-notation.itely (String number
12260         indications): new node.
12261
12262         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12263
12264         * lily/new-fingering-engraver.cc (add_string): new function. 
12265         (acknowledge_grob): accept string-number-event as well.
12266
12267         * scm/define-markup-commands.scm (circle): new markup command.
12268
12269         * scm/output-lib.scm (print-circled-text-callback): new function.
12270
12271         * lily/GNUmakefile: move ifeq after include stepmake.make.
12272
12273 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12274
12275         * config.make.in (HAVE_LIBKPATHSEA_SO):
12276         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12277
12278         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12279         add KPATHSEA_LIBS.
12280
12281         * debian/watch: 
12282         * debian/control: Update.
12283
12284 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12285
12286         * input/test/title-markup.ly (spaceTest): remove.
12287
12288         * input/test/embedded-tex.ly (Module): remove.
12289
12290         * input/test/music-box.ly: use 'name property, not ly:music-name.
12291
12292         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12293
12294         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12295
12296 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12297
12298         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12299         about xdeltas.  Add information about CVS.
12300
12301         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12302         gracefully handle failed files.
12303
12304         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12305
12306         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12307         small fixes.
12308
12309         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12310         No unnecessarily specific i18n messages.  Remove stray `1'.
12311
12312 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12313
12314         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12315         documentencoding
12316
12317         * scm/documentation-lib.scm (texi-file-head): set utf-8
12318         documentencoding.
12319
12320         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12321         Delta, not the Symbol one. 
12322
12323         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12324         for the .map file.
12325
12326         * Documentation/topdocs/INSTALL.texi (Top): add running
12327         requirement as compilation requirement.
12328
12329 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12330
12331         * buildscripts/mutopia-index.py (headertext): add h1 header and
12332         utf-8 charset meta field.
12333
12334         * input/GNUmakefile: prune example list.
12335
12336         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12337         options.
12338
12339         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12340         extent for visible stems.
12341
12342         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12343
12344 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12345
12346         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12347
12348         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12349
12350 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12351
12352         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12353         pass inf/nan into slur scoring.
12354
12355         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12356         page.
12357
12358         * scripts/abc2ly.py (dump_voices): use alphabet().
12359
12360 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12361         
12362         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12363
12364 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12365         
12366         * flower/include/virtual-methods.hh: simplify. Patch by
12367
12368 2005-03-25  John Williams <williams@tni.com>  
12369
12370         * scripts/lilypond-book.py (main): add png for HTML too, guess
12371         only if necessary. 
12372
12373 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12374
12375         * Documentation/topdocs/INSTALL.texi: now recommends
12376         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12377
12378         * Documentation/user/basic-notation.itely,
12379         Documentation/user/tutoria.itely: warn about
12380         only one (phrasing) slur at once.
12381
12382 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12383
12384         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12385
12386 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12387
12388         * Documentation/user/basic-notation.itely: fixed info about
12389         ending a (de)cresc.
12390
12391         * Documentation/user/lilypond-book.itely: fixed
12392         lilypond-book filter example and warned about not doing
12393         --filter and --process at the same time.
12394
12395 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12396
12397         * lily/parser.yy (bass_number),
12398         Documentation/user/instrument-notation.itely (Figured bass): 
12399         Add the possibility to use text markup in figured bass. 
12400
12401 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12402
12403         * Documentation/user/global.itely: added info about naming
12404         identifiers and breakbefore.
12405
12406         * Documentation/user/invoking.itely: added info about batch
12407         processing files with convert-ly, removed references to TeX
12408         in the jail section.
12409
12410         * Documentation/user/examples.itely: possibly fixed piano
12411         dynamics.
12412
12413         * Documentation/user/advanced-notation.itely: added info
12414         about removing other types of Staff.
12415
12416         * Documentation/user/instrument-notation.itely: possibly
12417         fixed piano staff line switch.
12418
12419         * Documentation/user/changing-defaults.itely: added info
12420         about using normal font in titles.
12421
12422 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12423
12424         * VERSION (PATCH_LEVEL): release 2.5.16
12425
12426         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12427         explicitly.
12428
12429 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12430
12431         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12432         whitespace.
12433
12434         * python/lilylib.py (make_ps_images):
12435         * scm/backend-library.scm (postscript->pdf, postscript->png):
12436         Quote file name.  Use format rather than string-append juggling.
12437
12438 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12439
12440         * python/lilylib.py (make_ps_images): add x to -g argument. 
12441
12442         * lily/key-performer.cc (create_audio_elements): don't use
12443         scm_eval_string. Check for minor 3rd directly.
12444   
12445         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12446         (sarabandeCelloGlobal): key is D minor, not F major.
12447
12448 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12449
12450         Fix truncated --png output (Peter Danenberg).
12451         
12452         * python/lilylib.py (make_ps_images):
12453         * scripts/ps2png.py (copyright): Grok --papersize option.
12454
12455         * scm/backend-library.scm (postscript->png): Add parameter
12456         PAPERSIZE.  Update callers.
12457
12458         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12459         Fixes symbol placement.
12460
12461         * lily/spanner.cc: 
12462         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12463         <libc-extension.hh>).
12464
12465 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12466
12467         * Nitpick run.
12468
12469         * buildscripts/fixcc.py: Update.
12470
12471         Builddir run fixes.
12472
12473         * HACKING (datadir): Add VERSION.
12474
12475         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12476         higher up.
12477
12478 2005-03-15  Werner Lemberg  <wl@gnu.org>
12479
12480         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12481         diagonal stem doesn't become thinner.
12482
12483 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12484
12485         * buildscripts/fixcc.py: Fixes (Werner).
12486
12487 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12488
12489         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12490         Emmentaler/Aybabtu.
12491
12492         * GNUmakefile.in: fix lilypond-words path.
12493
12494         * po/tr.po: update to 2.3.21
12495
12496         * lily/new-fingering-engraver.cc (position_scripts): take priority
12497         from head position.
12498
12499         * input/regression/finger-chords-order.ly (texidoc): new file.
12500
12501 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12502
12503         * make/ly-rules.make: 
12504         * stepmake/aclocal.m4: 
12505         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12506
12507         * buildscripts/fixcc.py (rules): Leave space after operator.
12508
12509 2005-03-14  Werner Lemberg  <wl@gnu.org>
12510
12511         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12512         top of the glyph with smooth curve.
12513
12514 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12515
12516         * Documentation/user/global.itely (Page layout): remove
12517         printpagenumber.
12518
12519 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12520
12521         * input/regression/mensural-ligatures.ly: new file (with examples
12522         compiled by Pal Benko).
12523
12524         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12525         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12526         musicglyph access.  Many small beautifications in ancient
12527         examples.
12528
12529         * input/test/divisiones.ly: fixed indentation; small
12530         beautifications
12531
12532         * ly/engraver-init.ly: added FIXME comment
12533
12534         * scripts/lilypond-book.py,
12535         Documentation/user/lilypond-book.itely: added music fragment
12536         option "packed" to lilypond-book
12537
12538         * Documentation/user/instrument-notation.itely: Bugfix: added
12539         missing LedgerLineSpanner color setting in several places.  Added
12540         music fragment option "packed" to VaticanaContext example.
12541
12542 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12543
12544         * scm/define-grobs.scm (all-grob-descriptions): switch off
12545         Hyphen_spanner::set_spacing_rods 
12546
12547         * lily/lyric-hyphen.cc (print): add padding between syllable and
12548         hyphen.
12549         (print): shorten hyphen in tight situations (determine using
12550         minimum-length)
12551
12552         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12553         0.4pt.
12554
12555 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12556
12557         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12558
12559         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12560         header/footer markings for regression-test.
12561
12562         * scm/backend-library.scm (output-scopes, header-to-file): Move
12563         from framework-tex.scm.
12564
12565         * scm/framework-ps.scm (output-framework)
12566         (output-preview-framework):
12567         * scm/framework-eps.scm (output-classic-framework)
12568         (output-framework): Use it.  Fixes collated files.
12569
12570 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12571
12572         * input/sakura-sakura.ly: 
12573         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12574
12575         * buildscripts/guile-gnome.sh: Update.
12576
12577         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12578
12579         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12580
12581 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12582
12583         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12584         culprit: always exit the loop if we find a rod, even if it has
12585         distance < 0. 
12586
12587         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12588         algorithm.
12589
12590         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12591         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12592
12593         * scm/output-svg.scm (dashed-line): new  function body.
12594         
12595         * GNUmakefile.in: create .htaccess.
12596
12597 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12598
12599         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12600
12601 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12602
12603         * VERSION (PACKAGE_NAME): release 2.5.15
12604
12605         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12606
12607         * scm/framework-svg.scm (output-framework): put scaling in
12608         document header. Apply scaling only once.
12609         (output-framework): dump page size in px, not mm. 
12610
12611         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12612         from font-size.
12613
12614         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12615         ly:outputter-output-scheme, new function.
12616
12617         * scm/output-svg.scm (pango-description-to-svg-font): new function
12618
12619 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12620
12621         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12622         target.
12623
12624         * input/typography-demo.ly: new file.
12625
12626 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12627
12628         * Documentation/user/global.itely (File structure): Add markup blocks
12629         to toplevel expressions.
12630         (Multiple movements, Creating titles): Add markup blocks.
12631
12632         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12633         <libc-extension.hh>).
12634
12635         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12636
12637         * flower
12638         * lily
12639         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12640
12641 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12642
12643         * lily/accidental.cc: special bboxes for natural. 
12644
12645         * mf/feta-toevallig.mf: make stems heavier.
12646
12647         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12648         texts as well.
12649
12650         * mf/feta-klef.mf: revise. 
12651
12652         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12653
12654         * mf/feta-klef.mf: add rounded curve at top. 
12655         make thinnib a little heavier.
12656
12657 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12658
12659         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12660
12661         * buildscripts/fixcc.py: New file.
12662
12663         * input/regression/utf8.ly: Update Debian font description.
12664
12665 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12666
12667         * stepmake/aclocal.m4: Fix test.
12668
12669 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12670
12671         * Documentation/user/invoking.itely: added Sebastino Vigna's
12672         docs for the --jail option.
12673
12674 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12675
12676         * lily/stem.cc (print): only produce stemlets if there are no
12677         noteheads on this stem.
12678
12679         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12680         don't crash on stemlet (visible stem without heads).
12681
12682         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12683         unbroken situations. 
12684
12685         * scm/output-lib.scm (center-invisible): new function.
12686
12687         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12688         wishes to determine loose column space.
12689
12690         * lily/font-config.cc (init_fontconfig): add
12691         fonts/{otf,type1,cff}  to path.
12692
12693         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12694
12695         * mf/GNUmakefile (Module): install all fonts under otf/
12696
12697         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12698         replace /fonts/otf/ by /ps/ 
12699
12700         
12701 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12702
12703         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12704
12705         * lily/book.cc (process): Oops, add score_.header_.
12706
12707         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12708
12709         * lily/parser.yy: Handle toplevel and book texts as score.
12710
12711         * scm/page-layout.scm (default-page-make-stencil):
12712         Bugfix: (page-properties rename.
12713
12714         * scm/backend-library.scm (ly:system): Typo.
12715
12716 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12717
12718         * stepmake/stepmake/executable-targets.make (installexe): don't
12719         strip installed executables
12720
12721         * lily/font-select.cc (get_font_by_design_size): revert
12722         pango_description_string as well.
12723
12724         * lily/system.cc (set_loose_columns): put loose column just left
12725         of next column.
12726
12727         * lily/include/group-interface.hh (extract_grob_array): rename
12728         from Pointer_group_interface__extract_grobs
12729
12730         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12731
12732         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12733         function. Keep ledgered note heads at a minimum distance.
12734         Introduce minimum-length-fraction
12735         (print): introduce length-fraction property.
12736
12737 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12738
12739         * tex/GNUmakefile: remove latin1.enc rules.
12740
12741 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12742
12743         * scm/titling.scm: Typo.
12744
12745         * input/regression/score-text.ly: Really add.
12746
12747         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12748
12749 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12750
12751         * lily/open-type-font-scheme.cc:  new file.
12752
12753 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12754
12755         * scm/titling.scm (layout-extract-page-properties): Rename from
12756         page-properties.  Update callers.
12757
12758         * lily/lexer.ll (Lily_lexer):
12759         * lily/parser.yy: Junk lyric_markup state.
12760
12761         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12762
12763         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12764         Add texts parameter.
12765
12766 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12767
12768         * lily/lexer.ll (lyric_markup): New mode.
12769         (Lily_lexer::push_lyric_markup_state): New method.
12770         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12771
12772         * lily/parser.yy (book_body):
12773         (toplevel_expression): Grok \markup texts.
12774
12775         * lily/score-scheme.cc (ly:music-scorify): 
12776         * scm/lily-library.scm (collect-music-for-book): Take texts
12777         parameter.
12778
12779         * lily/score.cc (texts_): New member.
12780
12781         * lily/paper-book.cc (systems): Format score texts.
12782
12783         * score-text.ly: New file.
12784
12785         * ttftool/SConscript:
12786         * kpath-guile/SConscript: New file.
12787
12788         * lily/SConscript:
12789         * SConstruct: Update.
12790
12791 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12792
12793         * VERSION (PACKAGE_NAME): release 2.5.14
12794
12795 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12796
12797         * lily/main.cc: Add dummy xgettext markers.
12798
12799 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12800
12801         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12802         requirements
12803
12804         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12805         executable is < 40k
12806
12807         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12808         hack.
12809
12810 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12811
12812         * flower/libc-extension.cc:
12813         * flower/include/libc-extension.hh: [Open]BSD simply cast
12814         cookie/funopen declarations.
12815
12816         * stepmake/aclocal.m4: Check for libkpathsea.so.
12817
12818         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12819         dl_kpse_find_file.
12820
12821 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12822
12823         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12824         (open_library): alternative for static library.
12825
12826 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12827
12828         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12829
12830         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12831
12832         Drop run-time dependency on teTeX.
12833
12834         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12835
12836         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12837         KPATHSEA_LIBS in LIBS.
12838         (STEPMAKE_DLOPEN): New function.
12839
12840         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12841         not path.
12842
12843         * flower/file-path.cc (directories): Rename from paths, as this
12844         return an array of directories (a single path).
12845
12846 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12847
12848         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12849
12850         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12851         new ly:kpathsea-find-file
12852
12853         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12854
12855         * kpath-guile/GNUmakefile: new file
12856
12857         * buildscripts/gen-emmentaler-scripts.py (i): generate
12858         emmentaler-X.fontname as well.
12859
12860         * buildscripts/ps-embed-cff.py: new script
12861
12862         * scm/lily-library.scm: remove ps-embed-cff.
12863
12864         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12865         font loading. 
12866
12867         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12868         fontconfig as well.
12869
12870         * lily/font-config.cc (init_fontconfig): add cff/ too.
12871
12872         * ly/generate-embedded-cff.ly: capitalize.
12873
12874         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12875         so as to register the pango font.
12876
12877         * lily/font-config.cc (init_fontconfig): add
12878         prefix/{otf,type1,mf/out} to fontconfig path.
12879
12880         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12881         overrides all. 
12882
12883         * configure.in (gui_b): remove ec mftrace check
12884
12885         * config.hh.in: use lilypond-Major.Minor as data directory.
12886
12887         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12888
12889         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12890         name.
12891
12892 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12893
12894         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12895         error messages.
12896
12897         * flower/libc-extension.cc:
12898         * flower/include/libc-extension.hh: [Open]BSD fixes for
12899         cookie/funopen declarations.
12900
12901 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12902
12903         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12904         emmentaler.
12905
12906         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12907         lcrm10.
12908
12909         * scm/define-markup-commands.scm (fontsize): new markup
12910         command. Also set baseline-skip
12911
12912 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12913         
12914         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12915         use.
12916
12917 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12918
12919         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12920
12921         * lily/pdf.cc: remove PDF related files
12922
12923 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12924
12925         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12926         <hamamatsu@gmx.de>
12927
12928 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12929
12930         * Documentation/user/advanced-notation.itely: first draft
12931         of reorg done.
12932
12933         * Documentation/user/global.itely: fixed (sub)section
12934         bits of MIDI.
12935
12936 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12937
12938         * cygwin/mknetrel (extras): Bufix (Bertalan).
12939
12940         * Documentation/user/basic-notation.itely (Chords): @ref fix.
12941         * Documentation/user/instrument-notation.itely (Introducing chord
12942         names): Compile fix: must have unique name.
12943
12944 2005-03-02  Graham Percival  <gperlist@shaw.ca>
12945
12946         * Documentation/user/instrument-notation.itely: reorg.
12947
12948 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12949
12950         * scm/output-gnome.scm:
12951         * scm/output-svg.scm: Fix font scaling.
12952
12953 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12954
12955         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
12956         what link to use best.
12957
12958         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
12959         * Documentation/user/tutorial.itely (Automatic and manual beams):
12960         Fix @ref.
12961
12962         * lily/tweak-registration.cc (replace_grob_tweak): New function.
12963         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
12964         * scm/framework-gnome.scm (tweak): Use it.
12965
12966 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12967
12968         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
12969
12970         * scm/output-ps.scm (white-text): reinstate white-text
12971
12972 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12973
12974         * scm/output-ps.scm (offset-add): Remove.
12975
12976         * scm/lily-library.scm (offset-flip-y): New function.
12977         * scm/framework-gnome.scm (tweak): Use it.
12978
12979         * scm/output-gnome.scm (grob-cause): Add parameter.
12980
12981         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
12982         * scm/output-ps.scm (url-link): Move.
12983         (white-text): Warn user about brokenness.
12984
12985         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
12986         wrt ghostscript.
12987
12988 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12989
12990         * lily/slash-repeat-engraver.cc (try_music): always make slashes
12991         if body length smaller than measure length.
12992
12993         * scm/define-markup-commands.scm (with-url): oops. use Y extent
12994         for Y.
12995
12996         * ly/titling-init.ly (tagline): put default tagline in \paper
12997
12998 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12999
13000         * lily/kpath.cc: 
13001         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13002
13003         * scm/lily-library.scm (version-not-seen-message): New function.
13004         * ly/init.ly: Use it.
13005
13006         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13007         breaks as progess.
13008
13009         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13010         whitespace with l10n message.
13011
13012         * scm/framework-tex.scm (convert-to-ps):
13013         (convert-to-dvi): Do not use overly specific l10n messages.
13014
13015         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13016
13017         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13018         merge stderr with stdout.  
13019
13020 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13021
13022         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13023         Neeracher).
13024
13025 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13026
13027         * Documentation/user/instrument-notation.teily: moved
13028         \arpeggio to Basic.
13029
13030         * Documentation/user/advanced-notation.itely: Articulation to
13031         Basic, a bunch of stuff from Basic moved to Advanced.
13032
13033         * Documentation/user/basic.itely: swapped various sections,
13034         reorganized Basic.
13035
13036 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13037
13038         * flower/memory-stream.cc: 
13039         * flower/libc-extension.cc: Remove obsolete #undefs.
13040
13041         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13042         more carefully.
13043
13044 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13045
13046         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13047         dependency.
13048
13049         * VERSION (PACKAGE_NAME): release 2.5.13
13050
13051         * GNUmakefile.in (web-ext): don't ship ps.gz
13052
13053         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13054         stdout
13055
13056 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13057
13058         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13059         without libintl.  Now it compiles too.
13060
13061 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13062
13063         * Documentation/user/basic-notation.itely,
13064         instument-notation.itely, advanced-notation.itely:
13065         split up contents of notation.itely.
13066
13067         * Documentation/user/notation.itely: file removed.
13068
13069         * Documentation/user/invoking.itely, converters.itely:
13070         moved convert-ly info to invoking.itely.
13071
13072         * Documentation/user/global.itely, changing-defaults.itely,
13073         sound-output.itexi: moved global settings, file layout, and
13074         sound into global.itely.
13075
13076         * Documentation/user/sound-output.itexi: file removed.
13077
13078         * Documentation/user/lilypond.tely: removed links to
13079         notation.itely and sound.itely.
13080
13081 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13082
13083         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13084
13085         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13086  
13087         * THANKS: add sponsor.
13088
13089         * scm/define-markup-commands.scm (with-url): new markup command.
13090
13091         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13092         tagline.
13093         
13094         * scm/output-tex.scm (url-link): stub.
13095
13096         * scm/output-ps.scm (url-link): new function.
13097
13098         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13099         ly:set-point-and-click
13100
13101 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13102
13103         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13104         based on pdf-viewer setting.
13105
13106         * scm/framework-ps.scm (write-preamble): Find and set preferred
13107         pdf-viewer.
13108
13109 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13110
13111         * Documentation/user/point-and-click.itely: update for PDF point &
13112         click.
13113
13114         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13115         editors based on EDITOR setting.
13116
13117 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13118
13119         * scm/*: Oops, more grand 2005 replace bits.
13120
13121 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13122
13123         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13124
13125         * scm/output-ps.scm (grob-cause): point & click support for
13126         PostScript
13127
13128 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13129
13130         * lily/input-scheme.cc (LY_DEFINE): rename to
13131         ly:input-file-line-column
13132
13133 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13134
13135         * Documentation/user/examples.itely: small fix from Steve Doonan.
13136
13137         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13138
13139         * THANKS: added Yuval Harel.
13140
13141         * Documentation/user/{various}: inserted two spaces after a period.
13142
13143         * Documentation/user/lilypond.tely: added framework for reorg.
13144
13145         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13146         advanced-notation.itely, global.itely: new files, placeholder for
13147         future reorg.
13148
13149 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13150
13151         * Documentation/user/notation.itely: revamped Polyphony section
13152         
13153 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13154
13155         * Documentation/user/lilypond-book.itely (Music fragment options):
13156         doc fontload.
13157
13158         * Documentation/user/changing-defaults.itely (Text encoding): add
13159         fontload option to utf8 include
13160
13161         * scripts/lilypond-book.py (compose_ly): add fontload option
13162
13163         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13164         force-eps-font-include option.
13165
13166         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13167         black triangle
13168
13169         * Documentation/user/invoking.itely (Editor support): remove
13170         lilypond-latex section.
13171
13172         * scripts/lilypond-latex.py (Module): remove script.
13173
13174         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13175         overwrite .log. 
13176
13177         * lily/main.cc: remove -m, --no-layout
13178
13179         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13180         to define. We don't want to override fprintf everywhere.
13181
13182 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13183
13184         * cygwin/lilypond.hint: 
13185         * cygwin/README.in: Update dependencies.
13186
13187         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13188         Bugfix: do not pollute CPPFLAGS, LIBS.
13189
13190         * cygwin/mknetrel (extras): Cross compile fixes.
13191
13192         * ttftool/util.c: 
13193         * ttftool/ttfps.c: 
13194         * ttftool/ps.c: #include libc-extension.hh
13195
13196         * flower/include/libc-extension.hh:
13197         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13198         wrapper using funopen.
13199         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13200         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13201
13202         * config.hh.in:
13203         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13204         (AC_CHECK_HEADERS): Add libio.h
13205
13206         * scripts/convert-ly.py: Uniformize, internationalize.
13207         (2.5.2): Remove fatal encoding rule.
13208         (2.5.13): Handle latin1 encoding gracefully.
13209
13210 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13211
13212         * HACKING: Fix line breaks.
13213
13214 2005-02-23  Werner Lemberg  <wl@gnu.org>
13215
13216         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13217         contains those two files.
13218
13219 2005-02-21  Werner Lemberg  <wl@gnu.org>
13220
13221         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13222         to improve overlap removal process.
13223
13224         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13225         left and right ending.  This ensures better overlapping.
13226         Update all callers.
13227         ("lineprall"): Don't use draw_gridline to get better overlapping.
13228
13229 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13230
13231         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13232
13233         * Documentation/topdocs/NEWS.tely (Top): oops.
13234
13235 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13236
13237         * HACKING: new file.
13238
13239         * input/regression/utf8.ly (portuguese): added a portuguese example
13240         to show latin1 accents.
13241
13242 2005-02-21  Pal Benko  <benkop@freestart.hu>
13243
13244         * lily/mensural-ligature-engraver.cc:
13245         * lily/mensural-ligature.cc:
13246         * lily/include/mensural-ligature.hh: new algorithm implemented
13247
13248         * scm/define-grob-properties.scm: join-left killed (add-join may
13249         be used); join-left-amount changed to join-right-amount
13250
13251 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13252
13253         * Documentation/user/notation.itely: small but urgent fix.
13254
13255 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13256
13257         * lily/duration-scheme.cc: bugfix: correct parameters to
13258         SCM_ASSERT_TYPE.
13259
13260         * THANKS: added Pal.
13261
13262         * Documentation/user/notation.itely: bugfix: unTeXified
13263         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13264         "timesig.*x/y" -> "timesig.*xy".
13265
13266 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13267         
13268         * VERSION (PACKAGE_NAME): release 2.5.12
13269
13270 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13271
13272         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13273
13274         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13275
13276         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13277
13278         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13279
13280 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13281
13282         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13283         latin1..utf-8.
13284
13285         * input/regression/stanza-number.ly:
13286         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13287
13288         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13289
13290 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13291
13292         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13293         NEWS. Refer to website for older news.  
13294
13295         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13296         .HTML. This should be done for specific servers only.
13297
13298         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13299         .ly image examples.
13300
13301         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13302         in layer 0 too.
13303
13304         * scm/define-context-properties.scm
13305         (all-user-translation-properties): add tieWaitForNote
13306
13307         * scm/define-grobs.scm (all-grob-descriptions): add
13308         Tie_column::before_line_breaking
13309
13310         * lily/tie.cc (get_column_rank): new function
13311
13312         * lily/tie-column.cc (before_line_breaking): new function.
13313         (werner_directions): take into account ties that start on
13314         different columns.  
13315
13316         * lily/score-engraver.cc (set_columns): move add_column() so we
13317         have column rank available.
13318
13319         * lily/tie.cc (get_column_rank): new function.
13320
13321         * input/regression/utf8.ly (japanese): add japanese lyrics.
13322
13323         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13324
13325         * THANKS: add Steve D
13326
13327         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13328         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13329
13330 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13331
13332         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13333         to show harmonic notes
13334         * scm/define-markup-commands.scm: in \markup-by-number
13335         "dots-dot" -> "dots.dot" to show dotted notes
13336
13337 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13338
13339         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13340
13341         * flower/memory-stream.cc (writer): new file.
13342
13343         * configure.in: add endian test.
13344
13345 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13346
13347         * Documentation/user/examples.itely: small
13348         simplification/beautification
13349
13350         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13351         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13352         notation manual.
13353
13354         * lily/mensural-ligature.cc: bugfix: another few victims of the
13355         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13356
13357         * ly/gregorian-init.ly: commit some experimental code for hi-level
13358         ligature input language lying around here for several months.
13359
13360         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13361         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13362
13363         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13364         "x-y-z"->"x.y.s-z" fixes.
13365
13366 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13367
13368         * scm/framework-pdf.scm (scm): new file
13369
13370         * lily/include/pdf.hh (class Pdf_file): new file.
13371
13372         * lily/pdf.cc (write_trailer): new file.
13373
13374 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13375
13376         * input/regression/color.ly: new file
13377
13378         * lily/stencil.cc (interpret_stencil_expression):
13379         when a color expression is encountered: save current color,
13380         process the rest of the expression, and restore previous color.
13381
13382         * lily/system.cc (get_line): check all grobs for color property and
13383         prepare the stencil scheme expressions for further processing.
13384         Fix layer-loop.
13385
13386         * scm/define-grob-properties.scm: introduce the color property.
13387
13388         * scm/output-lib.scm: color helper functions.
13389
13390         * scm/output-ps.scm: introduce setcolor/resetcolor.
13391
13392 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13393
13394         * ly/*.ly, input/regression/*.ly: Added missing \version
13395         statements in some files.
13396
13397 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13398
13399         * Documentation/user/notation.itely: minor editing.
13400
13401         * Documentation/user/converters.itely: updated convert-ly bugs.
13402
13403         * Documentation/user/lilypond-book.itely: add info about using
13404         feta characters in latex.
13405
13406 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13407
13408         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13409
13410 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13411
13412         * scm/define-grob-properties.scm (all-user-grob-properties):
13413         removed 'dashed property.
13414
13415 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13416
13417         * scm/lily.scm (define-safe-public): new macro for defining
13418         variables that can be used in --safe mode. Use it in *.scm
13419         instead of manually setting safe-objects in safe-lily.scm.
13420
13421 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13422         
13423         * lily/slur.cc: Slur-dash patch by Bertalan.
13424
13425         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13426
13427         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13428
13429 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13430
13431         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13432
13433 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13434
13435         * mf/GNUmakefile: teTeX-3.0 install fix.
13436
13437         * Cygwin patch from Bertalan.
13438
13439         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13440
13441 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13442
13443         * GNUmakefile.in: 
13444         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13445
13446         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13447         2.0.x compatibility.
13448
13449 2005-02-08  Werner Lemberg  <wl@gnu.org>
13450
13451         * mf/feta-din-code.mf: Format; clean up code.
13452         Replace `---' with `--' plus explicit path directions.
13453         (linethickness#, stafflinethickness#): Remove.
13454         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13455         ("dynamic s"): Improve shape.
13456         ("dynamic p"): Improve shape.
13457         Replace `draw' with better outline approximation.
13458         ("dynamic r"): Improve shape.
13459         Don't call `fill' and `draw' at the same time.
13460
13461 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13462
13463         * SConstruct (symlink):
13464         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13465         build fix: add enc symlink.
13466
13467         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13468
13469         Support for DESTDIR besides prefix=/foo
13470
13471         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13472
13473         * stepmake/stepmake/*.make:
13474         * */GNUmakefile:
13475         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13476
13477         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13478
13479         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13480         mawk in fontforge (date) test.
13481
13482 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13483
13484         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13485         font-family=roman. Add Luxi Sans as sans
13486
13487 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13488
13489         * Documentation/user/notation.itely: add warning about
13490         percent repeats and Voice contexts.
13491
13492         * Documentation/user/lilypond-book.itely: clarified the
13493         necessity of dvips -u arguments.
13494
13495 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13496
13497         * THANKS: Added a bunch of bug hunters.
13498
13499 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13500
13501         * scm/framework-ps.scm (output-preview-framework): bugfix.
13502
13503         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13504         o/ for chord modifier..
13505
13506         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13507
13508         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13509         Welsh Duggan). 
13510
13511 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13512
13513         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13514
13515         * ly/titling-init.ly: Do not also print intstrument in header on
13516         first page.  Do not print page number on first and only page.
13517
13518 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13519
13520         * input/regression/*.ly: remove old-relative everywhere
13521
13522         * lily/music-sequence.cc (simultaneous_relative_callback): do
13523         what-if analysis on copy, not on original. Fixes old-relative
13524         compatibility.
13525
13526         * scm/backend-library.scm (postscript->png): space before
13527         --verbose.
13528         
13529 2005-02-05  Werner Lemberg  <wl@gnu.org>
13530
13531         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13532         is defined.
13533
13534         * mf/feta-alphabet.mf: Define `staffsize#'.
13535         Include `feta-params.mf'.
13536         s/staffheight/design_size/.
13537
13538         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13539
13540         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13541
13542         * mf/feta-nummer-code.mf: Reformatted.
13543         (draw_six): Use outline intersection to avoid a self-intersecting
13544         path.
13545         ("Numeral comma"): Fix serious outline glitches.  This slightly
13546         changes the glyph shape.
13547         ("Numeral dash"): Use `draw_rounded_block'.
13548         ("Numeral dot"): Use `drawdot'.
13549         ("Numeral 1"): Assure identical tangent directions for the
13550         intersection points of paths.  The glyph shape improvement is only
13551         visible at very high magnifications.
13552         ("Numeral 2"): Use `solve' macro to make the lower right part of
13553         the glyph outline touch the x axis exactly.  This changes the
13554         glyph shape.
13555         Minor fixes for better overlap removal support.
13556         ("Numeral 4"): Make lefter corner `rounder'.
13557         ("Numeral 5"): Assure identical tangent directions for the
13558         intersection points of paths.  This improves the glyph shape at
13559         high magnifications.
13560         ("Numeral 7"): Use `solve' macro to make the upper right part of
13561         the glyph outline touch the metrics box exactly.  This changes the
13562         glyph shape.
13563         Avoid corner in the upper left part of the glyph (causing a minor
13564         shape change).
13565
13566         * mf/feta-ital-*.mf: Removed.  Unused.
13567
13568 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13569
13570         * VERSION (PATCH_LEVEL): release 2.5.11
13571
13572         * input/regression/fill-line-test.ly: new file.
13573
13574         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13575         emmentaler name, eg. emmentaler-23. 
13576
13577 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13578
13579         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13580         alignment with centered texts
13581
13582         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13583         list of paddings
13584
13585 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13586
13587         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13588
13589         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13590         of parents when translating rests. Fixes: c-chord-rest.ly 
13591
13592         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13593         dimension_callback_ member.
13594
13595         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13596         of extents.
13597
13598 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13599
13600         * all but lily/*: The grand 2004/2005 replace.
13601
13602 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13603
13604         * lily/*: add space after ,  
13605
13606         * scm/music-functions.scm (has-request-chord): don't use
13607         ly:music-name anywhere. Fixes <<\\>> notation. 
13608
13609         * scm/define-markup-commands.scm (box): use font-size for
13610         padding. Fixes boxed-rehearsal-marks.ly
13611
13612         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13613         identifier definition too, so foo = \lyrics { ...   } bar = #1
13614         doesn't complain about "bar" being LYRICS_STRING.
13615
13616         * lily/paper-def.cc (find_pango_font): new routine; Store
13617         pango_fonts in hash tab too. This is necessary for retrieving
13618         Pango_fonts::physical_font_tab() later on.
13619  
13620         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13621         crash if psname is null.
13622
13623         * lily/lily-guile.cc (ly_hash2alist): new function
13624
13625         * Documentation/user/changing-defaults.itely (Text encoding):
13626         rewrite. 
13627
13628         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13629         -> font_filename mapping.
13630
13631         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13632         ly_pango_font_physical_fonts
13633
13634         * scm/framework-ps.scm (supplies-or-needs): extract names from
13635         physical Pango_fonts.
13636
13637         * utf8.ly: new file.
13638
13639 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13640
13641         * Documentation/user/changing-defaults.itely (Page layout): add
13642         doco about systemSeparatorMarkup.
13643
13644         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13645         function.
13646         (default-page-make-stencil): insert system separators.
13647
13648         * scm/define-markup-commands.scm (hcenter): add
13649         (beam): add.
13650
13651 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13652
13653         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13654
13655 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13656
13657         * lily/main.cc: Spell backend consistently.  Sort options.
13658
13659 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13660
13661         * scripts/lilypond-book.py (Module): revert @include.
13662         
13663 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13664
13665         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13666         Bugfix: @include .tex (not .texi).  Small cleanups.
13667
13668         * stepmake/bin/add-html-footer.py (i18n): New function.
13669
13670 2005-01-31  Werner Lemberg  <wl@gnu.org>
13671
13672         * mf/feta-nummer.mf: Removed.  Unused.
13673
13674 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13675
13676         * lily/ : 2004 -> 2005 s&r
13677
13678         * scm/file-cache.scm (cached-file-contents): add file. Read each
13679         file only once.
13680
13681         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13682         now default.
13683
13684         * VERSION: release 2.5.10
13685         
13686         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13687
13688         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13689
13690         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13691         that both X and Y extents of bbox are non-nil.
13692
13693 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13694
13695         * scm/chord-name.scm (alteration->text-accidental-markup): change
13696         - to . 
13697
13698         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13699
13700         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13701
13702         * Documentation/user/invoking.itely (Invoking lilypond): add note
13703         about EPS backend.
13704
13705         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13706         files for inclusion in lilypond-book document.
13707
13708         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13709
13710         * input/tutorial/lbook-texi-test.texi: new file.
13711
13712         * scm/safe-lily.scm (safe-objects): add
13713         {begin,end}-of-line-(in)?visible as safe.
13714  
13715 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13716
13717         * Documentation/user/changing-defaults.itely: fixed example
13718         of (dynamics).
13719
13720 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13721
13722         * lily/main.cc: fix info about -o=FILE.
13723
13724 2005-01-29  Werner Lemberg  <wl@gnu.org>
13725
13726         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13727         construction to assure smooth transition from straight to curved
13728         lines.
13729
13730 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13731
13732         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13733         stencils.
13734
13735         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13736         translate to top of page. Fixes alignment problems of
13737         lilypond-generated EPS files.
13738
13739 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13740
13741         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13742         crescendo-end as well, since Decrescendo maybe ended with Stop
13743         Crescendo.). Fixes: partcombine-diminuendo.ly
13744
13745         * scm/script.scm (default-script-alist): swap portato symbols.
13746
13747         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13748
13749         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13750         ly:outputter-port. New function.
13751
13752         * scm/framework-ps.scm (output-classic-framework): dump a
13753         -systems.texi too
13754         (output-classic-framework): dump multiple systems on an "infinite"
13755         page EPS including fonts. 
13756
13757         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13758         .eps files for both texi and tex formats. Use PNG coming from
13759         lilypond.
13760         
13761 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13762
13763         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13764
13765         * scripts/lilypond-latex.py: fix info about -o=FILE.
13766
13767 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13768
13769         * ly/generate-embedded-cff.ly: write .cff.ps files.
13770
13771         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13772
13773         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13774         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13775
13776 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13777
13778         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13779
13780 2005-01-28  Werner Lemberg  <wl@gnu.org>
13781
13782         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13783         macros.
13784         (draw_bulb): Improved.
13785
13786         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13787         metapost bug.
13788         (draw_pedal_P): Use soft_end_penstroke.
13789         (draw_pedal_d): Use soft_start_penstroke.
13790
13791         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13792         path.
13793         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13794         doesn't change the glyph shape.
13795
13796         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13797         changing the shape) to avoid fontforge warnings.
13798
13799         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13800         soft_end_penstroke and fix glyph shape.
13801
13802 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13803
13804         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13805
13806 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13807
13808         * scm/define-markup-commands.scm (line): filter out empty stencils
13809         from line command.
13810
13811         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13812         amount.
13813
13814 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13815
13816         * Documentation/user/notation.itely: added info about what
13817         \voiceFoo does.  Also rewrote warning about marks at
13818         a line break.
13819
13820         * Documentation/user/changing-defaults.itely: added info
13821         about putting dynamics in parenthesis and brackets.
13822
13823 2005-01-27  Werner Lemberg  <wl@gnu.org>
13824
13825         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13826
13827 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13828
13829         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13830         portato-direction.ly
13831
13832         * lily/beam.cc (consider_auto_knees): add beam height to
13833         threshold. Fixes: knee-multiple-beam.ly
13834
13835         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13836         pedal line spanners. Fixes: instrument-center-pedal.ly
13837
13838         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13839         if encountering barline. Fixes: auto-beam-repeat.ly
13840
13841 2005-01-26  Werner Lemberg  <wl@gnu.org>
13842
13843         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13844         overlapping.
13845
13846         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13847         with inflections for the 1/2 sharp glyph.
13848
13849         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13850         connection between `t' and `r'.
13851         Unify bulb with the rest of `r' to avoid grazing outlines which
13852         confuses the overlap removal algorithm of fontforge.
13853
13854         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13855         inflections.
13856         (draw_cross): Fix shape to have uniform thickness in corners.
13857
13858         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13859         to avoid an uneven number of self-intersections; this confuses
13860         fontforge.
13861         Fix a slight bug in the shape at left bottom (which is visible only
13862         at high magnifications).
13863         `Center' the stem horizontally to avoid overlapping.
13864
13865 2005-01-24  Werner Lemberg  <wl@gnu.org>
13866
13867         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13868         to `asis'.
13869         (fet_begingroup): Save group name in string `feta_group'.
13870         (fet_endgroup): Updated.
13871         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13872
13873         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13874
13875         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13876         in metapost.
13877
13878 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13879
13880         * Documentation/user/notation.itely: really minor editing.
13881
13882 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13883
13884         * Documentation/user/examples.itely: minor editing.
13885
13886         * Documentation/user/changing-defaults.itely: minor editing.
13887
13888         * Documentation/user/notation.itely: clarified info on polyphony
13889         and \addlyrics.
13890
13891 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13892
13893         * scm/output-gnome.scm: 
13894         * scm/output-svg.scm:
13895         * scm/lily-library.scm (font-name-style): Update font name
13896         kludging for fontconfig use.
13897
13898 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13899
13900         * scm/define-markup-commands.scm: Document right-align and
13901         larger markup commands. Remove "TODO" from the topmost comment
13902         "each markup function should have a doc string." More consistent
13903         use of new-lines.
13904
13905 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13906
13907         * Documentation/user/changing-defaults: removed info about
13908         copyright symbol, since it's likely to change soon.
13909         Added info about betweensystemspace.
13910
13911         * Documentation/user/notation.itely: minor fixes.
13912
13913         * Documentation/user/lilypond.tely,
13914         Documentation/user/music-glossary.tely: changed copyright
13915         date to 2005 instead of 2004.
13916
13917         * input/test/volta-chord-names.ly: added old example back.
13918
13919 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13920
13921         * mf/feta-beugel.mf: use design size 20 (not 15).
13922
13923         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13924         change name to aybabtu completely
13925
13926 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13927
13928         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13929         design_size to fontname
13930
13931 2005-01-19  Werner Lemberg  <wl@gnu.org>
13932
13933         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13934         mf/feta-schrift.mf: s/p/pat/ if a path variable.
13935
13936         * mf/feta-autometric.mf (set_char_box): Add code which emits
13937         specials for mf2pt1 if run with metapost.
13938         (to_bp): New macro for mf2pt1.
13939
13940 2005-01-18  Graham Percival  <gperlist@shaw.ca>
13941
13942         * Documentation/user/changing-defaults: added info on
13943         creating a copyright symbol.
13944
13945 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13946
13947         * VERSION: release 2.5.9
13948         
13949 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
13950
13951         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
13952
13953         * Documentation/user/notation.itely: Document
13954         score-override-auto-beam-setting Fix documentation for
13955         revert-auto-beam-setting.
13956
13957 2005-01-18  Werner Lemberg  <wl@gnu.org>
13958
13959         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
13960         (procset): New function to define a procset resource.
13961         (ps-embed-pfa): New function to define a font resource.
13962         (setup): New function to define a `Setup' environment.
13963         (preamble): Use new functions.
13964
13965         * ps/lilypond.defs (init-lilypond-parameters): New function to
13966         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
13967
13968 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13969
13970         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
13971
13972 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
13973
13974         * scm/define-markup-commands.scm: Change number->markletter-string
13975         to take two arguments (vector number). Add number->mark-alphabet-vector
13976         and markalphabet markup command.
13977
13978         * scm/translation-functions.scm: Add format-mark-box-alphabet,
13979         format-mark-alphabet, format-mark-box-barnumbers and
13980         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
13981
13982 2005-01-17  Graham Percival  <gperlist@shaw.ca>
13983
13984         * Documentation/user/examples.itely: add SATB automatic piano
13985         reduction template.
13986
13987         * Documentation/user/notation.itely: added info about changing
13988         partcombine texts.  Also adds examples of alternate lyrics.
13989
13990         * Documentation/user/changing-defaults.itely: added warning
13991         about \RemoveEmptyStaffContext overriding previous changes.
13992
13993 2005-01-17  Werner Lemberg  <wl@gnu.org>
13994
13995         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
13996         feta-alphabet*.
13997
13998 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13999
14000         * python/lilylib.py (make_ps_images): don't do final showpage for
14001         multi-page documents.
14002         
14003         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14004
14005 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14006
14007         * Documentation/user/lilypond.tely: changed order of appendices;
14008         unified index should be last.
14009
14010         * Documentation/user/notation.itely: add example of key signatures
14011         and info about Staff.printKeyCancellation.
14012
14013 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14014
14015         * lily/include/repeated-music.hh (class Repeated_music): change
14016         into "namespace" class.
14017
14018         * lily/event.cc: remove Key_change_event.
14019
14020         * lily/include/transposed-music.hh (class Transposed_music): remove.
14021
14022         * lily/transposed-music.cc: remove
14023
14024         * lily/include/relative-music.hh: remove.
14025
14026         * lily/include/music-sequence.hh (struct Music_sequence): change
14027         into "namespace" class.
14028
14029         * lily/untransposable-music.cc (Module): remove
14030
14031         * lily/include/un-relativable-music.hh (Module): remove
14032
14033         * lily/include/untransposable-music.hh (Module): remove
14034
14035         * lily/include/music-list.hh (Module): remove file
14036
14037         * lily/un-relativable-music.cc: remove file.
14038
14039 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14040
14041         * lily/parser.yy: Compile fix.
14042
14043 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14044
14045         * lily/include/music.hh (class Music): unvirtualize transpose().
14046
14047         * lily/sequential-music.cc: remove file.
14048
14049         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14050
14051         * lily/slur-scoring.cc (get_best_curve): only switch on
14052         DEBUG_SLUR_SCORING for non NDEBUG builds.
14053
14054         * lily/include/music.hh (class Music): replace Music::start_mom()
14055         by start-callback property
14056
14057         * lily/include/grace-music.hh: remove file. 
14058
14059         * lily/stem.cc (height): robustness fix.
14060
14061         * lily/time-scaled-music.cc: remove file.
14062
14063         * lily/include/music.hh (class Music): include SCM init argument.
14064         (class Music): replace Music::get_length() virtual by
14065         length-callback property everywhere.
14066
14067         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14068
14069         * mf/GNUmakefile: don't install *list.ly
14070
14071 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14072
14073         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14074
14075 2005-01-12  Werner Lemberg  <wl@gnu.org>
14076
14077         This patch addresses the following problems in the feta sources
14078         files which contribute to the fetaXX fonts.
14079
14080         . Many fixes for rasterization at low resolutions (consistent use of
14081           `vround' and `hround', integer shift values for paths, applying
14082           `eps' for mirrored paths, use of `define_whole_pixels' and
14083           friends, etc.) -- while this probably looks like a waste of time
14084           it has revealed deficiencies in some glyph shapes.  See comment at
14085           the end of feta-params.mf how vertical symmetry is achieved.
14086
14087         . The `---' operator has been replaced everywhere with `--'; this
14088           both improves and considerably reduces the font size after
14089           conversion with mf2pt1.
14090
14091         These change aren't explicitly mentioned below since virtually all
14092         glyphs are affected.
14093
14094         Other notable differences:
14095
14096         . Glyphs from feta-accordion.mf now have charboxes around the
14097           outline.
14098
14099         . Fixed incorrect charbox for `accDot'.
14100
14101         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14102
14103         . Fixed position of the bow in the `upprall' glyph and its siblings.
14104
14105         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14106           dependent on the staff line thickness to avoid touching the middle
14107           staff line at smaller sizes.
14108
14109         . Largely extended output for feta-testXX: Where useful, glyphs
14110         are shown both between and on staff lines.
14111
14112
14113         * mf/feta-params.mf (staff_space_rounded,
14114         stafflinethickness_rounded, linethickness_rounded,
14115         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14116         Update all code which uses them where appropriate.
14117         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14118         New variables used to control rasterization at low resolutions.  Set
14119         to zero if feta code is processed with metapost.
14120
14121         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14122         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14123         (flare_path): Updated.
14124         Make it work with `filldraw' (but only circular pens).
14125         (hfloor, vfloor, hceiling, vceiling): New macros.
14126
14127         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14128         Use `draw' again in mf mode to have good pixel dropout control.
14129         Fix intersection points of horizontal lines with circle.
14130         ("accDot"): Fix parameters for set_char_box.
14131         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14132         control.
14133
14134         * mf/feta-banier.mf: Updated.
14135
14136         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14137         testing.
14138         (undraw_inside_ellipse): Remove `center' argument.  Update all
14139         callers.
14140         (draw_brevis): New macro, called by "Brevis notehead".
14141         (draw_whole_triangle_head): New macro, called by "Whole
14142         trianglehead".
14143         (draw_small_triangle_head): Use `filldraw'.
14144
14145         * mf/feta-eindelijk.mf: Remove useless global group.
14146         Updated.
14147
14148         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14149         `filldraw'.
14150
14151         * mf/feta-pendaal.mf: Updated.
14152
14153         * mf/feta-puntje.mf: Updated.
14154
14155         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14156         less points.
14157         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14158         dropout control.
14159         ("Varied Coda"): Use `draw_block'.
14160         (draw_comma): Fix typo.
14161         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14162         pixel dropout control.
14163
14164         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14165         position of bow.
14166
14167         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14168         sizes.
14169
14170         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14171         testing.
14172         (draw_meta_sharp): Much simplified.
14173         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14174
14175         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14176
14177 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14178
14179         * Documentation/user/notation.itely (Ancient rests): Fix typo
14180         (thanks Anthony)
14181
14182 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14183
14184         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14185
14186         * lily/main.cc (setup_paths): Add cff.
14187
14188         * mf/GNUmakefile (foe): Include actual target %.cff.
14189         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14190
14191 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14192
14193         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14194         suffix for main_input_b_.
14195
14196         * scm/music-functions.scm (toplevel-music-functions):
14197         precompute music lengths for music expressions.  
14198
14199 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14200
14201         * lily/include/input.hh (class Input): new `end_' slot for end of
14202         input. Renamed defined_str0_ to start_.
14203
14204         * lily/input.cc (Input): Add Input::Input (Input const &) and
14205         remove Input::Input (Source_file*, char const *). Use the new
14206         slots.
14207         (set_location): method used by bison to propagate input
14208         locations (YYLLOC_DEFAULT).
14209         (end_line_number, end_column_number, step_forward): new methods
14210         
14211         * lily/input-scheme.cc (ly:input-both-locations): new function,
14212         similar to ly:input-location, but also return the end line and
14213         column.
14214
14215         * lily/include/includable-lexer.hh: 
14216         * lily/includable-lexer.cc: 
14217         * lily/include/lily-lexer.hh (class Lily_lexer): 
14218         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14219         Includable_lexer to Lily_lexer, in order to update lexloc (the
14220         yylloc), a new slot of Lily_lexer.
14221         (here_input, LexerError): simplify by using the lexloc slot (aka
14222         yylloc)
14223
14224         * lily/lexer.ll: #define yylloc to use input locations (it may
14225         be useless here?). Fixed the #embedded_scm rule (step the location
14226         forward in order to skip the sharp sign before parsing the scheme
14227         expression)
14228
14229         * lily/include/lily-parser.hh (class Lily_parser): 
14230         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14231         here_input()
14232         (parser_error): overload for more precise locations of errors.
14233
14234         * lily/parser.yy (YYLTYPE): set location type to Input
14235         (YYLLOC_DEFAULT): use Input::set_location()
14236         (yylex): add the YYLTYPE* location parameter.
14237         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14238         Give an Input parameter to THIS->parser-error() for more accurate
14239         messages.
14240
14241 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14242
14243         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14244
14245         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14246         on BEAMQUANTING for non-NDEBUG builds.
14247
14248         * lily/stem.cc (head_count): performance: avoid String::String()
14249         inside oft called function.
14250
14251 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14252
14253         * Documentation/user/examles.itely: attempted fix for broken
14254         string quartet template.
14255
14256         * Documentation/user/notation.itely: remove unnecessary broken
14257         link.
14258
14259 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14260
14261         * VERSION (PACKAGE_NAME): release 2.5.7
14262
14263 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14264
14265         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14266         mf-nowin for teTeX-3.0.  Backportme.
14267
14268         * scm/output-svg.scm (utf8-string): New function.
14269
14270         * scm/output-gnome.scm (utf8-string): New function.
14271         (otf-name-mangling): Remove.
14272
14273         * lily/pango-font.cc (Pango_font): Use font string iso font
14274         filename for utf8-text.
14275
14276         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14277         name.
14278
14279 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14280
14281         * Documentation/user/notation.itely: add info about
14282         Staff.extraNatural = ##f in Pitches section.  Also
14283         fixed some minor issues in the Vocal music section.
14284
14285 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14286
14287         * scm/output-ps.scm (white-text): comment out Helvetica font,
14288         which is broken for my GS install.
14289
14290         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14291         which provides a tighter bbox.
14292
14293         * scm/define-grobs.scm (all-grob-descriptions): remove all
14294         extra-offsets from definitions.
14295
14296 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14297
14298         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14299         add tuning for 4-string bass and some common 4/5-string banjo
14300         tunings.  New function (four-string-banjo) turns a 5-string tuning
14301         into a 4-string tuning.  New function
14302         (fret-number-tablature-format-banjo) computes correct fret numbers
14303         on 5-string banjos.
14304
14305         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14306         Add beam correction to TabVoice.
14307
14308         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14309         using bold font; makes tabs more readable.
14310
14311 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14312
14313         * lily/font-select.cc (get_font_by_design_size): don't make
14314         Modified_font_metric; this causes trouble, since we don't know the
14315         font magnification from inside Pango_font::text_stencil()
14316
14317         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14318
14319         * Documentation/user/notation.itely (The Lyrics context): comment out
14320         broken {Small ensembles} link.
14321
14322         * scm/framework-svg.scm (output-framework): change calling convention.
14323
14324         * lily/object-key-dumper-scheme.cc: new file.
14325
14326         * lily/object-key-undumper-scheme.cc: new file.
14327
14328         * lily/tweak-registration-scheme.cc: new file.
14329
14330         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14331
14332         * Documentation/user/examples.itely (String quartet): uncomment
14333         broken example.
14334
14335         * lily/font-config.cc: new file.
14336
14337 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14338
14339         * scm/output-svg.scm: 
14340         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14341
14342         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14343
14344 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14345
14346         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14347         Add headers.
14348
14349         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14350
14351 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14352
14353         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14354
14355         * lily/include/main.hh: lose _b hungarian suffixes for global
14356         variables.
14357
14358         * lily/include/lily-guile-macros.hh: new file.
14359
14360         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14361
14362         * lily/general-scheme.cc: new file. 
14363
14364         * lily/font-select.cc (get_font_by_design_size): retrieve
14365         PangoFont for (designsize . "pango-descr") entries.
14366
14367         * lily/lily-parser-scheme.cc: new file.
14368
14369         * lily/output-def-scheme.cc: new file.
14370
14371         * lily/paper-book-scheme.cc: new file.
14372
14373         * lily/duration-scheme.cc (LY_DEFINE): new file.
14374
14375         * lily/pitch-scheme.cc:  new file.
14376
14377         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14378
14379 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14380
14381         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14382
14383 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14384
14385         * Documentation/user/notation.itely: minor editing.
14386
14387         * Documentation/user/changing-defaults: minor editing.
14388
14389         * Documentation/user/examples.itely: add template for
14390         string quartet part extraction; demonstrates tag.
14391
14392 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14393
14394         * Documentation/user/notation.itely: documents
14395         format-mark-box-letters and format-mark-box-numbers
14396
14397         * scm/define-context-properties.scm: change comment.
14398
14399 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14400
14401         * scm/framework-ps.scm (output-classic-framework): new function:
14402         dump systems as separate .eps files (without fonts) and write a
14403         single collecting .tex file.
14404
14405 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14406
14407         * Documentation/user/notation.itely (Setting simple songs):
14408         Correct several errors in the equivalent formulation of
14409         \addlyrics. 
14410         (The Lyrics context): Corrected link to the SATB example.
14411
14412 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14413
14414         * scm/lily.scm (completize-formats): new function
14415         (postprocess-output): new function
14416
14417         * lily/paper-book.cc (classic_output): change calling
14418         convention. Give basename as first argument. 
14419         remove Paper_book::post_processing().
14420
14421         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14422
14423 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14424
14425         * lily/paper-outputter.cc (LY_DEFINE): new function
14426         ly:outputter-close.
14427
14428         * lily/main.cc: change --format,-f to --backend,-b
14429
14430         * lily/include/main.hh: rename format to backend.
14431
14432         * scm/translation-functions.scm (format-mark-box-numbers): add.
14433         patch by Erlend Aasland
14434
14435 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14436
14437         * lily/pango-font.cc (text_stencil): dump string as
14438         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14439
14440 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14441
14442         * configure.in (gui_b): Remove handy developer-only
14443         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14444         CVS source installations (but break other non-default but correct
14445         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14446
14447         * SConstruct: 
14448         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14449         compatibility (backportme).
14450
14451         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14452
14453 2005-01-03  Werner Lemberg  <wl@gnu.org>
14454
14455         Prepare glyph shapes for mf2pt1 conversion.
14456
14457         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14458         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14459         `penstroke'.
14460         (accDot): Use `drawdot'.
14461         (accBayanbase): Replace `draw' with `draw_gridline'.
14462         (print_penpos): Moved to feta-macros.mf.
14463         (accOldEE): Replace `filldraw' with `penstroke'.
14464         Replace `draw' with `penstroke' and `drawdot'.
14465
14466         * mf/feta-banier.mf: Code clean-up.
14467         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14468         `fill'.
14469
14470         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14471
14472         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14473         paremeter to control drawing of labels.  Update all callers.
14474
14475         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14476         (new_bulb): Return a bulb as a single path.  To do that, it now
14477         takes some more parameters.  Updated all callers.
14478         (draw_gclef): Major clean-up.  `draw' has been replaced with
14479         `penstroke', unnecessary outlines have been removed.
14480         Remove (unused) gnome-canvas code.
14481
14482         * mf/feta-macros.mf (print_penpos): New macro (from
14483         feta-accordion.mf).
14484         Other minor fixes.
14485
14486         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14487         ("Pedal dot"): Use `drawdot'.
14488         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14489         all callers.
14490         Fix shape at top.
14491         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14492         all callers.
14493         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14494         all callers.
14495         Revert drawing direction.
14496
14497         * mf/feta-schrift.mf (draw_fermata): Use single path.
14498         (draw_short_fermata): Replace `filldraw' with `fill'.
14499         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14500         `draw_rounded_block' with a single path.
14501         ("Thumb"): Draw full circle instead of mirroring segments.
14502         (draw_accent): New macro.
14503         ("> accent", "espr"): Use it.
14504         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14505         ("open (unstopped)"): Draw full circle instead of mirroring
14506         segments.
14507         (draw_vee): Removed.
14508         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14509         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14510         path.
14511         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14512         partial pieces drawn with `fill' -- these do still overlap with the
14513         stem of the `t' but just once, not multiple times so that fontforge
14514         can handle it gracefully.
14515         Change other parts of the glyph so that fontforge's overlapping
14516         algorithm reliably works.
14517         (draw_heel): Replace `draw' with `fill'.
14518         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14519         ("Flageolet"): Replace `draw' with `penstroke'.
14520         ("Segno"): Replace `filldraw' with `penstroke'.
14521         Replace `draw' with `drawdot'.
14522         ("Coda"): Replace `fill' with `penstroke', using a single path.
14523         ("Varied Coda"): Use less overlapping paths.
14524         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14525         single path.
14526
14527         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14528         group to better control the `labels' command.
14529         Rename argument to `offset' and use it actually.  Update all
14530         callers.
14531         Replace `filldraw' with `fill'.
14532         ("mordent", "prallmordent", "upmordent", "downmordent",
14533         "lineprall"): Replace `draw' with `draw_gridline'.
14534         ("upprall", "downprall"): Replace `draw' with `fill'.
14535
14536         * mf/feta-timesig.mf: Formatting.
14537
14538         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14539         to...
14540         ("Flat"): Here.
14541         (draw_paren): Move code to draw labels to...
14542         ("Right Parenthesis"): Here.
14543
14544 2005-01-02  Graham Percival <gperlist@shaw.ca>
14545
14546         * Documentation/user/notation.itely: add example of \setTextDecresc
14547         and \setTextDim.
14548
14549 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14550
14551         * scm/define-markup-commands.scm :  fix glyph-strings of
14552         accidentals and \note-by-number
14553
14554 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14555
14556         * VERSION: 2.5.6 released.
14557         
14558         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14559
14560         * input/regression/new-markup-scheme.ly: oops. font-family=music
14561         -> font-encoding fetaMusic.  
14562
14563         * lily/main.cc: put default to PS.
14564
14565         * lily/tfm.cc: idem.
14566
14567         * lily/afm.cc: idem.
14568
14569         * lily/include/modified-font-metric.hh (struct
14570         Modified_font_metric): remove coding_scheme() method.
14571
14572         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14573
14574         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14575
14576         * input/les-nereides.ly: convert to utf8
14577
14578         * lily/modified-font-metric.cc (text_dimension): idem.
14579
14580         * lily/parser.yy (TODO): idem.
14581
14582         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14583
14584         * lily/lexer.ll: remove encoding
14585
14586         * scm/framework-ps.scm (output-variables): separately scale the
14587         page to mm 
14588
14589         * lily/pango-font.cc (Pango_font): fix scaling.
14590
14591         * lily/font-metric.cc (design_size): design_size returns a
14592         dimension now as well.
14593
14594 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14595
14596         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14597         brace generation. 
14598
14599         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14600
14601 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14602
14603         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14604         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14605
14606 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14607
14608         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14609         in first run as well.
14610
14611         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14612         dimension less points (ie. 12 = 12 point)
14613
14614         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14615
14616         * lily/all-font-metrics.cc (find_pango_font): set description_
14617
14618         * lily/pango-font.cc (text_stencil): export size as well.
14619         (text_stencil): fix scaling and extents box.
14620
14621 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14622
14623         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14624
14625         * Documentation/user/invoking.itely (Invoking lilypond): document
14626         texstr
14627
14628         * scripts/convert-ly.py (conv): add ancient rules.
14629
14630         * scm/clef.scm (c0-pitch-alist): replace - with .
14631
14632         * scripts/lilypond-book.py (process_snippets): add texstr support.
14633
14634         * scm/framework-texstr.scm (header): change extension to .textmetrics
14635
14636         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14637         -f tex.
14638
14639         * lily/text-metrics.cc: new file.
14640         (try_load_text_metrics): new function
14641
14642         * lily/include/text-metrics.hh: new file.
14643
14644 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14645
14646         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14647         ly_scheme_function to ly_lily_module_constant.
14648
14649         * lily/modified-font-metric.cc (text_dimension): try
14650         lookup_tex_text_dimension() first.
14651
14652         * lily/tfm.cc: new function ly:load-text-dimensions
14653
14654 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14655
14656         * scm/output-texstr.scm (text): use \lilygetmetrics
14657
14658         * scm/framework-texstr.scm (header): dump in new format.
14659
14660         * tex/lilypond-tex-metrics: new file.
14661         
14662 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14663
14664         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14665         mapping.
14666         (index_to_charcode): New method.
14667
14668         * scm/output-ps.scm (glyph-string): 
14669         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14670
14671 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14672
14673         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14674         implement fully, need FONT to get to charcode.
14675
14676         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14677
14678         * scm: Cleanups.
14679
14680         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14681         {Tunable context properties},
14682         {All layout objects},
14683         {Music definitions}.
14684
14685 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14686
14687         * VERSION: release 2.5.5
14688         
14689         * lily/main.cc: use TeX as default output format.
14690
14691         * flower/file-path.cc (find): try to open directly as well, so we
14692         find absolute path files. 
14693
14694         * lily/pango-select.cc: new file.
14695
14696         * scm/framework-ps.scm: remove all encoding code. 
14697         load pfb/pfa for PangoFont too.
14698         
14699         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14700
14701 2004-12-22  Werner Lemberg  <wl@gnu.org>
14702
14703         Prepare glyph shapes for mf2pt1 conversion.
14704
14705         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14706
14707         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14708         (define_triangle_shape): Use it to replace `draw' with `fill' and
14709         `unfill'.  Update all callers.
14710         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14711         (draw_cross): Ditto.
14712         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14713         Use penrazor for better conversion with mf2pt1.
14714         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14715         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14716         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14717         draw_la_head, draw_ti_head): Replace `filldraw' with
14718         `fill'.  Update all callers.
14719
14720 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14721
14722         * lily/paper-book.cc (output): revert: only allow a single output
14723         format.
14724
14725         * lily/include/pango-font.hh: new file.
14726
14727         * lily/pango-font.cc: new file.
14728
14729         * lily/font-metric.cc (text_stencil): new routine
14730
14731         * lily/all-font-metrics.cc (find_pango_font): new routine.
14732
14733         * lily/include/font-metric.hh (struct Font_metric): add
14734         text_stencil()
14735
14736         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14737
14738 2004-12-22  Werner Lemberg  <wl@gnu.org>
14739
14740         Prepare glyph shapes for mf2pt1 conversion.
14741
14742         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14743
14744         * mf/feta-toevallig.mf: Formatting.
14745         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14746         ("Natural"): Fix paths to allow better postprocessing.
14747         (draw_meta_flat): Use `z3l' as additional point in path to get
14748         better conversion with mf2pt1.
14749         Other minor cleanups.
14750         ("3/4 Flat"): Add auxiliary points and modify path to replace
14751         `draw' with `fill'.
14752         ("Double Sharp"): Mirror path segments instead of picture elements
14753         to get a single outline.
14754         Modify path to replace `filldraw' with `fill'.
14755
14756 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14757
14758         * input/test/unfold-all-repeats.ly: added file back.
14759
14760         * Documentation/user/notation.itely,
14761         Documentation/user/programming-interface.itely
14762         Documentation/user/changing-defaults.itely: fixed misc broken
14763         links to input/test/ files.
14764
14765 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14766
14767         * tex/texinfo.tex: Update.  We should not be distributing this,
14768         but since we do, use latest version.
14769
14770         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14771         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14772         macros for feta glyphs.
14773
14774 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14775
14776         * Documentation/user/changing-defaults.itely: fix index for set.
14777
14778         * Documentation/user/converters.itely: added convert-ly bugs list
14779         from CVS.
14780
14781 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14782
14783         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14784         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14785         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14786         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14787
14788         * mf/GNUmakefile (pfa_warning): Use less broken check.
14789
14790         * python/lilylib.py (setup_environment): Remove cruft from
14791         GS_FONTPATH.
14792
14793         * configure.in: Bump mftrace requirement to 1.1.1.
14794
14795 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14796
14797         * scm/output-svg.scm (beam): Use polygon.
14798
14799         * scm/lily-library.scm: Bugfix.
14800
14801         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14802
14803         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14804
14805 2004-12-19  Werner Lemberg  <wl@gnu.org>
14806
14807         Prepare glyph shapes for mf2pt1 conversion.
14808
14809         * mf/feta-eindelijk: Some formatting.
14810         (multi_rest_x, multi_beam_height): Removed.  Unused.
14811         ("Quarter rest"): Use `intersectiontimes' to create a single
14812         outline.
14813         (rest_crook): Removed.  Unused.
14814         (draw_rest_bulb): Return path (without filling).  Update callers.
14815         Simplified.
14816         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14817         "128th rest"): Simplify `pat'.
14818         Create single outline.
14819
14820 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14821
14822         * mf/GNUmakefile (ALL_GEN_FILES):
14823         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14824
14825         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14826         function.
14827
14828 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14829
14830         * scm/output-texstr.scm (placebox): add routine
14831
14832         * VERSION (PACKAGE_NAME): release 2.5.4
14833
14834         * scm/framework-texstr.scm (output-framework): new file.  
14835
14836         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14837         processing.
14838
14839         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14840
14841         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14842         rule.
14843
14844         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14845
14846         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14847
14848         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14849
14850 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14851
14852         * scm/framework-svg.scm (dump-page): Implement landscape.
14853
14854 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14855
14856         * lily/main.cc (setup_paths): Add svg to search path.
14857
14858         * scm/output-svg.scm:
14859         * scm/framework-svg.scm: Add pageSet.  Update.
14860         (dump-fonts): New function.
14861         (output-framework): Use it.
14862
14863         * mf/GNUmakefile: 
14864         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14865
14866 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14867
14868         * tex/lilyponddefs.tex: comment out new ifpdf code.
14869
14870 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14871
14872         * GNUmakefile.in: 
14873         * SConstruct (symlink): Replace afm by otf.
14874
14875         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14876         ly:pango-add-afm-decoder.
14877
14878         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14879
14880 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14881
14882         * scm/output-ps.scm (new-text): don't access t glyph for getting
14883         space dimension.
14884
14885         * ly/init.ly: warn about \version
14886
14887         * lily/lexer.ll: set version-seen?
14888
14889 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14890
14891         * scm/output-svg.scm (string->entities): Update.
14892
14893 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14894
14895         * lily/main.cc (setup_paths): replace afm by otf for path. 
14896
14897         * lily/pangofc-afm-decoder.cc: remove.
14898
14899         * lily/include/pangofc-afm-decoder.hh: remove.
14900
14901         * scm/framework-scm.scm (output-framework): new file.
14902
14903         * mf/GNUmakefile: remove SAUTER_FONTS.
14904         remove SVG/sodipodi hacks.
14905
14906         * scm/lily-library.scm (stderr): move stderr.
14907
14908         * mf/GNUmakefile: remove AFM support.
14909
14910         * buildscripts/mf-to-table.py (base): remove AFM support.
14911
14912         * lily/open-type-font.cc (design_size): use design_size
14913
14914 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14915
14916         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14917
14918 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14919
14920         * mf/GNUmakefile: Generate combined aybabtu info.
14921         * mf/aybabtu.pe.in (i): Load it.
14922
14923         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14924         are not symbols.
14925
14926         * lily/include/open-type-font.hh (count): New method.
14927
14928         * mf/aybabtu.pe.in: Typo.
14929
14930         * Documentation/user/out/lilypond-internals.nexi (Scheme
14931         functions): Typo.
14932
14933         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14934
14935 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14936
14937         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
14938         subfonts.
14939
14940         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
14941
14942         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
14943         (tex-font-command-raw): new function.
14944
14945         * lily/include/virtual-font-metric.hh (Module): remove file
14946
14947         * lily/virtual-font-metric.cc (Module): remove file.
14948         
14949
14950         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
14951         (get_indexed_char): read bbox from lily table if present.
14952
14953 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14954
14955         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
14956         aybabtu.subfonts
14957
14958         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
14959         global glyphname. Enables more than 64 glyphs in the OTF.
14960
14961 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
14962
14963         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
14964         braces.
14965
14966         * lily/open-type-font.cc (design_size): Use 12 as default for
14967         design size.
14968
14969         * mf/aybabtu.pe.in: New file.  Merge all our braces.
14970
14971         * mf/GNUmakefile: Generate aybabtu.
14972
14973         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
14974
14975 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14976
14977         * scm/lily-library.scm (char->unicode-index): Remove.
14978
14979         * scm/output-gnome.scm (text): Bugfix for plain string input.
14980         Updates.
14981
14982         * scm/output-svg.scm (svg-font): Add weight to font selection.
14983
14984 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
14985
14986         * Documentation/topdocs/INSTALL.texi (Top): Point to
14987         buildscripts/out/clean-fonts instead of
14988         buildscripts/clean-fonts.sh. 
14989
14990 2004-12-13  Graham Percival  <gperlist@shaw.ca>
14991
14992         * input/regression/figured-bass.ly: attempt to clarify text.
14993
14994         * Documentation/user/notation.tely: add cindex for tag, attempt to
14995         add figured bass example.
14996
14997         * Documentation/user/changing-defaults: basic editing.
14998
14999 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15000
15001         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15002
15003         * lily/open-type-font.cc (LY_DEFINE): new function
15004         ly:font-sub-fonts
15005
15006         * lily/include/font-metric.hh (struct Font_metric): new method
15007         sub_fonts()
15008
15009         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15010         . with - in add.stem.
15011         
15012 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15013
15014         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15015         and fetaDynamic.
15016
15017         * lily/rest.cc (glyph_name): Change - to . .
15018
15019         * scm/output-gnome.scm (text): Hello world, again.
15020
15021         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15022
15023         * lily/modified-font-metric.cc (index_to_charcode): New method.
15024
15025         * lily/include/font-metric.hh (index_to_charcode): New function.
15026
15027         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15028         new function.
15029         (ly:font-glyph-to-index): Remove.
15030
15031 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15032
15033         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15034
15035         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15036
15037         * lily/open-type-font.cc (load_scheme_table): new function
15038
15039         * lily/dots.cc (print): replace - 
15040
15041         * lily/open-type-font.cc (attachment_point): new function.
15042         (load_table): read LILC table
15043
15044         * buildscripts/gen-bigcheese-scripts.py (Module): new
15045         file. Generate FF scripts.
15046
15047         * mf/feta-din10.mf: idem.
15048
15049         * mf/feta-nummer10.mf: remove mf files.
15050
15051         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15052
15053 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15054
15055         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15056
15057         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15058         compatibility.
15059
15060 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15061
15062         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15063         design-size and units_per_EM.
15064
15065         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15066
15067 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15068
15069         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15070         does not crash fontforge.
15071
15072         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15073         PUA.
15074
15075 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15076
15077         * scm/framework-ps.scm (ps-embed-cff): new function.
15078
15079         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15080
15081 2004-12-12  Werner Lemberg  <wl@gnu.org>
15082
15083         * mf/bigcheese.pe.in: Add PUA mapping.
15084         Don't create Type 42 but bare CFF font.
15085
15086 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15087
15088         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15089         within canvas boundaries.
15090
15091         * mf/merge.pe.in: Set font names, version, license GPL.
15092
15093         * make/substitute.make: Add FONTFORGE.
15094
15095         * config.make.in (FONTFORGE): Add.
15096
15097         * configure.in (gui_b): Use PATH_PROG for fontforge.
15098
15099 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15100
15101         * scm/define-markup-commands.scm: add baseline-skip to info
15102         about \column.
15103
15104 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15105
15106         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15107
15108         * scm/output-gnome.scm (named-glyph): Use it.
15109
15110         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15111
15112         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15113         (upper_string, lower_string, reverse_string): Remove.
15114
15115         * configure.in (fontforge): Reinstate version check.
15116
15117         * ly/engraver-init.ly: Fix clef glyph names.
15118
15119         * lily/time-signature.cc (special_time_signature): Fix fraction
15120         glyph names.
15121
15122 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15123
15124         * mf/merge.pe: new file.
15125
15126         * lily/freetype.cc: new file.
15127
15128         * lily/include/open-type-font.hh (class Open_type_font): new file.
15129
15130         * lily/include/freetype.hh: new file.
15131
15132         * lily/open-type-font.cc: new file.
15133
15134         * lily/all-font-metrics.cc (find_otf): new function.
15135
15136 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15137
15138         * lily/time-signature.cc (special_time_signature): Fix.
15139
15140         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15141         GTK2 before checking for pango.  Fixes -fgnome.
15142
15143         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15144         Scheme name.
15145
15146         * scm/define-markup-commands.scm:
15147         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15148
15149         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15150
15151         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15152         date versions.  Fixes configure.
15153         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15154         argument.
15155
15156 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15157
15158         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15159         names in .enc
15160
15161         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15162
15163 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15164
15165         * Documentation/user/changing-defaults.itely: add info about
15166         make-dynamic-script
15167
15168         * Documentation/user/notation.itely: add link in dynamics to
15169         section about make-dynamic-script.
15170
15171 2004-12-09  Christian hitz  <chhitz@gmx.net>
15172
15173         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15174
15175 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15176
15177         * buildscripts/mf-to-table.py (parse_logfile): use . for
15178         concatting name and group.
15179         (parse_logfile): use M for Minus (negative.)
15180
15181         * lily/include/type-swallow-translator.hh
15182         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15183
15184         * lily/*.cc: cosmetics around = sign.
15185
15186         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15187         lyric spacing on the penultimate column.
15188
15189 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15190
15191         * configure.in:
15192         * lily/accidental-placement.cc:
15193         * lily/bar-line.cc:
15194         * lily/beam-concave.cc:
15195         * lily/beam-quanting.cc:
15196         * lily/beam.cc:
15197         * lily/bezier-bow.cc:
15198         * lily/bezier.cc:
15199         * lily/break-align-interface.cc:
15200         * lily/custos.cc:
15201         * lily/dimension-cache.cc:
15202         * lily/dot-column.cc:
15203         * lily/font-metric.cc:
15204         * lily/font-select.cc:
15205         * lily/gourlay-breaking.cc:
15206         * lily/grob-property.cc:
15207         * lily/grob.cc:
15208         * lily/lily-guile.cc:
15209         * lily/line-spanner.cc:
15210         * lily/lookup.cc:
15211         * lily/lyric-extender.cc:
15212         * lily/lyric-hyphen.cc:
15213         * lily/mensural-ligature.cc:
15214         * lily/midi-def.cc:
15215         * lily/misc.cc:
15216         * lily/note-collision.cc:
15217         * lily/note-column.cc:
15218         * lily/note-head.cc:
15219         * lily/paper-outputter.cc:
15220         * lily/percent-repeat-item.cc:
15221         * lily/rest-collision.cc:
15222         * lily/side-position-interface.cc:
15223         * lily/simple-spacer.cc:
15224         * lily/slur-configuration.cc:
15225         * lily/slur-scoring.cc:
15226         * lily/slur.cc:
15227         * lily/spaceable-grob.cc:
15228         * lily/spacing-spanner.cc:
15229         * lily/spanner.cc:
15230         * lily/staff-symbol-referencer.cc:
15231         * lily/stem.cc:
15232         * lily/stencil.cc:
15233         * lily/system-start-delimiter.cc:
15234         * lily/system.cc:
15235         * lily/text-item.cc:
15236         * lily/tie.cc:
15237         * lily/tuplet-bracket.cc:
15238         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15239         <cmath> beacause isinf/isnan is undefined in <cmath>
15240
15241 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15242
15243         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15244
15245 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15246
15247         * VERSION: release 2.5.3
15248         
15249 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15250
15251         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15252
15253 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15254
15255         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15256
15257         * lily/note-head.cc (internal_print): always try the "s" head if
15258         u/d not found.
15259
15260         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15261
15262 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15263
15264         * mf/parmesan-heads.mf (overdone_heads): typos.
15265
15266 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15267
15268         * lily/parser.yy (markup): in markups, { .. } without command
15269         before are also flattened, ie \line must be explicitely used.
15270
15271         * Documentation/user/changing-defaults.itely:
15272         * Documentation/user/notation.itely: 
15273         * input/wilhelmus.ly: 
15274         * input/regression/instrument-name-markup.ly: 
15275         * input/regression/markup-score.ly: 
15276         * input/regression/new-markup-scheme.ly: 
15277         * input/regression/new-markup-syntax.ly: 
15278         * input/test/coriolan-margin.ly: use \line in markups where
15279         appropriate
15280         
15281 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15282
15283         * scm/new-markup.scm (map-markup-command-list): helper function
15284         used in parser.yy to map markup commands on a markup list.
15285
15286         * lily/parser.yy: get rid off < > in markups by treating { } as
15287         real lists.
15288
15289         * lily/lexer.ll: remove < > from markup lexer mode.
15290
15291         * scripts/convert-ly.py (conv): add rule for converting 
15292         \markup < > to \markup { }
15293
15294         * ly/titling-init.ly: 
15295         * input/test/coriolan-margin.ly: 
15296         * input/regression/new-markup-syntax.ly: 
15297         * input/regression/new-markup-scheme.ly: 
15298         * input/regression/multi-measure-rest-text.ly: 
15299         * input/regression/markup-stack.ly: 
15300         * input/regression/markup-score.ly: 
15301         * input/regression/instrument-name-markup.ly: 
15302         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15303         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15304         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15305         * input/wilhelmus.ly: 
15306         * Documentation/user/notation.itely: 
15307         * Documentation/user/music-glossary.tely: 
15308         * Documentation/user/changing-defaults.itely: change < > to { } in
15309         markups
15310
15311 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15312
15313         * lily/accidental-placement.cc (position_accidentals): shortcut if
15314         no accidentals to place.
15315
15316 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15317
15318         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15319         typo s/ly:dimension ?/ly:dimension?/
15320
15321         * input/regression/lily-in-scheme.ly: 
15322         * input/regression/music-function.ly: 
15323         * ly/spanners-init.ly (assertBeamSlope): 
15324         * scm/music-functions.scm (def-grace-function): add the paper
15325         argument to music function definitions.
15326
15327 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15328
15329         * lily/moment.cc (LY_DEFINE):
15330         ly:moment-main-{denominator,numberator}, new function.
15331
15332         * lily/score-engraver.cc (typeset_all): assign to column on basis
15333         of axis-group-parent-X setting.
15334
15335         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15336         add_element() on basis of axis-group-parent-Y setting.
15337
15338         * lily/grob.cc: add axis-group-parent-{XY} properties.
15339
15340         * input/regression/spacing-stick-out.ly: new file.
15341
15342         * lily/simple-spacer.cc (add_columns): use binary search for
15343         setting column rods. Changes O(n^2) to O(n log(n)) for
15344         constructing spacing problem from columns.
15345         (add_columns): read allow-outside-line to make sure no texts stick
15346         out.
15347         (solve): Simple_spacer::is_active() only determines
15348         satisfies_constraints_ for non-ragged typesetting.
15349
15350         * lily/simultaneous-music.cc (to_relative_octave): only set
15351         old_relative_used if return pitch actually changed.
15352
15353         * scm/define-context-properties.scm
15354         (all-user-translation-properties): change to match implementation.
15355
15356         * python/lilylib.py: Replace re.match by re.search and adds "-c
15357         showpage" to the gs command line (Johannes Schindelin)
15358
15359         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15360         before processing. Prevents crash when inf is in the extent.
15361
15362         * scm/define-markup-commands.scm (note-by-number): add "s" to
15363         "noteheads-" glyphname.
15364  
15365         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15366         music function as well.
15367         
15368 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15369
15370         * VERSION: release 2.5.2
15371
15372         * Documentation/user/changing-defaults.itely (Creating titles):
15373         add breakbefore variable.
15374
15375         * lily/paper-book.cc (set_system_penalty): new function. Set
15376         penalty_ based on breakBefore setting
15377
15378         * lily/context-specced-music-iterator.cc (construct_children):
15379         interpret special context id $uniqueContextId 
15380
15381         * lily/context.cc (create_unique_context): new method. Move
15382         creation of unique (\new) contexts into interpreting phase. This
15383         makes
15384
15385           foo= \new Staff ..
15386           << \foo \foo >>
15387
15388         produce 2 staves.
15389         
15390
15391         * scm/define-music-properties.scm (all-music-properties): add
15392         quoted-voice-direction
15393
15394         * ly/music-functions-init.ly: killCues function.
15395
15396         * scm/music-functions.scm (cue-substitute): move creation of voice
15397         contexts further to the back. 
15398
15399 2004-11-25  Werner Lemberg  <wl@gnu.org>
15400
15401         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15402         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15403
15404 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15405
15406         * buildscripts/guile-gnome.sh: Fixed typo.
15407
15408 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15409
15410         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15411
15412         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15413
15414         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15415         to regular engraver. 
15416
15417 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15418
15419         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15420
15421 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15422
15423         * scm/define-markup-commands.scm (fill-line): Typo.
15424
15425         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15426         and newer.
15427
15428 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15429
15430         * ly/dynamic-scripts-init.ly: Fixed typo.
15431
15432 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15433
15434         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15435         note-head, to have different attachment points for up and down.
15436
15437         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15438
15439         * mf/feta-generic.mf (else): remove solfa.
15440
15441         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15442
15443         * scm/define-context-properties.scm
15444         (all-user-translation-properties): add shapeNoteStyles property.
15445
15446         * lily/shape-note-heads-engraver.cc (process_music): new file.
15447
15448         * lily/event.cc (transpose): call Event::transpose() for
15449         transposing the tonic.
15450
15451 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15452
15453         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15454         Unicode/OpenType and AFM.
15455
15456         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15457
15458 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15459
15460         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15461
15462         * lily/context.cc (Context): unprotect key from ctor.
15463
15464         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15465         is '()
15466         (stack-stencils): idem.
15467
15468         * Documentation/user/changing-defaults.itely (Creating titles):
15469         document new title layout options.
15470
15471         * lily/parser.yy (lilypond_header_body): copy previous
15472         $globalheader if present.
15473
15474         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15475         ly:module-copy
15476         
15477         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15478
15479         * scm/titling.scm: remove old titling functions
15480
15481         * lily/stencil.cc (translate): remove absolute dimension.
15482
15483         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15484         via markup.
15485
15486         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15487         field from user-supplied markup
15488
15489         * scm/define-markup-commands.scm (on-the-fly): new markup
15490         command. Enter SCM markup procedure directly in Scheme.
15491         (fromproperty): new markup command. Read markup from props argument.
15492
15493         * scm/titling.scm (marked-up-title): create title via
15494         user-specified markup. 
15495
15496         * scm/define-markup-commands.scm (column): remove empty stencils
15497         from column.
15498
15499         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15500         not have side-effect of creating variable stub.
15501
15502         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15503
15504 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15505
15506         * scm/encoding.scm (coding-alist): 
15507         * scm/font.scm (add-ec-fonts):
15508         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15509         Extended-TeX-Font-Encoding---Latin.
15510
15511         * lily/side-position-interface.cc (general_side_position): Add
15512         actual offset to error message (avoid constant error messages).
15513
15514         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15515         block.
15516
15517         * lily/font-select.cc (select_encoded_font)
15518         (get_font_by_mag_step, get_font_by_design_size): 
15519         * lily/modified-font-metric.cc (Modified_font_metric): 
15520         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15521
15522         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15523         (read-encoding-file): Bugfix: do not require space after bracket.
15524
15525         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15526         these do not exist.
15527
15528 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15529
15530         * Documentation/user/notation.itely: added info about typesetting
15531         boxed bar numbers.
15532
15533 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15534
15535         * flower/interval.cc (T_to_string): gcc4 fixes.
15536
15537         * scm/define-markup-commands.scm (fill-line): use
15538         stack-stencils. This fixes problems with putting already centered
15539         stencils in a line.
15540
15541         * VERSION: release 2.5.1
15542
15543         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15544
15545 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15546
15547         * input/example-[1-3].ly: simplify.
15548
15549         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15550
15551         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15552         show glyphs.
15553
15554         * scm/encoding.scm (decode-byte-string): new function.
15555
15556         * scripts/convert-ly.py (conv): add warning about
15557         set-global-staff-size.
15558
15559         * Doxyfile: add. 
15560
15561         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15562         (conv): warn for TextSpanner split.
15563         (conv): warn for textheight.
15564
15565 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15566
15567         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15568         building the documentation, info with images are installed.
15569         (final-install): Fix description.  Mention sourcing of login
15570         scripts (instead of running).
15571
15572 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15573
15574         * Debian lmodern support.  Note that LilyPond will issue warnings
15575         
15576             no such encoding: "FontSpecific"
15577
15578           The font selection mechanism wants to get the encoding from the
15579           font itself, but the idea of lmodern is that it is usable with
15580           different encodings, ie, Lily should get the encoding from the
15581           font tree, rather than the font itself.  This would require some
15582           more work.
15583         
15584         * configure.in: Test for and accept lmodern if EC fonts not found.
15585
15586         * scm/framework-tex.scm (font-load-command): TeX font name
15587         mangling for latin1 encoded cork-lm fonts.
15588         (convert-to-ps): Load lm.map if available.
15589
15590         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15591         available.
15592
15593         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15594
15595         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15596         available.
15597
15598         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15599         path for absolute file name, that is silly.
15600
15601         * lily/score-engraver.cc (initialize): 
15602
15603         * Documentation/user/GNUmakefile (local-install-info): Invoke
15604         install-info --remove first.
15605
15606         * #include cleanup (Andreas Scherer).
15607
15608 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15609
15610         * input/test/script-abbreviations.ly: fix typos.
15611
15612 2004-11-17  Werner Lemberg  <wl@gnu.org>
15613
15614         * python/lilylib.py (options_help_str): Support pretty-printing of
15615         newlines in fourth element of option description.
15616
15617         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15618         feature.
15619         Sort options.
15620
15621         * Documentation/user/lilypond-book.itely: Finish update.
15622
15623 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15624
15625         * Documentation/user/macros.itexi: Add comment about \command.
15626
15627         * Documentation/user/lilypond.tely:
15628         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15629         and lilypond-book nodes, so that `info lilypond' visits the manual
15630         at top level, and `info lilypond-book' visits the lilypond-book
15631         section.
15632
15633         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15634         and packager messages.
15635
15636         * lily/pangofc-afm-decoder.cc: Update test.
15637
15638 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15639
15640         * scm/lily-library.scm (char->unicode-index): New function.
15641
15642         * scm/output-gnome.scm: 
15643         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15644
15645         * Proper naming of file name throughout; s/filename/file[-_]name/.
15646
15647         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15648
15649         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15650
15651 2004-11-16  Werner Lemberg  <wl@gnu.org>
15652
15653         * scripts/lilypond-book.py: The Lord has commanded me to use only
15654         tabs for indentation.  Your humble servant obeys.
15655
15656 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15657
15658         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15659         including font, if LilyPond-feta font is only feta font in path.
15660
15661         * scm/output-gnome.scm (text): Revert to file name of font if font
15662         has no name.  Fixes ec font selection.
15663         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15664
15665         * scm/framework-svg.scm:
15666         * scm/output-svg.scm: New file.  TODO: figure out how to
15667         do character by index in font.
15668
15669         * scm/output-sodipodi.scm: Remove.
15670
15671         * scm/output-ps.scm (stem): Remove.
15672
15673 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15674
15675         * scm/output-gnome.scm (beam): New function.
15676         (slur): Round corners.
15677         (round-filled-box): Round corners.
15678
15679 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15680
15681         * scm/output-gnome.scm (beam): add function.
15682         (draw-line): new routine.
15683         (dashed-line): stub; call draw-line
15684         (polygon): new routine.
15685
15686 2004-11-15  Werner Lemberg  <wl@gnu.org>
15687
15688         * Documentation/user/lilypond-book.itely: Revise section on
15689         lilypond-book options.
15690         Other minor fixes.
15691
15692         * scripts/lilypond-book.py: Change indentation to 4.
15693         Minor formatting.
15694
15695 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15696
15697         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15698         grobs that have tweaks specced.
15699         
15700 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15701
15702         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15703
15704 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15705
15706         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15707         actual char #, not 0 based index.
15708
15709         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15710
15711         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15712         Warning: do make -C mf clean.
15713
15714         * lily/context-property.cc: Compile fix.
15715
15716         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15717         Grok ec-fonts, braces and dynamics.
15718
15719         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15720
15721 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15722
15723         * lily/include/tweak-registration.hh: new file.
15724
15725         * lily/tweak-registration.cc: new file.
15726
15727         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15728         saving tweaks.
15729
15730         * scm/output-gnome.scm (text): comment dribble.
15731
15732 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15733
15734         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15735
15736         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15737         path-def before using.  Fixes muchtomany slurs in wrong places
15738         bug.
15739
15740 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15741
15742         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15743
15744         * lily/include/object-key-undumper.hh (Module): new file.
15745
15746         * lily/object-key-undumper.cc (Module): New file. Deserialize
15747         keys. SCM bindings
15748
15749         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15750         Provide SCM bindings.
15751
15752         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15753         new file. Serialize object keys.
15754         
15755         * lily/object-key.cc (dump): new function.
15756         (as_scheme): new virtual function
15757         (undump): new function
15758         (undumpers): new table.
15759
15760         * lily/include/global-context.hh (Context): take \score key upon init.
15761
15762         * lily/object-key-dumper.cc (serialize_key): new file.
15763
15764         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15765
15766         * lily/lily-lexer.cc: remove \quote.
15767
15768         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15769
15770         * lily/context.cc (Context): take key argument in ctor.
15771         (create_context): new function
15772
15773         * lily/grob.cc (Grob): take key argument in ctor.  
15774
15775         * lily/lilypond-key.cc (do_compare): new file.
15776
15777         * lily/object-key.cc (Object_key): new file.
15778
15779         * lily/include/object-key.hh (class Object_key): new file.
15780
15781         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15782
15783 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15784
15785         * Documentation/user/lilypond-book.itely: add small warning about
15786         noindent default in lilypond-book.
15787
15788         * Documentation/user/converters.itely: add examples for convert-ly.
15789
15790         * Documentation/user/examples.itely: change version string in templates
15791         to 2.4.0.
15792
15793 2004-11-12  Karl Hammar  <karl@aspodata.se>
15794
15795         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15796         cmdline, use xargs instead (backportme)
15797
15798 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15799         
15800         * Documentation/user/: Numerous fixes in the user manual.
15801
15802 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15803
15804         * lily/parser.yy (re_rhythmed_music): search music expression for
15805         context-id, surround by \new Voice if not found. Fixes:
15806         addlyrics-second-staff.ly
15807
15808         * VERSION: 2.5.0 released.
15809         
15810 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15811
15812         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15813
15814         * Documentation/user/GNUmakefile: Separate rules for split and
15815         unsplit html documents.  Remove perl massaging.  (backportme)
15816
15817 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15818
15819         * Documentation/user/lilypond-book.itely: add short warning about
15820         \lilypond{} in LaTeX docs.
15821
15822 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15823
15824         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15825         found.  (backportme)
15826
15827         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15828         version requirement.  (backportme)
15829
15830         * configure.in: Be explicit about old versions of
15831         ec-fonts-mtraced.  (backportme)
15832
15833         * lily/context-selector.cc (set_tweaks): New function.
15834         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15835         web with -DTWEAK.
15836
15837         * Documentation/user/introduction.itely (Automated engraving):
15838         Remove fragment option.  Fixes web.
15839
15840         * lily/context-property.cc (make_item_from_properties):
15841         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15842         #ifdef.
15843
15844         * scm/define-context-properties.scm
15845         (all-internal-translation-properties): Add tweakRank and tweakCount.
15846
15847         * lily/grob.cc: 
15848         * scm/define-grob-properties.scm (all-internal-grob-properties):
15849         Add tweak-rank and tweak-count.
15850
15851 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15852
15853         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15854         New function.
15855         (text): Use them.
15856
15857         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15858         animated/opaque grob dragging tweaks.
15859
15860         * buildscripts/guile-gnome.sh: Update.
15861
15862 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15863
15864         * scm/define-grobs.scm (all-grob-descriptions): Added
15865         line-interface to the LigatureBracket object.
15866
15867 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15868
15869         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15870         dragging tweaks.
15871
15872         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15873
15874         * lily/context-selector.cc (store_context): New function.
15875
15876         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15877         (store_grob): New function.
15878         (identify_grob): Add Moment parameter.
15879
15880         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15881         exists.
15882
15883         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15884
15885 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15886
15887         * scm/framework-gnome.scm (item-event): Print grob id.
15888         (save-tweaks): New function.
15889         (tweak): New funtion.
15890         (item-event): Use it, bound to arrow keys.
15891
15892         * lily/context-property.cc (make_item_from_properties): Register grob.
15893         * lily/context.cc (add_context): Register context.
15894
15895         * lily/include/context-selector.hh:
15896         * lily/include/grob-selector.hh:
15897         * lily/context-selector.cc:
15898         * lily/grob-selector.cc: New file.
15899
15900 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15901
15902         * lily/slur.cc: add 'positions to interface
15903
15904         * lily/main.cc: reinstate PS as standard output format. 
15905
15906         * scm/framework-tex.scm (output-preview-framework): print systems
15907         up to first non title system.
15908
15909         * lily/grace-engraver.cc (start_translation_timestep): split
15910         scm_cadddr
15911         
15912 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15913
15914         * lily/quote-iterator.cc (Module): remove old quote-iterator
15915
15916         * scm/define-music-types.scm (music-descriptions): move
15917         NewQuoteMusic over QuoteMusic
15918
15919         * Documentation/user/notation.itely (Formatting cue notes): use
15920         \cueDuring.
15921
15922         * lily/new-quote-iterator.cc (quote_ok): new function.
15923
15924         * input/regression/quote-cue-during.ly: new file.
15925
15926         * input/regression/quote-grace.ly: new file.
15927
15928         * scm/define-context-properties.scm (Module): change definition of
15929         graceSettings
15930
15931         * lily/context-property.cc (Module): rename from
15932         translator-property.cc
15933
15934         * lily/context.cc (context_name_symbol): new function
15935
15936         * lily/grace-engraver.cc: new file. Set properties for grobs based
15937         on the grace-ness of now_moment().
15938
15939         * scm/music-functions.scm (add-grace-property): use list
15940         iso. vector for graceSettings
15941         remove set-{start,stop}-grace-properties. 
15942
15943         * lily/new-quote-iterator.cc (construct_children): set
15944         quote_outlet_ if no quoted-context-{id,type} specified.
15945
15946         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
15947
15948         * lily/parser.yy (command_element): remove \quote.
15949
15950         * ly/music-functions-init.ly (location): add quoteDuring music
15951         function. 
15952
15953         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
15954         optional semicolon. (backportme)
15955
15956 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15957
15958         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
15959         need to link to GUILE et al.
15960
15961 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15962
15963         * scm/define-music-properties.scm (all-music-properties): add
15964         quoted-context-type, quoted-context-id.
15965
15966         * scm/lily.scm (type-check-list): new function.
15967         
15968         * scm/lily-library.scm: new file. Generic library routines.
15969
15970         * lily/parser.yy (Generic_prefix_music): move typechecking out of
15971         parser.
15972
15973         * ly/music-functions-init.ly: add quoteDuring function.
15974
15975         * lily/include/music-iterator.hh (class Music_iterator): rename
15976         set_translator -> set_context
15977
15978         * lily/parser.yy (Generic_prefix_music_scm): add
15979         MUSIC_FUNCTION_SCM_SCM_MUSIC
15980
15981         * scm/lily.scm (sanitize-command-option): new function. (backportme)
15982
15983         * scm/framework-tex.scm (header): sanitize TeX paper size.
15984         (backportme)
15985
15986 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15987
15988         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
15989
15990         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
15991
15992         * scm/framework-tex.scm (font-load-command): Use T1 if no
15993         font-encoding set.  (backportme)
15994
15995         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
15996         exists before converting.  (backportme)
15997
15998         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
15999         exists before converting.  (backportme)
16000         (convert-to-ps): Remove .ps file if it exists before
16001         converting.  (backportme)
16002
16003         * lily/lexer.ll: Remove extra progress newline, use present tense.
16004
16005         * scm/paper.scm (paper-alist): public.
16006         * scm/framework-tex.scm (convert-to-ps):
16007         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16008         command line.
16009
16010 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16011
16012         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16013
16014         * lily/recording-group-engraver.cc (derived_mark): mark
16015         now_events_. (backportme)
16016
16017 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16018
16019         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16020
16021         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16022         invoking latex. (backportme.)
16023
16024         * lily/stem.cc (off_callback): center stems for all rest stems.
16025
16026 2004-11-05  Werner Lemberg  <wl@gnu.org>
16027
16028         * Documentation/user/lilypond.tely: Add more guidelines for writing
16029         lilypond texinfo documents.
16030
16031 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16032
16033         * Documentation/index.html.in: remove <hr>.
16034
16035         * THANKS: change 2.3 to 2.4.
16036
16037 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16038
16039         * scm/output-gnome.scm: More fontconfig comment.
16040
16041 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16042
16043         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16044         <package> directory in $(builddir)/share according with
16045         PACKAGE_NAME defined in the VERSION file.
16046
16047 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16048
16049         * lily/beam.cc (rest_collision_callback): use local beam
16050         multiplicity.
16051
16052         * input/regression/stem-stemlet.ly: new file.
16053
16054         * lily/stem.cc (add_head): store rests as well.
16055
16056         * scm/define-grob-properties.scm (all-user-grob-properties): add
16057         stemlet-length
16058
16059         * lily/stem.cc: store rests as well.
16060         
16061         * input/regression/new-slur.ly: mention forcing.
16062
16063 2004-11-04  Werner Lemberg  <wl@gnu.org>
16064
16065         * Documentation/user/*: A new round of layout fixes and document
16066         structure cleanup.
16067
16068 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16069
16070         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16071
16072 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16073
16074         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16075
16076 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16077
16078         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16079
16080         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16081
16082         * lily/main.cc (main): Invoke identify.
16083
16084         * scm/lily.scm (postscript->pdf): Remove progress newline.
16085         Write progress to stderr.
16086
16087         * lily/paper-book.cc (output): Remove progress newline.
16088
16089         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16090         gettext on user messages, and remove whitespace.
16091
16092         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16093
16094         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16095         argv[0] (Thomas Scharkowski).
16096
16097         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16098         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16099         for ec-fonts-mtraced.
16100
16101         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16102         --srcdir build (Bertalan).
16103
16104         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16105         headers and library too (Laura Conrad).
16106
16107         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16108         package for guile too (Laura Conrad).
16109
16110         * lily/main.cc (usage): Typo.
16111
16112 2004-11-02  Werner Lemberg  <wl@gnu.org>
16113
16114         * Documentation/user/notation.ly: More fixes to improve appearance.
16115
16116         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16117         better output for multicolumn tables.
16118
16119 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16120
16121         * lily/main.cc (dir_info): Fixed typo in the printouts.
16122
16123 2004-11-01  Werner Lemberg  <wl@gnu.org>
16124
16125         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16126         of output.
16127         Set `per_line' to 2; replace hard-coded value with it.
16128
16129         * Documentation/user/*: Many fixes to improve appearance of
16130         printed manual.
16131
16132 2004-11-01  Werner Lemberg  <wl@gnu.org>
16133
16134         * Documentation/user/changing-defaults.itely,
16135         Documentation/user/notation.ly,
16136         Documentation/user/programming-interface.itely: Use @/.
16137         Fix formatting of some lilypond snippets and tables.
16138
16139         * scripts/lilypond-book.py (compose_ly): Provide useful default
16140         for LINEWIDTH in `override'.
16141
16142 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16143
16144         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16145
16146 2004-10-31  Werner Lemberg  <wl@gnu.org>
16147
16148         Resetting @exampleindent to `5' gives ugly results with texinfo's
16149         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16150         (if not quoting) to change @exampleindent only locally.
16151
16152         * scripts/lilypond-book.py (NOQUOTE): New variable.
16153         (output) [LATEX]: Remove AFTER and BEFORE.
16154         [TEXINFO]: Remove AFTER and BEFORE.
16155         Fix QUOTE and VERBATIM pattern.
16156         Add NOQUOTE pattern.
16157         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16158         and BEFORE.
16159         [output_texinfo]: Use NOQUOTE.
16160
16161 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16162
16163         * Documentation/user/changing-defaults.itely: clarify paper
16164         size commands with correct info.
16165
16166         * Documentation/user/lilypond-book.itely: add more docs for
16167         filename extensions.
16168
16169 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16170
16171         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16172         (PATCH_LEVEL): start 2.5.0.
16173
16174 #Local variables:
16175 #coding: utf-8
16176 #End:
16177