]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
(self_align_callback): oops: use
[lilypond.git] / ChangeLog
1 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * lily/break-align-interface.cc (self_align_callback): oops: use
4         loop variable in guard.
5
6         * input/regression/repeat-percent-grace.ly: new file.
7
8         * lily/percent-repeat-engraver.cc (start_translation_timestep):
9         remember first currentCommandColumn of a grace run. Fixes issue 70.
10
11         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
12         move class definition to CC file.
13
14         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
15
16         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
17         measure-long  repeats.
18
19         * flower/include/international.hh: include stdarg.h
20
21 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
22
23         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
24         put_systems_on_pages to return an empty result, we need to assign
25         demerits properly in that case.
26         (put_systems_on_pages): Make the number of pages depend on the
27         evenness of page_number. Add auto-first-page-number.
28         (calc_subproblem): ensure that the page-number is even for the
29         left-hand page. Warn if the first page-turn doesn't fit onto the
30         first (right-hand) page.
31
32         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
33         (min_page_count): make this publicly accessible
34         (min_page_count): fix a bug when there are forced page breaks that
35         was introduced when I made this loop run backwards
36         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
37         replace space_systems_on_min_pages with these two. The logic in
38         space_systems_on_min_pages was getting too convoluted and is better
39         contained in page-turn-page-breaking.
40
41         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
42         conditional
43         (breakable_column): typo
44
45         * lily/source-file.cc (get_line): fix off-by-one error
46         and clean up some of the logic
47
48 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
49
50         * lily/page-breaking.cc (make_pages): honour the first-page-number
51         property
52
53 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
54
55         * VERSION (PACKAGE_NAME): bump version.
56
57 2006-09-26  Pal Benko  <benko.pal@gmail.com>
58
59         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
60         (the latter is the same as petrucci-f which is kept for compatibility)
61
62 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
63         
64         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
65
66 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
67
68         * lily/global-context.cc (run_iterator_on_me): break out of loop
69         if moment doesn't increase.
70
71         * scm/define-grob-properties.scm (all-user-grob-properties): add
72         forced property.
73
74         * lily/accidental.cc (after_line_breaking): read forced property.
75
76         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
77         property.
78
79         * input/regression/accidental-forced-tie.ly:  new file.
80
81 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
82
83         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
84
85         * lily/figured-bass-engraver.cc: only listen to rest events if
86         ignoreFiguredBassRest is not set.
87
88         * scm/define-context-properties.scm
89         (all-user-translation-properties): add ignoreFiguredBassRest property
90
91 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
92
93         * lily/paper-book.cc (get_system_specs):
94         (set_system_penalty): fix breakbefore.
95         We used to set a penalty on the system after the break, now we
96         set a permission on the system before the break
97
98         * lily/grob-property.cc: add scm debugging hooks into
99         property modification
100
101         * lily/context-property.cc:
102         * lily/engraver.cc:
103         rename make_foo_from_properties to internal_make_foo and
104         move it from context-property.cc to a member function of
105         Engraver.
106         
107         * lily/include/lily-guile-macros.hh:
108         overload ly_symbol2scm macro so that there is no more need
109         to use internal_foo
110
111         * lily/volta-repeat-iterator.cc:
112         * lily/tweak-engraver.cc:
113         * lily/tuplet-bracket.cc:
114         * lily/span-bar-engraver.cc:
115         * lily/script-engraver.cc:
116         * lily/prob-scheme.cc:
117         * lily/pointer-group-interface.cc:
118         * lily/parser.yy:
119         * lily/grob-scheme.cc:
120         * lily/grob-property.cc:
121         * lily/context.cc:
122         * lily/context-property.cc:
123         * lily/break-substitution.cc:
124         * lily/break-align-engraver.cc:
125         * lily/axis-group-interface.cc:
126         * lily/align-interface.cc:
127         remove calls to internal_FOO
128
129         * lily/system-start-delimiter-engraver.cc:
130         * lily/parenthesis-engraver.cc:
131         * lily/accidental-engraver.cc:
132         remove calls to make_foo_from_properties
133
134 2006-09-23  Graham Percival  <gpermus@gmail.com>
135
136         * Documentation/user/programming-iterfaces.itely: fix
137         def-music-function -> define-music... leftover.
138
139 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
140
141         * lily/page-spacing.cc (min_page_count): by running the loop
142         backwards, we can calculate ragged_last properly.
143
144 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
145
146         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
147         printfirst-page-number -> print-first-page-number
148
149         * python/convertrules.py: corresponding rule.
150
151         * Documentation/user/page.itely (Page formatting): Document the
152         default values of all page layout parameters. 
153
154 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
155
156         * lily/lexer.ll: remove limitation on music function arity. New
157         mode extratoken, which inserts extra EXPECT_* tokens after
158         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
159
160         * lily/parser.yy: Change grammar for music function accordingly.
161
162         * lily/include/lily-parser.hh: New method get_state, new member
163         hidden_state. Works around a problem when parser fetches
164         MUSIC_FUNCTION token but not the following EXPECT_* token.
165
166         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
167         remove try_music
168
169         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
170         references to Music; use ASSIGN_EVENT_ONCE everywhere
171
172         * lily/grob-info.cc: junk *music_cause
173
174         * lily/music.cc: copy eventified articulations to stream event
175
176         * lily/part-combine-iterator.cc: Cleanup using enums
177
178         * lily/translator-group.cc: Junk OldMusicEvent, and associated
179         methods
180
181         * lily/include/engraver.hh: Junk music.hh include
182
183         * lily/stream-event.cc: Changed constructors
184
185 2006-09-21  Graham Percival  <gpermus@gmail.com>
186
187         * Documentation/user/tweaks.itely (Fitting music onto fewer
188         pages): change settings to avoid warning messages.
189
190 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
191
192         * Documentation/user/tweaks.itely (Fitting music onto fewer
193         pages): Add between-system-space setting. 
194
195 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
196
197         * lily/accidental-placement.cc (calc_positioning_done): don't
198         trigger Y-extent calculation too early. Use pure_height instead.
199
200         * lily/scale.cc (LY_DEFINE): new file. 
201
202 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
203
204         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
205         that happen at the start of a score: having a zero-length
206         chunk was messing up min_system_count calculations.
207
208         * lily/source-file.cc (get_line): lower_bound, not
209         binary_search. Fixes problem where point-and-click would
210         always point to the first line.
211
212 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
213
214         * lily/accidental-placement.cc (calc_positioning_done): also put
215         stems into accidental support. 
216
217         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
218         event_ detected.
219
220         * scm/script.scm (default-script-alist): avoid-slur and
221         slur-padding for portato script.
222
223         * lily/stem-tremolo.cc (translated_stencil): new function. 
224         (height): use new function. Fixes tremolos on whole notes.
225
226         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
227         slur found.
228
229 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
230
231         * scripts/abc2ly.py (try_parse_comment): idem.
232
233         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
234         bar_string iso. string.find()
235
236         * lily/*.cc: idem.
237
238         * lily/slur.cc (get_curve): always use scm_is_pair() looping
239         scheme lists.  
240
241 2006-09-18  Graham Percival  <gpermus@gmail.com>
242
243         * Documentation/user/basic-notation.itely: add bug
244         warning about ties and octavation/clef.
245
246 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
247
248         * VERSION (PACKAGE_NAME): release 2.9.18
249
250 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
251
252         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
253         figure out midi file names right here.
254         
255 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
256
257         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
258
259         * scm/backend-library.scm: option naming:  gs-font-load*s*
260
261         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
262         include-eps-fonts
263
264 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
265
266         * scm/define-music-types.scm (music-descriptions): remove
267         BreakEvent and fix {Page,Line}{Break,Turn}Event so
268         Music::to_event doesn't complain.
269
270         * lily/accidental-placement.cc (ape_compare):
271         * lily/semi-tie.cc (compare): 
272         * lily/note-column.cc (shift_compare): replace by XXX_less
273
274         * lily/tie-formatting-problem.cc (set_chord_outline): 
275         * lily/tie-column.cc (calc_positioning_done): 
276         * lily/system.cc (post_processing)
277         (get_paper_system): 
278         * lily/stem.cc (note_head_positions)
279         (calc_positioning_done): 
280         * lily/spanner.cc (do_break_processing)
281         (find_broken_piece): 
282         * lily/span-bar.cc (print): 
283         * lily/semi-tie-column.cc (calc_positioning_done): 
284         * lily/rest-collision.cc (calc_positioning_done): 
285         * lily/program-option.cc (get_help_string): 
286         * lily/note-collision.cc (get_clash_groups):
287         * lily/new-fingering-engraver.cc (position_scripts):
288         * lily/keyword.cc (Keyword_table):
289         * lily/hara-kiri-group-spanner.cc (request_suicide):
290         * lily/grob-pq-engraver.cc (stop_translation_timestep):
291         * lily/accidental-placement.cc (calc_positioning_done):
292         (stagger_apes):
293         * lily/beam.cc (get_beam_segments):
294         * lily/grob-array.cc (remove_duplicates):
295         use new vector_sort
296         
297         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
298         ragged-last-bottom = ##f (test the new page breaker)
299
300         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
301
302         * scm/define-context-properties.scm
303         (all-internal-translation-properties): remove properties that
304         were used to communicate page-turn stuff to the paper-column
305         engraver.
306
307         * lily/lily-guile.cc (robust_scm2string): new function
308
309         * lily/paper-column-engraver.cc: Clean up page turn stuff
310
311         * lily/page-turn-engraver.cc: Re-write the page turn logic here
312         instead of cluttering up paper-column-engraver.cc
313
314 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
315
316         * scm/layout-page-dump.scm (scm): export utility function names,
317         to allow user writing cutsom dumping functions.
318
319         * scm/layout-page-layout.scm: export utility function names to
320         enable custom page breaking function writing. Tabify.
321         (line-next-space): use ?-suffix only for predicates
322         (page-maximum-space-to-fill): new function. Return the space
323         between first and bottom system of a page, to give to
324         space-systems.
325         (space-systems): use a space-to-fill argument (for instance as
326         computed by page-maximum-space-to-fill) instead of computing
327         internaly this space with the page height. That way, the caller
328         can adjust the space to use.
329         (make-page-from-systems, walk-paths): compute space to fill before
330         calling space-systems.
331
332 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
333
334         * scm/script.scm (default-script-alist): set paddings for every
335         type here, increase for portato mark.
336
337         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
338         -dinclude-eps-fonts
339
340 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
341
342         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
343         use spanner::set-spacing-rods
344
345         * lily/note-column.cc: reformat.
346
347         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
348         step positioning for note/rest combinations.
349
350         * input/regression/rest-note-collision.ly: new file.
351
352         * scm/define-grobs.scm (all-grob-descriptions): add
353         springs-and-rods
354
355         * flower/include/std-vector.hh: switch off again.
356
357         * VERSION (PATCH_LEVEL): bump to 2.9.18
358
359         * flower/include/std-string.hh: idem.
360
361         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
362
363 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
364
365         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
366         PianoStaff. 
367
368 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
369
370         * Documentation/user/page.itely: update page breaking documentation
371
372 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
373
374         * lily/note-collision.cc (calc_positioning_done): only access
375         first head if available.
376
377         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
378
379         * scm/framework-ps.scm (output-preview-framework): use new name.
380
381         * lily/program-option.cc (internal_set_option): use new names.
382
383         * Documentation/user/SConscript (lilypond_book_flags): update -d
384         variable names.
385
386         * Documentation/user/lilypond-book.itely (Inserting LilyPond
387         output into other programs): new variable names.
388
389         * scm/lily.scm (define-scheme-options): uniformize var names.
390
391         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
392         tuplets_ is non-empty before popping.
393
394 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
395
396         * lily/spanner.cc (find_broken_piece): 
397         * lily/spacing-spanner.cc (get_columns): 
398         * lily/source-file.cc (get_line): 
399         * lily/simple-spacer.cc (get_column_description): 
400         * lily/keyword.cc (lookup): 
401         use the new binary search.
402
403         * flower/include/std-vector.hh: replace binary_search with
404         a more STL-like version
405
406 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
407
408         * lily/tie-performer.cc: remove unused last_event_ property.
409         (class Tie_performer): add now_tied_heads_ property for
410         partially-tied heads.
411         (acknowledge_audio_element): when adding an Audio_note, put the
412         note in now_tied_heads_ if the audio note is partially tied.
413         (stop_translation_timestep): always include entries in
414         now_tied_heads_ in heads_to_tie_.
415
416         * lily/drum-note-performer.cc (process_music): look for tie-events
417         in the articulations; pass to Audio_note constructor.
418
419         * lily/note-performer.cc (process_music): look for tie-events in
420         the articulations; pass to Audio_note constructor.
421
422         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
423         constructor.
424
425         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
426         include initializer in constructor.
427
428 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
429
430         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
431         unless they are breakable. This fixes discrepancies between the forces
432         calculated here and the forces calculated in get_line_configuration.
433
434         * lily/grob.cc (pure_relative_y_coordinate): fix some
435         mis-estimation that was happening with piano staves.
436
437         * lily/constrained-breaking.cc (resize): don't choke if we get a
438         measure that won't fit on a line.
439         (combine_demerits): don't consider uniformity when ragged
440
441         * lily/page-spacing.cc (solve): why the f* were there two of these?
442         (calc_subproblem): properly handle the case where a system is taller
443         than the page.
444
445         * lily/system.cc (get_paper_system): ensure that all the permissions
446         and penalties are passed to the paper systems.
447
448         * lily/page-breaking.cc (create_system_list): support system-count.
449
450         * scm/define-grobs.scm (pure-print-callbacks): add
451         ly:script-interface::print
452
453         * lily/page-spacing.cc (min_page_count): fix calculation of min
454         pages if we are ragged and there are non-zero springs.
455
456         * scm/layout-page-layout.scm: if the pure-height estimates are under
457         the real height, allow space-systems to ignore padding if it is
458         needed in order to fit the systems on one page
459
460         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
461         ragged properties
462         (solve): fix performance problem. Make sure we always get at least
463         one solution
464
465         * lily/page-breaking.cc (make_pages): include write-page-breaks
466         and page-stencil
467
468         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
469
470         * scm/define-grobs.scm: add the new slur-callback
471         fix pure-relevant to not exclude grobs whose extent is already
472         calculated
473
474         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
475         page breaker
476
477         * lily/slur.cc (pure_height): new callback to estimate the height
478         of a slur
479
480 2006-09-02  Graham Percival  <gpermus@gmail.com>
481
482         * Documentation/user/invoking.itely: small update on
483         MacOS X notes; thanks Trevor!
484
485 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
486
487         * VERSION (MY_PATCH_LEVEL): release 2.9.17
488
489         * lily/lexer.ll: accept EOF in all states.
490
491         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
492
493         * lily/source-file.cc (Source_file): always 0-terminate character
494         array, to prevent Flex from barfing.
495
496         * lily/global-context.cc (get_output): robustness: don't crash if
497         no Score context found.
498
499         * lily/include/book.hh (class Book): idem.
500
501         * lily/include/context-def.hh (struct Context_def): idem.
502
503         * lily/include/score.hh (class Score): don't derive from Input.
504
505         * lily/book.cc (Book): add a copy ctor. 
506
507         * buildscripts/output-distance.py (FileLink.calc_distance): count
508         orphans in distance too.
509
510         * python/midi.c (midi_parse_track): robustness: don't read past
511         end of string.
512
513         * ly/performer-init.ly: add Control_track_performer, move
514         Tempo_performer and Time_signature_performer to Score.        
515
516         * lily/score-performer.cc (acknowledge_audio_elements): override
517         from base class: add to audio-columns
518
519         * lily/control-track-performer.cc (add_text): new file: generate
520         the control track.
521
522         * lily/performance.cc: move output_header_track to
523         Control_track_performer ()
524
525         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
526
527         * lily/include/midi-item.hh (class Midi_channel_item): insert
528         class into hierarchy, for items that can have a channel setting. Dehungarify.
529
530         * lily/include/performer.hh (class Performer): remove
531         play_element();  move functionality into announce/acknowledge.
532
533         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
534
535         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
536         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
537
538 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
539
540         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
541         ambituses.
542
543         * lily/all-font-metrics.cc: remove TFM support.
544
545         * lily/include/tfm.hh: remove TFM support, TFM reader.
546
547         * lily/include/binary-source-file.hh: remove Binary_source_file.
548
549 2006-08-27  Graham Percival  <gpermus@gmail.com>
550
551         * Documentation/topdocs/NEWS.itely: add @c marker for
552         stuff I've processed.
553
554         * Documentation/user/ various: info from NEWS.
555
556 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
557
558         * lily/paper-column-engraver.cc (finalize): Oops, this change
559         should have gone in on 2006-08-23
560
561 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
562
563         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
564         quotes to quote arguments. Fixes Windows problem.
565
566         * python/lilylib.py (progress): idem
567
568 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
569
570         * scripts/musicxml2ly.py: fix for importing
571         minor key signatures from MusicXML.  (Phillip Kirlin)
572
573 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
574
575         * python/musicxml.py: 
576         (Attributes.get_key_signature): now correctly retrieves mode from 
577         MusicXML. 
578
579 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
580
581         * lily/parser.yy (output_def_body): take ownership of identifier
582         back to C++.
583
584         * Documentation/user/advanced-notation.itely (Metronome marks):
585         update use of \tempo in \midi.
586
587         * VERSION: release 2.9.16
588         
589 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
590
591         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
592         web partially)
593
594 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
595
596         * input/regression/tie-chord-partial.ly: clarify example.
597
598         * scm/define-music-properties.scm (all-music-properties): remove
599         untied.
600
601         * ly/music-functions-init.ly: remove \untied.
602
603         * lily/tie-engraver.cc (struct Head_event_tuple): store both
604         stream events and music events.
605         (stop_translation_timestep): search acknowledged heads for
606         tie-event.
607
608         * input/regression/tie-chord-partial.ly: new file.
609
610         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
611         for \char markup command.
612
613         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
614
615         * scm/define-music-types.scm (music-descriptions): consistency:
616         Use solo-{one,two}-event iso. solo-[12]-event.
617
618         * lily/part-combine-engraver.cc (process_music):
619         Use solo-{one,two}-event iso. solo-[12]-event.
620
621         * ly/declarations-init.ly (partCombineListener): add Timing as
622         alias
623
624         * flower/std-string.cc (string_copy): use copy ()
625
626         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
627
628 2006-08-24  Graham Percival  <gpermus@gmail.com>
629
630         * Documentation/user/changing-defaults.itely, global.itely,
631         lilypond-book.itely, page.itely: minor changes from mailist.
632
633 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
634
635         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
636         snippet-map
637
638         * scm/define-context-properties.scm
639         (translator-property-description): robustness: detect type errors
640         in property definitions.
641
642         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
643         after getting it from SCM. 
644
645         * lily/smobs.cc (protect_smob): switch off fancy smob protection
646         for now. 
647
648         * lily/include/performer.hh (class Performer): strip get_tempo()
649         method.
650
651         * lily/midi-def.cc: strip file.
652
653         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
654
655         * lily/include/context-def.hh (struct Context_def): use
656         VIRTUAL_COPY_CONSTRUCTOR().
657
658         * lily/source-file.cc: smobification.
659
660         * lily/include/source-file.hh (class Source_file): smobify
661         Source_file. Trim redundant members.
662
663         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
664         clones after creation. This plugs a huge memory leak.
665
666         * python/convertrules.py (FatalConversionError.sub_tempo):
667         complete rule for \midi{ \tempo }
668
669         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
670
671         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
672
673 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
674
675         * input/regression/optimal-page-breaking-hstretch.ly: test for
676         ragged-last-bottom also
677
678         * lily/paper-column-engraver.cc (finalize): make the end of a score
679         breakable by default. This is to balance out a change in behaviour
680         of the page-turn-breaker which no longer makes the end of a score
681         breakable.
682
683         * lily/paper-book.cc (pages): set the systems_ once the pages are
684         broken
685
686         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
687         Page_breaking interface.
688
689         * lily/page-breaking.cc (class Page_breaking): make the interface
690         more consistent and provide abstractions for dealing with
691         Line_divisions.
692
693         * lily/optimal-page-breaking.cc (solve): use a more straightforward
694         algorithm. Use the new interface to Page_breaking.
695
696         * lily/page-spacing.cc: better support for ragged-bottom and
697         ragged-last-bottom
698
699 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
700
701         * python/convertrules.py (conv): warning on \tempo{}
702
703         * ly/performer-init.ly: set tempoWholesPerMinute.
704
705         * ly/midi-init.ly: remove \midi
706
707         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
708         MIDI tempo.
709
710         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
711         tempoUnitDuration for determining what to print.
712
713         * lily/lyric-extender.cc: typo.
714
715         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
716
717         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
718         function.
719
720         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
721
722         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
723         eps-pad-boxes is set.
724
725         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
726
727         * THANKS: update sponsors.
728
729         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
730
731         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
732
733         * input/regression/tie-chord-untied.ly: new file.
734
735         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
736
737         * scm/define-music-properties.scm (all-music-properties): add
738         'untied property.
739
740         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
741         than .ly.txt.
742         (headertext_nopics): sanitize no-examples text.
743
744         * scm/page.scm (make-page-stencil): don't rely on extents of
745         page-stencil. This fixes spurious space around .EPS files produced
746         with the EPS backend.
747
748 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
749
750         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
751
752         * lily/hara-kiri-engraver.cc (process_music): remember
753         keepAliveInterfaces after processing \set
754
755         * lily/lyric-extender.cc (print): support left/right-padding for
756         extenders.
757
758         * scm/documentation-generate.scm (string-append): revert lilypond/
759         path, doc why.
760
761 2006-08-20  Graham Percival  <gpermus@gmail.com>
762
763         * Documentation/user/lilypond.tely: clarification to
764         license presentation (not to actual license).
765
766         * Documentation/user/basic-notation.itely,
767         instrument-notation.itely: minor changes.
768
769         * input/ {regression, test}/+.ly: clarification to
770         text (you can click on examples).  Thanks, Mats!
771
772         * input/manual/bar-lines.ly: adds ||: repeats.
773
774 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
775
776         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
777
778         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
779
780         * Documentation/user/lilypond.tely: strip lilypond/ from info
781         links, rename to category LilyPond
782
783         * lily/pango-font.cc (description_string): new function.
784
785         * VERSION: release 2.9.15
786
787         * lily/spacing-engraver.cc (stop_translation_timestep): use
788         Dscho's fix for spacing spanner. 
789
790         * scm/define-music-types.scm (music-descriptions): use
791         apply-output-event for ApplyOutputEvent
792
793         * lily/output-property-engraver.cc (listen_apply_output): rename
794         from listen_layout_instruction.
795
796         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
797         function protect()
798
799 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
800
801         * scm/lily.scm (lilypond-all): option read-file-list: substitute
802         commandline args with contains, split by \n.
803
804         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
805         write snippet-names file, call with -dread-file-list. Fixes
806         command limitations on 64-bit systems.
807
808         * input/regression/stencil-color-rotation.ly: new file.
809
810         * lily/include/translator.hh (struct Acknowledge_information):
811         revert: don't use Protected_scm in global objects, as GUILE can't
812         handle gc_unprotect from automated destructors on MacOS X.
813  
814         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
815         color, not the original stencil. Fixes combinations of
816         color/transparency/rotation. 
817
818         * scripts/lilypond-book.py (main): add --formats=eps for
819         texinfo/latex.
820
821         * lily/spacing-engraver.cc (stop_translation_timestep): don't
822         crash if spacing_ is nonexistent.
823
824 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
825
826         * scripts/lilypond-book.py (output): Remove obsolete(!?)
827         \catcode`\@=12 in the LaTeX output.
828
829 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
830
831         * scm/define-music-types.scm (music-descriptions):
832         use sustain-event iso. sustain-pedal-event.
833
834 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
835
836         * scripts/convert-ly.py: honour the -n command-line switch
837
838 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
839
840         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
841         break specification.
842
843 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
844
845         * Documentation/user: convert-ly the user manual
846
847 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
848
849         * stepmake/aclocal.m4: version check patch (thanks MWD)
850
851         * ly/music-functions-init.ly: robustness. Don't crash if
852         currentBarNumber is not a number.
853
854         * VERSION (PATCH_LEVEL): bump.
855
856 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
857
858         * stepmake/aclocal.m4: better version check; handle fooX.Y
859         binaries too.
860
861         * ly/performer-init.ly: instrument name fixup.
862
863         * input/manual/chord-names-jazz.ly (banterProperties):
864         instrumentName update
865
866         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
867
868         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
869
870         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
871         function. Use hash tables to check membership.
872
873         * lily/general-scheme.cc (LY_DEFINE): new function.
874
875         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
876
877         * lily/include/translator.hh (struct Acknowledge_information): add
878         Protected_scm
879
880         * ly/music-functions-init.ly: change name to BreathingEvent
881
882         * input/regression/*.ly: apply it.
883
884         * python/convertrules.py (conv): better instrumentName conversion
885         rule.
886
887         * scm/define-music-types.scm (music-descriptions): add
888         line-break-event to LineBreakEvent music
889
890         * lily/music.cc (to_event): don't crash if music type not set.
891
892         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
893         spacing not set.
894
895         * lily/spacing-engraver.cc (stop_translation_timestep): set
896         spacing for proportional notation too.
897
898         * scm/translation-functions.scm (format-bass-figure): inspect
899         stream-event.
900
901         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
902
903 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
904
905         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
906
907         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
908
909         * scm/layout-page-layout.scm (make-page-from-systems): new function
910         (optimal-page-breaks): use the new page-breaking calling convention
911
912         * scm/define-context-properties.scm (all-user-translation-properties):
913         add revokePageTurns
914
915         * lily/paper-column-engraver.cc (stop_translation_timestep): add
916         revokePageTurns  functionality. If there is a special barline within
917         the breakable region, break there instead of at the end of the region.
918
919         * lily/paper-book.cc (pages): use the new page-breaking calling
920         convention
921
922 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
923
924         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
925
926         * scripts/lilypond-book.py: insert \sourcefileline command in
927         output, so lilypond error messages refer to the spot in the
928         original .lytex / .itely sourcefile.
929
930 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
931
932         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
933         space to next column for distance to fixed col.
934
935         * VERSION (PACKAGE_NAME): release 2.9.14
936
937         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
938         if no accidental.
939
940         * lily/accidental-engraver.cc (process_acknowledged): don't create
941         accidental for trill span event. This fixes spurious accidentals
942         on trills.
943
944 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
945
946         * scm/define-grob-properties.scm (all-user-grob-properties):
947         Clarify documentation of side-axis and direction. Thanks to Paul
948         for the inspiration.
949
950         * lily/bar-line.cc: Add documentation for "||:" also in the
951         interface documentation.
952
953 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
954
955         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
956
957         * lily/paper-column.cc (set_system): new function.
958
959         * lily/spacing-engraver.cc (stop_translation_timestep): store
960         SpacingSpanner refs in Paper_column.
961
962         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
963         compute loose clique spacing using GraceSpacing/SpacingSpanner.
964
965 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
966
967         * lily/beam-engraver.cc (listen_beam): add method for
968         Grace_beam_engraver too.
969
970 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
971
972         * python/convertrules.py: Fix indentation bug that broke
973         conversion of files older than 1.3.117.
974         Fix escape error in the description for 2.9.6.
975
976 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
977
978         * lily/*-engraver.cc: convert all try_music functions to listen_*
979         functions.
980
981         * lily/piano-pedal-engraver.cc: some additional cleanups: use
982         enums to represent pedal types, and calculate more data statically.
983
984         * scm/part-combiner.scm (recording-group-emulate): create a
985         softcoded substitute for recording-group-engraver.cc.
986
987         * lily/music.cc: make a common transpose function for events and
988         music
989
990         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
991         ManualMelismaEvent, and obsoletes Melisma_translator.
992
993 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
994
995         * input/test/instrument-name-align.ly: update version.
996
997 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
998
999         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1000         Doc the --pdf flag to lilypond-book.
1001
1002 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1003
1004         * Documentation/topdocs/NEWS.tely (Top): add description.
1005
1006         * input/regression/tuplet-full-length-note.ly: add file.
1007
1008         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1009         always store axis group.
1010
1011 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1012
1013         * input/regression/instrument-switch.ly: new file.
1014
1015         * lily/instrument-switch-engraver.cc (process_music): new file.
1016
1017         * ly/engraver-init.ly: add Instrument_switch_engraver
1018
1019         * ly/music-functions-init.ly: \instrumentSwitch
1020
1021         * scm/define-context-properties.scm
1022         (all-user-translation-properties): add instrumentCueName
1023
1024         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1025
1026 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1027
1028         * ly/music-functions-init.ly: music function \transposition.
1029
1030         * lily/parser.yy (command_element): softcode \transposition.
1031
1032         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1033         (process_music): oops.
1034
1035         * lily/instrument-name-engraver.cc (start_spanner): new
1036         function. Create spanner when property changes.
1037         (stop_spanner): new function.
1038
1039         * python/convertrules.py (conv): add rule.
1040
1041         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1042         shortInstrumentName iso. instr.
1043
1044         * scm/output-ps.scm (dashed-line): add phase argument to
1045         dashed-line.
1046
1047         * lily/bar-line.cc (dashed_bar_line): new function.
1048         (compound_barline): support \bar "dashed". 
1049
1050         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1051         --output=DIR to DIR/BASE if it is a dir. 
1052
1053         * flower/file-name.cc (file_part): new function
1054         (dir_part): new function
1055
1056         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1057
1058         * DEDICATION: update
1059
1060 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1061
1062         * lily/instrument-name-engraver.cc: formatting.
1063
1064         * python/convertrules.py (conv): bugfix for \epsfile.
1065
1066 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1067
1068         * lily/grob.cc:
1069         
1070         * lily/gourlay-breaking.cc: Oops, these should have been included
1071         in my last commit
1072
1073 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1074
1075         * scripts/*.py (program_name): cleanup relocation snippets.
1076
1077         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1078
1079 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1080
1081         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1082         page-breakable by default
1083
1084         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1085         correctly calculated for a single-system page
1086
1087         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1088         bigger than the second number
1089
1090         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1091         acknowledge that we aren't satisfying constraints)
1092
1093         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1094         non-Items
1095
1096         * lily/grob.cc (pure_height): add minimum-Y-extent
1097
1098         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1099         ragged
1100
1101         * lily/constrained-breaking.cc: convert code to use new Matrix class
1102         (get_best_solution): new function
1103
1104         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1105         is a page with no systems
1106
1107 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1108
1109         * VERSION (PACKAGE_NAME): release 2.9.13
1110
1111         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1112         assignment.
1113
1114 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1115
1116         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1117
1118         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1119         function.
1120
1121         * scm/define-grob-properties.scm (all-user-grob-properties):
1122         remove grace-space-factor.
1123
1124         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1125         grace-spacing-interface
1126         (spacing-options-interface): add.
1127
1128         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1129
1130         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1131
1132         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1133         GraceSpacing object.
1134
1135         * lily/note-spacing.cc: fix prop list formatting
1136
1137         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1138         beaming for grace notes too.
1139
1140         * input/regression/spacing-grace.ly: update.
1141
1142         * lily/grace-spacing-engraver.cc: new file.
1143
1144         * lily/spacing-spanner.cc: add strict-grace-spacing.
1145
1146 2006-07-20  Graham Percival  <gpermus@gmail.com>
1147
1148         * lily/parser.yy: compile fix.
1149
1150 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1151
1152         * scm/define-grobs.scm (all-grob-descriptions): typo.
1153
1154         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1155         .eps extension from includegraphics.
1156
1157         * scripts/lilypond-book.py (main): add support for --pdf. 
1158
1159         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1160         callback to compute common shortest duration.
1161         (set_springs): typo.
1162
1163         * scm/define-grob-properties.scm (all-user-grob-properties): add
1164         strict-grace-spacing.
1165
1166         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1167         support float_grace_columns_.
1168
1169         * lily/spacing-options.cc (init_from_grob): new file.
1170
1171         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1172
1173         * input/regression/spacing-loose-grace.ly: new file.
1174
1175         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1176
1177         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1178         tupletFullLengthNote too. Choose right bound depending on value.
1179
1180         * input/regression/tuplet-full-length-note.ly: new file.
1181
1182 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1183
1184         * lily/*-performer.cc: Converted try_music to listen_*
1185
1186         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1187         as a stream-event internally. Introduce event_cause (), deprecate
1188         music_cause ().
1189
1190         * scm/define-music-types.scm: Removed BusyPlayingEvent
1191         
1192 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1193
1194         * Documentation/user/advanced-notation.itely (Font selection):
1195         Document how to get a list of available fonts using 'lilypond
1196         -dshow-available-fonts blabla'.
1197
1198 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1199
1200         * GNUmakefile.in: filter lily-XXX.pdf files.
1201
1202         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1203
1204         * scm/define-grob-properties.scm (all-internal-grob-properties):
1205         remove delta-pitch. Use delta-position everywhere.
1206
1207         * scm/output-lib.scm (fall::print): use new order.
1208
1209         * scm/output-ps.scm (path): reorder arguments.
1210
1211         * scm/output-svg.scm (path): support for path primitive.
1212
1213         * input/regression/bend-after.ly: new file.
1214
1215         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1216         recipe for eps -> pdf conversion.
1217
1218 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1219
1220         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1221         Angelo Contardi.
1222
1223 2006-07-19  Graham Percival  <gpermus@gmail.com>
1224
1225         * input/manual/screech-boink.ly: moved to here.
1226
1227         * input/screech-boink.ly: deleted.
1228
1229         * scm/define-grob-properties.scm: clarify doc string.
1230
1231 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1232
1233         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1234
1235         * scm/output-ps.scm (path): define path.
1236
1237         * scm/define-stencil-commands.scm
1238         (ly:register-stencil-expression): add path.
1239
1240         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1241
1242         * ly/engraver-init.ly: add Fall_engraver
1243
1244         * lily/parser.yy (music_function_event): allow musicfunction
1245         without music arg as music_function_event.
1246
1247         * lily/grob-scheme.cc (LY_DEFINE):
1248         ly:grob-robust-relative-extent. New function.
1249
1250         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1251
1252         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1253
1254         * scm/output-lib.scm (fall::print): new function
1255
1256         * lily/fall-engraver.cc (stop_fall): new file.
1257
1258         * ly/music-functions-init.ly: alphabetise.
1259
1260         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1261         base.
1262
1263 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1264
1265         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1266
1267         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1268         doc pdftex usage.
1269
1270         * lily/translator-group.cc (connect_to_context): non const error message.
1271
1272         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1273
1274         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1275         if unset.
1276
1277         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1278
1279         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1280
1281         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1282         systems.pdftex too.
1283
1284         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1285
1286         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1287
1288         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1289
1290         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1291
1292         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1293
1294         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1295
1296 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1297
1298         * scm/layout-page-layout.scm: Define module, tidy code, use more
1299         functions iso. a single big one.
1300
1301         * scm/layout-page-dump.scm: move page dump functions used in two
1302         pass spacing to this file. Define module.
1303
1304         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1305          (separate module)
1306
1307         * ly/paper-defaults.ly: use module layout-page-layout.
1308
1309 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1310
1311         * lily/music.cc: Revised MusicEvent event class. It now contains
1312         event data directly instead of encapsulating it in music. The
1313         previously used class is renamed to OldMusicEvent.
1314
1315         * lily/stream-event.cc: Stream events are now probs.
1316         
1317         * lily/translator-group.cc, lily/translator.cc: Translators can
1318         now listen directly to stream events, by using macros
1319         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1320
1321         * lily/arpeggio-engraver.cc: Converted to use new event system
1322
1323         * THANKS: Corrected spelling mistake.
1324
1325 2006-07-12  Graham Percival  <gpermus@gmail.com>
1326
1327         * Documentation/user/SConscript, make/lilypond-vars.make,
1328         input/GNUmakefile: doc build looks in input/manual instead
1329         of input/test/
1330
1331         * input/manual/ GNUmakefile, SConscript: build files for
1332         input/manual/
1333
1334         * input/test/ various: some files moved to input/manual/ 
1335
1336         * Documentation/user/basic-notation.itely: small updates;
1337         thanks Kieren and Charles!
1338
1339 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1340
1341         * VERSION (PACKAGE_NAME): release 2.9.11
1342
1343         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1344
1345         * Documentation/user/basic-notation.itely (Tuplets): new property
1346         value.
1347
1348 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1349
1350         * python/convertrules.py (conv): tweaks. 
1351
1352         * VERSION (PATCH_LEVEL): bump version.
1353
1354         * python/convertrules.py (conv): add rule for
1355         tupletNumberFormatFunction.
1356
1357         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1358         tupletNumberFormatFunction.
1359
1360         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1361         text through 'text callback.
1362
1363         * lily/time-scaled-music-iterator.cc (construct_children): copy
1364         tweaks generated events.
1365
1366         * scm/define-context-properties.scm
1367         (all-user-translation-properties): remove tupletNumberFormatFunction
1368
1369         * lily/tuplet-engraver.cc (process_music): don't read
1370         tupletNumberFormatFunction
1371
1372         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1373         function.
1374
1375 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1376
1377         * lily/global-context-scheme.cc: Separated ly:run-translator into
1378         smaller pieces.
1379
1380         * lily/score-engraver.cc, lily/score-performer.cc,
1381         scm/define-context-properties.scm: Make paper/midi output
1382         accessable as a context property.
1383
1384         * lily/score-translator.cc, lily/score-context.cc: Removed.
1385
1386 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1387
1388         * scm/ps-to-png.scm (Module): 
1389         * scm/framework-tex.scm (Module): 
1390         * scm/framework-ps.scm (Module): 
1391         * scm/backend-library.scm (Module): 
1392         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1393         "dDEVICEHEIGHTPOINTS".
1394
1395 2006-07-04  Graham Percival  <gpermus@gmail.com>
1396
1397         * Documentation/user/ various: general improvements to
1398         "working with lilypond files" section.
1399
1400 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1401
1402         * lily/sequential-iterator.cc: Change the default get_music_list
1403         to read elements-callback music property
1404
1405         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1406         processing of multimeasure rests. Softcoded
1407         sequential-music-iterator.
1408
1409         * lily/sequential-music-iterator.cc: Removed.
1410
1411 2006-06-28  Graham Percival  <gpermus@gmail.com>
1412
1413         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1414
1415 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1416
1417         * lily/parser.yy: Wrap non-post-events in EventChords before
1418         assigning them to identifiers.
1419
1420 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1421
1422         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1423         gives correct vertical placement of \bar ":" in all staff
1424         sizes. Thanks Martial!
1425
1426 2006-06-26  Graham Percival  <gpermus@gmail.com>
1427
1428         * Documentation/user/invoking.itely : minor update from mailist.
1429
1430 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1431
1432         * lily/ various: Introduce stream events of types Prepare,
1433         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1434         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1435
1436         * lily/global-context*.cc: Time is now -inf before iteration
1437         starts.
1438
1439         * lily/include/context.hh: Removed unique_, init_
1440
1441         * Documentation/topdocs/NEWS: Make the feathered beam example
1442         avoid triggering a bug.
1443
1444 2006-06-24  Graham Percival  <gpermus@gmail.com>
1445
1446         * Documentation/user/ various: small additions from mailist.
1447
1448 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1449
1450         * ly/performer-init.ly: Add some missing links in the context
1451         hierarchy for MIDI output. There are probably some more missing!
1452
1453 2006-06-21  Graham Percival  <gpermus@gmail.com>
1454
1455         * Documentation/user/ various: minor spelling fixes;
1456         thanks Dave Luttinen!
1457
1458         * Documentation/user/ various: small clarifications;
1459         thanks Anthony Youngman!
1460
1461 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1462
1463         * po/fr.po: add \n appropriately.
1464
1465         * lily/lexer.ll: remove ? from version-seen?  
1466
1467 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1468
1469         * po/fr.po; update translation, by Jean-Charles Malahieude and
1470         John Mandereau.
1471
1472 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1473
1474         * THANKS: add Markus Schneider.
1475
1476         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1477         Staff_symbol_engraver
1478
1479         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1480         replace staff_engraver
1481
1482         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1483         spanner.
1484
1485         * lily/staff-collecting-engraver.cc
1486         (acknowledge_end_staff_symbol): new function
1487
1488         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1489
1490         * lily/staff-collecting-engraver.cc
1491         (acknowledge_end_staff_symbol): new function.
1492
1493         * lily/main.cc: switch on relocation by default.
1494
1495 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1496
1497         * lily/spacing-spanner.cc (musical_column_spacing): set
1498         compound_fixed_note_space to 0.0. Document why.
1499
1500         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1501         range of inverse_hooke_
1502         (Simple_spacer): init completely.
1503         (fits): const
1504         (get_line_configuration): don't use cols.resize(); it introduces
1505         initialized data.
1506
1507         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1508
1509         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1510
1511         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1512         try. Divide by beatlength.
1513
1514         * input/regression/beaming-ternary-metrum.ly: update doc.
1515         add beatLength hack.
1516
1517         * scm/music-functions.scm (make-time-signature-set): add
1518         standard-beat-grouping. 
1519
1520 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1521
1522         * input/regression/tie-whole.ly: new file.
1523
1524         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1525         cross center of note head in case of invisible stem. 
1526
1527 2006-06-16  Graham Percival  <gpermus@gmail.com>
1528
1529         * Documentation/user/ various: small fixes from mailist.
1530
1531 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1532
1533         * lily/breathing-sign.cc (offset_callback): idem.
1534
1535         * lily/align-interface.cc (align_to_fixed_distance): remove
1536         hungarian suffix.
1537
1538         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1539         x%2==0.
1540
1541 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1542
1543         * VERSION (PACKAGE_NAME): release 2.9.9
1544
1545         * ly/lilypond-book-preamble.ly: add \version
1546
1547 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1548
1549         * scripts/lilypond-book.py (PREAMBLE_LY): include
1550         lilypond-book-preamble.ly
1551
1552         * lily/stem.cc (get_beaming): return max of 0 and
1553         scm_ilength. Fixes slurring from/to beams.
1554
1555         * ly/lilypond-book-preamble.ly: new file.
1556
1557         * lily/slur.cc: add inspect-index feature.
1558
1559 2006-06-13  Graham Percival  <gpermus@gmail.com>
1560
1561         * Documentation/user/tutorial.itely: trivial fix.
1562
1563 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1564
1565         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1566         all non-event music in the parser via MAKE_SYNTAX.
1567
1568         * lily/parser-scheme.cc: Add ly:parser-error function
1569
1570         * scm/paper.scm: fix typo
1571
1572 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1573
1574         * THANKS: add RT.
1575
1576         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1577         is null.
1578
1579         * buildscripts/output-distance.py (test_compare_signatures):
1580         timing routines.
1581         (read_signature_file): use new signature format.
1582
1583         * scm/stencil.scm (write-system-signature): simpler signature
1584         format.
1585
1586         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1587         for beamed case. 
1588
1589         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1590         stem_end_position, but estimate instead. 
1591
1592         * lily/tuplet-bracket.cc (calc_positions): look at
1593         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1594         brackets narrower than beams. 
1595
1596         * lily/lexer.ll: set version-seen? even if version is
1597         INVALID. 
1598
1599         * lily/rest.cc (y_offset_callback): bugfix: decide position
1600         override based on scm_is_number(). Fixes \rest on center staff
1601         line. 
1602
1603         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1604         patterns for 16th triplets.
1605
1606 2006-06-10  Graham Percival  <gpermus@gmail.com>
1607
1608         * Documentation/user/ page.itely, global.itely: editing
1609         and reorg.
1610
1611         * Documentation/user/ various: findex -> funindex.
1612
1613 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1614
1615         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1616         insert extra tuplet events.
1617
1618 2006-06-10  Graham Percival  <gpermus@gmail.com>
1619
1620         * Documentation/user/programming-interfaces.itely: add
1621         info from NEWS.
1622
1623         * python/convertrules.py: add annotatefoo -> annotate-foo
1624         rules.
1625
1626         * Documentation/user/global.itely: start editing.
1627
1628         * Documentation/user/page.itely: major editing, new spacing
1629         docs.
1630
1631 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1632
1633         * scm/define-markup-commands.scm (wordwrap-markups): use
1634         output-def 'line-width if undefined.
1635
1636         * HACKING: trim outdated info.
1637
1638 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1639
1640         * scm/define-grobs.scm (all-grob-descriptions): Add
1641         line-spanner-interface to all grobs that already have
1642         text-spanner-interface or dynamic-text-spanner-interface
1643
1644         * scm/page.scm: Rename annotate{headers,systems,page}->
1645         annotate-*
1646
1647         * input/regression/page-spacing.ly,
1648         input/regression/page-layout-manual-position.ly: idem
1649
1650 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1651
1652         * lily/line-spanner.cc: cleanup property list.
1653
1654         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1655         generator expressions (2.3 compat). 
1656
1657 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1658
1659         * lily/vertical-align-engraver.cc: Make sure that the
1660         align{Above,Below}Context properties are included in the automatic
1661         documentation.
1662
1663 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1664
1665         * scm/paper-system.scm (paper-system-annotate): also annotate the
1666         estimated pure-Y-extent
1667
1668         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1669
1670         * lily/system.cc (break_into_pieces): set the estimated height
1671         of each child system
1672
1673         * lily/stem.cc (pure_height): new pure-Y-extent callback
1674
1675         * lily/staff-symbol-referencer.cc (callback): don't destroy
1676         the staff-position property
1677
1678         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1679         consider_suicide into two functions
1680
1681         * lily/constrained-breaking.cc (resize): use the new pure
1682         callbacks to estimate the height of a system
1683
1684         * lily/axis-group-interface.cc (pure_group_height): new
1685         side-effect-free VerticalAxisGroup height-callback
1686
1687         * lily/align-interface.cc (get_extents_aligned_translates):
1688         split align_elements_to_extents into two functions
1689         (get_pure_child_y_translation): new function
1690
1691         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1692
1693         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1694
1695         * lily/paper-score.cc: cache break_indices and columns
1696
1697         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1698         
1699 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1700
1701         * lily/font-config.cc (init_fontconfig): do the init if
1702         cache_file, but don't look at cache_file.
1703
1704         * input/regression/quote-tie.ly: new file.
1705
1706         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1707         to Head_event_tuple, so we deal gracefully with ties on
1708         cue-endings.
1709
1710         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1711         for FcChar8*
1712
1713 2006-06-08  Graham Percival  <gpermus@gmail.com>
1714
1715         * input/test/ smart-transpose.ly, reverse-music.ly:
1716         \applyMusic to music functions update, thanks Michael!
1717
1718 2006-06-07  Graham Percival  <gpermus@gmail.com>
1719
1720         * input/test/ add-staccato.ly, add-text-script.ly,
1721         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1722         music functions update, thanks to Michael Meixner.
1723
1724         * Documentation/user/music-glossary.tely: small fix
1725         from Francisco.
1726
1727         * Documentation/user/ various: minor additions from mailist.
1728
1729         * Documentation/user/lilypond.tely, basic-notation.itely:
1730         small test of @funindex.  (works here)
1731
1732         * input/test/font-table.ly: reduce size to partially
1733         de-ugly version in manual.
1734
1735         * Documentation/user/page.itely: new file (split former
1736         "global issues" into "page settings" and "non-musical
1737         output".
1738
1739         * Documentation/user/ various: fix @ref{}s to match
1740         new chapter names (above).
1741
1742 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1743
1744         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1745
1746 2006-06-06  Graham Percival  <gpermus@gmail.com>
1747
1748         * Documentation/user/advanced-notation.itely: add example
1749         for segno/coda on barline.
1750
1751         * tex/texinfo.tex: merge from upstream.
1752
1753 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1754
1755         * scripts/lilypond-book.py (process_snippets): Argument fix.
1756
1757         * SConstruct:
1758         * buildscripts/builder.py:
1759         * lily/SConscript: 
1760         * mf/SConscript: 
1761         * Documentation/user/SConscript:  More SCons fixes.
1762
1763 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1764
1765         * lily/font-config.cc (init_fontconfig): Only initialize if
1766         global cache_file is found.
1767
1768 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1769
1770         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1771         new \applyOutput.
1772
1773 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1774
1775         * VERSION (PACKAGE_NAME): release 2.9.8
1776
1777         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1778         function. Delay ledger modifying ledgered grobs to
1779         stop_translation_timestep(), to ensure that we're ledgering
1780         according to the new spanner.
1781         (acknowledge_staff_symbol): don't check for non-NULL
1782         staff_sym->get_bound()
1783
1784         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1785         creation.
1786
1787         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1788         pictures too.
1789
1790         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1791         directly from srcdir/stepmake/aclocal.m4
1792         
1793         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1794         disting MISC files.
1795
1796         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1797
1798 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1799
1800         * lily/simple-spacer.cc (get_line_configuration): add
1801         keep-inside-line rods
1802         (struct Column_desc): add constructor
1803         (struct Rod_desc): add constructor
1804         (get_line_forces): check for forced page breaks here too
1805
1806         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1807         support/elements cycles between InstrumentNames and AxisGroups
1808
1809 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1810
1811         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1812
1813         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1814         make-txt-files target.
1815
1816         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1817         make-txt-files target.
1818
1819         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1820
1821         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1822         top-build-dir.
1823
1824 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1825
1826         * Documentation/user/instrument-notation.itely,
1827         input/regression/breathing-sign-ancient.ly,
1828         input/test/divisiones.ly: Removed redundant property settings for
1829         vaticana contexts.
1830
1831         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1832         fix lyrics alignment problems.  They are implemented now as scheme
1833         functions that add the appropriate unicode char to the first lyric
1834         event rather than adding a separate lyric event.  Minor edit of
1835         comments.
1836
1837 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1838
1839         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1840         pollute src dir with built .txt files, but install directly from
1841         Documentation/topdocs/out/
1842
1843         * buildscripts/output-distance.py
1844         (ComparisonData.create_html_result_page): put version/directories
1845         in table header.
1846
1847         * Documentation/topdocs/NEWS.tely (Top): document spacing section
1848         feature.
1849
1850         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
1851         Patch by Karl Hammar
1852         
1853         * buildscripts/readlink.py: add  file.
1854         Patch by Karl Hammar
1855
1856 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1857
1858         * lily/tuplet-number.cc (print): prevent stencil from being
1859         garbage collected.
1860
1861 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1862
1863         * scm/stencil.scm (write-system-signature): explicitly 
1864         -well, superfluously- close output port.
1865
1866         * buildscripts/output-distance.py (main): oops. Add extra argument.
1867
1868 2006-06-05  Graham Percival  <gpermus@gmail.com>
1869
1870         * Documentation/user/music-glossary.tely: clarified example
1871         from Francisco Vila, thanks!
1872
1873 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1874
1875         * input/regression/spacing-section.ly: new file.
1876
1877         * lily/input.cc (programming_error): new function.
1878
1879         * lily/spacing-engraver.cc (try_music): new function. Accept
1880         spacing-section-event
1881
1882         * lily/spacing-spanner.cc (set_springs): take slices of all
1883         columns for spacing.
1884
1885         * lily/include/paper-column.hh (class Paper_column): add
1886         Paper_column::compare.
1887
1888         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
1889
1890         * scm/define-music-types.scm (music-descriptions): add
1891         SpacingSectionEvent
1892
1893         * lily/music-iterator.cc (report_event): use programming_error for
1894         sending non-event error.
1895
1896         * lily/input.cc (programming_error): new function
1897
1898         * buildscripts/output-distance.py (main): use compare-XXX for
1899         compare files.
1900         (main): --threshold option, default at 0.30
1901
1902         * output-distance.py (main): add --threshold option.
1903
1904 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1905
1906         * scm/paper-system.scm (paper-system-annotate): fix problem when
1907         annotating an empty system
1908
1909 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1910
1911         * GNUmakefile.in: reinstate old web tar/copying.
1912
1913 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1914
1915         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
1916         nothing changes. (Erik S) 
1917
1918         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
1919         count. (Erik S)
1920
1921 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1922
1923         * scm/define-markup-commands.scm (whiteout): do not force
1924         foreground color of argument markup to black.
1925
1926         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
1927         the left of the arrow, instead of below the arrow name, so that,
1928         when two little arrows are vertically stacked, their dimensions
1929         and name should not overlap. Add a color key parameter.
1930
1931         * scm/paper-system.scm (paper-system-annotate): Annotate
1932         next-space+next-padding instead of next-space. Annotate space
1933         between next-padding and next-space+padding, respectively, and
1934         following system extent and refpoint-Y-extent. Use colors.
1935
1936         * scm/page.scm (annotate-page): translate annotations slightly to
1937         the right.
1938
1939 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1940
1941         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
1942         fix for x-staff slurs. Thanks Joe!
1943
1944         * buildscripts/output-distance.py
1945         (SystemLink.output_expression_change_count): keep track of changed
1946         details, and dump in details html page.
1947  
1948         * input/regression/figured-bass-staff.ly: add note about setting
1949         properties in Staff context.
1950
1951         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
1952         add slurs and ties to support too.
1953
1954         * buildscripts/output-distance.py (main): set dest_dir
1955         argument. Add --max-count option.
1956
1957 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
1958
1959         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
1960         shortcuts for special unicode chars that are useful in chant
1961         notation.  Revised exisiting and added new comments.
1962
1963 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1964
1965         * make/mutopia-rules.make: remove duplicate recipe.
1966
1967 2006-06-02  Werner Lemberg  <wl@gnu.org>
1968
1969         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
1970         Add support for U+0132 (IJ) and U+0133 (ij).
1971
1972 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1973
1974         * buildscripts/output-distance.py (FileLink): new class. collect
1975         info systems from one .ly file. 
1976         (FileLink.link_files_for_html): further tweaks.
1977
1978 2006-06-02  Graham Percival  <gpermus@gmail.com>
1979
1980         * tex/texinfo.tex: partial fix for @funindex.
1981
1982         * Documentation/user/macros.tely: uncomment @funindex (doesn't
1983         break anything).
1984
1985 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1986
1987         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
1988
1989         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
1990         @example too. Backportme.
1991
1992 2006-06-02  Graham Percival  <gpermus@gmail.com>
1993
1994         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
1995         from Werner Lemberg.
1996
1997 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
1998
1999         * Documentation/user/music-glossary.tely: additional spanish
2000         updates and a lyrics fix in an example.
2001
2002 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2003
2004         * scm/define-grob-properties.scm: Previous patch contained
2005         spurious line from another patch not yet committed.  Fixed.
2006
2007         * scm/define-grob-properties.scm: Add missing doc strings for
2008         ancient notation.
2009
2010 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2011
2012         * buildscripts/output-distance.py
2013         (ComparisonData.write_text_result_page): separate the scores, sort
2014         by geo_score.
2015
2016         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2017         system signatures.
2018
2019         * buildscripts/output-distance.py (me_path): use argv[0] for
2020         sys.path extension
2021         (ComparisonData.img_cell): use colored borders.
2022
2023         * scm/stencil.scm (write-system-signature): escape newlines too.
2024         (write-system-signature): use (1,-1) interval for empty interval
2025
2026 2006-01-01  Graham Percival  <gpermus@gmail.com>
2027
2028         * Documentation/user/music-glossary.tely: Spanish updates
2029         from Francisco Vila.
2030
2031         * Documentation/user/lilypond-book.itely: addition from
2032         Vaclav Smilauer.
2033
2034         * Documentation/user/ various: edits, small additions
2035         from mailist, etc.
2036
2037 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2038
2039         * GNUmakefile.in (tree-lib-prefix-current):
2040         (tree-share-prefix-current): Use version number in tree, add
2041         `current' symlinks.
2042
2043 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2044
2045         * GNUmakefile.in: write VERSION, again.
2046
2047         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2048         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2049
2050         * stepmake/aclocal.m4: robuster version detection.
2051
2052         * buildscripts/output-distance.py
2053         (ComparisonData.create_html_result_page): copy only if file
2054         exists, fixup src paths.
2055
2056         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2057
2058 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2059
2060         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2061         Another datarootdir reto.
2062
2063         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2064         available.  This should be moved to postinstall-lilypond-doc.
2065
2066 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2067
2068         * GNUmakefile.in: simplify local-WWW-post. 
2069         remove -type l from find.
2070
2071         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2072         fixes. Don't follow symlinks.
2073         (ComparisonData.create_html_result_page): remove previous results.
2074         insert ../python in path.
2075
2076         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2077
2078 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2079
2080         * config.make.in (datadir): Add datarootdir to silence autoconf.
2081
2082         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2083
2084 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2085
2086         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2087
2088         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2089         slash beams too wide.
2090
2091 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2092
2093         * VERSION: release 2.9.7
2094         
2095 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2096
2097         * lily/relocate.cc (read_relocation_dir): Do not blindly
2098         dereference DIR.
2099
2100 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2101
2102         * lily/parser.yy: replace THIS by PARSER
2103
2104         * Documentation/index.html.in: add link to test-results.html page.
2105
2106         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2107
2108         * scm/translation-functions.scm (format-bass-figure): translate
2109         digits over 10 to the left
2110
2111         * scm/define-markup-commands.scm (translate-scaled): new markup.
2112
2113         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2114         7 glyph. 
2115
2116         * ly/engraver-init.ly: add Figured_bass_engraver
2117
2118         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2119
2120         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2121
2122         * lily/score-engraver.cc (announce_grob): only note START announces.
2123
2124         * lily/include/engraver-group.hh (Translator_group):
2125         acknowledge_hash_table_ is now drul.
2126
2127         * lily/engraver.cc (announce_end_grob): new method.
2128
2129         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2130
2131         * lily/translator-dispatch-list.cc (create): take start_end argument.
2132
2133         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2134         acknowledge_static_array_ to drul
2135
2136         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2137
2138         * scm/define-grob-interfaces.scm
2139         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2140
2141         * scm/define-grobs.scm (all-grob-descriptions): add
2142         BassFigureAlignmentPositioning
2143
2144         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2145         number stays up to date. Backportme.
2146
2147 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2148
2149         * Documentation/user/basic-notation.itely (Bar lines): Document
2150         the "||:" bar type. 
2151
2152 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2153
2154         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2155
2156         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2157         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2158         build.
2159
2160         * Resurrect `scons lily' build.
2161
2162         * SConstruct (symlink_tree): Bugfix: link
2163         music-drawing-routines.ps to file iso directory.
2164
2165         * lily/SConscript: Remove kpath-guile from LIBS.
2166
2167         * SConstruct (libdir_package_version): Typo.
2168         (configure): Comment-out fontforge for lack of fontforge.pc .
2169         Also add libdir* to environment.
2170
2171 2006-05-30  Graham Percival  <gpermus@gmail.com>
2172
2173         * Documentation/user/ various: minor additions from mailist and
2174         editing.
2175
2176 2006-05-30  Paco <fravd@ya.com>
2177
2178         * Documentation/user/music-glossary.tely: numerous corrections and
2179         some new translations.
2180
2181 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2182
2183         * BackportmeStart.
2184         
2185         * buildscripts/output-distance.py
2186         (ComparisonData.create_html_result_page): new routine: summarise
2187         results in HTML page with images. 
2188         (ComparisonData.create_text_result_page): create summary text files too.
2189
2190         * GNUmakefile.in (web-ext): package .signature files too. They
2191         compress well. 
2192
2193         * scm/stencil.scm (write-system-signature): typo.
2194
2195         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2196
2197         * scm/stencil.scm (write-system-signature): better escaping.
2198         only write signature for music systems, not for markup systems.
2199
2200         * scm/framework-ps.scm (output-framework): dump-signatures support
2201         for plain output.
2202
2203         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2204
2205         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2206         for -dno-point-and-click
2207
2208         * lily/grob.cc (get_print_stencil): don't read
2209         point_and_click_global to determine whether to set grob-cause.
2210
2211 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2212
2213         * buildscripts/output-distance.py (main): new function.
2214         (ComparisonData): new class.
2215
2216         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2217         careful with generating new LedgerLineSpanners.
2218
2219         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2220
2221         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2222         context. This fixes double ledger lines in output. 
2223
2224         * lily/system.cc (get_paper_system): remove 3 layer limit.
2225
2226         * buildscripts/output-distance.py (SystemLink.distance): new
2227         file. Compare signatures.
2228
2229         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2230
2231         * lily/grob-array.cc (remove_duplicates): rename from
2232         uniq(). Sort before calling uniq() so it actually works.
2233
2234 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2235
2236         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2237         \version from lilypond file snippet.
2238         (Lilypond_file_snippet.ly): oops. typo.
2239         (find_toplevel_snippets): urgh. again.
2240
2241         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2242         prevent duplicated broken items in output.
2243
2244         * scm/framework-eps.scm (output-classic-framework): only dump if
2245         dump-signatures is set.
2246
2247         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2248
2249         * scm/stencil.scm (write-system-signature): new routine: write
2250         python parseable signature of a separate paper system.
2251         BackportmeEnd.
2252         
2253 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2254
2255         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2256         iso is_string().
2257         include header.
2258
2259 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2260
2261         * translator-group.cc: send music events to engravers in
2262         non-bottom contexts.
2263
2264         * tuplet-engraver.cc: process tuplet brackets in correct order.
2265
2266 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2267
2268         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2269         arg 2 might point us to a new binary (patch by Karl Hammar)
2270         
2271 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2272
2273         * VERSION (PACKAGE_NAME): release 2.9.6
2274
2275         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2276
2277         * Documentation/user/*.itely: 2nd
2278         attempt: replace funindex -> findex globally.
2279
2280 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2281
2282         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2283         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2284
2285         * scm/define-music-display-methods.scm: display methods for
2286         breaks. Fix \applyOutput.
2287
2288 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2289
2290         * Documentation/user/macros.itexi: comment out funindex expansion. 
2291
2292         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2293         everywhere.
2294
2295         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2296         Karl Hammar. Backportme.
2297  
2298         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2299
2300         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2301
2302         * Documentation/user/programming-interface.itely (Running a
2303         function on all layout objects): idem.
2304
2305         * Documentation/user/introduction.itely (Automated engraving):
2306         update \applyOutput syntax
2307
2308         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2309         remove debugging hook.
2310
2311         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2312         expansion. 
2313
2314         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2315
2316         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2317         TEXI2DVI_FLAGS to texi2dvi invocation. 
2318
2319 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2320
2321         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2322         works. More work is done by iterator now, and engraver has been
2323         very much simplified.
2324
2325         * lily/translator-group.cc: try_music is now invoked through a
2326         listener
2327
2328         * lily/*-iterator.cc: Massive cleanups. Junked
2329         try_music_in_children globally. Renamed try_music to report_event,
2330         and made that method descend to a bottom context automatically.
2331
2332         * lily/event-iterator.cc: New file.
2333
2334         * lily/output-property-iterator.cc,
2335         lily/old-lyric-combine-music-iterator.cc: Removed.
2336
2337         * python/convert-rules.py: Modified the syntax for \applyOutput.
2338
2339 2006-05-23  Graham Percival  <gpermus@gmail.com>
2340
2341         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2342         creation.
2343
2344         * Documentation/user/ various: stuff that might have helped
2345         to fix the pdf creation, plus some minor doc additions.
2346
2347         * Documentation/user/changing-defaults.itely: remove @b from
2348         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2349
2350 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2351
2352         * lily/beaming-pattern.cc (beamify): deal with negative start
2353         moments for beaming patterns.
2354
2355 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2356
2357         * lily/beaming-info.cc (beamify): new function: read beatLength
2358         and beatGrouping from context. 
2359
2360         * input/regression/beam-beat-grouping.ly (Module): new file.
2361
2362         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2363
2364         * lily/beam.cc (get_beam_segments): generate events for
2365         max_connect_ case too.
2366         (get_beam_segments): read Stem::max-beam-connect.
2367
2368         * input/regression/beam-single-stem.ly: new file.
2369
2370         * lily/stem.cc (set_beaming): use #f as signaling value for
2371         beamcount 0.
2372
2373         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2374
2375         * lily/beam.cc (set_beaming): read clip-edges property.
2376         (calc_direction): don't suicide for single stem.
2377
2378         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2379         argument, remove 1<<15 hack. Remove clip_edges() 
2380
2381         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2382
2383 2006-05-21  Graham Percival  <gpermus@gmail.com>
2384
2385         * Documentation/user/basic-notation.itely: reorg.
2386
2387         * Documentation/user/ various: minor fixes.
2388
2389 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2390
2391         * lily/stencil-expression.cc (register_stencil_head): opps, append
2392         to cdr of static SCM object.
2393
2394 2006-05-19  Graham Percival  <gpermus@gmail.com>
2395
2396         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2397         update framework for command index.  DOC WRITERS: use @funindex
2398         instead of @cindex @code{}.
2399
2400         * Documentation/user/ various: replace @cindex @code{} => @funindex
2401
2402 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2403
2404         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2405         case positions is set manually. 
2406
2407 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2408         
2409         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2410         rules to Scheme.
2411
2412 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2413
2414         * Documentation/user/changing-defaults.itely (Contexts explained):
2415         use absolute dimension for @image.
2416
2417         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2418         out image for illustration too.
2419         ($(outdir)/%.png): add more png <-> eps rules. 
2420
2421 2006-05-17  Graham Percival  <gpermus@gmail.com>
2422
2423         * Documentation/user/ various: remove trailing whitespace, cosmetic
2424         change to reduce changes produced by diff.
2425
2426 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2427
2428         * lily/main.cc (do_chroot_jail): correctness tweak.
2429
2430         * python/lilylib.py (system): import subprocess in system () only.
2431
2432         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2433
2434         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2435         variable. Backportme.
2436
2437 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2438         
2439         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2440
2441 2006-05-17  Werner Lemberg  <wl@gnu.org>
2442
2443         * lily/lexer.ll (init_signature_has_table): Add
2444         `scm-scm-music-music'.
2445
2446         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2447         (Generic_prefix_music_scm): Add rule for it.
2448
2449         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2450         `quoted-transposition' property.
2451
2452         * ly/music-functions-init.ly (transposedCueDuring): New function.
2453
2454         * scm/define-music-properties.scm (all-music-properties): Updated.
2455
2456         * Documenation/topdocs/NEWS.itely: Document it.
2457
2458 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2459
2460         * python/lilylib.py (system): move import subprocess to system()
2461         definition. 
2462
2463         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2464
2465         * VERSION (PATCH_LEVEL): release 2.9.5
2466         
2467         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2468         build instructions. 
2469
2470         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2471
2472 2006-05-16  Graham Percival  <gpermus@gmail.com>
2473
2474         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2475
2476         * Documentation/user/ various: minor fixes.
2477
2478 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2479
2480         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2481
2482 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2483
2484         * Documentation/user/advanced-notation.itely (Instrument names):
2485         Modified obsolete instruction on how to move instrument names away
2486         from the staves. Hmm, at second thought the bug probably has been
2487         solved, so the full bug description should probably be removed.
2488
2489 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2490
2491         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2492         currentCommandColumn. 
2493
2494         * lily/hairpin.cc (print): also add padding for non-neighbor
2495         hairpin bounds.
2496
2497         * scm/define-context-properties.scm
2498         (all-user-translation-properties): add hairpinToBarline
2499
2500         * input/regression/hairpin-to-barline.ly: new file.
2501
2502         * lily/context.cc (internal_send_stream_event): thinko fix.
2503
2504         * lily/tie.cc (set_default_control_points): robustness fix.
2505
2506         * python/musicxml.py (Part.interpret): don't complain about
2507         incomplete measures.
2508
2509         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2510         new music if last_event_chord() returned None.
2511
2512         * python/musicxml.py (Part.interpret): skip back over chord notes.
2513
2514 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2515         
2516         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2517         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2518         lily/slash-repeat-engraver.cc,
2519         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2520         iterator sends PercentEvents
2521
2522         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2523         rework tuplets: send start/stop events to engraver
2524
2525         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2526         dispatchers event-source and events-below to Context
2527         
2528 2006-05-15  Graham Percival  <gpermus@gmail.com>
2529
2530         * Documentation/user/README.txt: update info for doc writers.
2531
2532         * Documentation/user/programming-interface.itely: integrate
2533         Nicolas' fixes for chapter rewrite.
2534
2535         * Documentation/user/ various: minor fixes.
2536
2537 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2538
2539         * lily/clef-engraver.cc: cleanup.
2540
2541         * Documentation/user/GNUmakefile: dist context-example.eps too.
2542
2543         * lily/key-engraver.cc (create_key): use
2544         explicitKeySignatureVisibility for cancellation too. 
2545
2546         * lily/font-config.cc (init_fontconfig): don't close file if
2547         f==NULL. 
2548
2549 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2550
2551         * Documentation/topdocs/NEWS.tely: niente and rotation news
2552
2553 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2554
2555         * lily/include/stencil.hh
2556         * lily/stencil.cc (rotate): new function. Makes it possible
2557         to rotate a stencil around a given offset.
2558
2559         * lily/grob.cc (get_print_stencil): add rotation support
2560
2561         * lily/stencil-interpret.cc (interpret_stencil_expression):
2562         add rotation support
2563
2564         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2565
2566         * scm/define-grob-properties.scm: add 'rotation property
2567
2568         * scm/define-markup-commands.scm: add rotate markup command
2569         
2570         * scm/output-ps.scm: add rotation support in PostScript backend
2571
2572         * scm/output-svg.scm: add rotation support in SVG backend
2573
2574 2006-05-13  Graham Percival  <gpermus@gmail.com>
2575
2576         * Documentation/user/music-glossary.itely: French correction.
2577
2578         * Documentation/user/programming-interface.itely: major
2579         new docs, some reorg, some info from Nicolas.
2580
2581         * Documentation/user/ various: small fixes.
2582
2583 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2584
2585         * Documentation/user/programming-interface.itely (Markup
2586         programmer interface): Remove duplicate text.
2587
2588 2006-05-12  Graham Percival  <gpermus@gmail.com>
2589
2590         * Documentation/user/context-example.eps: new file.
2591
2592         * Documentation/user/changing-defaults.itely: set up file to
2593         use eps image.
2594
2595         * Documentation/user/programming-interface.itely: changes
2596         from mailist.
2597
2598 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2599
2600         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2601
2602 2006-05-11  Graham Percival  <gpermus@gmail.com>
2603
2604         * Documentation/user/programming-interface.itely: first round of
2605         editing and merging emails from Nicolas.
2606
2607         * Documentation/user/scheme-tutorial: minor edit.
2608
2609 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2610
2611         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2612         XML attributes.
2613         (Xml_node.message): use it.
2614
2615         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2616         oops. Add duration argument.
2617
2618 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2619
2620         * lily/paper-column-engraver.cc (make_columns):
2621         * scm/define-grobs.scm: Revert my previous change and set the default
2622         in define-grobs.scm instead.
2623
2624 2006-05-09  Graham Percival  <gpermus@gmail.com>
2625         
2626         * Documentation/user/changing-defaults.itely: general editing,
2627         info about \set and \override.
2628
2629         * Documentation/user/tweaking.itely, advanced-notation.itely:
2630         fixes from Dave Luttinen, thanks!
2631
2632 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2633
2634         * lily/paper-column-engraver.cc (make_columns): By default, a column
2635         needs to be breakable.
2636
2637 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2638
2639         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2640         Attributes methods
2641         (musicxml_time_to_lily): idem
2642         (musicxml_key_to_lily): idem
2643         (instrument_drumtype_dict): dict for supported drumtypes.
2644         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2645         moments and pending mm rests
2646         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2647         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2648         (musicxml_voice_to_lily_voice): add mode change.
2649         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2650         speed and less memory usage (factor 5 to 10).
2651         (convert): write -defs.ly  and driver file separately so people
2652         can script their own part extraction.
2653
2654         * python/musicxml.py (minidom_demarshal_node): new function:
2655         separate minidom handling.
2656         (lxml_demarshal_node): new function: support lxml.etree too.
2657         (Xml_node.message): new function: verbose error message, with XML
2658         path to offending node.
2659         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2660         (Part_list.generate_id_instrument_dict): new method: collect
2661         instrument names, to be able to set drum_type.
2662         (Part.interpret): handle underfull measures
2663         (Part.interpret): assign instrument names.
2664
2665         * python/musicexp.py (Output_printer.close): new method
2666         (MusicWrapper.print_ly): new class: support other modes,
2667         eg. \drummode
2668         (BarCheck.print_ly): new class. Support bar checks, with comments
2669         and fancy barchecks. 
2670         (NoteEvent.__init__): also set drum_type for drum notes.
2671         (MultiMeasureRest.lisp_expression): dump mm rests.
2672
2673         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2674         line-break-permission if forbidBreak is not set.
2675
2676 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2677
2678         * scm/define-context-properties.scm:
2679         * scm/define-grob-properties.scm:
2680         * scm/define-grobs.scm:
2681         * scm/define-music-display-methods.scm:
2682         * scm/define-music-properties.scm:
2683         * scm/define-music-types.scm:
2684         * scm/music-functions.scm:
2685         * ly/declarations-init.ly:
2686         * lily/include/constrained-breaking.hh:
2687         * lily/system.cc:
2688         * lily/spaceable-grob.cc:
2689         * lily/simple-spacer.cc:
2690         * lily/paper-score.cc:
2691         * lily/paper-column.cc:
2692         * lily/paper-column-engraver.cc:
2693         * lily/item.cc:
2694         * lily/gourlay-breaking.cc:
2695         * lily/constrained-breaking.cc:
2696         * python/convertrules.py:
2697         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2698         "page-break-penalty" and "line-break-permission".
2699         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2700         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2701
2702         * lily/bar-engraver.cc:
2703         * lily/beam-engraver.cc:
2704         * lily/forbid-break-engraver.cc:
2705         * lily/ligature-engraver.cc:
2706         * lily/paper-column-engraver.cc:
2707         * lily/percent-repeat-engraver.cc:
2708         * lily/score-engraver.cc:
2709         * lily/score-engraver.hh:
2710         * lily/paper-column-engraver.hh:
2711         Inter-engraver communication regarding line breaks is done through context
2712         properties (Score.forbidBreak) instead of function calls.
2713
2714 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2715
2716         * VERSION (PACKAGE_NAME): release 2.9.4
2717
2718 2006-05-08  Graham Percival  <gpermus@gmail.com>
2719
2720         * Documentation/user/working.itely: proofreading from Dave
2721         Luttinen, thanks.
2722
2723         * Doucmentation/user/README.txt: updated with manual style info.
2724
2725         * Documentation/user/ various: trim linewidth to 78 chars.
2726
2727 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2728
2729         * scm/define-grob-properties.scm (all-internal-grob-properties):
2730         remove chord-tremolo property.
2731
2732         * lily/beam.cc (get_beam_segments): don't use stem position as
2733         base for broken ends.
2734
2735 2006-05-06  Graham Percival  <gpermus@gmail.com>
2736
2737         * Documentation/user/putting.itely: proofreading from Dave
2738         Luttinen, thanks!
2739
2740         * Documentation/user/ various: more reorg and clarifications.
2741
2742 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2743
2744         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2745
2746         * ly/music-functions-init.ly: new function featherDurations
2747
2748         * lily/beam.cc: read grow-direction for feathered beaming.
2749
2750         * Documentation/topdocs/NEWS.tely (Top): typo.
2751
2752 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2753
2754         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2755         tremolo beams.
2756
2757 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2758         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2759         used by music streams.
2760
2761         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2762         lily/stream-event.cc, lily/stream-event-scheme.cc,
2763         lily/listener.cc, lily/scheme-listener.cc,
2764         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2765         lily/include/stream-event.hh, lily/include/listener.hh,
2766         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2767         Created data structures for music streams.
2768         
2769 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2770
2771         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2772         construction of a beam. 
2773         (print): rewrite. 
2774
2775         * flower/include/std-vector.hh (default_compare): use only one comparison.
2776
2777         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2778         (note-by-number): further attachment fixes.
2779
2780         * scm/lily-library.scm (ordered-cons): new function.
2781         (interval-index): new function
2782
2783         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2784
2785         * lily/note-head.cc (get_stem_attachment): new function.
2786
2787         * scm/define-markup-commands.scm (note-by-number): read 'style
2788         property. 
2789
2790         * input/regression/markup-note.ly: show note-head style option.
2791
2792         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2793         triangle head.
2794
2795 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2796
2797         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2798
2799         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2800
2801         * lily/include/constrained-breaking.hh: GCC 4 fix.
2802
2803 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2804
2805         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2806         Replace it with functions get_line_forces and get_line_configuration.
2807         (class Simple_spacer): Make data private.
2808         Rewrite compression algorithm to be faster and simpler.
2809
2810         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2811         * lily/gourlay-breaking.cc (solve):
2812         * lily/constrained_breaking.cc (space_line):
2813         Change it to the new simple-spacer code.
2814
2815         * lily/paper-score.cc (get_paper_systems):
2816         (Paper_score):
2817         (process):
2818         Delay breaking the systems until they are requested.
2819         (find_break_indices):
2820         Use vsize for indices.
2821         (calc_breaking):
2822         Move the "Calculating line breaks" message here.
2823
2824         * lily/system.cc (pre_processing):
2825         Move the "Calculating line breaks" message away from here.
2826         (break_into_pieces):
2827         Allow multiple calls to this function in sequence (with touching-but-
2828         not-overlapping breakpoints).
2829
2830         * lily/constrained-breaking.cc:
2831         Replace most of the get_XXXX functions with get_line_details.
2832         Only calculate the force for each line. Calculate configurations only
2833         for the lines we will actually use.
2834         Replace cols_ with lines_.
2835
2836 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2837
2838         * mf/GNUmakefile (depth): remove FC_FIND.
2839
2840         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2841
2842         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
2843
2844         * scm/framework-ps.scm (write-preamble): new function.
2845         (write-preamble): load mac fonts via fondu, even if gs-font-load
2846         is set.
2847
2848 2006-05-03  Werner Lemberg  <wl@gnu.org>
2849
2850         * mf/GNUmakefile (FC_FIND): Fix typo.
2851
2852 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
2853
2854         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
2855
2856 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2857
2858         * stepmake/aclocal.m4: run python-config for crosscompiling
2859         flags. 
2860
2861         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
2862         -f png for HTML, TEXINFO formats. 
2863
2864         * input/tutorial/lbook-html-test.html: new file.
2865
2866         * lily/include/tie-formatting-problem.hh (class
2867         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
2868         [column, direction]. This fixes laissez vibrer ties.
2869  
2870         * flower/include/tuple.hh (struct Tuple2): new file.
2871
2872         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
2873         $(FCMATCH), only if $(NCSB_DIR) not set. 
2874
2875         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
2876
2877         * config.make.in (DOCUMENTATION): set FCMATCH.  
2878
2879         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
2880
2881 2006-05-03  Graham Percival  <gpermus@gmail.com>
2882
2883         * Documentation/user/ various: final round of reorg.
2884
2885         * Documentation/user/instrument-notation.itely: some more
2886         fixes from Eduardo, thanks!
2887
2888 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2889
2890         * VERSION (PACKAGE_NAME): release 2.9.3
2891
2892         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
2893
2894         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
2895
2896 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
2897
2898         * scm/define-grob-properties.scm (all-user-grob-properties):
2899         Correct typo, thanks to Eduardo.
2900
2901 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2902
2903         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
2904
2905         * buildscripts/lilypond-words.py (F): indent fix.
2906
2907         * input/regression/tie-arpeggio-collision.ly: new file.
2908
2909         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
2910         function: store outlines per column rank.
2911
2912         * lily/include/tie-configuration.hh (class Tie_configuration): add
2913         column_ranks_ to specification and configuration, to distinguish
2914         between ties for different heads in arpegiated chords.
2915
2916         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
2917
2918         * *.py: more 4 space indents.
2919
2920         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
2921
2922 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
2923
2924         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
2925
2926 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2927
2928         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
2929
2930         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
2931
2932         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
2933
2934 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2935
2936         * python/convertrules.py (conv): indent 4 for python files.
2937
2938 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
2939
2940         * Documentation/user/changing-defaults.itely (Creating contexts):
2941         Clarify \new semantics.
2942
2943 2006-04-28  Graham Percival  <gpermus@gmail.com>
2944
2945         * Documentation/user/ various: major new sections in the
2946         Learning manual, slight reorg elsewhere.
2947
2948 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2949
2950         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
2951
2952         * scm/framework-ps.scm (output-framework): remove PageMedia
2953
2954 2006-04-27  Graham Percival  <gpermus@gmail.com>
2955
2956         * Documentation/user/ tweaks.itely, working.itely: new
2957         files, being more advanced "learning manual" chapters.
2958
2959         * Documentation/user/ tutorial, putting, lilypond: reorg.
2960
2961 2006-04-26  Graham Percival  <gpermus@gmail.com>
2962
2963         * input/regression/lyric-combine-polyphonic.ly: fixed test
2964         (no more "can't find context `one'" error).
2965
2966 2006-04-25  Joe Neeman <joeneeman@gmail.com>
2967
2968         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
2969
2970         * input/regression/stem-tremolo.ly: add 2 more whole note examples
2971         
2972 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2973
2974         * lily/relocate.cc (read_relocation_dir): new function.
2975
2976 2006-04-26  Graham Percival  <gpermus@gmail.com>
2977
2978         * Documentation/user/instrument-notation.itely: a few more fixes
2979         from Eduardo, thanks!
2980
2981         * Documentation/user/README.txt: new file; contains info on
2982         style that used to be in lilypond.tely.
2983
2984         * Documentation/user/ various: first round of doc reorg.
2985
2986         * Documentation/user/baer-flat-bw.png: remove alpha bit from
2987         graphic; this probably causes problems on some pdf
2988         viewers, notably Adobe Acrobat.
2989
2990 2006-04-24  Graham Percival  <gpermus@gmail.com>
2991
2992         * Documentation/user/instrument-notation.itely: many alterations
2993         to Vocal music, from Eduardo Viera.
2994
2995 2006-04-23  Graham Percival  <gpermus@gmail.com>
2996
2997         * Documentation/user/instrument-notation.itely: fix \new
2998         instead of \context problem.
2999
3000 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3001
3002         * lily/relocate.cc (expand_environment_variables): new function.
3003         (read_line): id.
3004         (read_relocation_file): id.
3005
3006         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3007
3008 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3009
3010         * ly/engraver-init.ly: remove old comments from TabVoice
3011
3012 2006-04-20  Graham Percival  <gpermus@gmail.com>
3013
3014         * Documentation/user/instrument-notation.itely: added Erlend's
3015         latest doc patch, thanks!
3016
3017 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3018
3019         * lily/include/slur.hh:
3020         * lily/slur.cc:
3021         * lily/phrasing-slur-engraver.cc:
3022         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3023         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3024         Slur_engraver:: and putting it in
3025         Slur::auxiliary_acknowledge_extra_object ().
3026
3027         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3028
3029         * lily/note-collision.cc: fix a comment
3030
3031 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3032
3033         * stepmake/bin/add-html-footer.py: fix footer position in
3034         generated html files: before </body> and </html> tags.
3035
3036 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3037
3038         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3039         Earlier successive `make' commands finally compiled ok.
3040
3041         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3042
3043 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3044
3045         * lily/include/stem-tremolo.hh:
3046         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3047         callers.
3048
3049         * lily/lookup.cc:
3050         * lily/include/lookup.hh: add rotated_box ()
3051
3052 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3053
3054         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3055         been generated. Fixes "can't get `--help'" bug after make clean.
3056
3057         * THANKS: alphabetize contributors.
3058
3059 2006-04-17  Graham Percival  <gpermus@gmail.com>
3060
3061         * Documentation/user/instrument-notation.itely: added Erlend's
3062         tabs and banjo doc patch.  Thanks!
3063
3064 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3065
3066         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3067
3068         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3069
3070         * scm/output-lib.scm: add some more predefined string tunings.
3071
3072         * Documentation/user/instrument-notation.itely: and doc them.
3073
3074 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3075
3076         * ly/engraver.ly: Remove obsolete comments.
3077
3078         * ly/gregorian-init.ly: Define default layout block.
3079
3080         * input/puer-fragment.ly: Updated and extended.
3081
3082 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3083
3084         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3085         pdf conversion behaviour.
3086
3087         * flower/file-name.cc (dir_name)
3088         (get_working_directory): Move from relocate.cc.
3089
3090         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3091         
3092         * lily/relocate.cc: Encapsulate sys/stat.h in
3093         HAVE_STAT_H.
3094
3095 2006-04-14  Graham Percival  <gpermus@gmail.com>
3096
3097         * Documentation/user/ various: small updates from Cameron
3098         and Juergen, thanks!
3099
3100         * Documentation/user/ various: small updates of my own.
3101
3102         * THANKS: 2.7 -> 2.8.
3103
3104 2006-04-11  Graham Percival  <gpermus@gmail.com>
3105
3106         * scm/define-context-properties.scm: typo.
3107
3108         * Documentation/user/ : many more small updates.
3109
3110 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3111
3112         * scm/define-music-types.scm: disposed "docme".
3113
3114 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3115
3116         * lily/hairpin.cc: make niente circles a bit smaller.
3117
3118 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3119
3120         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3121         get-pfa and get-*-fonts targets.
3122
3123 2006-04-10  Graham Percival  <gpermus@gmail.com>
3124
3125         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3126         music-glossary, programming-interface: more minor fixes
3127         from mailist.
3128
3129         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3130
3131         * scm/define-context-properties.scm: another old \property update.
3132         This time tested for compiling!
3133
3134 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3135
3136         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3137
3138 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3139
3140         * scm/define-context-properties.scm (all-user-translation-properties): 
3141         * Documentation/user/global.itely (Page formatting): Compile fix.
3142
3143 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3144
3145         * Documentation/user/advanced-notation.itely (Polymetric
3146         notation): Update the example to use the "+" symbol and add link
3147         to input/test/compound-time.ly.
3148
3149 2006-04-08  Graham Percival  <gpermus@gmail.com>
3150
3151         * scm/define-grob-properties.scm: clarify docs for #'direction.
3152
3153         * scm/define-context-properties.scm: update old \property override.
3154
3155         * Documentation/user/ advanced-notation, global, lilypond-book:
3156         more minor doc updates.
3157
3158 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3159
3160         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3161
3162         * scm/backend-library.scm (search-gs): oops.
3163
3164 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3165
3166         * scripts/lilypond-book.py (output): use base, not filename for href.
3167
3168         * scm/backend-library.scm: only look for gs.
3169
3170         * scripts/lilypond-book.py (output): fix printfilename.
3171
3172         * lily/parser.yy (music_function_musicless_prefix): fold together
3173         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3174
3175         * lily/slur.cc (print): only set font-size if not set yet.
3176
3177         * lily/slur-configuration.cc (add_score): improved layout of debug
3178         scoring output.
3179
3180 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3181
3182         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3183         (draw_circle): Hopefully fixed regression.
3184         Improved documentation for several procedures.
3185         
3186 2006-03-04  Werner Lemberg  <wl@gnu.org>
3187
3188         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3189
3190 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3191
3192         * scripts/musicxml2ly.py (bindir): add dynamic
3193         relocation. 
3194
3195 2006-04-04  Graham Percival  <gpermus@gmail.com>
3196
3197         * Documentation/user/ basic-notation, advanced-notation, putting,
3198         instrument-notation, invoking, lilypond, THANKS: another ream of small
3199         fixes from the Doc Helpers.
3200
3201 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3202
3203         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3204
3205         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3206
3207         * Cleaned up interfaces between PostScript and Scheme, and moved
3208         computations from PostScript to Scheme:
3209
3210         * music-drawing-routines.ps
3211         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3212         with stroke_and_fill throughout.
3213         (euclidean_length, print_letter, draw_box): Deleted unused
3214         procedures.  If someone needs draw_box, implement it using
3215         draw_round_box; don't duplicate code.
3216         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3217         Refactored/cleaned up interfaces.
3218         (mark_URI): Moved.
3219
3220         * output-ps.scm: reordered arguments to PostScript functions to
3221         match new interfaces
3222         (glyph-string): Rewrote glyph-string.
3223         (grob-cause): Replaced string-append with format.
3224         (repeat-slash): Rewrote to do computation here.
3225         (round-filled-box): Rewrote to do computation here.
3226
3227 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3228
3229         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3230
3231         * stepmake/stepmake/toplevel- targets.make: print help info about
3232         cvs-clean
3233
3234 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3235
3236         * input/regression/hairpin-circled.ly: new file
3237
3238 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3239
3240         * lily/hairpin.cc (print): add support for circled tip
3241
3242         * scm/define-grob-properties.scm: add circled-tip parameter
3243
3244         * scm/define-grobs.scm: init circled-tip to false
3245         
3246 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3247
3248         * scm/music-functions.scm (quote-substitute): set
3249         iterators-ctor. 
3250
3251 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3252
3253         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3254         BSTINPUTS. 
3255
3256         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3257
3258         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3259
3260 2006-03-31  David Feuer  <david.feuer@gmail.com>
3261         
3262         * scm/framework-ps.scm:
3263         
3264         * scm/output-ps.scm: glyph-string now produces smaller, more
3265         readable, and probably faster PostScript.  Several findfont
3266         scalefont setfont instances changed to selectfont
3267         Hacked-up string-appends changed to formats.
3268
3269         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3270         
3271 2006-03-30  Graham Percival  <gpermus@gmail.com>
3272
3273         * scm/lily-library.scm: make "no version" warning message more polite.
3274
3275         * lily/music.cc: add double quotes to failed octave check.
3276
3277         * Documentation/user/ advanced-notation, changing-defaults,
3278         instrument-notation, invoking, music-glossary: whole bunch of minor
3279         fixes from mailist.
3280
3281 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3282
3283         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3284         $(buildscriptdir) iso. depth.
3285
3286         * VERSION (PACKAGE_NAME): release 2.9.1
3287
3288 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3289
3290         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3291
3292         * VERSION (PATCH_LEVEL): bump version number.
3293
3294         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3295         scm_from_uint32 ()
3296
3297         * lily/pango-font.cc (pango_item_string_stencil): use
3298         scm_from_uint32 ()
3299
3300         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3301         $(outdir)/emmentaler-%.svg): remove canary.
3302
3303         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3304         glyphnames if we have a ttf font.
3305
3306 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3307
3308         * Documentation/user/advanced-notation.itely (Font selection):
3309         Corrected reference to the font-family-override.ly example.
3310
3311 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3312         
3313         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3314         stem-tremolo object in the stem (or else the stem might not be
3315         long enough).
3316
3317 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3318
3319         * lily/ttf.cc (print_trailer): only print existing glyphs.
3320
3321 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3322
3323         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3324         position the tremolo based on the position of the notehead.
3325
3326         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3327         notes and update the texidoc line with the new positioning rules.
3328         
3329 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3330
3331         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3332
3333         * scripts/lilypond-book.py (Module): set default for linewidth if
3334         preamble not found.
3335
3336 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3337
3338         * VERSION (PACKAGE_NAME): release 2.9.0.
3339
3340         * input/regression/stem-tremolo-position.ly: new file.
3341
3342         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3343
3344 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3345
3346         * lily/stem-tremolo.cc (print): position
3347         the tremolo depending only on the end of the stem
3348         and not on the notehead
3349         (raw_stencil): center, on the middle staff line, the
3350         flag that is closest to the end of the stem (previously
3351         the bottom flag)
3352         (calc_width): add this callback to shorten a tremolo when
3353         it is beamed or it is stemup with a flag
3354         (style): add this callback to make a tremolo rectangular when
3355         it is beamed or it is stemup with a flag
3356         (rotated_box): this is like Lookup::beam but makes a rotated
3357         rectangle instead of a parallelogram
3358
3359         * lily/stem.cc (calc_stem_info): make sure the stem
3360         is long enough to fit the tremolo
3361         (calc-length): reduce the length of tremolo stems since the
3362         tremolo code is now capable of better positioning
3363
3364         * scm/define-grobs.scm: make calc_width the default beam-width
3365         callback for stem-tremolo and add the style callback
3366                 
3367 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3368
3369         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3370         case. 
3371
3372 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3373
3374         * lily/ttf.cc (make_index_to_charcode_map): restore old
3375         cmap. 
3376
3377 2006-03-28  Werner Lemberg  <wl@gnu.org>
3378
3379         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3380
3381 2006-03-28  Graham Percival  <gpermus@gmail.com>
3382
3383         * THANKS: update for 2.9, add section for Documentation helpers.
3384
3385         * Documentation/topdocs/NEWS.tely: compile fix.
3386
3387         * Documentation/user/ basic-notation, global, advanced-notation,
3388         examples.itely: minor fixes from mailist.
3389
3390 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3391
3392         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3393         note heads. 
3394
3395         * lily/ttf.cc (print_trailer): use it.
3396
3397         * lily/pango-font.cc (get_unicode_name): new function.
3398
3399         * lily/ttf.cc (make_index_to_charcode_map): move function from
3400         open-type-font.cc
3401         (print_trailer): substitute uniXXXX name if applicable. 
3402
3403         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3404         (pango_item_string_stencil): use it to generate uniXXXX names.
3405
3406         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3407         note heads, for uniform widths in shape note output.
3408         (overdone_heads): hmm. remove them again.
3409
3410         * scripts/lilypond-book.py (output): add links to filenames.
3411
3412         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3413
3414         * lily/note-collision.cc (get_clash_groups): only consider when
3415         Note_column::dir <> CENTER. 
3416
3417         * scripts/lilypond-book.py (get_option_parser): init output_name
3418         to ''. 
3419
3420 2006-03-24  Graham Percival  <gpermus@gmail.com>
3421
3422         * Documentation/topdocs/NEWS.tely: add @end itemize
3423
3424         * Documentation/user/ global, advanced-notation: minor
3425         stuff from mailist.
3426
3427 2006-03-23  Graham Percival  <gpermus@gmail.com>
3428
3429         * Documentation/user/ lilypond.tely, music-glossary,
3430         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3431
3432 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3433
3434         * mf/GNUmakefile: don't install .enc files.
3435
3436         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3437
3438         * VERSION (PATCH_LEVEL): bump to 2.9.0
3439
3440 2006-03-22  Graham Percival  <gpermus@gmail.com>
3441
3442         * Documentation/user/advanced-notation.itely: minor fixes
3443         from mailist.
3444
3445 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3446
3447         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3448
3449         * branch lilypond_2_8
3450
3451 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3452
3453         * scripts/lilypond-book.py (samefile): new function, for windoze
3454         compatibility.
3455
3456 2006-03-21  Graham Percival  <gpermus@gmail.com>
3457
3458         * ly/engraver-init.ly: add info about StaffGroup.
3459
3460 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3461
3462         * input/regression/stem-direction-context.ly: idem.
3463
3464         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3465
3466         * THANKS: add Mats.
3467
3468         * input/regression/page-layout-twopass.ly: comment out \markup so
3469         tweak-file is left.
3470
3471         * lily/instrument-name-engraver.cc (finalize): add to instrument
3472         name global System. This also fixes chopped instrument names, but
3473         doesn't crash when there are slurs/beams.
3474
3475         * lily/slur-configuration.cc (add_score): disallow negative slur
3476         scores.
3477         
3478 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3479
3480         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3481
3482         * lily/instrument-name-engraver.cc (process_music): kludge: add
3483         InstrumentName spanner to axis group of left bound. Fixes chopped
3484         off instrument names in EPS images.
3485
3486         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3487
3488         * scripts/abc2ly.py (option_parser): update to 2.7.40
3489
3490 2006-03-20  Graham Percival  <gpermus@gmail.com>
3491
3492         * THANKS: move small doc contributors to SUGGESTIONS.
3493
3494         * Documentation/user/ basic-notation, advanced-notation,
3495         global: small changes from mailist.
3496
3497 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3498
3499         * Documentation/user/advanced-notation.itely (Text marks): update
3500         for new rehearsalMarkAlignSymbol convention.
3501
3502         * VERSION (PATCH_LEVEL): bump version.
3503
3504         * input/test/instrument-name-align.ly: new file.
3505
3506         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3507
3508         * input/test/instrument-name-align.ly: new file. Document how to
3509         align instrument names.
3510
3511         * lily/mark-engraver.cc: remove properties.
3512
3513         * scm/define-context-properties.scm
3514         (all-user-translation-properties): remove align symbol properties
3515         for barnumber/reh. mark.
3516
3517         * lily/break-align-interface.cc (self_align_callback): new
3518         interface, new function. Look at complete alignment. This handles
3519         tunable break alignments in case break-align-symbols are missing.
3520
3521         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3522
3523         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3524
3525         * python/convertrules.py (conv): mark/bar number alignment rule.
3526
3527         * lily/break-align-interface.cc (calc_positioning_done): also
3528         store offset from last visible break-alignment to its
3529         neighbor. This makes alignment on non-visible objects more reliable.
3530
3531         * po/lilypond.pot (Module): ran po-replace.
3532
3533         * input/regression/tie-single-manual.ly (Module): new file.
3534
3535         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3536         look at has_manual_position_.
3537         (from_ties): set has_manual_position_ if tie has staff-position set.
3538
3539         * lily/tuplet-bracket.cc (calc_positions): idem.
3540
3541         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3542         doesn't span time.
3543
3544 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3545
3546         * scm/define-markup-commands.scm (smallCaps): new markup command
3547         for turning a text to small caps using smaller font size and upper
3548         casing.
3549
3550 2006-03-17  Graham Percival  <gpermus@gmail.com>
3551
3552         * Documentation/user/ examples, instrument-notation,
3553         advnaced-notation: minor fixes from mailist.
3554
3555 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3556
3557         * Documentation/user/tutorial.itely (First steps): change example
3558         to verbatim.  
3559
3560 2006-03-17  Graham Percival  <gpermus@gmail.com>
3561
3562         * Documentation/user/ examples, advanced: minor changes from mailist.
3563
3564         * THANKS: add Geoff Horton, for documentation stuff.
3565
3566 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3567
3568         * python/lilylib.py (system): revert have_select kludge.
3569
3570         * Documentation/user/tutorial.itely (Commenting input files):
3571         update version numbers in doc. 
3572
3573         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3574         bound-padding to multi-measure-interface
3575
3576 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3577
3578         * input/test/engraver-example.ily: update version number.
3579
3580         * VERSION (PACKAGE_NAME): release 2.7.39
3581
3582         * lily/note-spacing.cc (get_spacing): heighten threshold where
3583         accidentals/arpeggios influence previous spacing fully.
3584
3585         * lily/rest.cc (y_offset_callback): only use direction if
3586         staff-position wasn't set before.
3587
3588         * lily/bar-number-engraver.cc: add support for
3589         barNumberAlignSymbol. 
3590         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3591
3592         * lily/pointer-group-interface.cc (set_ordered): new function. 
3593         (add_unordered_grob): new function.
3594
3595         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3596         to ordered, unless the opposite has been proved.  This fixes
3597         random reordering of large object groups across linebreaks,
3598         eg. beams.
3599
3600         * lily/main.cc (do_chroot_jail): printf format fix.
3601
3602         * lily/tie-formatting-problem.cc (generate_configuration):
3603         multiply y-shift for dot with direction.
3604  
3605         * scm/define-markup-commands.scm (note-by-number): put (magstep
3606         size) in y-attach too.
3607
3608         * Documentation/topdocs/NEWS.tely (Top): show override.
3609
3610         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3611         direction for stems.
3612         
3613 2006-03-15  Graham Percival  <gpermus@gmail.com>
3614
3615         * Documentation/user/ changing-defaults, global: minor
3616         fixes from mailist.
3617
3618 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3619
3620         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3621
3622         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3623         breakable items after uniformly stretched notes.
3624
3625         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3626         outline with outer edge of note heads. This prevents infinity
3627         problems with tied whole notes.
3628
3629         * scripts/lilypond-book.py (do_file): use os.popen
3630
3631         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3632
3633 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3634
3635         * Documentation/user/invoking.itely: Add ragged-right to bug report
3636         guidelines.
3637
3638 2006-03-14  Graham Percival  <gpermus@gmail.com>
3639
3640         * Documentation/user/global.itely: small fix from mailist.
3641
3642 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3643
3644         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3645         file descriptor returned by tempfile.mkstemp() when writing
3646         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3647         on mingw.
3648
3649 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3650
3651         * po/fi.po: newline bugfix.
3652
3653 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3654
3655         * scm/paper.scm (paper-alist): Rounding fixes.
3656
3657 2006-03-13  Graham Percival  <gpermus@gmail.com>
3658
3659         * Documentation/user/ changing-defaults, instrument-notation,
3660         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3661
3662 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3663
3664         * po/fi.po: update.
3665
3666 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3667
3668         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3669         mailto: to http:// 
3670
3671         * python/lilylib.py (print_environment): move ps_page_count to
3672         lilypond-book.py
3673
3674 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3675
3676         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3677
3678         * scm/framework-ps.scm (embed-document): new function. Use to
3679         embed PFA files.
3680
3681         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3682
3683 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3684
3685         * Documentation/user/instrument-notation.itely (Setting simple
3686         songs): Added \book{...} around the full example, so the separate
3687         markups are included in the printed example. 
3688
3689 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3690
3691         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3692         tmphandle.
3693
3694         * python/lilylib.py (system): rewrite system() using
3695         subprocess. Remove >& redirection trickery.
3696
3697 2006-03-11  Graham Percival  <gpermus@gmail.com>
3698
3699         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3700         notation-appendices.itely: minor fixes from mailist.
3701
3702 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3703
3704         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3705         unsplit man also needs images.
3706
3707         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3708
3709         * VERSION (PACKAGE_NAME): 2.7.38 released.
3710
3711 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3712
3713         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3714         log in output dir.
3715
3716 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3717
3718         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3719         respects the Score.skipTypesetting property.
3720         
3721 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3722
3723         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3724         Prolog. No %%EOF after CFF file.
3725
3726 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3727         
3728         * lily/constrained-breaking.cc (get_max_systems): used to return a
3729         much too big value
3730         (combine_demerits): use pointers to reduce copying data
3731         (calc_subproblem): idem
3732         (get_page_penalty): add page turn penalties
3733         
3734 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3735
3736         * Documentation/user/invoking.itely (Invoking lilypond): better
3737         explanation of -e usage.
3738
3739         * lily/main.cc (main_with_guile): don't append to
3740         init_scheme_code_string
3741
3742         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3743
3744         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3745
3746         * scripts/convert-ly.py (do_options): don't print help for
3747         --show-rules rule.
3748
3749         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3750         @code and @example. Update from texinfo.tex from CVS.
3751
3752 2006-03-08  Graham Percival  <gpermus@gmail.com>
3753
3754         * Documentation/user/scheme-tutorial.itely: clarifies distances
3755         measured in staff-spaces.
3756
3757 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3758
3759         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3760         consider[k] is true.
3761
3762         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3763
3764         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3765         consider columns that have originals.  Unifies spacing for mm
3766         rests around line breaks.
3767
3768         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3769         (set_text_rods): idem.
3770         (calculate_spacing_rods): new function: share code between
3771         set_text_rods and set_spacing_rods.
3772         (set_text_rods): take extents of bounds into account.  
3773
3774 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3775
3776         * Documentation/user/basic-notation.itely (Writing music in
3777         parallel): don't use relative.
3778
3779 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3780
3781         * ly/music-functions-init.ly (Module): add shiftDurations
3782
3783         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3784
3785         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3786
3787         * ly/engraver-init.ly: init vocalName to nil.
3788
3789 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3790
3791         * scm/music-functions.scm (music->make-music): bugfix,
3792         KeyChangeEvents are now handled correctly.
3793
3794         * scripts/lilypond-book.py: Add --debug option.
3795
3796 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3797
3798         * python/lilylib.py: add tempfile.
3799
3800 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3801
3802         * VERSION (PACKAGE_NAME): release 2.7.37
3803
3804         * python/lilylib.py (ps_page_count): remove make_ps_images().
3805         (ps_page_count): remove mkdir_p
3806         (system): remove cleanup_temp.
3807         (exit): remove lilypond_version_(check)
3808         (error_log): remove pseudo_filter_p
3809         remove read_pipe
3810         remove cp_to_dir
3811         remove identify
3812
3813         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3814         use __main__
3815
3816         * lily/accidental-engraver.cc (make_standard_accidental): only add
3817         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3818
3819         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3820         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3821         Make incompatibilities.
3822
3823         * scm/output-ps.scm (grob-cause): replace backslashes by /
3824         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3825
3826 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3827
3828         * cygwin/GNUmakefile: Install fixes.
3829
3830         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3831
3832         * lily/note-head.cc (head::get_balltype): Compile fix.
3833
3834         * flower/file-name.cc (dos_to_posix): Flower string fix.
3835
3836 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3837
3838         * python/lilylib.py: pychecker cleanups.
3839
3840         * scripts/lilypond-book.py
3841         (Lilypond_snippet.output_print_filename): pychecker cleanups
3842
3843         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
3844
3845         * python/lilylib.py (underscore): remove identify() , warranty()
3846
3847         * ps/music-drawing-routines.ps: change Border routine for GSView
3848         compatibility.
3849
3850         * lily/stem.cc (height): use quantize-positions.  This triggers
3851         set_stem_lengths, so scripts on beamed stems are handled correctly.
3852
3853         * lily/side-position-interface.cc (aligned_side): check if edges
3854         of script are inside staff. Fixes accent of edge of the staff.
3855
3856         * input/regression/staccato-pos.ly: more examples.
3857
3858         * stepmake/aclocal.m4 (depth): fix bashism.
3859
3860         * lily/lyric-combine-music-iterator.cc: move from
3861         new-lyric-combine-iterator.cc
3862         (process): add pending_grace_lyric_ member to delay lyrics on
3863         grace notes.
3864
3865         * lily/system-start-text.cc (print): suicide if we don't have any
3866         elements. Fixes hara kiri'd instrument names.
3867
3868         * scripts/mup2ly.py (Module): remove.
3869
3870 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3871
3872         * Documentation/user/global.itely (A single music expression):
3873         close @lilypond properly
3874
3875         * lily/volta-bracket.cc (modify_edge_height): change from
3876         after_line_breaking_callback. Suicide last bracket if appropriate.
3877  
3878         * python/lilylib.py: strip getopt support
3879
3880         * scripts/etf2ly.py (do_options): use optparse
3881
3882         * scripts/midi2ly.py: optparse, strip lilylib copy. 
3883
3884         * scripts/abc2ly.py (voices): use optparse.
3885
3886         * stepmake/stepmake/generic-vars.make: new function absdir.
3887
3888         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
3889
3890         * scripts/lilypond-book.py (find_file): use global_options for
3891         include path
3892
3893         * scm/ps-to-png.scm (ps-page-count): prevent null characters
3894         entering C code.
3895
3896 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3897
3898         * python/lilylib.py (get_global_option): ughness for extracting
3899         global options from lilylib.
3900         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
3901
3902         * scripts/lilypond-book.py (get_option_parser): use optparse for
3903         option handling.  Put options in global_options variable.
3904
3905 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
3906
3907         * Documentation/index.html.in: clarify.
3908
3909 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3910
3911         * scm/layout-page-layout.scm (write-page-breaks): add a
3912         music-system-heights property to the page layout output.
3913
3914         * scm/page.scm (make-page-stencil): take footer into account when
3915         computing the 'space-left page property
3916         (annotate-space-left): take footer into account when annonating
3917         space left.
3918
3919 2006-02-28  Graham Percival  <gpermus@gmail.com>
3920
3921         * Documentation/user/ advanced-notation, global: more (final)
3922         docs for music expressions, removed special fermatas.
3923
3924 2006-02-27  Graham Percival  <gpermus@gmail.com>
3925
3926         * Documentation/user/ basic-notation, global: minor changes
3927         from mailist.
3928
3929 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3930
3931         * scm/framework-ps.scm:         
3932         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
3933         layer for inf? and nan? from framework-ps to lily-library.
3934
3935 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3936
3937         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
3938         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
3939
3940         * buildscripts/substitute-encoding.py (Module): remove file.
3941
3942         * mf/GNUmakefile: more PFA strippage.
3943
3944         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
3945
3946         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
3947         generation
3948
3949         * scm/framework-ps.scm: remove font name munging.
3950
3951         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
3952
3953 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3954
3955         * scm/markup.scm (define-markup-command): change
3956         def-markup-command to define-markup-command
3957
3958         * scm/music-functions.scm (define-music-function): change
3959         def-music-function to define-music-function.
3960
3961         * python/convertrules.py (conv): rules for def-music-function
3962         and def-markup-commands
3963
3964         * Documentation/user/programming-interface.itely,
3965         input/no-notation/display-lily-tests.ly,
3966         input/regression/lily-in-scheme.ly,
3967         input/regression/markup-user.ly,
3968         input/regression/music-function.ly, input/regression/tie-chord.ly,
3969         scm/fret-diagrams.scm, ly/music-functions-init.ly,
3970         ly/gregorian-init.ly: use new macro names (define-music-function,
3971         define-markup-command).
3972
3973 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3974
3975         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
3976         (output): add comments to lp-book latex output.
3977
3978         * GNUmakefile.in (footifymail): use gmane address for webpage bug
3979         address.
3980
3981 2006-02-23  Graham Percival  <gpermus@gmail.com>
3982
3983         * Documentation/user/ tutorial, global: minor changes.
3984
3985 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3986
3987         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
3988         blocks (for make 3.80)
3989
3990         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
3991         \notemode so that user should not have to explicitely type it.
3992
3993         * scm/define-music-display-methods.scm: various
3994         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
3995         constructs)
3996
3997         * input/no-notation/display-lily-tests.ly: new tests for
3998         \applyOutput and \applyContext
3999
4000 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4001
4002         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4003         changed it slightly so that the number of systems returned by
4004         solve () will be the same as the last value passed to resize
4005         (). I've also added more documentation, removed casts, fixed style
4006         problems and put in some recovery if constraints aren't satisfied."
4007
4008 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4009
4010         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4011         for emacs < 22 compatibility.
4012         (count-rexp): Use it.
4013         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4014         substring juggling (Milan Zamazal).
4015
4016 2006-02-23  Graham Percival  <gpermus@gmail.com>
4017
4018         * Documentation/user/ basic-notation, advanced-notation,
4019         global.itely, invoking.itely, tutorial,itely:
4020         minor fixes from mailist.
4021
4022         * scm/define-markup-commands.scm: improve docs of \filled-box.
4023
4024 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4025
4026         * Documentation/index.html.in: changes concern the previous release.
4027
4028         * input/regression/+.ly: cultivate typographical terminology.
4029
4030 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4031
4032         * scm/define-grob-interfaces.scm (parentheses-interface): add
4033         padding to parentheses-interface.
4034
4035         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4036         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4037
4038         * VERSION (PATCH_LEVEL): release 2.7.36
4039
4040         * lily/slur.cc: add avoid-slur (ugh.)
4041         
4042         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4043         intersection gets smaller. This fixes slurs over extreme points.
4044
4045         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4046         stems with neutral-direction set.
4047
4048         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4049
4050         * lily/open-type-font.cc (load_table): format error.
4051
4052         * lily/change-iterator.cc (process): format fix.
4053
4054         * flower/include/international.hh (_f): idem.
4055
4056         * flower/include/std-string.hh: add format printf attribute.
4057
4058         * scm/define-grobs.scm (all-grob-descriptions): height of all
4059         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4060
4061         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4062         ambitus lines.
4063
4064         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4065
4066 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4067
4068         * input/regression/: upgraded syntax for some files.
4069
4070         * THANKS: Add bughunters.
4071
4072 2006-02-22  Graham Percival  <gpermus@gmail.com>
4073
4074         * Documentation/user/ invoking.itely, advanced-notation.itely,
4075         global.itely: long-awaited "let's make chapter 10 not suck"
4076         update.  Rearrange chapter 10; now called "global issues",
4077         addresses file structure, etc.  Some info from other files
4078         moved into global.itely.
4079
4080 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4081
4082         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4083         catch trill-span-event notes.
4084
4085         * Documentation/user/examples.itely (Ancient notation templates): typo.
4086         (Jazz combo): typo.
4087
4088         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4089
4090         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4091
4092         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4093
4094         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4095
4096         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4097         froum Laissez_vibrer_engraver.
4098
4099         * ly/declarations-init.ly (repeatTie): add \repeatTie
4100
4101         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4102
4103         * scm/define-grob-properties.scm (all-user-grob-properties): add
4104         head-direction property.
4105
4106         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4107         from_lv_ties. Take head direction argument.
4108
4109         * lily/semi-tie-column.cc: rename from
4110         laissez-vibrer-tie-column.cc. Rename class too.
4111
4112         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4113         class too.
4114
4115         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4116
4117         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4118         0 case.
4119         (find_breaks): idem.
4120
4121 2006-02-21  Graham Percival  <gpermus@gmail.com>
4122
4123         * Documentation/user/advanced-notation.itely: fixed make-moment]
4124         example.
4125
4126         * Documentation/user/basic-notation.itely: more clarification to
4127         transpose.
4128
4129 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4130
4131         * lily/include/constrained-breaking.hh (class
4132         Constrained_breaking): new file.
4133
4134         * lily/constrained-breaking.cc (resize): new file.
4135
4136         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4137
4138         * Documentation/user/advanced-notation.itely (Clusters): insert
4139         end ignore too.
4140
4141         * lily/tie-column.cc (calc_positioning_done): support for
4142         tie-score debugging
4143
4144         * lily/tie-formatting-problem.cc
4145         (generate_extremal_tie_variations): factor out.
4146         (score_ties_configuration): annotate all tie 
4147         (print_ties_configuration): new routine.
4148         (generate_configuration): nudge extremal ties outside of the head
4149         Y extents.
4150         (score_ties_configuration): oops. convert to staff-space before
4151         determining position symmetry.
4152
4153 2006-02-20  Graham Percival  <gpermus@gmail.com>
4154
4155         * Documentation/user/*-notation.itely: misc minor editing,
4156         shifting doc sections around.
4157
4158         * Documentation/user/*-notation-itely, global.itely,
4159         changing-defaults.itely: added new stuff from NEWS.
4160
4161 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4162
4163         * po/fi.po: update.
4164
4165 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4166
4167         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4168         lilypond --verbose for lp-book.
4169
4170         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4171         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4172
4173         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4174         $(buildscript-dir) iso. absolute depth.
4175
4176         * buildscripts/genicon.py (dir): thinko.
4177
4178         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4179
4180 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4181
4182         * scm/output-lib.scm: swap darkcyan/darkyellow
4183
4184         * THANKS: Add bughunters.
4185
4186 2006-02-19  Graham Percival  <gpermus@gmail.com>
4187
4188         * Documentation/user/programming-interfaces.itely: fixed example.
4189
4190         * Documentation/user/instrument-notation.itely: fix @{ @}.
4191
4192         * scm/script.scm: add avoid-slur for \open.
4193
4194 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4195
4196         * lily/tie-formatting-problem.cc (score_configuration): use
4197         sliding score for min-length. 
4198
4199         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4200         spaghetti for icons.
4201
4202         * buildscripts/genicon.py (program_name): new file.
4203
4204         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4205         in outline too.  
4206         (generate_configuration): for small ties, also look for collisions
4207         at Y + DIR*h + DELTA_Y.
4208         (get_variations): consider variation for dot positions too.
4209
4210         * lily/side-position-interface.cc (aligned_side): take abs for
4211         quantized rounded position. Fixes tenuto below staff.
4212
4213         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4214         markers when necessary.
4215
4216         * lily/program-option.cc (internal_set_option): add
4217         strict_infinity_checking option.
4218
4219         * scm/output-lib.scm (cyan): swap yellow and cyan.
4220
4221 2006-02-19  Graham Percival  <gpermus@gmail.com>
4222
4223         * darwin.patch: trivial linenumber update.
4224
4225         * Documentation/user/ {various}: `\context foo = named' changed
4226         to `\new foo = "name"' in docs.
4227
4228 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4229
4230         * scm/stencil.scm (annotate-y-interval): use it.
4231
4232         * scm/lily-library.scm (interval-sane?): new function.
4233
4234         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4235         tfm_checksum stuff.
4236
4237         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4238         common refpoint.
4239
4240         * flower/include/std-vector.hh (iterof): add iterof macro.
4241
4242         * lily/enclosing-bracket.cc (width): new function.
4243
4244         * lily/align-interface.cc (align_elements_to_extents): reinstate
4245         warning.
4246
4247 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4248
4249         * Documentation/index.html.in: fix spelling: thankyous.
4250
4251 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4252
4253         * lily/lyric-hyphen.cc: typo.
4254
4255 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4256
4257         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4258         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4259         builds don't work. 
4260
4261         * VERSION: release 2.7.35
4262
4263         * lily/beam.cc (get_default_dir): oops. Take abs () for
4264         extremes[DOWN].
4265         (get_default_dir): use extreme position criterion only in absence
4266         of forced stem directions.
4267
4268         * VERSION (PATCH_LEVEL): bump VERSION.
4269
4270         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4271         dependencies. Necessary for -jX builds.  
4272
4273 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4274
4275         * lily/relocate.cc (setup_paths): Yet another const fix.
4276
4277 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4278
4279         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4280
4281         * lily/relocate.cc (setup_paths): oops.
4282
4283 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4284
4285         * Documentation/index.html.in: order links: html before PDF.
4286
4287 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4288
4289         * lily/tie-column-format.cc (Module): remove.
4290
4291         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4292
4293         * lily/text-spanner.cc (print): idem.
4294
4295         * lily/dynamic-text-spanner.cc (print): only print line if longer
4296         than dash-period.
4297
4298         * lily/auto-change-iterator.cc (change_to): formatting.
4299
4300         * lily/beam.cc (get_default_dir): take extreme note head as input
4301         for stem direction.
4302
4303         * lily/tie.cc (get_default_dir): only look directions for visible
4304         stems. 
4305
4306         * lily/side-position-interface.cc (aligned_side): oops. Don't
4307         mutiply with direction. This fixes quantized (staccato, tenuto)
4308         scripts below notes.
4309
4310         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4311         direction. Fixes c-lyrics-center-align.ly
4312
4313 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4314
4315         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4316         constructor.
4317
4318         * lily/std-string.cc:
4319         * lily/include/std-vector.hh (split_string): Move and rename from
4320         lily/include/misc.hh, lily/misc.cc.  Update callers.
4321
4322 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4323
4324         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4325
4326 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4327
4328         * flower/test-file.cc: New file.
4329
4330         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4331         libraries.
4332
4333         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4334
4335 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4336
4337         * flower/include/file-storage.hh: remove file.
4338
4339         * lily/include/midi-item.hh (class Midi_track): idem.
4340
4341         * lily/include/source.hh (class Sources): idem.
4342
4343         * lily/include/performance.hh (class Performance): use vector
4344         iso. Cons<>
4345
4346         * flower/include/cons.hh (class Cons): remove file.
4347
4348         * flower/include/flower-proto.hh: remove template cruft.
4349
4350         * lily/include/font-metric.hh: use size_t not vsize for indices.
4351
4352         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4353         from proto.
4354
4355         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4356
4357         * lily/include/paper-book.hh (class Paper_book):
4358         make get_system_specs() public.
4359
4360         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4361         the force=10000 case if we don't have a current-best. 
4362
4363         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4364         vsize 
4365
4366         * flower/include/flower-proto.hh: remove outdated templates.
4367
4368         * scm/page.scm: use annotate-spacing
4369
4370 2006-02-15  Graham Percival  <gpermus@gmail.com>
4371
4372         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4373
4374         * THANKS: moved Erlend Aasland to contributors.
4375
4376 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4377
4378         * config.hh.in: remove HAVE_PANGO_16
4379
4380         * lily/tuplet-bracket.cc (calc_positions): multiply with
4381         staff-space for beam case. This fixes tuplets+beams on scaled
4382         staves.
4383
4384         * config.hh.in: remove all Kpathsea related defines.
4385
4386         * lily/dot-column.cc (side_position): reach stem via dots->
4387         head->stem. Inspect all stems for dot collisions. 
4388
4389         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4390         stem handling.
4391
4392         * lily/bar-number-engraver.cc (process_music): document function
4393         of whichBar.
4394
4395         * lily/score.cc (default_rendering): add pscore, not systems
4396         themselves.
4397
4398         * lily/paper-book.cc (get_system_specs): separate generation of
4399         titles and systems.
4400
4401         * flower/include/std-vector.hh: don't include config.hh
4402
4403 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4404
4405         * flower/include/std-vector.hh: Better wrapper compatibility with
4406         std::vector.
4407
4408         * flower/include/flower-proto.hh: Remove cheap forward declaration
4409         attempts.
4410
4411         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4412
4413 2006-02-14  Graham Percival  <gpermus@gmail.com>
4414
4415         * Documentation/user/invoking.itely: add warning about command line.
4416
4417 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4418
4419         * lily/include/lily-proto.hh: add Prob, rm Page.
4420
4421         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4422
4423         * VERSION: release 2.7.34
4424
4425         * lily/relocate.cc (framework_relocation): show canary if
4426         GHOSTSCRIPT_VERSION undefined.
4427
4428         * GNUmakefile.in: remove $(VERSION) symlink.
4429
4430         * lily/relocate.cc (setup_paths): add + 
4431
4432 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4433
4434         * Documentation/index.html.in: specify sizes for all big HTML pages.
4435
4436 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4437
4438         * config.hh.in: remove @FRAMEWORKDIR@
4439
4440         * lily/system-start-text.cc (get_stencil): new file: separate out
4441         system-start-delimiter text support.
4442
4443         * input/**ly: replace \context with \new where appropriate.
4444         
4445         * THANKS: add Don.
4446
4447         * lily/slur-scoring.cc (get_base_attachments): use
4448         robust_relative_extent. This fixes problems with empty paper-columns. 
4449
4450 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4451
4452         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4453
4454         * scm/define-music-properties.scm (all-music-properties):
4455         create-new property.
4456
4457         * lily/context-specced-music-iterator.cc (construct_children):
4458         inspect 'create-new property iso. magical $uniqueContextId context
4459         id.
4460
4461         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4462
4463         * lily/context-key-manager.cc (Module): new file. Encapsulate
4464         object key generation.
4465
4466         * lily/include/context-key-manager.hh (Module): new file.
4467
4468 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4469
4470         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4471         names vertically
4472
4473         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4474         options.
4475         (reloc_b): excise --enable-framework-dir
4476
4477         * lily/relocate.cc (framework_relocation): use getenv
4478         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4479
4480 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4481
4482         * flower/include/std-string.hh: 
4483         * flower/include/std-vector.hh: Finish std:: conversion; move
4484         flower extensions from std:: namespace.  Update users.
4485
4486         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4487         their expansion to vector<*>.  Update users.
4488
4489 2006-02-10  Graham Percival  <gpermus@gmail.com>
4490
4491         * Documentation/user/invoking.itely: add example to File structure.
4492
4493         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4494         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4495
4496 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4497
4498         * ly/paper-defaults.ly: typo.
4499
4500         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4501         set_parent() for parentheses. This will make it show up in bbox
4502         calculations.
4503
4504         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4505         ly:grob-common* functions.
4506
4507         * lily/grob-scheme.cc (LY_DEFINE):
4508         ly:grob-common-refpoint-of-array: new function 
4509         ly:grob-common-refpoint: new function 
4510         ly:grob-relative-coordinate: new function 
4511
4512         * lily/instrument-name-engraver.cc (process_music): use
4513         Text_interface::is_markup(). This fixes \markup on instrument names.  
4514
4515         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4516         for ties and slurs.
4517
4518         * lily/slur.cc (print): idem.
4519
4520         * lily/tie.cc: add line-thickness for ties. 
4521
4522 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4523
4524         * scm/output-svg.scm: Document diversion from GNU coding standards
4525         as a workaround for a bug in Microsoft Internet Explorer.
4526
4527 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4528
4529         * lily/instrument-name-engraver.cc (process_music): use
4530         is_markup() iso. is_string()
4531
4532         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4533
4534         * lily/percent-repeat-engraver.cc (process_music): only look at
4535         main_part_ for % repeats.
4536
4537         * lily/stem-tremolo.cc (get_beam_translation): new function.
4538         (calc_slope): new function.
4539         (height): don't use real slope.
4540
4541 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4542
4543         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4544         new connect-to-neighbor, control-points and staff-padding
4545         properties to make ligature brackets showing up again.
4546
4547 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4548
4549         * VERSION: release 2.7.33
4550
4551         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4552         too many.
4553
4554         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4555         remove applyOutput example.
4556         (Objects connected to the input): document \tweak, \parenthesize
4557
4558         * lily/relocate.cc (prefix_relocation): allow "current"
4559         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4560         changing VERSION in a lily tree less painful.
4561
4562         * input/regression/parenthesize.ly: new file. 
4563
4564         * scm/output-lib.scm (parenthesize-element): new function.
4565
4566         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4567
4568         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4569
4570         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4571         cause: accidentals are caused by note heads, not note events. 
4572
4573 2006-02-08  Graham Percival  <gpermus@gmail.com>
4574
4575         * darwin.patch: small patch from Erlend, thanks!
4576
4577         * Documentation/user/basic-notation.itely: add stem-neutral example.
4578
4579         * Documentation/user/putting.itely: clarifications.
4580
4581 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4582
4583         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4584         note, add more guidelines to what should go into NEWS.
4585
4586         * input/sakura-sakura.ly: document how to override font.
4587
4588         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4589
4590 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4591
4592         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4593
4594 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4595
4596         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4597         convertrules.  Add explicit grouping, needed for python2.2.
4598
4599 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4600
4601         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4602
4603 2006-02-07  Graham Percival  <gpermus@gmail.com>
4604
4605         * Documentation/user/global.itely: fix line-width in (text) docs.
4606
4607         * Documentation/user/lilypond-book.itely: same.
4608
4609 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4610
4611         * VERSION (PACKAGE_NAME): release 2.7.32
4612
4613         * Documentation/topdocs/NEWS.tely (Top): document new variable
4614         naming.
4615
4616         * flower/include/array.icc (Message): remove file.
4617
4618         * flower/include/std-vector.hh: make sure vsize and VPOS are
4619         defined for binary_search_bounds().
4620
4621         * flower/std-string.cc (std): add to_string(long unsigned).
4622
4623         * configure.in (gui_b): excise std_string option.
4624         (gui_b): excise std_vector option.
4625
4626         * flower/string.cc (Module): excise flower array & string
4627
4628         * flower/include/std-string.hh: excise flower string.
4629
4630         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4631
4632         * python/convertrules.py (lilypond_version_re_str): require
4633         only numbers and dots in \version string.
4634
4635 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4636
4637         * lily/system-start-delimiter.cc (print): allow style = text too.
4638
4639         * lily/system-start-delimiter-engraver.cc
4640         (acknowledge_system_start_text): new function, also add add to
4641         support of system-start-text (instrument names). This fixes
4642         instrument names on piano staves.
4643
4644         * lily/instrument-name-engraver.cc: rewrite. Use
4645         system-start-delimiter approach. This save memory and cpu.
4646
4647         * scm/define-grobs.scm (all-grob-descriptions): remove
4648         instrument-name from break-alignment.
4649
4650         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4651
4652 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4653
4654         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4655         jobserver going.
4656
4657         * configure.in (std_vector): On by default.
4658
4659         * lily/include/font-metric.hh:
4660         * lily/include/tfm-reader.hh: 
4661         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4662         Update users.
4663
4664         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4665
4666 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4667
4668         * VERSION (PACKAGE_NAME): 2.7.31
4669
4670         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4671         EPS edge at 0, but take minimum with left-overshoot. This fixes
4672         cut off system start delims. 
4673
4674         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4675         hack: add to axis group if not added yet. This fixes hara kiri'd
4676         piano staves.
4677
4678         * lily/hara-kiri-group-spanner.cc
4679         (force_hara_kiri_in_y_parent_callback): fix signatures.
4680
4681         * lily/hairpin.cc (print): check next hairpin to see whether or
4682         not to be continuing.
4683
4684 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4685
4686         * Remove trailing whitespace from makefiles.
4687         
4688         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4689         for earlier gcc.
4690
4691         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4692
4693         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4694
4695         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4696
4697         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4698
4699         * configure.in: Use it.
4700
4701 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4702
4703         * scm/music-functions.scm (pitch-of-note): new function.
4704
4705         * ly/music-functions-init.ly: add \octave and \addquote
4706
4707         * lily/parser.yy (music_function_chord_body): softcode \octave.
4708         (lilypond_header): softcode \addquote
4709
4710 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4711
4712         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4713         array.hh, parray.hh at all.  Getting ready to flip the
4714         configure default.
4715
4716         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4717
4718         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4719         a bit.
4720
4721         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4722
4723 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4724
4725         * flower/include/array.hh: typo. 
4726
4727 2006-02-02  Graham Percival  <gpermus@gmail.com>
4728
4729         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4730
4731 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4732
4733         * flower/include/pqueue.hh: Derive from std::vector.
4734
4735         * flower/include/parray.hh: Conform to std::vector interface.
4736         Update users.
4737
4738 2006-02-02  Graham Percival  <gpermus@gmail.com>
4739
4740         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4741
4742 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4743
4744         * flower/file-path.cc (is_file): remove if 0 section.
4745
4746         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4747         selecting afii61352.
4748
4749 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4750
4751         * flower/include/std-vector.hh (boundary): Oops, reverse.
4752
4753         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4754         remove superfluous `d'.
4755
4756         * flower/include/std-vector.hh (boundary, top): Detach from class.
4757         Remove empty vector shell.
4758
4759         * flower/include/array.hh (reverse, swap): Detach from class.
4760         Update users.
4761         
4762         * flower/include/std-vector.hh
4763         * flower/include/array.hh (concat): Globally change to insert ().
4764
4765         
4766         * flower/include/std-vector.hh
4767         * flower/include/parray.hh
4768         * flower/include/array.hh (elem, elem_ref): Globally replace by
4769         at ().
4770
4771 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4772
4773         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4774
4775         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4776         anticipate on identifier substitutions.
4777
4778 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4779
4780         * flower/include/std-vector.hh (insert): Remove, replace by
4781         std::vector interface.  Update callers.
4782
4783         * flower/include/array.icc (insert): Change signature to
4784         match std::vector interface.
4785         
4786         * flower/include/array.icc (vector_sort): Bugfix.
4787
4788 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4789
4790         * lily/parser.yy (output_def_head_with_mode_switch): new
4791         production. Result: dashes and underscores may be used in the
4792         \paper block.
4793
4794         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4795
4796         * python/convertrules.py (conv): oops. One slash too much.
4797
4798 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4799
4800         * flower/include/std-vector.hh (sort): Remove, replace by
4801         ::vector_sort.  Update callers.
4802
4803         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4804         (sort): Bugfix.
4805
4806         * flower/test-std.cc (vector_sort): New test.
4807
4808 2006-02-01  Graham Percival  <gpermus@gmail.com>
4809
4810         * Documentation/user/putting.itely: fixes from Erik.
4811
4812 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4813
4814         * flower/test-std.cc: Add simple unit test for vector migration.
4815
4816         * stepmake/stepmake/test*: Unit test support.
4817
4818         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4819         update callers.
4820
4821         * flower/include/array.hh (begin, end): Add.
4822         (del, get): Remove.
4823
4824 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4825
4826         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4827         std::string not String. 
4828
4829         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4830         iso UINT_MAX.
4831
4832         * lily/prob.cc (Prob): copy type_ too.
4833
4834         * lily/lily-guile.cc (mangle_cxx_identifier): new
4835         function. Class_bla::foo_bar_[px] ->
4836         ly:class-bla::foo-bar[?!]. Changes throughout
4837
4838 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4839
4840         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4841
4842         * lily/beam.cc (calc_direction): take dir from visible stem in
4843         degenerate case.
4844
4845 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4846
4847         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
4848         Fix -1, >=0 boundary checks for unsigned vsize.
4849
4850         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
4851         loop for unsigned vsize.
4852
4853         * configure.in (--enable-std-vector): New option.
4854         (--enable-std-string): On by default.
4855
4856         * flower/include/std-vector.hh: New file.  Enable switch to
4857         std::vector, update client code.
4858
4859 2006-01-30  Graham Percival  <gpermus@gmail.com>
4860
4861         * scm/document-translation.scm: clarify "this context is also
4862         known as".  Thanks, Werner!
4863
4864         * Documentation/user/putting.itely: small fixes from Don Blaheta.
4865
4866         * Documentation/user/invoking.itely: small fix from Don.
4867
4868 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4869
4870         * scm/lily.scm (define-scheme-options): rename option
4871         preview-include-book-title to book-title-preview
4872         (define-scheme-options): move force-eps-font-include (from paper
4873         block) to eps-font-include -d option.
4874
4875         * VERSION (PATCH_LEVEL): release 2.7.30
4876
4877         * input/bach-schenker.ly (staffPiano): new file.
4878
4879         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
4880
4881         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
4882         credits to Nicolas.
4883
4884         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
4885
4886         * ps/lilyponddefs.ps: remove start-system, stop-system,
4887         start-page fluff. This saves putting { } code on the stack, fixing
4888         stack overflows when including EPS files.
4889
4890 2006-01-29  Graham Percival  <gpermus@gmail.com>
4891
4892         * Documentation/user/putting.itely: minor fixes (comments on -devel).
4893
4894 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4895
4896         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
4897
4898 2006-01-28  Graham Percival  <gpermus@gmail.com>
4899
4900         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
4901
4902 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4903
4904         * input/mutopia/claop.py: Update.
4905
4906 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4907
4908         * input/regression/completion-heads.ly (texidoc): fix.
4909
4910         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
4911
4912         * lily/tie-formatting-problem.cc
4913         (set_ties_config_standard_directions): use abs iso fabs for ints.
4914
4915         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
4916
4917         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
4918         little less than noteheight, to prevent overlaps in chords.
4919
4920         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
4921         head, and fudge stem-attachment.
4922
4923         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
4924
4925         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
4926
4927 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
4928
4929         * lily/main.cc (main): Debugging aid: catch exceptions.
4930
4931         * flower/std-string.cc (to_string): Robustification.  Fixes midi
4932         output with std::string.
4933
4934 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4935
4936         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
4937
4938 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4939
4940         * Fix -DSTRING_UTILS_INLINED.
4941
4942 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4943
4944         * VERSION (PATCH_LEVEL): release 2.7.29
4945
4946         * lily/relocate.cc (setup_paths): mingw uses std string too.
4947
4948         * lily/*.cc: various fixes for substr(ARG).
4949
4950         * lily/sustain-pedal.cc (print): 
4951
4952         * flower/file-name.cc (slashify): use std strings.
4953
4954         * flower/string-convert.cc: remove publib.h
4955
4956         * scm/define-markup-commands.scm (verbatim-file): new markup
4957         command \verbatim-file
4958
4959         * Documentation/topdocs/NEWS.tely: fixup URLs
4960
4961         * input/regression/alignment-vertical-manual-setting.ly (Module):
4962         new file.
4963
4964         * lily/align-interface.cc (align_elements_to_extents): overwrite
4965         translations with numbers in alignment-offsets from left bound
4966
4967         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
4968         (page-translate-systems): new function: take into account Y-offset.
4969
4970         * Documentation/topdocs/NEWS.tely (Top): document new features.
4971
4972         * input/regression/page-layout-manual-position.ly (Module): new
4973         file.
4974
4975 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4976
4977         * flower/file-path.cc (path::parse_path): Oops.
4978
4979         * Finish std::string interface.  For now, use std:: marker
4980         throughout for easy s/r.
4981
4982 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4983
4984         * Documentation/user/putting.itely (Score is a single musical
4985         expression): typo.
4986         (Score is a single musical expression): more typos.
4987
4988         * scm/page.scm (annotate-space-left): thinko.
4989         (annotate-page): more thinkos.
4990
4991 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4992
4993         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
4994         for different \score blocks separately.
4995         (post-process-pages): put write-page-layout into paper block.
4996
4997         * lily/output-def.cc (get_parser): new file.
4998
4999         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5000         file.
5001
5002         * lily/include/output-def.hh (class Output_def): add parser_ member.
5003
5004         * input/regression/page-layout-twopass.ly (Module): new file.
5005
5006         * scm/lily.scm: remove cpp hack.
5007
5008         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5009
5010 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5011
5012         * GNUmakefile.in (c-clean): New target.
5013
5014         * flower/include/std-string.hh: String/std::string compatibility:
5015         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5016         type.
5017
5018         * flower/rational.cc: 
5019         * flower/include/rational.hh: 
5020
5021         * flower/offset.cc: 
5022         * flower/include/offset.hh: 
5023
5024         * flower/interval.cc: 
5025         * flower/include/interval.hh: 
5026
5027         * flower/string-convert.cc: 
5028         * flower/include/string-convert.hh: Use std::string [interface].
5029         Update callers.
5030
5031 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5032
5033         * Documentation/index.html.in: clean up.
5034
5035 2006-01-25  Graham Percival  <gpermus@gmail.com>
5036
5037         * Documentation/user/putting.itely: another new untested doc section.
5038
5039 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5040
5041         * scm/layout-page-layout.scm (write-page-breaks): write
5042         \spacingTweaks #ALIST. Handle grace timing.
5043
5044         * scm/: more imports.
5045
5046         * scm/page.scm (make-page): add footer/header.
5047         (annotate-space-left): revise: only take page argument.
5048         (layout->page-init): new function.
5049
5050         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5051         version of the system/spacing/linebreak hack writing to the output
5052
5053         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5054         ly:make-prob.
5055
5056         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5057         ly:spanner-bound
5058
5059 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5060
5061         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5062
5063         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5064
5065         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5066         handling to page.scm
5067
5068         * lily/prob-scheme.cc (LY_DEFINE): new file.
5069         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5070
5071         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5072         prob functions.
5073
5074         * lily/music.cc (derived_mark): derive Music from Prob.
5075
5076         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5077
5078         * lily/prob.cc (Module): Implement Prob (Property Object), object
5079         with shared and r/w property alists.  
5080
5081         * lily/include/prob.hh (Module): new file. Declare Prob.
5082
5083         * flower/string.cc: remove is_empty().
5084
5085         * flower/include/string.hh (class String): remove String:: qualifier.
5086
5087         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5088         substitute appropriate functions.
5089
5090         * flower/include/string.hh (class String): remove to_str0 and
5091         is_empty(). S&R everywhere.
5092
5093 2006-01-23  Graham Percival  <gpermus@gmail.com>
5094
5095         * Documentation/user/basic-notation.itely: add hairpin
5096         after-linebreak tweak to commonprop.
5097
5098         * Documentation/user/putting.itely: added two new sections.
5099
5100 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5101
5102         * flower/international.cc: 
5103         * flower/include/international.hh: 
5104
5105         * flower/getopt-long.cc: 
5106         * flower/include/getopt-long.hh: Use std::string [interface].
5107         Update callers.
5108
5109         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5110
5111         * stepmake/stepmake/executable-rules.make: Add dependency on
5112         module libraries.
5113
5114 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5115
5116         * flower/file-path.cc: 
5117         * flower/include/file-path.hh: Use std::string [interface].
5118         Update callers.
5119
5120         * flower/direction.cc: 
5121         * flower/axis.cc: Unused.  Remove.
5122
5123         * configure.in (--enable-std-string): New option.
5124
5125         * flower/std-string.cc: 
5126         * flower/include/std-string.hh: New file.
5127
5128         * flower/file-name.cc[STD_STRING]:
5129         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5130
5131 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5132
5133         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5134
5135         * scm/define-markup-commands.scm (with-dimensions):
5136         with-dimensions markup command.
5137
5138         * input/test/font-table.ly: use it.
5139
5140         * lily/open-type-font.cc (glyph_list): new function.
5141
5142         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5143
5144         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5145
5146 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5147
5148         * ly/music-functions-init.ly (parallelMusic): new music function
5149         for parallel music entry.
5150
5151         * scm/define-music-properties.scm (all-music-properties): new
5152         'void music property
5153
5154         * scm/music-functions.scm (ly:music-message): make public, to be
5155         used in music function definitions
5156
5157         * scm/lily-library.scm (collect-music-for-book): discard music
5158         when the 'void property is set.
5159
5160 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5161
5162         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5163
5164         * mf/GNUmakefile: idem.
5165
5166         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5167
5168         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5169
5170         * Documentation/user/notation-appendices.itely (The Feta font):
5171         use it.
5172
5173         * input/test/font-table.ly: new file. Generate font table within lily.
5174
5175         * Documentation/user/notation-appendices.itely (The Feta font):
5176         use new font-table.ly file. 
5177
5178         * stepmake/stepmake/install-out-targets.make
5179         (local-install-outfiles): only create directory if
5180         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5181
5182 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5183
5184         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5185
5186         * VERSION (PACKAGE_NAME): release 2.7.28
5187
5188         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5189         the right font from a Mac dfont.
5190         (write-preamble): don't forget directory, only look at files.
5191
5192         This fixes problems with TTF files in dfonts that don't match
5193         their PostScript names.
5194          
5195         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5196         PS name from TTF font.
5197
5198         * input/regression/tie-manual.ly: document new feature.
5199
5200         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5201
5202         * VERSION (MY_PATCH_LEVEL): bump to .28
5203
5204         * Documentation/user/basic-notation.itely (Ties): add tie examples
5205         refs.
5206
5207         * lily/tie-formatting-problem.cc (score_ties_configuration):
5208         symmetry penalties for outer ties.
5209
5210 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5211
5212         * lily/tie-formatting-problem.cc (generate_configuration) 
5213         (set_manual_tie_configuration): skip non-pair manual
5214         tie-configuration, so you can set individual ties as
5215
5216           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5217
5218         * input/regression/tie-chord.ly: use generateTiePattern to
5219         simplify file.
5220
5221         * lily/tie-formatting-problem.cc (peak_around): new function.
5222         (score_configuration): use sliding criterion for staff line collisions. 
5223         (score_configuration): idem for dot collisions.
5224         (generate_configuration): use separate stem_gap for gap to stem.
5225
5226         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5227         separate penalty factors for x and y distance.
5228         (struct Tie_details): separate penalties for tip and center line collisions.
5229
5230 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5231
5232         * lily/tie-formatting-problem.cc (generate_configuration): make
5233         large ties avoid stafflines in the horizontal section.
5234         (score_configuration): use softcoded penalties
5235         (score_aptitude): idem.
5236
5237         * lily/tie-helper.cc (from_grob): softcode tie details
5238
5239         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5240
5241         * lily/staff-symbol-referencer.cc (on_line): rename from
5242         on_staffline 
5243
5244 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5245
5246         * ly/music-functions-init.ly: remove duplicate tag.
5247
5248         * lily/include/*.hh: GCC 4.1 fixes.
5249
5250 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5251
5252         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5253
5254         * scm/define-music-types.scm: fix bug in desc. string
5255         for OverrideProperty
5256
5257 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5258
5259         * scripts/lilypond-book.py: bugfix
5260
5261         * scm/define-music-types.scm: fix typos.
5262
5263 2006-01-14  Graham Percival  <gpermus@gmail.com>
5264
5265         * Documentation/user/ basic-notation.itely, global.itely,
5266         advanced-notation.itely, instrument-notation.itely: small
5267         additions (bugs and commonly tweaked properties).
5268
5269 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5270
5271         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5272         detection of mingw build.
5273         (MINGW_BUILD): opps.
5274
5275 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5276
5277         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5278         i686-mingw32.
5279
5280 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5281
5282         * scm/music-functions.scm (skip->rest): add skip->rest
5283
5284 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5285
5286         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5287         explicitly.
5288
5289         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5290         config dirs. Aids debugging. 
5291         (display_config): also display config files.
5292
5293 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5294
5295         * VERSION: release 2.7.27
5296
5297         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5298         for determining bar size.
5299
5300         * lily/staff-symbol.cc (print): place lines at distance line-positions
5301
5302         * scm/define-grob-properties.scm (all-user-grob-properties): add
5303         line-positions.
5304
5305         * lily/staff-symbol.cc (height): new function.
5306
5307         * input/regression/staff-line-positions.ly:  new file.
5308
5309 2006-01-06  Graham Percival  <gpermus@gmail.com>
5310
5311         * input/test/add-staccato.ly: remove reference to old file.
5312
5313 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5314
5315         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5316         lilypond binary too.
5317
5318 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5319
5320         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5321
5322 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5323
5324         * scripts/midi2ly.py: Bugfix: Declare datadir.
5325
5326         * make/ly-rules.make:
5327         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5328         that seems to be gone). Fixes make web.
5329
5330         * The grand 2005-2006 replace.
5331
5332         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5333
5334 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5335
5336         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5337         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5338         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5339         like -dgs-font-load.
5340
5341         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5342         remove absolute path to lilypond binary.
5343         
5344 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5345
5346         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5347
5348 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5349
5350         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5351
5352         * mf/GNUmakefile: remove broken dvips map symlink.
5353
5354 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5355
5356         * lily/main.cc: 
5357         * configure.in: Cosmetic fixes.
5358
5359 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5360
5361         * Documentation/user/music-glossary.tely (Pitch names): Added
5362         Spanish pitch names and durations, thanks to Ernesto Gancedo
5363
5364 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5365
5366         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5367         init. Fixes verbose printing of .scm files.
5368
5369         * stepmake/aclocal.m4: add spaces before - options.
5370         
5371 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5372
5373         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5374         of path search in local block variable.
5375
5376 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5377
5378         * configure.in (NCSB_DIR): --enable-ncsb-dir
5379         (LINK_GXX_STATICALLY): denko.
5380
5381         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5382
5383         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5384         use locate to find c059033l.pfb. 
5385         
5386 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5387
5388         * lily/tie-formatting-problem.cc
5389         (problem::generate_base_chord_configuration): Use my_round (was
5390         round).
5391
5392         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5393         do not invoke mbrtowc.
5394
5395         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5396
5397 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5398
5399         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5400
5401 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5402
5403         * Documentation/user/invoking.itely (svg): revise.
5404
5405 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5406
5407         * lily/lexer.ll: use sourcefilename iso. renameinput.
5408
5409 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5410
5411         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5412         <PostScriptName>.ttf instead of c059XXXttf.
5413
5414         * lily/program-option.cc (LY_DEFINE): special support for
5415         --verbose, so it works before option init too.
5416  
5417         * mf/GNUmakefile (local-install): oops.
5418
5419         * lily/lyric-hyphen.cc (print): oops.
5420
5421         * buildscripts/pfx2ttf.fontforge: new file.
5422         
5423         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5424         ($(outdir)/%.ttf): new rule. 
5425
5426         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5427         to LyricHyphen.
5428
5429         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5430         font-size
5431
5432 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5433
5434         * VERSION: release 2.7.26
5435         
5436         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5437
5438 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5439
5440         * lily/font-config.cc (init_fontconfig): verbosity.
5441
5442         * THANKS: add Muziekacademie Lede. 
5443
5444         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5445         (print_score_setup): new function
5446         (convert): read part definition to output staves properly.
5447
5448         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5449         Music_xml notes.
5450
5451         * python/musicexp.py (Output_printer.__init__): use _ in data
5452         members.
5453         (Output_printer.unformatted_output): new function: no formatting,
5454         but count braces.
5455         (Duration.get_length): remove isinstance() checks for
5456         Output_printer everywhere.
5457
5458         * input/regression/lyrics-bar.ly (texidoc): add
5459         Separating_line_group_engraver.
5460
5461 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5462
5463         * lily/relocate.cc (framework_relocation): New function,
5464         factored from set_relocation ().
5465         (prefix_relocation): Rename from set_relocation ().
5466         (setup_paths): Use it.
5467
5468 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5469
5470         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5471         numbers. Patch by Erlend Aasland.
5472
5473 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5474
5475         * lily/font-config.cc (init_fontconfig): print warning if cache
5476         file is not existant.
5477
5478         * lily/main.cc: don't use #ifdef but #if
5479
5480 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5481
5482         * lily/grob-property.cc (internal_set_property): don't abort on
5483         calculation-in-progress.
5484
5485         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5486
5487         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5488         connect-to-neighbor property not connect-to-other
5489
5490         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5491         (LY_DEFINE): oops. don't forget protection.
5492
5493         * flower/parse-afm.cc (Module): strip AFM handling completely.
5494
5495         * lily/stencil-expression.cc: idem.
5496
5497         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5498
5499         * lily/function-documentation.cc (ly_add_function_documentation):
5500         use static member iso. Protected_scm
5501
5502         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5503
5504         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5505
5506 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5507
5508         * lily/relocate.cc (set_env_dir): New function.
5509         (set_relocation): Use it to fix setting PANGO_PREFIX.
5510
5511 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5512
5513         * input/regression/stem-direction-context.ly: remove rest.
5514
5515         * lily/melody-engraver.cc (process_music): restart for bar lines.
5516         (acknowledge_slur): restart for slurs.
5517
5518 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5519
5520         * Documentation/user/invoking.itely: describe how to view SVG 
5521         output using Inkscape which replace embedded fonts with OTF fonts.
5522
5523 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5524
5525         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5526
5527 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5528
5529         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5530         comment.
5531
5532 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5533
5534         * VERSION (PACKAGE_NAME): release 2.7.25
5535
5536         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5537
5538         * input/regression/stem-direction-context.ly: new file.
5539
5540         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5541
5542         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5543         on rest.
5544
5545         * ly/engraver-init.ly: add Melody_engraver
5546
5547         * lily/beam.cc (calc_direction): use default-direction
5548         iso. get_default_direction()
5549
5550         * scm/define-grob-properties.scm (all-user-grob-properties): add
5551         default-direction property.
5552
5553         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5554
5555         * lily/stem.cc (calc_default_direction): remove
5556         Stem::get_default_direction, use default-direction with callback
5557         instead.
5558
5559         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5560
5561         * lily/melody-engraver.cc: new file. Acknowledge stems for
5562         interpolated stem directions. 
5563
5564         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5565
5566         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5567
5568         * lily/slur-configuration.cc (fit_factor): more robust check for
5569         point in curve X-extent.
5570
5571         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5572         (outside_slur_callback): check for 'outside avoidance.
5573
5574         * lily/slur-configuration.cc (score_extra_encompass): don't use
5575         bound->column() == avoid->column() for checking extents, as this
5576         doesn't work for accidentals. 
5577
5578         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5579         DynamicText hardcoding.
5580
5581         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5582         crash if bound stem is NULL
5583
5584         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5585         pedals.
5586
5587 2005-12-22  Graham Percival  <gpermus@gmail.com>
5588
5589         * scm/define-markup-commands.scm: typo.  @code{\raise}
5590         => @code{\\raise}.
5591
5592         * darwin.patch: now used again, includes a
5593         required patch from fink.
5594
5595 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5596
5597         * po/TODO: mention gtranslator along with kbabel.
5598         * po/fi.po: update translations.
5599
5600 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5601
5602         * lily/relocate.cc (setup_paths): Bugfix.
5603
5604 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5605
5606         * lily/slur-configuration.cc (score_extra_encompass): don't use
5607         "avoid" choice for avoid-slur.
5608
5609         * stepmake/bin/install.py (dest): don't create existing dir.
5610
5611 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5612
5613         * stepmake/bin/install.py: Remove file before copying.
5614
5615         * config.make.in: 
5616         * stepmake/aclocal.m4: Do not substitute INSTALL.
5617
5618 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5619
5620         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5621         depend on link-tree.
5622
5623         * lily/relocate.cc (setup_paths): only check path for non-absolute
5624         dir without directory part.
5625
5626         * flower/file-name.cc (is_absolute):  new method.
5627         (is_absolute): check root_ too.
5628
5629 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5630
5631         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5632         relocation code.  Oops, don't comment out too much.
5633
5634         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5635         iso itself.
5636
5637         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5638         compile.
5639
5640 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5641
5642         * .cvsignore: Add install-sh.
5643
5644         * autogen.sh (srcdir): Typo.
5645
5646 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5647
5648         * autogen.sh (srcdir): urg. Touch install-sh.
5649
5650         * stepmake/bin/install-sh (Module): remove.
5651
5652         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5653
5654         * lily/include/relocate.hh: new file.
5655
5656         * lily/relocate.cc: new file. Contain relocation logic.
5657
5658         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5659         (main): read LILYPOND_VERBOSE as the first thing.
5660
5661         * stepmake/aclocal.m4: remove INSTALL variable.
5662
5663         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5664         separate target for making font symlinks.
5665         (documentation-dir): use $(if $(findstring )) for switching off
5666         Documentation.
5667
5668         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5669         something if DOCUMENTATION is no.
5670
5671 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5672
5673         * VERSION: release 2.7.24
5674
5675         * lily/script-column-engraver.cc (stop_translation_timestep):
5676         delay adding to script-column.
5677
5678         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5679
5680         * python/convertrules.py (conv): rule for number-visibility
5681
5682         * lily/slur-configuration.cc (score_extra_encompass): different
5683         distance measure for avoid and inside avoidance.
5684         (score_extra_encompass): use 1/(distance+eps) as penalty.
5685
5686         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5687         encompass objects for generating slur curves.
5688
5689         * lily/slur.cc: use details iso. slur-details property.
5690
5691         * input/regression/slur-tuplet.ly: new file.
5692
5693         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5694
5695         * flower/include/offset.hh (class Offset): new operator /=
5696
5697         * lily/tuplet-number.cc (print): new file, new interface.
5698
5699         * scm/define-grob-properties.scm (all-user-grob-properties):
5700         remove number-visibility property.
5701
5702         * lily/tuplet-bracket.cc (calc_control_points): new function
5703         (calc_connect_to_neighbors): new function.
5704         (print): remove text handling for tuplet numberdef.
5705
5706         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5707         TupletNumbers too. 
5708
5709         * lily/lily-guile.cc (robust_scm2booldrul): new function
5710
5711         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5712
5713         * lily/tuplet-bracket.cc (calc_position_and_height): use
5714         staff-padding to control whether tuplet brackets are over staves.
5715
5716         * lily/grob.cc (suicide): clear dim_caches_.
5717
5718         * lily/dimension-cache.cc (clear): new function.
5719
5720         * lily/grob.cc (extent): swap order of min-extent and extent
5721         calculations. This fixes hara kiri staves. 
5722
5723 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5724
5725         * lily/main.cc: Nitpick: relocation is not based on path, but on
5726         directory (location).
5727
5728 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5729
5730         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5731
5732         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5733
5734         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5735
5736         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5737
5738         * stepmake/stepmake/generic-vars.make (Module): idem.
5739
5740         * stepmake/stepmake/executable-targets.make (default): use it.
5741
5742         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5743
5744         * make/GNUmakefile: don't install make rules.
5745
5746         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5747         slashes.
5748         (prepend_env_path): more verbosity.
5749
5750 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5751
5752         * GNUmakefile.in: add dir argument for find command.
5753
5754         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5755         fixes weird line numbers for point & click.
5756
5757         * lily/source-file.cc (get_counts): init line/column/char counts.
5758
5759 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5760
5761         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5762
5763 2005-12-16  Graham Percival  <gpermus@gmail.com>
5764
5765         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5766         minor fixes from Fredric.  Thanks!
5767
5768 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5769
5770         * ly/music-functions-init.ly: add \bar and \clef music function 
5771
5772         * lily/lily-lexer.cc: idem.
5773
5774         * lily/parser.yy (FIXME): remove BAR and CLEF.
5775
5776 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5777
5778         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5779
5780         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5781         function arguments too
5782
5783         * lily/main.cc (set_relocation): new function.
5784
5785         * scripts/musicxml2ly.py (convert): add \version
5786
5787         * lily/tie.cc: remove get_default_attachments()
5788
5789         * VERSION (PACKAGE_NAME): release 2.7.23
5790         
5791         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5792         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5793
5794         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5795
5796         * lily/tie-formatting-problem.cc (score_ties): new function
5797         (get_variations): new function. Try flipping dirs for collisions.
5798         (generate_optimal_chord_configuration): new function. 1-opt search
5799         for better configuration.
5800
5801         * lily/tie-configuration.cc: new file.
5802
5803         * lily/tie.cc: junk Tie::get_configuration()
5804
5805         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5806         (score_ties_configuration): new function.
5807         (generate_ties_configuration): new function.
5808         (generate_base_chord_configuration): new function.
5809         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5810         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5811
5812         * input/regression/tie-dot.ly: new file.
5813
5814         * lily/tie-formatting-problem.cc (score_configuration): score
5815         tie/dot collisions.
5816
5817         * lily/tie-helper.cc (get_transformed_bezier): new function
5818
5819         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5820
5821         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5822         -undefined suppress iso. -framework Python 
5823
5824         * scm/define-grobs.scm (all-grob-descriptions): set
5825         springs-and-rods (thanks Joe Neeman!)
5826
5827 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5828
5829         * input/no-notation/display-lily-tests.ly (test): 
5830         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5831         changed from \tag #'(a b) to \tag #'a \tag #'b
5832
5833 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5834
5835         * Documentation/topdocs/NEWS.tely: strip out-www.
5836
5837         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5838
5839         * config.make.in (AR): add AR and RANLIB
5840
5841         * flower/libc-extension.cc: include cassert
5842
5843         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
5844         darwin check.
5845
5846 2005-12-11  Graham Percival  <gpermus@gmail.com>
5847
5848         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
5849
5850         * stepmake/stepmake/python-modules-vars.make: define
5851         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
5852
5853         * THANKS: added Johannes Schindelin.
5854
5855 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5856
5857         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
5858
5859         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5860         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
5861
5862         * lily/parser.yy: reorganize file layout.
5863
5864         * ly/music-functions-init.ly: add tweak music function.
5865
5866         * lily/grob-info.cc (ultimate_music_cause): new function:
5867         recursively lookup causes. 
5868
5869         * lily/parser.yy (chord_body_element): allow music functions for
5870         post-events, allow music functions for chord elements. 
5871  
5872         * lily/font-config-scheme.cc (display_fontset): add cast.
5873
5874         * python/convertrules.py (FatalConversionError.sub_syms): \tag
5875         #'(a b) -> \tag #'a \tag #'b rule.
5876
5877         * python/musicexp.py (Output_printer.dump_version): new function
5878
5879 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5880
5881         * lily/parser.yy (FIXME): remove \tag
5882         (FIXME): remove tag_music() function.
5883
5884         * lily/lily-lexer.cc: remove \tag
5885
5886         * ly/music-functions-init.ly: define music-function "tag"
5887
5888         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
5889
5890 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5891
5892         * VERSION (PATCH_LEVEL): release 2.7.22
5893
5894         * input/regression/lyric-hyphen-retain.ly: renew.
5895
5896         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
5897         grob
5898
5899         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
5900         iso. minimum-length property for rods.
5901
5902         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
5903         LyricSpace item to keep lyrics spaced apart.
5904
5905         * ly/engraver-init.ly: remove Separating_line_group_engraver
5906
5907         * Documentation/user/music-glossary.tely: do setfilename before
5908         music-glossary.
5909
5910 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
5911
5912         * Documentation/user/lilypond-book.itely: use `,´ after xref:
5913         See xref documentation, for example.
5914
5915 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5916
5917         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
5918         pending_skip iso. ly_voice[-1]
5919         (main): add if __main__ for debugging.
5920
5921         * python/musicxml.py (Accidental.__init__): new class.
5922
5923         * scripts/musicxml2ly.py (progress): new function
5924         (musicxml_key_to_lily): don't barf on modeless keys.
5925         (create_skip_music): new function.
5926         (musicxml_spanner_to_lily_event): new function. Handle beams too.
5927         (musicxml_note_to_lily_main_event): new function.
5928
5929         * python/musicexp.py (Music.__init__): add comment field.
5930         (NestedMusic.append): new routine.
5931         (SequentialMusic.print_ly): print comment.
5932         (ArpeggioEvent.ly_expression): new class
5933         (BeamEvent.ly_expression): new class
5934         (NoteEvent.__init__): support for cautionary/forced accs.
5935
5936         * lily/lookup.cc (slur): normal order for array loop.
5937
5938         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
5939         to 0.0.
5940
5941         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
5942         collapsed.
5943
5944 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
5945
5946         * scm/music-functions.scm: Make phrasing slurs follow voice direction
5947
5948         * scripts/lilypond-book.py: Introduce option
5949             --preserve-line-breaks, for usage with srcltx
5950
5951 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5952
5953         * scm/output-lib.scm (print-circled-text-callback): draw circle
5954         around text using make-circle-markup.
5955
5956         * Documentation/user/*: strip out-www from file names.
5957
5958 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
5959
5960         * Documentation/user/lilypond.tely (direntry): remove empty lines;
5961         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
5962
5963 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5964
5965         * Documentation/user/GNUmakefile: idem.
5966
5967         * Documentation/user/macros.itexi: strip out-www
5968
5969         * python/rational.py: python 2.3 compat.
5970
5971         * VERSION (PATCH_LEVEL): release 2.7.21
5972
5973         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
5974         option formatting, lilypond style.
5975
5976         * python/musicexp.py: grab from Ikebana: a library for composing
5977         ly music expressions. 
5978         (Output_printer): class for advanced .ly printing.
5979         (eg. tupletting) 
5980
5981         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
5982         convert to pythonesque structure.
5983
5984         * python/rational.py: PD rational number class.
5985
5986         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
5987
5988 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
5989
5990         * lily/part-combine-iterator.cc: Minor bugfix
5991         
5992         * THANKS: Update bughunters
5993
5994 2005-12-02  Werner Lemberg  <wl@gnu.org>
5995
5996         * mf/README: Document process for proper mf2pt1 conversion.
5997
5998         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
5999         overlapping.
6000
6001         * mf/feta-harmonica.mf: Removed.  Unused.
6002
6003 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6004
6005         * scripts/lilypond-book.py (do_file): fix thinkos.
6006
6007 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6008
6009         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6010         ($(outdir)/parser.cc): 
6011         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6012
6013 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6014
6015         * ly/titling-init.ly (tagline): it should be a space between
6016         "Music engraving by LilyPond" and the version number.
6017
6018 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6019
6020         * VERSION (PACKAGE_NAME): release 2.7.20
6021
6022 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6023
6024         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6025
6026         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6027         1.0.
6028         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6029
6030 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6031
6032         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6033
6034         * kpath-guile/: remove directory
6035
6036         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6037         file. Encapsulate kpathsea using commandline tools.
6038
6039         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6040         kpathsea) module.
6041
6042 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6043
6044         * Documentation/user/advanced-notation.itely (Setting automatic
6045         beam behavior): Correct a few typos. Thanks to David Bobroff.
6046
6047         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6048         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6049
6050 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6051
6052         * scripts/*.py: gmane address for bugs.
6053
6054 2005-11-28 Pal Benko <benkop@freestart.hu>
6055         
6056         * make/ly-rules.make: add -f switch to mv
6057
6058         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6059
6060         * lily/bar-line.cc: interpret it
6061
6062 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6063
6064         * configure.in (--disable-documentation): New switch.
6065
6066         * GNUmakefile.in: Use it.
6067
6068         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6069
6070 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6071
6072         * scripts/lilypond-book.py (do_file): search chunks for
6073         \\begin{document}
6074
6075         * GNUmakefile.in: add copy step in between so we can lose the
6076         out-www directories.
6077
6078 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6079
6080         * lily/pango-font.cc (pango_item_string_stencil): put
6081         geometry.width into glyph-string too.
6082
6083 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6084
6085         * scm/define-music-display-methods.scm (RevertProperty):
6086         (OverrideProperty): Use grob-property-path property, a list of
6087         symbols, instead of grob-property, which used to be a single
6088         symbol.
6089         (BassFigureEvent): a figure can be a plain number, not necessarily a
6090         markup.
6091
6092 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6093
6094         * VERSION: release 2.7.19
6095         
6096         * lily/figured-bass-engraver.cc (process_music): check
6097         figuredBassCenterContinuations first.
6098
6099         * scm/translation-functions.scm (format-bass-figure): make double
6100         sharp larger. 
6101
6102         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6103         determine X-parent.
6104
6105         * lily/system-start-delimiter-engraver.cc: move from
6106         Nested_system_start_delimiter_engraver, rename
6107         Nested_system_start_delimiter_engraver ->
6108         System_start_delimiter_engraver.
6109
6110         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6111         bracket type from hierarchy.
6112
6113 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6114
6115         * lily/rest.cc (y_offset_callback): read staff-position.
6116
6117         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6118         mark after-line-breaking-callback as internal.
6119
6120         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6121
6122 2005-11-25  Werner Lemberg  <wl@gnu.org>
6123
6124         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6125
6126 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6127
6128         * stepmake/bin/add-html-footer.py (do_file): add google
6129
6130         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6131         staff if first_start_ is true.
6132
6133 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6134
6135         * scripts/midi2ly.py (split_track): add __repr__ members.
6136         (track_first_item): only return Item if not None. This fixes a
6137         problem when dumping a track that starts with an empty channel.
6138
6139         * python/midi.c: doc module.
6140
6141 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6142
6143         * Documentation/user/global.itely (Creating MIDI files): Fix
6144         compilation problem.
6145
6146 2005-11-22  Graham Percival  <gpermus@gmail.com>
6147
6148         * Documentation/user/basic-notation.itely: clarify dynamic
6149         padding text.
6150
6151         * Documentation/user/advanced-notation.itely: add unicode
6152         escape control example, whatever that is.  :)
6153
6154         * Documentation/user/global.itely: added "removing dynamics
6155         from MIDI" code.
6156
6157 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6158
6159         * VERSION (PATCH_LEVEL): release 2.7.18
6160
6161         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6162         System_start_delimiter_engraver by
6163         Nested_system_start_delimiter_engraver.
6164
6165         * lily/nested-system-start-delimiter-engraver.cc (struct
6166         Bracket_nesting_node): new class.
6167         (struct Bracket_nesting_group): new class
6168         (struct Bracket_nesting_staff): new class.
6169         (process_music): create hierarchy of grobs. This allows separate
6170         tuning of different SSDs. 
6171
6172         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6173         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6174
6175 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6176
6177         * lily/side-position-interface.cc (aligned_side): multiply
6178         staff_radius by 2.
6179
6180         * lily/script-engraver.cc (make_script_from_event): allow setting
6181         values to '()
6182
6183 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6184
6185         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6186
6187         * scm/define-grobs.scm (all-grob-descriptions): new grob
6188         NestedSystemStartDelimiter.
6189
6190         * input/regression/system-start-heavy-bar.ly: new file.
6191
6192         * lily/nested-system-start-delimiter-engraver.cc: new file.
6193
6194         * lily/nested-system-start-delimiter.cc: new file.
6195
6196         * input/regression/system-start-nesting.ly: new file.
6197
6198         * scm/define-grobs.scm (all-grob-descriptions): use X side
6199         positioning for positioning braces for nested contexts.
6200
6201         * lily/system-start-delimiter.cc (print): don't divide extent by
6202         staff_space.
6203         (print): use style iso. glyph.
6204         (staff_bracket): translate glyph inside routine already.
6205
6206 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6207
6208         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6209         names.
6210
6211 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6212
6213         * scm/define-context-properties.scm
6214         (all-user-translation-properties): rename figuredBassFormatter
6215         from newFiguredBassFormatter.
6216
6217         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6218
6219         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6220
6221         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6222
6223         * lily/beam.cc (calc_beaming): new function.
6224         (calc_shorten): new function.
6225
6226         * THANKS: add Edward Neeman.
6227
6228         * input/regression/accidental-clef-change.ly: new file.
6229
6230         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6231
6232         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6233
6234         * lily/clef-engraver.cc (inspect_clef_properties): reset
6235         localKeySignature for clef changes.
6236
6237 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6238
6239         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6240         add dummy definition that works in Linux and add information in
6241         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6242
6243         * Documentation/user/changing-defaults.itely (Modifying context
6244         plug-ins): Add index for \with.
6245
6246         * Documentation/user/music-glossary.tely (dal segno): Updated
6247         example to version >=2.6.
6248
6249 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6250
6251         * Documentation/user/instrument-notation.itely (Printing chord
6252         names): Reorder \chordmode and \repeat in one example.
6253
6254 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6255
6256         * VERSION: release 2.7.17
6257         
6258         * Documentation/topdocs/NEWS.tely (Top): add note about
6259         refactoring.
6260
6261         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6262         new function. Search region of 3 positions for best tie.
6263         (score_configuration): new function.
6264         (score_aptitude): new function.
6265         (generate_configuration): new function.
6266         (get_configuration): new function.
6267         (Tie_formatting_problem): new function
6268
6269         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6270
6271         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6272
6273         * THANKS: add Eduardo Vieira & Ralph Little
6274
6275         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6276         narrower.
6277
6278         * lily/include/tie-formatting-problem.hh (class
6279         Tie_formatting_problem): add Tie_details to
6280         Tie_formatting_problem. Update calling conventions.
6281
6282         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6283         config.make.
6284
6285         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6286
6287 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6288
6289         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6290         scm/define-context-properties.scm: Maintenance bugfix: make
6291         ligature brackets work again by removing obsolete ligature
6292         primitive callback push/pop.
6293
6294         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6295         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6296         value.
6297
6298 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6299
6300         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6301         used and do not call it a path.
6302         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6303
6304 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6305
6306         * lily/include/tie-formatting-problem.hh (class
6307         Tie_formatting_problem): new file.
6308
6309         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6310
6311         * Documentation/misc/ChangeLog-2.3:  new file.
6312
6313         * lily/audio-staff.cc (output): degarianize.
6314
6315 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6316
6317         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6318         Unset PYTHONOPTIMIZE.  Fixes install if set.
6319
6320 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6321
6322         * python/convertrules.py (conv): add warning about drums. 
6323
6324         * make/stepmake.make: include toplevel-version.make after config.make.
6325
6326         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6327         also allow python2.4
6328
6329         * config.make.in (configure-srcdir): remove GXX GCC vars.
6330
6331         * stepmake/aclocal.m4: don't do non-srcdir build with
6332         symlinks. Use inclusion, so the src directory name can be changed.
6333
6334 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6335
6336         * make/mutopia-vars.make:
6337         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6338         files.
6339
6340 2005-11-13  Werner Lemberg  <wl@gnu.org>
6341
6342         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6343         but the affected path.  This ensures that the (overlapping) outlines
6344         have the same direction, which is a necessary prerequisite for
6345         FontForge's algorithm to remove overlaps.
6346         Formatting.
6347
6348         * mf/feta-haak.mf: Formatting.
6349         (draw_bracket): Slightly modify outline to avoid an unnecessary
6350         corner.
6351         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6352         them from the affected paths.
6353
6354 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6355
6356         * mf/README: remove xpm / accordion notes.
6357
6358         * lily/tie-column-format.cc (set_chord_outline): add dots into
6359         skyline extents. This fixes tie formatting if the left head has dots.
6360
6361         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6362         space inside the staff.
6363         (get_configuration): shift another position if necessary in case
6364         of left head tie  
6365
6366 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6367
6368         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6369         buildscript-dir iso. $(depth)/buildscripts.
6370
6371         * tex/GNUmakefile (local-uninstall): remove
6372         music-drawing-routines.ps juggling.
6373
6374         * stepmake/stepmake/install-targets.make (local-install-files):
6375         prepend src-dir to install targets.
6376
6377         * lily/system-start-delimiter-engraver.cc
6378         (acknowledge_system_start_delimiter): use
6379         add_offset_callback(). This fixes translation of nested
6380         staffgroups.
6381
6382         * lily/grob-closure.cc (add_offset_callback): only encaps in
6383         simple_closure if it's a procedure.
6384         
6385         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6386         from bar-line.
6387
6388         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6389         remove-empty where pertinent.
6390
6391 2005-11-12  Graham Percival  <gpermus@gmail.com>
6392
6393         * Documentation/user/instrument-notation.itely: added
6394         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6395
6396 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6397
6398         * lily/GNUmakefile
6399         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6400         make picture in builddir, not srcdir.
6401
6402 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6403
6404         * VERSION: release 2.7.16
6405         
6406         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6407         shell arguments. 
6408
6409 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6410
6411         * Documentation/user/examples.itely (Piano templates): Minor
6412         modification to the Piano centered lyrics example.
6413
6414 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6415
6416         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6417         $BROWSER.
6418
6419         * Documentation/user/point-and-click.itely: simplify p&c
6420         instruction: don't configure firefox. Put lilypond-invoke-editor
6421         in front of the browser.
6422
6423         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6424         (run-browser): new function.
6425
6426         * lily/parser.yy (Lily_lexer): recognize Book
6427
6428         * lily/book.cc (clone): new function
6429
6430         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6431
6432 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6433
6434         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6435         Maintenance bugfix: reduce number of font related warnings by
6436         updating naming conventions for glyph-name.
6437
6438 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6439
6440         * scm/define-grobs.scm (all-grob-descriptions): add
6441         rhythmic-grob-interface to TabNoteHead.
6442
6443         * scm/layout-beam.scm (check-quant-callbacks): remove
6444         set_stem_lengths()
6445
6446 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6447
6448         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6449         alignment of centered divisiones.
6450
6451         * scm/scripts.scm (articulations): Maintenance bugfix:
6452         follow-into-staff -> quantize-position.
6453
6454         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6455         plica head in porrectus deminutus.
6456
6457 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6458
6459         * make/lilypond.fedora.spec.in (Group): add %clean section.
6460
6461         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6462         less then 1/5th of total length.  
6463         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6464
6465         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6466         events into EventChord. This fixes textspanners on mm rests. Fixes
6467         spanner-rest.ly
6468
6469         * lily/side-position-interface.cc (get_axis): read side-axis
6470         (set_axis): set side-axis.
6471
6472         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6473         properties everywhere.
6474
6475         * lily/spacing-spanner.cc (breakable_column_spacing): add
6476         average-spacing-wishes. Take maximum if not set.
6477         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6478
6479         * scm/define-grobs.scm (all-grob-descriptions): add
6480         average-spacing-wishes.
6481
6482         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6483         offset callbacks. This fixes alignment for Fingering objects.
6484
6485         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6486         space for key - timesig combination. 
6487
6488         * input/regression/script-stem-tremolo.ly (Module): new file.
6489
6490         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6491         to key sig.
6492
6493         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6494         Fixes: c-tremolo-script.ly.
6495         
6496         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6497
6498         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6499         
6500         * scm/define-grobs.scm (all-grob-descriptions): remove
6501         self-X-offset. Fixes alignment of octavate-8.
6502
6503         * scripts/lilypond-book.py (datadir): look in
6504         LILYPONDPREFIX/share/lilypond/current/
6505
6506         * GNUmakefile.in: symlink current to <VERSION>. 
6507
6508 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6509
6510         * lily/main.cc: eps listed as a backend.
6511
6512 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6513
6514         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6515
6516 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6517
6518         * lily/include/score.hh (class Score): remove texts_ member.
6519
6520         * lily/beam.cc (set_stem_lengths): force direction callback.
6521         (print): read quantized-positions, so we can force
6522         Beam::set_stem_lengths to occur.
6523         (rest_collision_callback): use common X parent. 
6524
6525 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6526
6527         * flower/file-path.cc (find): Bugfix: Return name of file found.
6528
6529         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6530         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6531         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6532
6533 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6534
6535         * flower/offset.cc: idem.
6536
6537         * mf/*.mf: update email address.
6538
6539         * lily/font-config-scheme.cc:  new file.
6540
6541         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6542
6543         * lily/*:  cs.uu.nl -> xs4all.nl
6544
6545         * VERSION (PATCH_LEVEL): release 2.7.15
6546
6547         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6548         spec files.
6549
6550         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6551
6552 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6553
6554         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6555
6556         * lily/staff-performer.cc (process_music): add audio
6557         elements. This makes MIDI instrument changes work once again.
6558
6559         * lily/main.cc (LY_DEFINE): add gmane address.
6560
6561         * lily/beam.cc: remove calc_positions()
6562
6563         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6564         original_ in private scope.
6565         (class Grob): drop pscore_ pointer, change to output_def pointer.
6566         (class Grob): cleanup class definition.
6567
6568         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6569
6570 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6571
6572         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6573         absolute.  Better diagnostics.
6574
6575         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6576         This makes lilypond run from the build directory using argv0
6577         relocation (without any --prefix or LILYPONDPREFIX setting).
6578
6579 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6580
6581         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6582
6583         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6584         with simple-closure.
6585
6586         * lily/self-aligment-interface.cc (set_align_self): new function
6587         (set_center_parent): new function.
6588
6589         * lily/side-position-interface.cc (set_axis): new function.
6590
6591         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6592         generic code. 
6593
6594         * scm/define-grob-properties.scm (all-user-grob-properties):
6595         remove [XY]-offset-callbacks add [YX]-offset
6596         
6597 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6598
6599         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6600         entry for time signatures after breathing signs. Bug report by
6601         Scott Russell.
6602
6603 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6604
6605         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6606         not absolute, make it absolute using PATH.
6607
6608 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6609
6610         * python/midi.c (initmidi): Fix type for mingw.
6611
6612 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6613
6614         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6615
6616         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6617         cross compiling.
6618
6619         * stepmake/aclocal.m4: Support python cross compiling.
6620
6621         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6622         Add mingw section.
6623
6624 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6625
6626         * scm/output-lib.scm (chain-grob-member-functions): replace
6627         chained-callback.cc
6628
6629         * lily/chained-callback.cc (Module): remove file.
6630
6631         * lily/rest-collision.cc (force_shift_callback_rest): change to
6632         chained callback.
6633
6634         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6635
6636         * lily/grob.cc (y_parent_positioning): remove axis argument from
6637         parent_positioning callbacks.
6638         (Grob): junk init code
6639         (get_offset): use generic property callbacks for
6640         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6641         (axis_parent_positioning): new function
6642         (axis_offset_symbol): new function
6643         (chain_offset_callback): new function
6644         (add_offset_callback): new function
6645
6646         * lily/beam.cc (rest_collision_callback): change signature; this
6647         is now a chained callback.
6648
6649         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6650         callback administration.
6651
6652         * lily/simple-closure.cc: new file. Smob type that allows "grob
6653         member functions",
6654
6655             (ly:make-simple-closure FUNC A B)
6656
6657         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6658         in various ways.
6659
6660         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6661         callbacks.
6662
6663         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6664
6665         * lily/rest.cc (polyphonic_offset_callback): remove.
6666
6667         * lily/script-engraver.cc (try_music): remove bool* argument.
6668
6669         * scm/script.scm (default-script-alist): set quantize-position
6670         appropriately.
6671
6672         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6673
6674         * lily/side-position-interface.cc (aligned_side): move staff
6675         position quantization from
6676         Side_position_interface::quantised_position().
6677         (quantised_position): remove
6678         
6679 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6680
6681         * input/regression/beam-quant-standard.ly: reindent, set
6682         debug-beam-quanting to #t.
6683
6684         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6685         10000 if this is a "hard" concave beam.
6686
6687         * lily/beam.cc (calc_least_squares_positions): change from
6688         calc_least_squares_dy
6689         (set_stem_lengths): this is now a chained callback.
6690
6691         * lily/context-property.cc (execute_general_pushpop_property):
6692         bugfix override with procedure should have effect.
6693
6694         * scm/define-grob-properties.scm (all-internal-grob-properties):
6695         remove position-callbacks.
6696
6697         * scm/define-grobs.scm (all-grob-descriptions): use
6698         ly:make-callback-chain for positions property.
6699
6700         * scm/layout-beam.scm (check-quant-callbacks): return list of
6701         chained callbacks.
6702
6703         * scm/lily.scm (type-p-name-alist): add callback-chain
6704
6705         * lily/lily-guile.cc (type_check_assignment): type check failure
6706         is warning not message.
6707
6708         * lily/grob-property.cc (try_callback): walk callback chain if
6709         appropriate.
6710
6711         * lily/chained-callback.cc: new file. new smob type.
6712
6713         * lily/lily-guile.cc (procedure_arity): new function.
6714
6715 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6716
6717         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6718
6719 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6720  
6721         * Documentation/user/instrument-notation.itely (Figured bass):
6722         describe new features
6723
6724 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6725
6726         * lily/beam.cc (calc_least_squares_dy): use property callback.
6727
6728         * lily/beam-concave.cc (calc_concaveness): use property callback.
6729
6730         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6731
6732 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6733
6734         * HACKING: Update.
6735
6736 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6737
6738         * scm/layout-page-layout.scm (page-headfoot): annotate
6739         pagetopspace too.
6740
6741         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6742
6743         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6744         doesn't take y-space.
6745
6746         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6747
6748 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6749
6750         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6751         src-wildcard, remove $(wildcard).
6752
6753         * po/GNUmakefile (PO_FILES): 
6754         * ps/GNUmakefile (PS_FILES): 
6755         * tex/GNUmakefile (TEX_FILES): 
6756         * cygwin/GNUmakefile (POSTINSTALLS):
6757         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6758         some wildcard calls.
6759
6760 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6761
6762         * THANKS: add Thomas Bushnell.
6763
6764 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6765
6766         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6767         (lilypond-main): Redirect to gui-main if 'gui is set.
6768
6769         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6770         for alternative installations kludging s/share/lib/g
6771         LILYPONDPREFIX. 
6772
6773         * SConstruct (libdir_package_version): Define.
6774
6775         * python/SConscript: 
6776         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6777         module in libdir.  
6778
6779 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6780
6781         * lily/main.cc: clarify --safe.
6782
6783 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6784
6785         * VERSION: release 2.7.14
6786         
6787         * Documentation/user/*.itely: remove minimumVerticalExtent.
6788
6789         * scm/define-grobs.scm (all-grob-descriptions): remove
6790         RemoveEmptyVerticalGroup
6791
6792         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6793
6794         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6795         compile on MOSX
6796
6797         * python/convertrules.py (conv): add rules.
6798
6799         * lily/grob.cc: remove is_empty()
6800
6801         * lily/grob-property.cc: remove add_to_list_property().
6802
6803         * scripts/convert-ly.py (datadir): add prefix switching hack to
6804         .py too.
6805
6806         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6807         space-function tweak.
6808
6809         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6810
6811         * scm/define-grob-properties.scm (all-user-grob-properties):
6812         remove callback property.
6813
6814         * lily/include/grob.hh (class Grob): remove property_callbacks_
6815         member. Properties of procedure type are assumed to be callbacks.
6816
6817         * lily/ligature-engraver.cc (override_stencil_callback):
6818         rewrite. Use noteHeadLigaturePrimitive as source.
6819
6820         * scm/define-grob-properties.scm (all-internal-grob-properties):
6821         remove ligature-primitive-callback
6822
6823         * lily/include/dimension-cache.hh (class Dimension_cache): make
6824         class, with Grob as friend.
6825
6826         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6827         has_extent_callback()
6828
6829         * scm/translation-functions.scm (format-new-bass-figure): read
6830         figuredBassPlusDirection
6831
6832         * scm/define-context-properties.scm
6833         (all-user-translation-properties): add figuredBassPlusDirection.
6834
6835         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6836
6837         * lily/align-interface.cc (set_ordered): new function.
6838
6839         * lily/grob.cc (flush_extent_cache): rewrite.
6840
6841         * lily/dimension-cache.cc (Dimension_cache): cache extent as
6842         Interval pointer directly.
6843
6844         * lily/main.cc (setup_paths): insert extra / .
6845         (setup_paths): junk cff entry.
6846
6847         * lily/font-config.cc (init_fontconfig): only add type1 / otf
6848         directories.
6849
6850         * lily/axis-group-engraver.cc (finalize): remove
6851         extraVerticalExtent, minimumVerticalExtent verticalExtent.
6852
6853         * lily/grob.cc (Grob): don't set extent from ctor.
6854         (extent): use property callbacks. 
6855
6856         * lily/axis-group-interface.cc: remove set_axes() function.
6857
6858         * lily/grob-property.cc (del_property): new function.
6859
6860 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6861
6862         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
6863         
6864 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6865
6866         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
6867
6868 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6869
6870         * mf/SConscript: Updates.
6871
6872         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
6873
6874         * stepmake/stepmake/*:
6875         * */GNUmakefile:
6876         * config.make.in:
6877         * GNUmakefile.in:
6878         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
6879         from any directory in build-dir.  Cleanups.
6880
6881         * make/srcdir.make.in: Remove.
6882
6883         * lily/main.cc (setup_paths): Fix and document build-dir hack.
6884
6885         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
6886         main).
6887
6888         * lily/SConscript: Remove ttftools.
6889
6890         * SConstruct: Resurrect.
6891
6892 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6893
6894         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
6895         Y coordinate. 
6896
6897         * lily/paper-book.cc (add_score_title): put Paper_score title into
6898         systems_ list.
6899
6900         * scm/translation-functions.scm (format-new-bass-figure): also
6901         allow plus in combination with _
6902
6903 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6904
6905         * VERSION: 2.7.13 released.
6906
6907         * lily/note-collision.cc (check_meshing_chords): don't wipe
6908         stencil, merely set transparent.
6909
6910         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
6911         (Top): document #'callbacks.
6912         (Top): document nested \override.
6913
6914         * input/regression/figured-bass.ly: update for slash and pluses.
6915
6916         * input/regression/figured-bass-continuation-forbid.ly (Module):
6917         new file.
6918
6919         * scm/translation-functions.scm (format-new-bass-figure): use
6920         slashed-digit if diminished is set.
6921         (format-new-bass-figure): add + if 'augmented is set.
6922
6923         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
6924
6925         * input/test/piano-staff-distance.ly: remove file.
6926
6927         * Documentation/user/advanced-notation.itely (Formatting cue
6928         notes): use length-fraction for making stems/beams smaller.
6929
6930         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
6931         modifications.
6932
6933         * lily/new-figured-bass-engraver.cc: new property
6934         centerFiguredBassContinuations
6935
6936         * Documentation/user/changing-defaults.itely (Difficult tweaks):
6937         use callbacks.
6938
6939         * lily/context-property.cc (execute_general_pushpop_property):
6940         robustness checks.
6941
6942         * input/regression/override-nest.ly: new file.
6943
6944         * python/convertrules.py (FatalConversionError.subber): conversion
6945         rule for #'callbacks
6946
6947         * input/regression/override-nest.ly: new function.
6948
6949         * lily/parser.yy (music_property_def): allow \override #'a #'b =
6950         #c too. 
6951
6952         * lily/context-property.cc (lookup_nested_property): new function.
6953         (evict_from_alist): new function.
6954         (general_pushpop_property): new function.
6955         (execute_general_pushpop_property): rewrite. Support nested
6956         properties too.
6957
6958 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6959
6960         * lily/beam.cc: use length-fraction too.
6961
6962         * scm/define-grob-properties.scm (all-user-grob-properties):
6963         remove property flag-width-function
6964         (all-user-grob-properties): remove space-function.
6965
6966         * scm/layout-beam.scm: remove flag-width-function.
6967
6968         * lily/beam.cc: remove flag-width-function
6969
6970         * scm/layout-beam.scm: remove beam dir functions.
6971
6972         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
6973
6974         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
6975         for easier grace tweaks.
6976
6977         * lily/beam.cc: remove dir-function.
6978
6979         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
6980
6981         * lily/grob.cc: remove spacing-procedure.
6982
6983         * lily/note-head.cc (calc_stem_attachment): new function.
6984         (internal_print): use callback to get glyph-name.
6985
6986         * lily/grob-property.cc (get_interfaces): new function.
6987
6988         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
6989
6990         * lily/stem.cc (calc_stem_end_position): new function.
6991         (calc_length): new function.
6992         document details for stem.
6993         remove Stem::get_direction()
6994
6995         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
6996
6997         * lily/grob-property.cc (set_callback): new function.
6998
6999         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7000
7001         * lily/item-scheme.cc: new file.
7002
7003         * lily/bar-line.cc (before_line_breaking): remove function.
7004         remove bar-size-procedure, break-glyph-function
7005
7006         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7007
7008         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7009
7010         * lily/system-start-delimiter.cc (print): suicide from
7011         here. Remove after_line_breaking_callback.
7012
7013         * lily/script-interface.cc (calc_direction): use callback for direction.
7014
7015         * lily/side-position-interface.cc (aligned_side): don't use
7016         Side_position_interface::get_direction directly. Use callback. 
7017
7018         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7019         calculate stencil.
7020         (get_print_stencil): rename from get_stencil: create stencil with
7021         transparency, color and cause. 
7022
7023         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7024
7025         * python/convertrules.py (conv): insert temporary warning rule.
7026
7027         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7028
7029         * lily/grob-property.cc (try_callback): remove marker if applicable.
7030
7031         * lily/grob.cc: elucidate doc about after/before-line-breaking
7032
7033         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7034
7035         * lily/stem.cc (height): idem.
7036
7037         * lily/stem-tremolo.cc: idem.
7038
7039         * lily/slur.cc (height): don't use get_uncached_stencil()
7040
7041         * lily/rest.cc (y_offset_callback): use offset callback
7042         iso. after-line-breaking callback.
7043
7044         * lily/grob.cc: change after/before-line-breaking-callback to
7045         after/before-line-breaking dummy properties.
7046
7047         * lily/include/grob.hh: remove Grob_status.
7048
7049         * scm/define-context-properties.scm
7050         (all-user-translation-properties): remove verticalAlignmentChildCallback
7051
7052         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7053         (calc_direction): use callback
7054         (calc_positions): use callback.
7055
7056         * lily/tie.cc (calc_direction): use callback. Only call parent
7057         positioning for more than one tie.
7058
7059         * lily/tie-column.cc (calc_positioning_done): use callback
7060
7061         * lily/slur-scoring.cc (calc_control_points): use callback
7062
7063         * lily/slur.cc (calc_direction): use callback.
7064
7065         * lily/note-collision.cc (force_shift_callback): remove.
7066
7067         * lily/dot-column.cc (force_shift_callback): remove. Use
7068         other_axis_parent_positioning.
7069
7070         * lily/grob.cc (other_axis_parent_positioning): new function.
7071         (same_axis_parent_positioning): new function
7072
7073         * lily/align-interface.cc (alignment_callback): remove function.
7074
7075         * lily/note-collision.cc (calc_positioning_done): use callback.
7076
7077         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7078         (calc_direction): idem.
7079         remove print function.
7080
7081         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7082
7083         * lily/dot-column.cc (calc_positioning_done): use callback.
7084
7085         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7086
7087         * lily/beam.cc (calc_direction): use pseudo-property for beam
7088         direction callback.
7089         (calc_positions): use callback 
7090
7091         * lily/align-interface.cc (calc_positioning_done): use
7092         callback. Fold fixed  distance and normal alignment in one function.
7093
7094         * lily/stem.cc (calc_stem_end_position): use callback.
7095         (calc_positioning_done): idem.
7096         (calc_direction): idem.
7097         (calc_stem_end_position): idem
7098         (calc_stem_info): idem.
7099
7100         * lily/grob-property.cc (get_property_data): new function: 
7101         (try_callback): new function.
7102
7103         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7104         callbacks property.
7105
7106         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7107
7108 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7109
7110         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7111         tie
7112         has no heads.
7113         
7114         * lily/include/*.hh (Module): compile fixes.
7115
7116 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7117
7118         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7119         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7120         instead of (char-syntax nil), thanks to Milan Zamazal.
7121
7122 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7123
7124         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7125         dist.
7126
7127         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7128         themselves.
7129
7130 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7131
7132         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7133         add class_name() method.
7134
7135         * lily/music-scheme.cc: remove ly:music-name.
7136
7137 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7138
7139         * cygwin/postinstall-lilypond.sh: Remove cruft.
7140
7141         * cygwin/postremove-lilypond.sh: Remove.
7142
7143         * cygwin/GNUmakefile (default): Remove postremove rules.
7144
7145 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7146
7147         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7148         even header too.
7149         
7150         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7151         MacOS 9 users.
7152
7153         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7154         consider break index for broken spanner.
7155
7156         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7157         characters from string before splitting.
7158
7159 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7160
7161         * scm/framework-ps.scm (output-preview-framework): use
7162         is-book-title to determine whether to chop off the booktitle.
7163
7164         * lily/paper-book.cc (systems): init from book-title-properties
7165         (add_score_title): init score-title-properties.
7166
7167         * ly/paper-defaults.ly: add {score,book}-title-properties.
7168
7169         * scm/document-backend.scm (lookup-interface): error message if
7170         using unknown interface.
7171
7172         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7173         edge-height.
7174
7175         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7176         make_bracket.
7177         (make_bracket): new function.
7178
7179         * scm/lily.scm (define-scheme-options): add paper-size option.
7180
7181         * ly/declarations-init.ly (laissezVibrer): get paper size from
7182         -dpaper-size
7183
7184         * scm/translation-functions.scm: use \fontsize for changing the
7185         fontsize.
7186
7187         * scm/define-grobs.scm (all-grob-descriptions): set
7188         between-length-limit to 1.0
7189
7190         * lily/tie-helper.cc: add between_length_limit_ detail property.
7191
7192         * mf/feta-bolletjes.mf: typos.
7193
7194         * lily/note-head.cc (internal_print): don't shadow idx
7195         parameter. This fixes wrong attachment for do shape heads.
7196
7197 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7198
7199         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7200
7201         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7202
7203         * scm/layout-slur.scm: rename from slur.scm
7204
7205         * scm/layout-page-layout.scm: rename from page-layout.scm
7206
7207         * scm/layout-beam.scm: rename from beam.scm
7208
7209         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7210         bass-figure-interface
7211
7212         * lily/new-figured-bass-engraver.cc (process_music): add
7213         implicitBassFigures property.
7214         
7215         * scm/define-markup-commands.scm (pad-x): new markup.
7216
7217         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7218         minimumVerticalExtent on FiguredBass context.
7219
7220         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7221         case the continuation crosses a line break.
7222
7223 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7224
7225         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7226         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7227         absolute file name bug.  
7228
7229 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7230
7231         * VERSION (PACKAGE_NAME): release 2.7.12
7232
7233         * input/regression/figured-bass-continuation-center.ly: new file.
7234
7235         * input/regression/beam-outside-beamlets.ly: new file.
7236
7237         * lily/beam.cc (set_beaming): don't clip edges.
7238         (connect_beams): don't clip edges.
7239
7240         * lily/beaming-info.cc (clip_edges): new function.
7241
7242         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7243
7244         * Documentation/user/instrument-notation.itely (Figured bass):
7245         demonstrate extenders, update seealso links.
7246
7247         * scm/titling.scm (marked-up-headfoot): change tagline
7248         handling. tagline = ##f will blank the tagline as well.
7249
7250 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7251
7252         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7253
7254         * lily/new-figured-bass-engraver.cc (struct
7255         New_figured_bass_engraver): add new_music_found_ member.
7256
7257         * lily/lilypond-version.cc (Lilypond_version): deal with
7258         incorrectly formatted version strings. 
7259
7260         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7261         New_figured_bass_engraver by default.
7262
7263         * lily/ttf.cc (print_trailer): only define glyph names when
7264         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7265
7266 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7267
7268         * lily/horizontal-bracket.cc (make_bracket): new function.
7269
7270         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7271         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7272         BassFigureLine, BassFigureAlignment
7273
7274         * lily/new-figured-bass-engraver.cc (process_music): new file.
7275
7276         * lily/figured-bass-continuation.cc: new file.
7277
7278         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7279         new file.
7280
7281 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7282
7283         * scripts/lilypond-book.py: Bug fix, put the quote around the
7284         actual score for LaTeX documents.
7285
7286         * scm/define-grobs.scm (all-grob-descriptions): Change
7287         collapse-height of the SystemStartBracket grob to 5.0, 
7288         so the bracket disappears for single stave score lines (similarly
7289         to SystemStartBraces). 
7290
7291         * Documentation/user/advanced-notation.itely (Polymetric
7292         notation): Clarify the use of compressMusic.
7293
7294         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7295         that the grace spacer note in other staves need the same duration
7296         and document the stroke-style property.
7297
7298 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7299
7300         * Documentation/user/global.itely (Vertical spacing): document
7301         alignment-extra-space and fixed-alignment-extra-space.
7302
7303         * Documentation/topdocs/NEWS.tely (Top): add entry.
7304
7305         * input/regression/alignment-vertical-spacing.ly: new file.
7306
7307         * python/convertrules.py (conv): add rule.
7308
7309         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7310
7311         * lily/align-interface.cc (stretch_after_break): new
7312         function. Read fixed-alignment-extra-space property.
7313         (align_elements_to_extents): read alignment-extra-space property.
7314
7315         * lily/lily-guile.cc (robust_scm2dir): new function.
7316
7317         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7318         (annotate-space-left): new function. Annotate space left on page. 
7319         (annotate-y-interval): new function.
7320         (paper-system-annotate-last): new function. Annotate bottom-space.
7321
7322         * mf/feta-beugel.mf (y): 
7323
7324 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7325
7326         * VERSION (PACKAGE_NAME):  release 2.7.11
7327
7328         * scm/lily-library.scm (interval-translate): new function
7329         (interval-center): new function. 
7330
7331         * scm/page-layout.scm (paper-system-annotate): new function. Add
7332         arrows for dimensions.
7333  
7334         * scm/stencil.scm (dimension-arrows): new function.
7335
7336         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7337
7338         * input/regression/page-spacing.ly: add annotatespacing
7339
7340         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7341         (LY_DEFINE): new function ly:paper-system-set-property!
7342
7343         * Documentation/user/global.itely (Paper size): explain how to add
7344         sizes.
7345
7346         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7347         correspond to GS's definition.
7348
7349         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7350         tuplet bracket.
7351         (print): only connect to next bracket if the next one is alive.
7352         (print): set padding to 0.0 if the bound is a breakable
7353         column. This makes tupletFullLength brackets reach up to the staff
7354         line if it doesn't connect to the next line.
7355
7356 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7357
7358         * lily/bar-number-engraver.cc: correct docs.
7359
7360         * scm/output-lib.scm (first-bar-number-invisible): rename from
7361         default-bar-number-visibility
7362
7363 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7364
7365         * scm/define-music-properties.scm (all-music-properties): remove
7366         predicate property.
7367
7368 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7369
7370         * po/fi.po: refresh.
7371
7372 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7373
7374         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7375         superfluous s1.
7376         (disappear): bugfix.
7377
7378         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7379
7380         * lily/include/paper-system.hh (class Paper_system): remove
7381         staff_extents_ member.
7382
7383         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7384
7385         * lily/include/paper-system.hh (class Paper_system): remove
7386         number_ variable. Remove is_title_. Remove break_before_penalty_
7387
7388         * lily/paper-book.cc (systems): use 'number property iso. number_
7389         member.
7390
7391         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7392         remove ly:paper-system-number.
7393
7394         * scm/lily-library.scm (paper-system-title?): new function.
7395
7396         * lily/book.cc (process): bugfix: flip ?: cases. 
7397
7398         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7399         add outputProperty.
7400
7401         * ly/music-functions-init.ly: add outputProperty music function.
7402
7403         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7404
7405         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7406         and next-padding.
7407         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7408
7409         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7410
7411         * lily/paper-system.cc (internal_get_property): new function.
7412
7413         * Documentation/user/global.itely (Vertical spacing): refer to
7414         page-spacing.ly
7415
7416         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7417         pagetopspace
7418
7419         * input/regression/page-spacing.ly: new file.
7420
7421         * input/regression/page-top-space.ly: new file.
7422
7423         * lily/spacing-spanner.cc: cmath -> math.h
7424
7425         * lily/paper-system.cc (read_left_bound): new function. Read
7426         line-break-system-details from left bound to determine extents.
7427  
7428         * Documentation/user/programming-interface.itely (Using LilyPond
7429         syntax inside Scheme): change applyxxx -> applyXxx.
7430
7431         * ly/music-functions-init.ly: add outputProperty music function.
7432
7433         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7434
7435         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7436
7437         * python/convertrules.py (conv): rule
7438
7439         * ly/music-functions-init.ly: applyxxx -> applyXxx
7440
7441         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7442         TabVoice to Voice.
7443
7444 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7445
7446         * flower/include/real.hh: include <math.h> iso. <cmath>
7447
7448         * flower/include/offset.hh: include real.hh
7449
7450 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7451
7452         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7453         fix example, now that 'interfaces is no longer directly available.
7454
7455         * lily/book.cc (process): don't crash if paper == NULL.
7456
7457         * po/fr.po: update.
7458
7459 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7460
7461         * scm/define-music-types.scm (music-descriptions): set length and
7462         start-callback for QuoteMusic
7463
7464 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7465
7466         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7467         arguments. Fixes compilation error with gcc 3.3.
7468
7469 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7470
7471         * VERSION: release 2.7.10
7472
7473         * stepmake/stepmake/python-module-rules.make
7474         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7475
7476         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7477         real.hh
7478
7479 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7480
7481         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7482         -Werror. Otherwise GCC barfs over various optimizations.
7483
7484         * scm/define-grob-properties.scm (all-internal-grob-properties):
7485         add note-head property
7486
7487         * Documentation/user/instrument-notation.itely (Laissez vibrer
7488         ties): new node.
7489
7490         * input/regression/laissez-vibrer-ties.ly: new file.
7491
7492         * lily/laissez-vibrer-engraver.cc: new file.    
7493
7494         * lily/include/tie-column-format.hh: new file.
7495
7496         * lily/tie-column-format.cc: new file. 
7497
7498         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7499
7500         * lily/laissez-vibrer-tie.cc: new file.
7501
7502         * lily/include/laissez-vibrer-tie.hh: new file.
7503
7504         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7505
7506         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7507
7508         * scm/define-grobs.scm (all-grob-descriptions): add
7509         LaissezVibrerTie, LaissezVibrerTieColumn
7510
7511         * lily/tie-column.cc (set_tie_config_directions): new function
7512         (final_shape_adjustment): new function.
7513         (shift_small_ties): new function.
7514
7515         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7516
7517         * lily/include/tie.hh (struct Tie_details): add x_gap_
7518         (struct Tie_configuration): add head_position_
7519
7520         * lily/tie-column.cc (set_chord_outline): new function.
7521
7522         * mf/cmr.enc.in:  remove file.
7523
7524 2005-09-11  Graham Percival  <gpermus@gmail.com>
7525
7526         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7527
7528 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7529
7530         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7531         reduce aliasing effects.
7532
7533         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7534         box in skyline.
7535
7536 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7537
7538         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7539
7540         * flower/include/real.hh: std::fabs too.
7541
7542 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7543
7544         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7545
7546         * lily, flower: Include C++ iso C headers.  Import namespace std
7547         throughout.
7548
7549         * lily/side-position-interface.cc: 
7550         * lily/scm-hash.cc: 
7551         * lily/note-head.cc: 
7552         * lily/include/includable-lexer.hh: 
7553         * flower/include/string-data.icc: Remove using std::*.
7554
7555         * lily, flower: Include C++ iso C headers.  Import namespace std
7556         throughout.
7557
7558         * lily/side-position-interface.cc: 
7559         * lily/scm-hash.cc: 
7560         * lily/note-head.cc: 
7561         * lily/include/includable-lexer.hh: 
7562         * flower/include/string-data.icc: Remove using std::*.
7563
7564         * Documentation/user/instrument-notation.itely (Entering lyrics):
7565         Multiple latin-1->utf-8 conversion fix.
7566
7567         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7568
7569 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7570
7571         * lily/tie.cc (get_configuration): also avoid dots for non-space
7572         situations.
7573
7574 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7575
7576         * Documentation/user/instrument-notation.itely: Bugfix.
7577
7578 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7579
7580         * tex/GNUmakefile: don't install texinfo.tex
7581
7582         * tex/ : cleanup: remove unused files.
7583
7584         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7585
7586         * flower/include/real.hh: using std::{isnan,isinf}
7587         
7588         * VERSION (PATCH_LEVEL): release 2.7.9
7589
7590 2005-09-05  Graham Percival  <gpermus@gmail.com>
7591
7592         * Documentation/user/ instrument-notation.itely,
7593         advanced-notation.itely: minor tweaks.
7594
7595         * input/test/script-chart.ly: add item padding.
7596
7597 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7598
7599         * flower/offset.cc: use math.h iso. <cmath>
7600
7601         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7602         of IE users.
7603
7604         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7605         (widen-left-stencil-edges): new function. Fix alignment problems
7606         with LaTeX includegraphics.
7607
7608         * lily/text-interface.cc (interpret_markup): use abort().
7609
7610 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7611
7612         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7613
7614         * lily/tie.cc (get_configuration): update bezier shape as we
7615         change Y positions.
7616         (get_configuration): don't move large ties if we're outside of the
7617         staff.
7618
7619 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7620
7621         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7622         
7623 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7624
7625         * .cvsignore: Add auto-generated configure files and then some.
7626
7627 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7628
7629         * scm/define-grobs.scm (DynamicLineSpanner): Add
7630         X-extent-callback.  Fixes hairpin-slur collision.
7631
7632 2005-08-31  Graham Percival  <gpermus@gmail.com>
7633
7634         * Documentation/user/advanced-notation.itely,
7635         basic-notation.itely: minor changes.
7636
7637 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7638
7639         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7640         \linebreak between each .eps file if \betweenLilyPondSystem is
7641         undefined. 
7642
7643         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7644         music): Document the \linebreak
7645
7646         * Documentation/user/lilypond-book.itely,
7647         input/tutorial/lbook-latex-test.tex,
7648         Documentation/user/examples.itely: Remove \usepackage{graphics}
7649
7650 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7651
7652         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7653
7654         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7655         compat bugfix.
7656
7657         * scripts/lilypond-book.py (PREAMBLE_LY): define
7658         inside-lilypond-book
7659         (modify_preamble): new function. Insert \RequirePackage{graphics}
7660         when no {graphics found in preamble.  
7661
7662 2005-08030  Graham Percival  <gpermus@gmail.com>
7663
7664         * Documentation/user/basic-notation.itely, global.itely,
7665         tutorial.itely: misc small changes.
7666
7667 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7668
7669         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7670         VERSION.
7671
7672 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7673
7674         * lily/tie-column.cc (new_directions): put Tie down on center
7675         staff line. 
7676
7677         * lily/script-interface.cc (before_line_breaking): use
7678         Grob::programming_error
7679
7680         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7681
7682         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7683         of splitext.
7684
7685 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7686
7687         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7688
7689 2005-08-29  Werner Lemberg  <wl@gnu.org>
7690
7691         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7692         the `*.scale.pfa' files to avoid warnings.
7693
7694 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7695
7696         * lily/tempo-performer.cc (process_music): idem.
7697
7698         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7699
7700 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7701
7702         * Documentation/user/advanced-notation.itely (Text markup): not a
7703         fragment.
7704
7705         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7706
7707         * lily/staff-performer.cc (initialize): add tempo/name to
7708         audio_staff_
7709
7710
7711 2005-08-26  Graham Percival  <gpermus@gmail.com>
7712
7713         * Documentation/user/advanced.itely: add text-only example.
7714
7715         * Documentation/user/invoking.itely: add index entries for
7716         convert-ly.
7717
7718         * Documentation/user/ tutorial.itely, basic-notation.itely:
7719         small fixes suggested by Steve D.  Thanks!
7720
7721 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7722
7723         * input/regression/markup-bidi-pango.ly: new file.
7724
7725         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7726         standard. Remove #ifdef. Remove memleak.
7727         (text_stencil): use text_dir to decide how to composite items.
7728         (text_stencil): determine uniform text direction for the entire
7729         string.
7730
7731         * scripts/lilypond-book.py (output_name): remove
7732         latex_filter_cmd. Non-portable to non-Unix systems. 
7733         (get_latex_textwidth): use File.write and os.unlink() instead.
7734
7735         * THANKS: add Vicente & Trevor.
7736
7737         * lily/grob.cc (discretionary_processing): look up origin for
7738         programming_error too. 
7739
7740         * input/regression/tie-broken.ly: new file.
7741
7742         * lily/tie-column.cc (set_chord_outlines): set outline for line
7743         break case too.
7744         
7745 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7746
7747         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7748         unscaled transform, just translate stencils.
7749
7750         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7751         MIDI.
7752
7753         * scm/define-markup-commands.scm (wordwrap-string): use
7754         text-direction
7755         (wordwrap-stencils): idem.
7756         (line): idem.
7757         (fill-line): idem.
7758         (wordwrap-stencils): translate last line to right for
7759         text-direction = LEFT.
7760
7761         * scm/define-grob-properties.scm (all-user-grob-properties): add
7762         text-direction.
7763
7764 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7765
7766         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7767         when copying a Lily_parser object.
7768
7769 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7770
7771         * scm/define-markup-commands.scm (null): add null markup.
7772
7773 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7774
7775         * lily/item.cc: Add documentation of center-invisible
7776
7777 2005-08-24  Graham Percival  <gpermus@gmail.com>
7778
7779         * Documentation/user/advanced-notation.itely: add info about
7780         raising text.
7781
7782         * Documentation/user/programming-interface.itely: fix example
7783         involving raised text.
7784
7785 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7786
7787         * lily/beam.cc (print): fix X start/end points of isolated
7788         beamlets.
7789
7790         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7791
7792         * lily/multi-measure-rest.cc (set_text_rods): new function.
7793
7794         * lily/vertical-align-engraver.cc (process_music): call
7795         Align_interface::set_axis(). This forces #'elements to be ordered,
7796         preventing random vertical reordering of staves.
7797
7798         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7799         add avoid-slur property. 
7800
7801         * Documentation/user/basic-notation.itely (Measure repeats): add
7802         countPercentRepeats example.
7803
7804         * Documentation/user/advanced-notation.itely (Other text markup
7805         issues): remove remark about normal-font.  We have \normal-text
7806
7807         * input/regression/tie-chord.ly: add note about remaining bugs.
7808
7809         * lily/tie.cc (print): try Tie_column::set_directions () if
7810         control-points not yet defined.
7811
7812 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7813
7814         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7815         extent. This fixes braces falling out of the EPS bbox.
7816
7817         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7818         exactly to bbox.
7819
7820 2005-08-23  Graham Percival  <gpermus@gmail.com>
7821
7822         * {various} : change #up->#UP and #down->#DOWN.
7823
7824         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7825
7826         * Documentation/user/advanced-notation.itely: clarify
7827         what objects handles text on a multimeasure rest.
7828
7829 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7830
7831         * VERSION (PATCH_LEVEL): release 2.7.7
7832
7833 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7834
7835         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7836
7837         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7838
7839         * input/regression/*.ly: formatting clean-up. Default layout
7840         before music expression.
7841
7842         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
7843         romanze28-2 example.
7844
7845         * scm/ps-to-png.scm: remove dir-re function.
7846         (make-ps-images): generate page names, instead of globbing them.
7847         This brings down LilyPond memory usage for make web by a factor
7848         10. 
7849
7850         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
7851         don't use glob. With 3000 files, globbing
7852         Documentation/user/out-www/ can take too much time. 
7853         
7854         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
7855
7856         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
7857
7858         * input/regression/tie-manual.ly: new file
7859
7860         * input/regression/tie-chord.ly: update.
7861
7862         * flower/include/interval.hh (struct Interval_t): 
7863
7864         * lily/tie.cc (distance): new function 
7865         (height): new function.
7866         (init): new function
7867         (Tie_details): new struct.
7868
7869         * lily/skyline.cc (skyline_height): new function.
7870
7871         * lily/tie-column.cc (set_chord_outlines): new function.
7872         (new_directions): read tie-configuration
7873
7874         * lily/skyline.cc: fix ASCII art.
7875         
7876 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
7877
7878         * python/convertrules.py (string_or_scheme): Fix spelling error
7879
7880 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7881         
7882         * lily/tie-column.cc (set_directions): set directions only once.
7883         (add_configuration): new function.
7884
7885         * lily/tie.cc (set_control_points): new function
7886
7887         * lily/tie-column.cc (new_directions): new function.
7888
7889         * ly/music-functions-init.ly: set 'pitch property
7890         iso. trill-pitch. This makes \relative work with \pitchedTrill
7891
7892         * lily/tie.cc (get_configuration): new function. Don't generate
7893         control points, rather, generate configuration.
7894         remove head-pair property.
7895
7896         * lily/include/tie.hh (struct Tie_configuration): new struct.
7897
7898 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
7899
7900         * Documentation/topdocs/NEWS.tely: clarify.
7901
7902 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7903
7904         * lily/tie.cc: remove minimum-length
7905
7906         * scm/define-grob-properties.scm (all-user-grob-properties):
7907         remove staffline-clearance, y-offset 
7908
7909         * input/regression/tie-dots.ly (Module): remove.
7910
7911         * lily/tie.cc (get_control_points): rewrite. Put short ties in
7912         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
7913
7914         * input/regression/tie-single.ly: new file.
7915
7916 2005-08-21  Graham Percival  <gpermus@gmail.com>
7917
7918         * ly/bagpipe.ly: fix compile problem.
7919
7920 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7921
7922         * lily/midi-item.cc (name): new method.
7923
7924         * lily/staff-performer.cc (acknowledge_audio_element): use
7925         signature of baseclass.
7926
7927         * lily/engraver-group.cc (do_announces): move recursion call out
7928         of while loop. 
7929
7930         * lily/drum-note-performer.cc (class Drum_note_performer): use
7931         process_music everywhere.
7932
7933         * ly/performer-init.ly: add default children everywhere.
7934
7935         * lily/paper-book.cc (output): call paper-book-write-midis
7936         directly: always write MIDI, even if no \layout {} block. 
7937
7938 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7939
7940         * VERSION (PACKAGE_NAME): release 2.7.6
7941
7942         * lily/percent-repeat-engraver.cc (try_music): don't print warning
7943         about not being able to handle repeat.
7944
7945 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7946
7947         * Documentation/user/examples.itely (Piano templates):
7948         * lily/include/performer-group.hh: Remove last traces of
7949         Performer_group_performer.  Fixes make web.
7950
7951 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7952
7953         * Documentation/user/examples.itely (Piano templates): change
7954         Engraver_group_engraver -> Engraver_group
7955
7956         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
7957         scm_stand_in_procs is not weak_any.
7958
7959         * lily/volta-bracket.cc (print): don't use strcmp().
7960
7961         * lily/volta-engraver.cc (process_music): use
7962         Text_interface::is_markup() for setting the 'text property of the
7963         volta bracket.
7964
7965         * input/mutopia/claop.py (accents): update syntax to 2.6
7966
7967         * scm/define-context-properties.scm
7968         (all-user-translation-properties): add countPercentRepeats.
7969
7970         * Documentation/user/basic-notation.itely (Measure repeats): add
7971         isolated percent example.
7972
7973 2005-08-18  Graham Percival  <gpermus@gmail.com>
7974
7975         * input/ {various}: change direction #1, #-1 to
7976         #up/#down or \fooUp, \fooDown.
7977
7978         * Documentation/user/music-glossary.tely: #-1 to #down.
7979
7980         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
7981         to #up, #-1 to #down.
7982
7983 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7984
7985         * lily/include/engraver-group.hh: rename.
7986
7987         * lily/include/performer-group.hh: rename.
7988
7989 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
7990
7991         * input/test/script-abbreviations.ly: Removed some old LaTeX
7992         left overs.
7993
7994 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7995
7996         * python/convertrules.py (conv): inside-slur -> avoid-slur.
7997         Remove functions.  Remove if 1: constructs, reindent.
7998
7999         * scripts/convert-ly.py (add_version): Add functions from
8000         convertrules.py
8001
8002         * scm/script.scm (default-script-alist):
8003         s/priority/script-priority.  Fixes script stacking.  Backportme.
8004         (Fermata): Very low priority.
8005
8006 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8007
8008         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8009
8010         * input/regression/slur-script.ly: remove padding tweaks. Add
8011         comment strings.
8012
8013         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8014         time sigs and related stuff.
8015
8016         * scm/define-grob-properties.scm (all-user-grob-properties): add
8017         @code{} tags to property description.
8018
8019         * lily/include/line-group-group-engraver.hh (Module): remove file.
8020
8021         * python/convertrules.py (conv): add rule for
8022         Engraver_group_engraver -> Engraver_group.
8023
8024         * lily/include/performer-group-performer.hh: analogous.
8025
8026         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8027
8028         * lily/context-def.cc (instantiate): check for
8029         Engraver_group_engraver and Performer_group_performer not
8030         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8031  
8032 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8033
8034         * input/les-nereides.ly: Remove three fingering tweaks, update
8035         remaining one.
8036
8037         * input/regression/slur-script-inside.ly: Update, fix doc.
8038
8039         * scm/script.scm: Update to avoid-slur.
8040
8041         * scm/define-grob-properties.scm (avoid-slur): New property.
8042
8043         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8044         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8045         outside_slur_callback if avoid-slur != #'inside.
8046
8047         * scm/define-grobs.scm (Fingering, Textscript): No
8048         inside-slur/outside-slur preference.
8049         (DynamicLineSpanner): Always outside slur.
8050
8051         * input/regression/slur-script.ly: More tests.
8052
8053 2005-08-17  Graham Percival  <gpermus@gmail.com>
8054
8055         * Documentation/user/lilypond-book: fix notime entry.
8056
8057         * Documentation/user/advanced-notation.itely: add info on
8058         getting an I rehearsal mark.
8059
8060         * Documentation/user/putting.itely: reinstate "I", re-enforce
8061         the fact that \override numbers are the result of
8062         experimentation and personal taste.
8063
8064         * Documentation/user/invoking.itely: update convert-ly bugs.
8065
8066 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8067
8068         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8069         to #t.
8070
8071         * lily/timing-translator.cc (initialize): don't initialize timing.
8072
8073         * input/regression/stem-spacing.ly (Module): remove file.
8074
8075         * input/regression/spacing-stick-out.ly: specify Score context for
8076         \override
8077
8078         * input/regression/clefs.ly: remove spurious {}s 
8079
8080 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8081
8082         * Documentation/topdocs/NEWS.tely,
8083         input/regression/repeat-percent-count.ly: clarify a bit.
8084
8085 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8086
8087         * input/no-notation/display-lily-tests.ly: delete
8088         display-lily-init call.
8089
8090         * ly/music-functions-init.ly (displayLilyMusic): move
8091         display-lily-init call at top level, so that the user should not
8092         have to call it.
8093
8094         * scm/define-music-display-methods.scm (note-name->lily-string):
8095         retrieve note names directly from pitchnames using new function `rassoc'.
8096         (display-lily-init): note names list construction removed.
8097
8098 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8099
8100         * THANKS: spello.
8101
8102         * lily/lily-parser.cc (get_header): copy module, instead of
8103         returning it.
8104
8105         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8106         counters.
8107
8108         * Documentation/user/basic-notation.itely (Measure repeats): add
8109         links to Counter grobs.
8110
8111         * scm/define-grobs.scm (all-grob-descriptions): add
8112         DoublePercentRepeatCounter
8113         (all-grob-descriptions): add PercentRepeatCounter
8114
8115         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8116         also create counter grobs.
8117
8118         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8119         return grob without space-alist.
8120
8121         * input/proportional.ly: tune staff-padding.
8122
8123         * input/regression/repeat-percent-count.ly: new file. 
8124
8125 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8126
8127         * input/no-notation/display-lily-tests.ly: moved from
8128         input/regression/ to input/no-notation. Be sure to call
8129         `display-lily-init' before trying to use the display function.
8130
8131 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8132
8133         * scripts/lilypond-book.py (option_definitions): Don't localize
8134         the empty string. Fixes bug when --psfonts was used with
8135         non-English locale.
8136
8137 2005-08-15  Graham Percival  <gpermus@gmail.com>
8138
8139         * lily/tuplet-bracket.cc: simple build fix.
8140
8141         * Documentation/user/putting.itely: use "we" instead of "I".
8142
8143         * Documentation/user/basic-notation.itely: cautionary accidentals
8144         work with naturals, too.
8145
8146 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8147
8148         * lily/tuplet-bracket.cc (calc_position_and_height): add
8149         staff-padding support.
8150
8151         * input/proportional.ly: set staff-padding.
8152         
8153         * VERSION (PATCH_LEVEL): release 2.7.5
8154
8155         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8156         fixes. Remove tweaks.
8157
8158         * input/regression/tuplet-slope.ly: add a test case.
8159
8160         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8161         erroneous fix. Add spanner bounds to offset array with relative X
8162         positions.
8163
8164         * ly/engraver-init.ly: add Rest_engraver only once.
8165
8166         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8167         (*parser*) lookup if (*parser*) != #f.
8168
8169 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8170
8171         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8172         Cut-and paste update.
8173
8174         * input/regression/slur-script.ly: Add example of reverting
8175         inside-slur for fingering.
8176
8177         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8178         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8179
8180         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8181         outside_slur_callback if inside-slur == #f (as opposed to unset).
8182
8183 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8184
8185         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8186         encoding files are already removed.
8187
8188 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8189
8190         * Documentation/user/advanced-notation.itely (Instrument names):
8191         Document a workaround for instrument names that collide with
8192         system start braces/brackets.
8193
8194 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8195
8196         * lily/rest-collision.cc (do_shift): spello.
8197
8198         * input/proportional.ly: use #'used property. Set break-overshoot
8199         property.
8200
8201         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8202
8203         * lily/paper-column.cc: add #'used property
8204
8205         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8206         array for staves found.
8207
8208         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8209         array for stavesFound.
8210
8211         * lily/staff-spacing.cc (next_note_correction): add fixed and
8212         space to calling convention. This fixes spacing of accidentals
8213         after barlines.
8214
8215         * input/regression/spacing-accidental-stretch.ly: add barline -
8216         accidental case.
8217
8218         * scm/framework-ps.scm (page-header): add version number to
8219         creator
8220         (eps-header): idem.
8221
8222         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8223         
8224 2005-08-13  Graham Percival  <gpermus@gmail.com>
8225
8226         * Documentation/user/global.itely: add "fit as much as
8227         possible onto this page" example (Vertical spacing).
8228
8229 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8230
8231         * *: Nitpick run.
8232
8233         * buildscripts/fixcc.py: Fixes.
8234
8235 2005-08-12  Graham Percival  <gpermus@gmail.com>
8236
8237         * Documentation/user/advanced-notation.itely: add markup
8238         example to Text spanners.
8239
8240 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8241
8242         * Documentation/user/basic-notation.itely (Ties): Add example of
8243         tying a tremolo to a chord. Thanks to Steve Doonan. 
8244
8245         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8246         properties and move tieMelismaBusy to the list of written
8247         properties. 
8248
8249 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8250
8251         * po/TODO: suggest to use a dedicated tool like kbabel.
8252
8253         * po/fi.po: update using kbabel.
8254
8255 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8256
8257         * *: Remove obsolete files.  Nitpick run.
8258
8259         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8260
8261 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8262
8263         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8264         too.
8265
8266         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8267
8268         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8269         whitespace as symbol separator.
8270
8271         * lily/side-position-interface.cc: Add slur-padding.
8272
8273         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8274         quite a large fix, and it never worked in a stable release; so not
8275         really a regression.
8276
8277         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8278         Update cut and paste code from Slur_engraver.
8279
8280         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8281         Add.
8282
8283         * scm/define-grobs.scm (DynamicLineSpanner): Add
8284         dynamic-line-spanner-interface.
8285         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8286
8287 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8288
8289         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8290         to_boolean () so that non-set 'inside-slur means false.
8291
8292         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8293         slur has control-points.  Skip script without direction.  Always
8294         do_shift if script inside slur, even if slur not contained in
8295         script y-extent.  Increment k in loop.
8296
8297 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8298
8299         * scm/define-markup-commands.scm: Improved regexp to search for
8300         EPS bounding boxes and corrected call to ly:warning.
8301
8302 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8303
8304         * Documentation/user/programming-interface.itely (Displaying music
8305         expressions): doc for \displayLilyMusic. Also some precisions in
8306         "Markup construction in Scheme"
8307
8308 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8309
8310         * scm/define-markup-commands.scm (normal-text): Added 2 new
8311         markup commands, \normal-text and \medium (the latter thanks to
8312         Bruce Fairchild). 
8313
8314 2005-08-08  Graham Percival  <gpermus@gmail.com>
8315
8316         * Documentation/user/programming-interface.itely: fix @{ @}.
8317
8318         * scm/define-markup-commands.scm: add linewidth info to
8319         \justify and \wordwrap, add "upright is the opposite of italic".
8320
8321         * Documentation/user/advanced-notation.itely: shaped->shape,
8322         add (cons (markup "foo")) type of example to text markup,
8323         reword multi-measure rests section.
8324
8325         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8326         comment.  No actual code was touched.
8327
8328         * Documentation/user/invoking.itely: add more info about
8329         \include.  Thanks, Bruce!
8330
8331         * THANKS: add Bruce Fairchild, alphabetise.
8332
8333         * Documentation/user/global.itely: document \score{\header{}}
8334         behavior.
8335
8336         * Documentation/user/basic-notation.itely: reword multi-measure
8337         rest discussion in Rests.
8338
8339 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8340
8341         * Documentation/user/programming-interface.itely (Markup
8342         construction in Scheme): Corrected example and tried to clarify
8343         the implicit \line in the table.
8344
8345 2005-08-07  Graham Percival  <gpermus@gmail.com>
8346
8347         * Documentation/user/instrument-notation.itely: moved
8348         some bagpipe info back into the bagpipe section.  Somehow
8349         it ended up in the "other vocal issues" section?!  :o_O
8350
8351 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8352
8353         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8354         directories, not paths).
8355
8356 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8357
8358         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8359         plain emmentaler/aybabtu.  Backportme.
8360
8361         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8362         missing dir correction.
8363
8364 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8365
8366         * scm/define-markup-commands: fix reversed justify/wordwrap
8367         doc strings.
8368
8369 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8370
8371         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8372         lily/gregorian-ligature-engaver.cc,
8373         lily/include/ligature-engraver.hh,
8374         lily/include/coherent-ligature-engraver.hh,
8375         lily/include/gregorian-ligature-engraver.hh: make these classes
8376         truely abstract.  This should fix some internal oddities such as
8377         duplicate as well as dead translator/property declarations, and
8378         also some dead code.
8379
8380         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8381         bugfix: avoid message "junking empty ligature" on ligature
8382         brackets by collecting dummy grobs.
8383
8384 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8385
8386         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8387
8388         * input/proportional.ly (staffKind): bugfix.
8389         (staffKind): updates by Trevor Baca.
8390
8391         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8392         default layout. 
8393
8394         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8395         pair.
8396
8397         * lily/beam.cc (rest_collision_callback): call position_beam() if
8398         necessary.
8399
8400         * VERSION: release 2.7.4
8401
8402         * input/regression/spacing-uniform-stretching.ly: new file.
8403
8404         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8405
8406         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8407         contributor.
8408
8409         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8410
8411         * input/proportional.ly: new file.
8412
8413         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8414         columns is empty
8415
8416         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8417         bounds to currentCommandColumn for the last step.
8418         (start_translation_timestep): if tupletFullLength is set, set
8419         bound to Paper Column
8420
8421         * input/regression/tuplet-full-length.ly (indent): new file.
8422
8423         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8424         clique of loose columns, eg. a set of grace notes in strict
8425         notespacing.
8426
8427         * input/regression/spacing-strict-spacing-grace.ly: new file.
8428
8429         * lily/key-signature-interface.cc: change property name to
8430         alteration-alist
8431
8432         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8433         keyAccidentalOrder
8434
8435         * python/convertrules.py (conv): keyAccidentalOrder ->
8436         keyAlterationOrder
8437
8438         * lily/key-engraver.cc (create_key): always print a cancellation
8439         for going to C-major/A-minor, regardless of printKeyCancellation.
8440         (create_key): remove typecheck for visibility. This fixes key
8441         signature not being printed.
8442
8443         * lily/spacing-determine-loose-columns.cc: new file.
8444
8445         * input/regression/spacing-strict-notespacing.ly: new file.
8446
8447         * lily/spacing-spanner.cc (generate_springs): rename from
8448         do_measure. 
8449         (generate_pair_spacing): new function.
8450         (init, generate_pair_spacing): set between-cols for floating
8451         nonmusical columns.
8452
8453         * lily/spaceable-grob.cc (get_spring): new function. 
8454
8455         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8456         relative to the right edge of the prefatory matter.
8457
8458         * lily/beam.cc (print): read break-overshoot to determine where to
8459         stop/start broken beams.
8460
8461         * input/regression/spanner-break-overshoot.ly: new file.
8462
8463 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8464
8465         * ly/bagpipe.ly: updated.
8466
8467         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8468
8469 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8470
8471         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8472         support: now (de)crescs avoid slurs as well.
8473
8474         * Documentation/user/instrument-notation.itely (Bagpipe example):
8475         comment out non-functioning bagpipe example.
8476         (Bagpipe definitions): idem.
8477
8478         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8479         (Top): add proportionalNotationDuration example.
8480
8481         * input/regression/spacing-proportional.ly: new file.
8482
8483         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8484         synched to a beam.
8485
8486         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8487         fixes beams with a single stem (eg. beams across linebreaks.)
8488
8489         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8490
8491         * flower/rational.cc (operator +): prevent overflow. This fixes
8492         heavily nested tuplets.
8493
8494         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8495         have to protect even those unlikely to be corrupted data members.  
8496
8497 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8498
8499         * ly/bagpipe.ly: new file.
8500
8501         * THANKS: added Sven Axelsson.
8502
8503 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8504
8505         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8506         copy proportionalNotationDuration into currentMusicalColumn if
8507         set.
8508
8509         * lily/spacing-spanner.cc (musical_column_spacing): if
8510         uniform-stretching set, fixed space is 0.0
8511
8512         * input/regression/spacing-multi-tuplet.ly: show
8513         uniform-stretching property.
8514
8515         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8516
8517         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8518         (struct Spacing_options): new struct.
8519
8520         * lily/spacing-basic.cc: new file.
8521
8522         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8523         delta_t doesn't have to be smaller than shortest_playing_len
8524
8525 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8526
8527         * input/regression/markup-arrows.ly:  new file.
8528
8529         * lily/tuplet-bracket.cc: document new behavior.
8530
8531         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8532         with line breaks.
8533
8534         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8535
8536         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8537         default 
8538
8539         * lily/tuplet-bracket.cc: add edge-text property.
8540         add break-overshoot.
8541         (print): read break-overshoot.
8542         (print): read edge-text, add stencils.
8543
8544         * mf/feta-arrow.mf: new file.
8545
8546         * mf/feta-generic.mf: add feta-arrow.
8547
8548 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8549
8550         * Documentation/user/lilypond-book.itely (An example of a
8551         musicological document): Added flag -o to dvips for people who use
8552         the default setting in teTeX where output is sent to the printer. 
8553
8554         * Documentation/user/global.itely (Vertical spacing): Added
8555         reference to the Axis_group_engraver which documents the *Extent
8556         properties.
8557
8558 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8559
8560         * Documentation/user/basic-notation.itely (Tuplets): add note
8561         about nested tuplets. Remove BUG. 
8562
8563         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8564
8565         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8566         (print): manually call print() for subtuplets.
8567         (calc_position_and_height): add subtuplets to the
8568         support. Vertically shift outer tuplet 
8569
8570         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8571         remove-first for Lyrics, ChordNames and FiguredBass
8572
8573         * scm/define-grob-properties.scm (all-internal-grob-properties):
8574         use ly:grob-array? iso. grob-list?
8575         (all-internal-grob-properties): add tuplets grob-array.
8576
8577         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8578         new function
8579
8580 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8581
8582         * input/test/time-signature-staff.ly: new file.
8583
8584         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8585         spurious #<Music FingerEvent> errors. Backportme.
8586
8587 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8588
8589         * Documentation/user/programming-interface.itely (Markup
8590         construction in Scheme): Corrected markup syntax in the
8591         translation table.
8592
8593 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8594
8595         * Documentation/user/instrument-notation.itely: small update
8596         to bagpipe notation docs; thanks Sven!
8597
8598         * Documentation/user/basic-notation.itely: add link about trills.
8599
8600 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8601
8602         * Documentation/user/music-glossary: remove accidentally committed
8603         fink patch.
8604
8605 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8606
8607         * lily/lily-parser.cc (get_header): new function. Enable multiple
8608         \header definitions.
8609
8610         * lily/parser.yy (lilypond_header_body): use get_header.
8611
8612         * ly/init.ly:
8613         * scm/lily-library.scm (print-score-with-defaults): renamed
8614         $globalheader to $defaultheader
8615             
8616         * Documentation/user/global.itely (Creating titles): added short
8617         explanation that multiple headers are useable.
8618
8619
8620 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8621
8622         * lily/module-scheme.cc (LY_DEFINE): new file. 
8623
8624         * Documentation/user/advanced-notation.itely (Font selection): add
8625         doco for make-pango-font-tree.
8626
8627 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8628
8629         * Documentation/user/music-glossary: more languages
8630         for tenuto.
8631
8632         * Docuemntation/user/instrument-notation.itely: minor
8633         update for bagpipe example.
8634
8635 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8636
8637         * input/regression/+.ly (TODO): add some text.
8638
8639 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8640
8641         * Documentation/user/invoking.itely: \score begins with music.
8642
8643         * Documentation/user/ basic-notation.itely,
8644         instrument-notation.itely: minor changes.
8645
8646         * Documentation/user/music-glossary.itely: began tenuto entry.
8647
8648 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8649
8650         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8651
8652         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8653
8654 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8655
8656         * Documentation/user/examples.itely: remove bagpipe template.
8657
8658         * Documentation/user/instrument-notation.itely: add bagpipe
8659         section, maybe fix quotes in lyrics.  I hate text encoding.
8660         Clarify chord durations, more bagpipe stuff.
8661
8662 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8663  
8664         * lily/accidental-engraver.cc: formatting fixes.
8665
8666         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8667         grob-array.
8668
8669         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8670
8671         * lily/note-column.cc (arpeggio): new function.
8672
8673         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8674         account for spacing.
8675
8676 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8677
8678         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8679         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8680         mingw build.
8681         
8682 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8683
8684         * scm/lily.scm (lilypond-all): clear anonymous modules after
8685         processing files.
8686
8687 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8688
8689         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8690         SCM_I_CONSP
8691
8692         * VERSION: 2.7.3 released
8693
8694         * Documentation/user/invoking.itely (Invoking lilypond): add
8695         LILYPOND_GC_YIELD documentation.
8696
8697         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8698         scm_from_real / scm_make_real.
8699
8700         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8701         higher. This increases memory footprint, but provides overall
8702         speedup of 15 to 20%. 
8703
8704         * lily/include/translator.hh (class Translator): remove
8705         PRECOMPUTED_VIRTUAL everywhere.
8706
8707         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8708
8709         * lily/context.cc (now_mom): non-recursive now_mom() 
8710
8711         * lily/include/profile.hh: new file.
8712
8713         * lily/profile.cc: new file.
8714
8715         * lily/grob.cc (Grob::Grob): look properties up directly.
8716
8717         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8718         lookups.
8719
8720         * lily/include/box.hh (class Box): smob Box type.
8721
8722         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8723
8724         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8725         protect() and unprotect(). Use throughout.
8726
8727 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8728
8729         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8730
8731         * scm/define-music-display-methods.scm (markup->lily-string):
8732         markup elements can also be strings (without simple-markup
8733         appended)
8734
8735 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8736
8737         * lily/context.cc (where_defined): also assign value in
8738         where_defined().
8739
8740         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8741         (curve_coordinate): new function
8742
8743         * lily/simple-spacer.cc (add_columns): only add rods between
8744         column i and begin/end if keep-inside-line is set (this repleces
8745         allow-outside-line as default)
8746
8747 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8748
8749         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8750         tupletSpannerDuration if applicable.
8751
8752         * lily/font-size-engraver.cc (process_music): read fontSize only
8753         once per timestep.
8754
8755         * lily/engraver*cc: use throughout.
8756         
8757         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8758
8759         * lily/translator.cc (add_acknowledger): new file. Directly jump
8760         into an Engraver::acknowledge_xxx () method based on a grobs
8761         interface-list.
8762
8763         * lily/include/translator-dispatch-list.hh (class
8764         Engraver_dispatch_list): new struct, new file.
8765
8766         * scm/define-context-properties.scm
8767         (all-internal-translation-properties): remove acceptHashTable,
8768         acknowledgeHashTable
8769
8770         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8771
8772         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8773         change acknowledgeHashTable to C++ member. 
8774
8775         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8776
8777 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8778
8779         * scm/display-lily.scm: new file. Define a `display-lily-music'
8780         function, that displays the music expression given as an argument,
8781         using LilyPond notation.
8782
8783         * scm/define-music-display-methods.scm: new file. Implementation
8784         of display methods for each music type.
8785
8786         * ly/music-functions-init.ly (displayLilyMusic): new function for
8787         displaying music with LilyPond notation.
8788
8789         * input/regression/display-lily-tests.ly: new regression test file
8790         for `display-lily-music'.
8791
8792         * scm/markup.scm: remove obsolete debugging code (for printing
8793         markups with LilyPond notation).
8794
8795         * scm/define-music-types.scm (music-name-to-property-table):
8796         * scm/clef.scm (supported-clefs): export, in order to be accessible
8797         from the (scm display-lily) module.
8798
8799 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8800
8801         * Documentation/topdocs/NEWS.tely (Top): Typo.
8802
8803 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8804
8805         * Documentation/index.html.in, Documentation/texinfo.css,
8806           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8807           Documentation/bibliography/index.html.in,
8808           Documentation/bibliography/html-long.bst: revert css-width patch,
8809           it does not work with IE6.
8810
8811 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8812
8813         * Documentation/texinfo.css: revert 760px hack. 
8814
8815         * VERSION: release 2.7.2
8816
8817         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8818
8819         * Documentation/user/basic-notation.itely (Barnumber check): add
8820         section.
8821
8822         * scm/music-functions.scm (skip-to-last): new function. Show only
8823         last showLastLength part of the \score.
8824
8825         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8826
8827         * python/convertrules.py (conv): add ly:x-moment rule
8828
8829         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8830
8831         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8832
8833         * Documentation/user/instrument-notation.itely (Flexibility in
8834         alignment): options in subsections.
8835
8836         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8837         syllable text. Instead, assume that the previous lyric text is a
8838         melismated text.
8839
8840         * Documentation/index.html.in: revert 800x600 change.
8841
8842 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8843
8844         * lily/main.cc (main): Remove invalid handle kludge.
8845
8846         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
8847         (lambda): add gui define.
8848
8849 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8850
8851         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
8852
8853         * Documentation/user/instrument-notation.itely (Musica ficta
8854         accidentals): add section Musica ficta accidentals
8855
8856         * lily/accidental-engraver.cc (make_suggested_accidental): new
8857         function.
8858         (make_standard_accidental): move into new function.
8859         (create_accidental): new function.
8860
8861         * scm/define-grobs.scm (all-grob-descriptions): new Grob
8862         AccidentalSuggestion
8863
8864         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
8865
8866         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
8867         undefined.
8868
8869         * Documentation/user/global.itely (Page formatting): document
8870         horizontalshift.
8871
8872         * scm/page-layout.scm (default-page-music-height):
8873         horizontalshift: new variable, shift all systems by
8874         horizontalshift to the right, to make space for instrument names.
8875
8876         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
8877
8878         * lily/input-scheme.cc (LY_DEFINE): take format commands.
8879
8880 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8881
8882         * lily/note-column.cc (dir): idem.
8883
8884         * lily/spacing-spanner.cc (Module): idem.
8885
8886         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
8887
8888         * lily/include/paper-column.hh (class Paper_column): add
8889         non-static get_rank() member.
8890
8891         * VERSION: release 2.7.1
8892         
8893         * scm/framework-null.scm: new file, used for benchmarking.
8894
8895 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
8896
8897         * Documentation/topdocs/INSTALL.texi, configure.in: fix
8898         version dependencies for fontforge and gs.
8899
8900         * Documentation/index.html.in, Documentation/texinfo.css,
8901         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8902         Documentation/bibliography/index.html.in, 
8903         Documentation/bibliography/html-long.bst: optimize width of
8904         html for a 800x600 screen (width:760), increases printability
8905         when 'fit to page' is not set and readability in wide screens.
8906
8907         * stepmake/bin/add-html-footer.py: add missing </p>.
8908
8909 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8910
8911         * scm/define-markup-commands.scm (beam): use polygon in beam
8912         command.
8913
8914         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
8915         all acknowledged grobs, and do potentially expensive merge and
8916         write in one go.
8917
8918         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
8919
8920         * configure.in (reloc_b): add --enable-static-gxx to statically
8921         link to libstdc++
8922
8923         * lily/GNUmakefile (static-gxx-libs): new target
8924         static-gxx-libs. Create symlink to libstdc++.a
8925
8926         * lily/new-lyric-combine-music-iterator.cc: rename to
8927         Lyric_combine_music_iterator
8928
8929         * lily/lyric-combine-music-iterator.cc
8930         (Old_lyric_combine_music_iterator): rename to
8931         Old_lyric_combine_music_iterator
8932
8933         * lily/*-engraver.cc (various): remove double use of
8934         PRECOMPUTED_VIRTUAL function: only use
8935         start_translation_timestep() and stop_translation_timestep(), not
8936         both.
8937
8938         * lily/break-substitution.cc (fast_substitute_grob_array): do
8939         fast_substitute_grob_array for all unordered grob_arrays.
8940         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
8941         (substitute_grob_array): optimize.
8942
8943         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
8944
8945         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
8946
8947         * lily/parser.yy: revert $globalheader patch.
8948         
8949         * lily/include/translator.icc
8950         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
8951         Translator methods, without _static helper.
8952  
8953         * lily/grob-smob.cc (derived_mark): rename from
8954         do_derived_mark(). Return void.
8955
8956         * scm/define-context-properties.scm
8957         (all-internal-translation-properties): remove tweakCount/tweakRank.
8958
8959         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
8960         predefined break-visibilities.
8961
8962         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
8963         booleans for break-visibility.
8964
8965         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
8966
8967         * python/convertrules.py (conv): rule for Timing_translator. 
8968
8969         * lily/include/translator.icc: new file. 
8970
8971         * lily/paper-column-engraver.cc (process_music): new
8972         file. Separate Paper_column factory from Score_engraver.
8973
8974         * lily/vertically-spaced-context-engraver.cc: administer
8975         spaceable-staves property of System.
8976
8977         * lily/translator-group-ctors.cc: new file.
8978
8979         * lily/context-property.cc (make_grob_from_properties): construct
8980         the right Grob class programmatically, looking at the class entry
8981         for the meta property.
8982
8983         * lily/break-align-engraver.cc (stop_translation_timestep): call
8984         Break_align_interface::add_element() directly.
8985
8986         * lily/context.cc (measure_position): measure_position() is now a
8987         normal function.
8988
8989         * lily/include/translator.hh (class Translator): rename
8990         process_acknowledged_grobs() to process_acknowledged() and move to
8991         Translator.
8992
8993         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
8994         field for each grob description.
8995
8996         * lily/include/translator-group.hh (class Translator_group):
8997         change to base class. Separate class from Translator. This gets
8998         rid of virtual inheritance for Engravers/Performers.
8999
9000         * lily/staff-performer.cc (class Staff_performer): derive
9001         Staff_performer from Performer, not Performer_group_performer 
9002
9003         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9004         new function.
9005         (precompute_method_bindings): new function. Precompute lists of
9006         Translators, so we only call methods (process_music,
9007         start_translation_timestep, etc.) for Translators needing
9008         it. Also: dispose of pointer-to-member-function calls.
9009
9010         * lily/engraver-group-engraver.cc: remove engraver_each,
9011         recurse_down_engravers ()
9012
9013         * lily/note-head.cc (internal_print): only call
9014         glyph-name-procedure if style != default. 
9015
9016 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9017
9018         * ly/titling-init.ly: add printallheaders option.
9019
9020         * Documentation/user/global.itely: document printallheaders.
9021
9022 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9023
9024         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9025         anymore, but do it centrally.  
9026
9027         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9028         hammer hack.
9029
9030         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9031
9032         * scm/output-lib.scm: remove hammer-print-function.
9033
9034         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9035         macro. Declare a Link_array<Grob> and fill it from a grob.
9036         (extract_item_set): idem for item.
9037
9038         * lily/break-substitution.cc: add header.
9039         (fast_substitute_grob_array): rewrite for Grob_arrays.
9040         (substitute_grob_array): idem.
9041
9042         * lily/group-interface.cc (add_thing): remove file.
9043
9044         * flower/include/parray.hh (class Link_array): slice() is const.
9045
9046         * lily/include/grob-array.hh: new file.
9047
9048         * lily/grob-array.cc (spanner): new file.
9049
9050         * lily/beam-quanting.cc (fill): read details property from beam.
9051
9052         * lily/beam.cc: support details property.
9053
9054         * total speedups below: approx 10%.
9055
9056         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9057
9058         * lily/include/grob.hh (class Grob): add interfaces_ member.
9059
9060         * lily/bezier.cc (init_polynomial_cache): new function: cache
9061         binom(3,j) t^j (1-t)^{3-j}
9062         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9063
9064         * lily/*.cc: substitution throughout.
9065
9066         * lily/grob-property.cc (internal_get_object): new routine.
9067         (internal_set_object): idem. Store grob refrences in separate
9068         alist. This saves processing time, since properties aren't
9069         break-substituted, and the per grob namespace is smaller, both for
9070         grobs and non-grob properties.
9071
9072         * scm/define-grob-properties.scm (all-internal-grob-properties):
9073         remove center-element.
9074
9075         * lily/grob.cc: remove tweak-count, tweak-rank.
9076
9077 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9078
9079         * Documentation/user/lilypond-book.itely: fixes example.
9080
9081 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9082
9083         * Documentation/user/global.itely (Creating titles):    
9084         * Documentation/user/examples.itely (All headers): change the
9085         place of \header in \score blocks (after music block) to make
9086         examples compile (cf. changes on parser.yy on 2005-07-10)
9087
9088 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9089
9090         * python/convertrules.py: add exc -> ecc rule.
9091
9092         * scripts/convert-ly.py: add location of convertrules.py
9093         in a comment.
9094
9095         * Documentation/user/changing-defaults.itely: fix language.
9096
9097 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9098
9099         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9100
9101 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9102
9103         * scm/output-socket.scm (grob-bbox): don't use inf? 
9104
9105         * flower/include/rational.hh: add operator bool() 
9106
9107         * scm/define-music-types.scm (music-descriptions): remove
9108         internal-class-name properties.
9109
9110         * lily/include/event.hh: remove file.
9111
9112         * lily/include/music-constructor.hh: remove file.
9113
9114         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9115         in 'types property.
9116
9117         * lily/music.cc (duration_length_callback): new function.
9118
9119         * lily/event.cc: remove file.
9120
9121         * lily/music-constructor.cc: remove file.
9122
9123         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9124
9125         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9126         (get_context_key): idem.
9127
9128         * scm/lily.scm (lambda): new option object-keys (default to #f)
9129
9130         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9131
9132         * scm/output-gnome.scm: remove beam routine.
9133
9134         * scm/output-ps.scm (scm): idem.
9135
9136         * scm/output-svg.scm: remove beam.
9137
9138         * ps/music-drawing-routines.ps: remove draw_beam.
9139
9140         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9141
9142         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9143         add scm_from_locale_string compatibility glue. 
9144
9145 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9146
9147         * scripts/lilypond-book.py: Prevent occuring error when
9148         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9149         times and target file shoud be overwritten.  (Error message said
9150         'input file and output file is same'.)
9151
9152 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9153
9154         * input/regression/slur-extreme.ly,
9155         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9156         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9157         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9158         "excentricity" to "eccentricity".
9159
9160         * Documentation/user/converters.itely: fix URL for Noteedit and
9161         Rosegarden.
9162
9163         * THANKS: added Yoshinobu Ishizaki.
9164
9165 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9166
9167         * scm/define-markup-commands.scm (justify-field): add. 
9168
9169         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9170
9171 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9172
9173         * lily/lookup.cc (filled_box): express filled_box with
9174         round_filled_box
9175
9176         * scm/midi.scm (paper-book-write-midis): new function. Write all
9177         performances in numbered MIDI files.
9178
9179         * lily/performance-scheme.cc (LY_DEFINE): new file.
9180         (LY_DEFINE): new function ly:performance-write.
9181
9182         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9183         new function.
9184         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9185
9186         * scm/framework-*.scm: use port arguments throughout.
9187
9188         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9189
9190         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9191
9192         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9193
9194         * scm/framework-texstr.scm (output-framework): 
9195
9196         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9197
9198         * scm/output-lib.scm (tablature-stem-attachment-function):
9199         tablature stem attachment fix. 
9200
9201 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9202
9203         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9204
9205         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9206
9207         * scm/define-music-types.scm (music-descriptions): don't use
9208         Music_wrapper type.
9209
9210         * lily/paper-column.cc (print): print moment too.
9211
9212         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9213         remove compatibility cruft.
9214
9215         * lily/parser.yy (score_body): \score can only begin with Music. 
9216
9217         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9218         make-score. Take music argument only. Move parser interaction to
9219         Scheme.
9220
9221         * scm/lily-library.scm (scorify-music): new function.
9222
9223         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9224         (datadir): remove resource import.
9225         (print_environment): remove get_bbox()
9226         (cp_to_dir): remove pre 1.5.2 compat glue.
9227
9228 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9229
9230         * lily/include/simple-spacer.hh (Module): idem.
9231
9232         * lily/include/spring.hh (struct Spring): store inverse
9233         strength. This prevents division by zero.
9234
9235         * VERSION: release 2.7.0
9236         
9237         * lily/include/music.hh (class Music): remove Music::duration_log()
9238
9239         * lily/stem-engraver.cc (make_stem): take duration log from event.
9240
9241         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9242
9243 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9244
9245         * scm/lily.scm (ly:load): load autochange.scm
9246
9247         * Documentation/user/tutorial.itely (Running LilyPond for the
9248         first time): remove reference to DVI/TeX
9249
9250         * scm/define-markup-commands.scm (text): add \text markup command.
9251
9252         * configure.in (reloc_b): bump requirement to Python 2.2.
9253
9254         * lily/include/dots.hh (class Dots): make has_interface() static.
9255
9256         * python/convertrules.py (conv): add rule for ly:grob-default-font
9257
9258         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9259         alphabetical order.
9260
9261         * input/regression/trill-spanner-pitched.ly: new file.
9262
9263         * lily/font-interface-scheme.cc (LY_DEFINE): function
9264         ly:grob-default-font (changed from get-default-font).
9265
9266         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9267
9268         * lily/note-head.cc (internal_print): if style is not a symbol,
9269         set style to 'default. 
9270         (internal_print): no style suffix if glyph-name-procedure not
9271         set. Default to quarter head.
9272
9273         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9274
9275         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9276
9277         * ly/music-functions-init.ly: \pitchedTrill
9278
9279         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9280
9281         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9282
9283         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9284
9285         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9286
9287         * po/fr.po: update
9288
9289         * po/de.po: update.
9290
9291 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9292
9293         * Documentation/user/changing-defaults.itely: add link
9294         to grob-iterface.
9295
9296         * Documentation/user/advanced-notation.itely: add material
9297         to Setting automatic beam behaviour.  Thanks, Joe!
9298
9299         * Documentation/user/lilypond.itely: change encoding to utf-8.
9300
9301 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9302
9303         * Documentation/user/advanced-notation.itely (Setting automatic
9304         beam behavior): Correct the documentation of
9305         revert-auto-beam-setting (backportme)
9306
9307 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9308
9309         * lily/ly-module.cc (ly_make_anonymous_module): define
9310         %module-public-interface of module. 
9311
9312         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9313         without lexer.
9314
9315 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9316
9317         * input/regression/fret-diagrams.ly: stretch example.
9318
9319 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9320
9321         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9322         Fodor).
9323
9324 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9325
9326         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9327
9328         * Documentation/user/examples.itely, lilypond-book.itely:
9329         change \RequirePackage to \usepackage.
9330
9331         * Documentation/user/global.itely: document copyright and tagline.
9332
9333 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9334
9335         * Documentation/user/basic-notation.itely (Transpose): remove link
9336         to nonexistent UntransposableMusic.
9337
9338         * scm/output-svg.scm: remove old definitions.
9339
9340         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9341         invoking.
9342
9343         * python/lilylib.py (search_exe_path): new function.
9344
9345 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9346
9347         * python/lilylib.py (mkdir_p): remove setup_environment()
9348         (backportme)
9349
9350         * buildscripts/mutopia-index.py (headertext): trim text.
9351
9352         * Documentation/topdocs/NEWS.tely (Top): refresh.
9353
9354         * scm/define-markup-commands.scm (wordwrap-string): new function:
9355         split string in paras and words.
9356         (wordwrap-markups): new function.
9357         (wordwrap-stencils): new function. 
9358         (justify): use it.
9359         (wordwrap): use it.
9360         (wordwrap-string): use it
9361         (justify-string): use it.
9362
9363         * scm/lily-library.scm (regexp-split): new function.
9364
9365         * scm/define-markup-commands.scm: remove encoded-simple. 
9366         remove font-markup.
9367         (fontsize): remove old version  of fontsize.
9368         (wordwrap): new markup function. Wrap into paragraphs.
9369
9370         * VERSION: Branch lilypond_2_6
9371         (MINOR_VERSION): go to 2.7.0
9372
9373 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9374
9375         * po/zh_TW.po: update from translation project.
9376
9377 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9378
9379         * scm/midi.scm: compile fix.
9380
9381 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9382
9383         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9384         patch. Now, the tempfile module is loaded too, not only used.
9385
9386 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9387
9388         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9389         0.05 - 1.00 to 0.25 - 1.00
9390
9391         * scm/midi.scm: moved the default-instrument-equalizer procedure
9392         to just under the insturment-equalizer-alist it takes as an
9393         argument.
9394
9395 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9396
9397         * Documentation/user/advanced-notation.itely (Font selection):
9398         remove CMR note.
9399
9400         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9401
9402 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9403
9404         * THANKS: Add UTF-8 marker.
9405
9406         * Documentation/user/point-and-click.itely (http): Update: use
9407         lilypond-invoke-editor.  Fix: instruct to use user.js.
9408
9409 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9410
9411         * ly/titling-init.ly: implements printpagenumber, increases
9412         space between dedication and title (to avoid collisions with
9413         "g" and "q" in dedication), and nicer logic about copyright
9414         and instrument fields being printed on the first page.
9415         Thanks Vincent!
9416
9417         * Documentation/user/global.itely: document printpagenumber.
9418
9419 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9420
9421         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9422
9423 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9424
9425         * THANKS: update to 2.6
9426
9427         * VERSION: 2.6.0 released.
9428
9429 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9430
9431         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9432         rule, errorneously removed probably because of misleading comment.
9433
9434 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9435
9436         * python/lilylib.py (datadir): py2exe comments.
9437
9438         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9439
9440         * configure.in (reloc_b): make fontconfig REQUIRED.
9441
9442 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9443
9444         * po/fi.po: add latest translations.
9445
9446 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9447
9448         * ChangeLog: recode utf-8
9449
9450         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9451         logo.
9452
9453         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9454
9455         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9456
9457         * python/convertrules.py (do_conversion): don't print program_name
9458         from within a module
9459
9460         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9461
9462         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9463
9464 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9465
9466         * Documentation/user/lilypond-book.itely,
9467         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9468
9469         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9470         fixes baseline-skip.  Thanks Vincent!
9471
9472         * Documentation/user/advanced-notation.itely, global.itely:
9473         moved "Selecting font sizes" to global, since it deals with
9474         notation font size, not text fonts.
9475
9476 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9477
9478         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9479         to fonts.
9480
9481 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9482
9483         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9484         workaround since /dev/stdin doesn't work on Cygwin. Using a
9485         temporary file in the current directory since latex doesn't
9486         understand the path name to the default TMP in Cygwin (at least on
9487         win XP).
9488         
9489         * Documentation/user/global.itely (Creating titles): Correct
9490         misprint in example. Thanks to Rob Vlasaty.
9491
9492 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9493
9494         * VERSION (PATCH_LEVEL): release 2.5.32
9495
9496         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9497         variable in lily module
9498
9499         * scm/framework-ps.scm (output-classic-framework): error message
9500         regarding the classic framework.
9501
9502         * Documentation/user/henle-flat-gray.png (Module): new file.
9503
9504         * Documentation/user/baer-flat-gray.png (Module): new file.
9505
9506         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9507         whiteout for markups.
9508
9509         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9510         regex too. This fixes change clef appearance in PDF. 
9511
9512         * ttftool/include/*: remove.
9513
9514         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9515
9516         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9517
9518         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9519
9520         * ttftool/*: remove ttftool subdirectory.
9521
9522         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9523
9524         * lily/ttf.cc (print_header): new file. Convert to type42, using
9525         FreeType to parse the TTF. 
9526
9527         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9528         and post table may differ. Pass around post_nglyphs as well.
9529
9530 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9531
9532         * ly/music-functions-init.ly (musicMap): new music function
9533         musicMap. 
9534         
9535 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9536
9537         * make/mutopia-rules.make: anti-alias-factor = 2
9538
9539         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9540         page switch.
9541
9542         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9543         anti-alias-factor for lilypond-book runs.
9544
9545         * scm/ps-to-png.scm (scale-down-image): new function.
9546         (my-system): new function.
9547         (make-ps-images): blow up GS resolution by anti-alias-factor,
9548         scale down image by anti-alias-factor.  This improves appearance
9549         of bitmaps
9550         (make-ps-images): remove showpage. Fixes spurious empty png at
9551         end.
9552
9553         * scm/framework-ps.scm (write-preamble): downcase filename before
9554         string-matching. Should fix .TTF files (as opposed to ttf files)  
9555
9556         * Documentation/user/tutorial.itely (Running LilyPond for the
9557         first time): separate subsections for windows, macos and unix.  
9558
9559         * Documentation/user/invoking.itely (Updating files with
9560         convert-ly): add MacOS X note.
9561
9562 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9563
9564         * Documentation/user/introduction.itely (Engraving): don't include
9565         file optical-spacing, add directly.
9566
9567         * lily/paper-outputter.cc (file): open file in binary mode. This
9568         fixes OTF embedding on windows.
9569
9570 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9571
9572         * scm/framework-ps.scm (write-preamble): remove debugging output.
9573
9574         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9575
9576         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9577         outdir.
9578         (install-fc-cache): install font cache in installation directories.
9579
9580 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9581
9582         * scm/editor.scm (editor-command-template-alist): Use char iso
9583         column, except for Emacs.
9584         (get-editor-command): Substitute char too (Bertalan Fodor).
9585
9586 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9587
9588         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9589         quoted ~s.  This should fix PNG output on Windows; single quotes
9590         are regular characters on Windows.
9591
9592 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9593
9594         * Documentation/user/basic-notation.itely: include ChoirStaff
9595         in System start delimiters.
9596
9597         * Documentation/user/putting.itely: new doc section on
9598         fixing overlapping notation.
9599
9600 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9601
9602         * Documentation/user/global.itely (Paper size): \paper is in
9603         \book, not \score.
9604
9605         * make/mutopia-rules.make: -ddelete-intermediate-files
9606
9607         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9608
9609 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9610
9611         * ChangeLog: Recode utf-8.
9612
9613         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9614         datadir with .py modules.
9615
9616 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9617
9618         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9619
9620 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9621
9622         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9623         
9624         * scm/framework-ps.scm (write-preamble): remove status check.
9625
9626         * Documentation/user/invoking.itely (Updating files with
9627         convert-ly): remove -o option.
9628
9629         * VERSION (PACKAGE_NAME): release 2.5.31
9630
9631         * scm/framework-ps.scm (write-preamble): use ly:system.
9632         (write-preamble): verbosity.
9633
9634         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9635
9636         * python/convertrules.py: new file. Store conversion rules
9637         separately.
9638
9639 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9640
9641         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9642
9643 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9644
9645         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9646         \musicDisplay 
9647
9648         * Documentation/user/instrument-notation.itely (More stanzas): Add
9649         reference to StanzaNumber.
9650
9651 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9652
9653         * THANKS: separate section for website translators.
9654
9655 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9656
9657         * Documentation/topdocs/INSTALL.texi: update vim info;
9658         thanks Simon Bailey!
9659
9660         * Documentation/user/advanced-notation.itely: included
9661         color names.
9662
9663         * Documentation/user/advanced-notation.itely,
9664         Documentation/usr/notation-appendices.itely: moved
9665         color names into an appendix.
9666
9667 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9668         
9669         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9670
9671         * scm/lily.scm (lambda): initialize program options from here.
9672
9673         * scm/framework-*.scm: add header info.
9674
9675         * lily/main.cc (parse_argv): only set output format to pdf if no
9676         other format specified.
9677
9678         * scm/backend-library.scm (postprocess-output): process
9679         'delete-intermediate-files after running convert-to-*. This fixes
9680         PNG generation when 'delete-intermediate-files is set.
9681         
9682 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9683
9684         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9685         links on website. 
9686
9687 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9688
9689         * Documentation/topdocs/INSTALL.texi,
9690         Documentation/user/lilypond-book.itely: typos.
9691
9692 2005-06-12  Pal Benko  <benkop@freestart.hu>
9693
9694         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9695         added between program name and switch; -b changed to -f not
9696         to generate pdf
9697
9698 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9699
9700         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9701         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9702
9703         * input/sakura-sakura.ly: add \midi.
9704
9705         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9706         iso. python find. 
9707
9708         * ttftool/test.c (main): cosmetics.
9709
9710         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9711
9712         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9713         create a ttf2ps binary.
9714
9715         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9716
9717         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9718         true.
9719
9720 2005-06-11  Graham Percival <gperlist@shaw.ca>
9721
9722         * Documentation/user/lilypond-book.itely: add warning about
9723         the font warnings in dvips.
9724
9725 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9726
9727         * THANKS: typo
9728
9729         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9730
9731         * GNUmakefile.in: remove links for .map, .enc
9732         don't fail if out/ doesn't exist yet.
9733
9734 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9735
9736         * ttftool/util.c (surely_read): return nbytes
9737
9738         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9739
9740         * VERSION (PACKAGE_NAME): release 2.5.30
9741
9742         * flower/string-convert.cc (precision_string): >? fix.
9743
9744         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9745         (make-ps-images): add verbose -q too.
9746
9747         * lily/default-actions.cc (Module): new file. default
9748         {book,score}-print functions.
9749
9750         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9751         pass results via parseStringResult, lookup via ly:parser-lookup.  
9752
9753         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9754         constructors.
9755         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9756         (parse_string): idem.
9757
9758         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9759
9760         * lily/main.cc (main_with_guile): copy be_verbose_global into
9761         ly_set_option()
9762
9763 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9764
9765         * scm/backend-library.scm (postscript->pdf):
9766         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9767         verbose mode.  Search for several names of gs executable.
9768
9769 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9770
9771         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9772         directly. This fixes a massive memory leak, provided you use CVS
9773         GUILE.
9774
9775 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9776
9777         * ly/property-init.ly: Added tieDashed.
9778
9779         * THANKS: Added some bughunters for 2.5.
9780
9781 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9782
9783         * lily/program-option.cc: add debug-gc option.
9784
9785         * lily/include/lily-guile-macros.hh: don't protect exported module
9786         objects.
9787
9788         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9789
9790         * scm/backend-library.scm (postscript->pdf): use
9791         delete-intermediate-files iso. running-from-gui? 
9792
9793         * ttftool/util.c (surely_read): robustness. Allow read() to return
9794         less bytes than requested, as per posix standards.
9795
9796         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9797         program option.
9798
9799         * ttftool/include/ttftool.h ("C"): rename verbosity to
9800         ttf_verbosity. Add to public interface.
9801
9802         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9803
9804         * lily/program-option.cc: rename from scm-option.cc
9805
9806         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9807         (get_help_string): Print pretty help string.
9808
9809         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9810         to snippet preamble.
9811
9812         * lily/scm-option.cc: remove command-line-settings option. Fold
9813         all command-line options plus default settings in a generic
9814         interface. 
9815
9816         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9817         texts too.
9818
9819 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9820
9821         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9822         or EXT_ components non-empty.
9823
9824 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9825
9826         * scm/lily.scm (running-from-gui?): Export.
9827
9828         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9829         output in .ly source directory.
9830
9831 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9832
9833         * ttftool/util.c (surely_lseek): more verbosity.
9834
9835         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9836         compile.
9837
9838         * lily/parser.yy (Repeated_music): remove >? 
9839
9840         * scm/backend-library.scm (postscript->pdf): Support for
9841         -dgs-font-load=1
9842
9843         * scm/framework-ps.scm (write-preamble): make font loading
9844         switchable to GS via --define-default gs-font-load=1
9845
9846 2005-06-09  Graham Percival  <gperlist@shaw.ca>
9847
9848         * Documentation/user/global.itely: added \layout docs.
9849
9850 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9851
9852         * lily/lily-parser-scheme.cc: add unistd.h
9853
9854 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9855
9856         * scm/editor.scm: add char argument.
9857
9858         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
9859
9860         * ttftool/util.c (syserror): use errno for better error reporting.
9861
9862         * lily/source-file.cc (get_counts): new function. Calc column,
9863         line and char count in one go.
9864
9865         * lily/binary-source-file.cc (quote_input): rename to quote_input
9866
9867         * lily/input.cc (set): new function.
9868
9869 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9870
9871         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
9872         directory part of file name to search directory.
9873
9874         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
9875         search path and chdir to DIR if --outname=DIR used.
9876
9877         * lily/main.cc (prepend_env_path): Bugfix: Check directory
9878         existence before appending original path.
9879
9880 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9881
9882         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
9883         file" massage.
9884
9885         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
9886         texinfo.tex is always used.
9887         
9888 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9889
9890         * flower/include/axis.hh: rename from axes.hh
9891
9892         * lily/include/text-interface.hh (Module): rename from text-item.hh
9893
9894         * VERSION (PATCH_LEVEL): release 2.5.29
9895
9896         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
9897
9898         * scm/framework-ps.scm (font-file-as-ps-string): new function.
9899         (handle-macfont): new function. Call fondu for Native mac fonts.
9900
9901         * scm/define-markup-commands.scm (fill-line): handle text-widths =
9902         '() case.
9903
9904 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9905
9906         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
9907         multi-page.  Fix .eps regular expression.
9908
9909 2005-06-07  Graham Percival  <gperlist@shaw.ca>
9910
9911         * Documentation/user/putting.itely: add info on modifying templates.
9912
9913         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
9914         misc small changes.
9915
9916 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9917
9918         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
9919
9920         * scripts/lilypond-ps2png.scm
9921
9922         * VERSION (PACKAGE_NAME): release 2.5.28
9923
9924 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9925
9926         * lily/main.cc (prepend_env_path): Do not append /, that does not
9927         work.  Localedir lives in datadir, not in prefix.
9928
9929         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
9930         hack for windows.
9931
9932         * flower/include/file-cookie.hh: Compile fix.
9933
9934 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9935
9936         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
9937
9938         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
9939         system primitives.
9940         (gulp-port): using read-string!/partial. We don't want to read an
9941         entire PS file  (GUILE 1.6 limits strings to 16M) 
9942
9943         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
9944         properties. Add font-interface. 
9945
9946         * scm/define-grob-properties.scm (all-user-grob-properties):
9947         remove old bracket properties.
9948
9949         * scm/x11-color.scm: reformat. 
9950
9951         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
9952         LedgerLineSpanner if new StaffSymbol is found. 
9953
9954         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
9955         staff-symbol for finishing staff. 
9956
9957         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
9958
9959         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
9960         change black to currentColor everywhere. This fixes color support
9961         in SVG.
9962
9963 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
9964
9965         * input/regression/fret-diagrams.ly: new file to test fret diagram
9966         capability
9967
9968         * scm/output-tex.scm: remove white-dot and white-text
9969
9970         * scm/output-ps.scm: remove white-dot and white-text
9971
9972         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
9973         using ly:stencil-in-color instead
9974         (draw-dots) : remove call to white-dot
9975
9976 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9977
9978         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
9979         support.
9980
9981         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
9982
9983         * flower/include/file-cookie.hh: new file. lily_cookie extension 
9984
9985         * flower/file-cookie.cc: new file. lily_cookie extension.
9986         
9987 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9988
9989         * scm/editor.scm (editor-command-template-alist): Add syn
9990         editor (Jaap [de Vos]).
9991
9992 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
9993
9994         * scripts/lilypond-ps2png.scm:
9995         * scm/ps-to-png.scm: New file.
9996
9997         * scm/backend-library.scm (postscript->png): Use it.
9998
9999         * scripts/lilypond-ps-to-png.py: Remove file.
10000
10001         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10002
10003 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10004
10005         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10006
10007         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10008         start on grace moment. Fixes autobeam-grace.ly.
10009
10010         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10011         process anything unless we're at the end of a pending beam. Fixes
10012         syncopated 8ths beamed across a beat.
10013
10014 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10015
10016         * scm/editor.scm (editor-command-template-alist): Start emacs if
10017         emacslient fails.
10018
10019         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10020
10021         * flower/file-path.cc (is_file, is_dir): Export.
10022
10023         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10024
10025 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10026
10027         * lily/easy-notation.cc: Added include cctype to correct
10028         compilation error.
10029
10030 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10031
10032         * scm/backend-library.scm (postscript->pdf): set resolution to
10033         1200, so bitmap fonts aren't that ugly. 
10034
10035         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10036
10037         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10038         parent if we have a notehead. Fixes incorrect offsets when
10039         Paper_column is very wide in the X direction.
10040
10041         * input/regression/font-family-override.ly (Module): new file.
10042
10043         * scm/font.scm (make-pango-font-tree): new function.
10044
10045         * lily/beam.cc (before_line_breaking): remove warning about less
10046         than 2 visible stems. We still get a warning when there is only
10047         one stem.
10048
10049 2005-06-01  Werner Lemberg  <wl@gnu.org>
10050
10051         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10052         correctly.
10053
10054 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10055
10056         * lily/slur-scoring.cc (generate_avoid_offsets): new
10057         function. Generate avoid offsets once per slur.
10058
10059         * lily/slur.cc (add_extra_encompass): add dependency to
10060         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10061
10062         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10063         too. Fixes inf error with added bass notes.
10064
10065         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10066         argument anymore.
10067
10068         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10069
10070         * input/tutorial/lbook-latex-test.tex: add line length test.
10071
10072         * scripts/lilypond-book.py (set_default_options): new
10073         function. Call this before dissecting snippets, so linewidth
10074         settings reach the snippets.
10075
10076 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10077
10078         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10079
10080 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10081
10082         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10083
10084 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10085
10086         * stepmake/aclocal.m4: More autopackage friendliness.
10087
10088 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10089
10090         * Documentation/index.html.in: remove link to LSR.
10091
10092         * Documentation/user/global.itely: remove duplicate
10093         "dedication" \header{} section.
10094
10095 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10096
10097         * VERSION (PACKAGE_NAME): release 2.5.27.
10098
10099         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10100         too. Plugs memory leak.
10101
10102         * make/lilypond.fedora.spec.in (Group): remove
10103         lilypond-pdfpc-helper.
10104
10105         * scripts/GNUmakefile (SEXECUTABLES): remove
10106         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10107
10108         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10109         'typewriter family.
10110
10111         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10112         memory leak.
10113
10114         * lily/parser.yy (score_body): don't clone Score, that's done in
10115         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10116
10117         * lily/score-engraver.cc (derived_mark): new function.
10118         (initialize): unprotect Paper_score. This fixes a memory leak.
10119
10120         * lily/score-performer.cc (derived_mark): new function.
10121
10122         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10123
10124         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10125         spurious warning.
10126
10127         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10128         serif.
10129
10130 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10131
10132         * configure.in (reloc_b): Add --enable-relocation.
10133
10134 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10135
10136         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10137
10138         * input/regression/alignment-order.ly: add Staff example.
10139
10140 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10141
10142         * po/fr.po: update.
10143
10144 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10145
10146         * Documentation/index.html.in: add link to LSR.
10147
10148 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10149
10150         * scm/define-stencil-commands.scm (Module): new file. Register all
10151         allowed stencil expression heads in a central place.
10152
10153         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10154         ly:make-stencil
10155
10156         * lily/stencil-expression.cc (all_stencil_heads): registering
10157         stencil expressions.
10158
10159         * lily/stencil-interpret.cc: new file. Stencil expression
10160         interpreting.
10161
10162         * input/xiao-haizi-guai-guai.ly: move file back.
10163
10164 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10165
10166         * Documentation/user/advanced.itely, converters.itely,
10167         instrument-notation.itely, lilypond-book.itely: misc small
10168         changes.
10169
10170 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10171
10172         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10173
10174         * make/lilypond.fedora.spec.in: Fix source url.
10175
10176         * cygwin: Update from mingw patches.
10177
10178         * scm/editor.scm (editor-command-template-alist): Use jedit
10179         -reuseview (Bertalan), add uedit (Patrick Huberts).
10180
10181         * input/xiao-hai-zi-guai-guai.ly: Rename from
10182         xiao-haizi-guai-guai.ly.
10183
10184         * input/*: Reindent, do not use TAB.
10185
10186         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10187         white background.
10188
10189 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10190
10191         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10192         numerical overflow error.
10193
10194 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10195         
10196         * abc2ly.py: fix to syntax error in multi-part output.
10197
10198 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10199
10200         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10201         with disappearing span bars when alignAboveContext is active
10202
10203         * lily/property-iterator.cc (check_grob): use is-grob?
10204         object-property. Fixes crash-key-sig-font-size.ly. 
10205
10206 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10207
10208         * lily/bar-line.cc (print): don't round barlines; this produces
10209         odd aliasing effects in Acroread.
10210
10211         * lily/timing-engraver.cc (process_music): robustness fix.
10212
10213         * lily/context-def.cc (filter_engravers): bugfix.
10214
10215 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10216
10217         * lily/lilypond.rc.in: Add ly-icon.
10218
10219         * lily/GNUmakefile: 
10220         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10221         rules.
10222
10223 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10224
10225         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10226
10227         * ps/music-drawing-routines.ps: 
10228
10229         * scm/output-ps.scm: remove draw ez_ball.
10230
10231         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10232         EasyNotation context definition.
10233
10234         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10235         Text_interface and color for making easy note heads.
10236
10237         * lily/stencil.cc (with_color): new function.
10238
10239         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10240
10241         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10242         output routine. Zigzag now works in SVG too.
10243
10244         * scm/output-tex.scm (filledbox): idem.
10245
10246         * scm/output-svg.scm (filledbox): idem.
10247
10248         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10249
10250         * lily/lookup.cc (horizontal_line): use draw-line. 
10251
10252         * lily/system-start-delimiter.cc: remove old staff bracket code.
10253
10254         * mf/feta-haak.mf: further tweaks.
10255
10256         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10257
10258         * mf/feta-generic.mf: include feta-haak.
10259
10260         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10261
10262         * scm/framework-ps.scm (write-preamble): only load fonts if their
10263         filename is a string. 
10264
10265 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10266
10267         * scm/output-svg.scm (circle): support circle.
10268         (bracket): stub for bracket.
10269
10270         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10271         correct.
10272
10273 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10274
10275         * Documentation/user/lilypond.tely, advanced-notation.itely,
10276         basic-notation.itely, instrument-notation.itely, global.itely,
10277         introduction.itely, tutorial.itely: rearranging, editing,
10278         clean-up.
10279
10280         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10281         for compiling on FreeBSD.
10282
10283 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10284
10285         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10286         otf files.
10287
10288         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10289         bugfixes.
10290
10291         * VERSION: 2.5.26 released.
10292
10293         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10294
10295 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10296
10297         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10298         if printpagenumber is false.
10299
10300 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10301
10302         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10303         cache warning.
10304
10305         * lily/tie.cc (print): support dotted ties.
10306         
10307 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10308
10309         * scm/define-grobs.scm (all-grob-descriptions): switch off
10310         debugging
10311         (all-grob-descriptions): Arpeggio has Y-extent.
10312
10313         * scm/define-music-properties.scm (all-music-properties): document
10314         length-callback and start-callback as "read-only".
10315
10316         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10317         length-callback after creation. 
10318
10319         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10320         compressmusic -> compressMusic.
10321
10322         * ly/music-functions-init.ly (oldaddlyrics): idem.
10323
10324         * lily/parser.yy: NewLyricCombineMusic ->
10325         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10326
10327 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10328
10329         * ly/Welcome_to_LilyPond.ly: typo.
10330
10331 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10332
10333         * Documentation/user/lilypond.tely: move changing-defaults to be
10334         before global issues.
10335
10336         * Documentation/user/basic-notation.itely: move Transpose section
10337         here from advanced/Other.
10338
10339         * Documentation/user/changing-defaults.itely,
10340         advanced-notation.itely: move Fonts to advanced, edit.
10341
10342 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10343
10344         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10345         # before negative integers.
10346
10347 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10348
10349         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10350
10351         * Documentation/user/lilypond.tely: change Unified index to
10352         LilyPond index.
10353
10354         * Documentation/user/advanced-notation.itely,
10355         instrument-notation.itely: editing.
10356
10357 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10358
10359         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10360
10361         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10362
10363 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10364
10365         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10366         ly:port-move.  Needs to be stderr-specific on mingw.
10367         Run fixcc.
10368
10369 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10370
10371         * lily/general-scheme.cc (ly:port-move): Remove.
10372
10373         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10374         windows.
10375
10376         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10377         variables.  This eliminates the need for a gs.bat wrapper, which
10378         opens a console.
10379
10380         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10381         * scm/lily.scm (running-from-gui?): 
10382         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10383         artifact of not compiling with -mwindows.
10384
10385         * scm/editor.scm: Define PLATFORM.
10386
10387 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10388
10389         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10390         can start to cut & paste lilypond-book fragments.  
10391
10392         * scm/define-music-types.scm (music-descriptions): remove
10393         UntransposableMusic
10394
10395 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10396
10397         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10398
10399 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10400
10401         * Documentation/user/instrument-notation.itely: remove *Engraver.
10402
10403         * Documentation/user/advanced-notation.itely: edit, rearrange.
10404
10405 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10406
10407         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10408         findresource iso. findfont for CID CFF fonts.
10409
10410         * VERSION (PACKAGE_NAME): release 2.5.25
10411
10412         * ly/Welcome_to_LilyPond.ly: add  \version
10413
10414 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10415
10416         * Documentation/user/programming-interface.itely: move
10417         \displayMusic into its own section.
10418
10419         * Documentation/user/basic-notation.itely: finish editing.
10420
10421 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10422
10423         * flower/file-path.cc (find): don't throw away file_name.dir, but
10424         append to it. Fixes \include with directories.
10425
10426         * flower/include/file-path.hh (class File_path): don't derive from
10427         Array<String>.
10428
10429         * flower/include/file-name.hh (class File_name): remove to_str0()
10430
10431         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10432         Hara_kiri_engraver in separate file.
10433
10434         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10435         translation went wrong. Fixes vertically translated slurs.
10436
10437 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10438
10439         * Documentation/user/basic-notaton.itely: editing.
10440
10441 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10442
10443         * Documentation/user/macros.itexi, basic-notation.itely:
10444         add @commonprop (commonly used properties) macro.
10445
10446 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10447
10448         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10449
10450         * scripts/lilypond-book.py (invokes_lilypond): new function
10451         (main): only run fontextract if invokes_lilypond() is true.
10452
10453         * lily/function-documentation.cc (ly_add_function_documentation):
10454         duh, use !=
10455
10456         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10457
10458         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10459
10460         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10461
10462         * lily/function-documentation.cc (ly_add_function_documentation):
10463         use scm_hash_table_p() for checking.
10464
10465 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10466
10467         * Documentation/user/advanced-notation.itely (Text scripts):
10468         Change nonexisting @internalsref{Text markup} to @ref{Text
10469         markup}.  Change @internalsref{Text script} to
10470         @internalsref{TextScript}.
10471
10472         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10473
10474 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10475
10476         * Documentation/user/tutorial.itely, basic-notation.itely,
10477         changing-defaults.itely: remove duplicate cindex entries
10478         that appear on the same page.
10479
10480         * scm/define-grobs.scm: change default padding for TextSpanner.
10481
10482         * Documentation/topdocs/AUTHORS.texi: update email address.
10483
10484         * Documentation/user/global.itely: add info about \include.
10485
10486 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10487
10488         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10489         when running-from-gui.
10490
10491         * scm/editor.scm (get-editor): Add platform defaults.
10492
10493         * scm/backend-library.scm (postscript->pdf): Typo.
10494
10495 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10496
10497         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10498
10499         * lily/font-config.cc (init_fontconfig): add warning about cache.
10500
10501 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10502
10503         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10504
10505 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10506
10507         * lily/horizontal-bracket.cc (print): Take care of the direction
10508         property so brackets above the stave point downwards. 
10509
10510         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10511         for HorizontalBracket so it doesn't end up within the stave.
10512
10513 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10514
10515         * lily/GNUmakefile (default): Typo.
10516
10517         * scm/lily.scm (PLATFORM): Export.
10518
10519         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10520         load-font-via-GS, ttftool or fopencookie is broken on windows.
10521         
10522         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10523         -dSAFER, that is broken on windows.
10524
10525 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10526
10527         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10528         for FlexLexer.h
10529
10530         * scripts/lilypond-invoke-editor.scm: remove stray -
10531
10532 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10533
10534         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10535         Fixes deprecation warning.
10536
10537         * flower/include/string.icc (to_string): Only inline if
10538         -DSTRING_UTILS_INLINED.
10539
10540         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10541         name.  Remove windows comment.
10542
10543         * scm/editor.scm (slashify): New function.
10544         (get-editor-command): Use it.
10545         (get-command-template): Do not alter editor command if
10546         environment value includes `%(file)s' magic.
10547
10548         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10549         (dissect-uri): Use it.
10550         (unquote-uri): Bugfix.
10551
10552 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10553
10554         * scm/framework-ps.scm (write-preamble): add TTF rule.
10555
10556         * Documentation/topdocs/README.texi (Top): remove note about
10557         xdelta.
10558
10559         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10560         requirement.
10561
10562         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10563         function. Figure out where FlexLexer.h lives
10564
10565         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10566         
10567 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10568
10569         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10570         with Windows root in file name.
10571
10572         * scm/backend-library.scm (ly:system): Only redirect output (using
10573         system and shell, ugh) if /dev/null is writable.
10574
10575         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10576         windows icon.
10577
10578         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10579         on Mingw.
10580
10581         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10582         click.
10583
10584         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10585         use result of stat when available.
10586
10587         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10588         absolute file name and root.
10589
10590         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10591
10592         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10593
10594         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10595         slashes in file name.
10596
10597 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10598
10599         * Documentation/user/preface.itely (Preface): Run
10600         texinfo-all-menus-update.
10601
10602         * scm/editor.scm (get-editor-command): Bugfix: allow full
10603         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10604
10605         * Documentation/pictures/lilypond-48.xpm: New file.
10606
10607         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10608
10609         * ly/Welcome_to_LilyPond.ly: New file.
10610
10611         * lily/main.cc (main): Only identify if we have a terminal.
10612
10613         * scm/backend-library.scm (postscript->png)
10614         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10615         non-/bin/sh).
10616
10617 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10618
10619         * Documentation/topdocs/AUTHORS.texi: polish, update.
10620
10621 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10622
10623         * Documentation/user/preface.itely (Notes for version 2.6): new
10624         notes for 2.6
10625
10626         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10627         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10628         is not fully contained" warnings.
10629
10630         * lily/slur-scoring.cc (get_bound_info): remove warning.
10631
10632         * lily/staff-symbol-engraver.cc (process_music): start initial
10633         spanner in process_music(). This fixes overrides of StaffSymbol
10634         properties.
10635
10636         * scm/framework-pdf.scm (Module): remove.
10637
10638         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10639
10640         * lily/ambitus-engraver.cc: formatting cleanups.
10641
10642         * mf/feta-solfa.mf (Module): remove.
10643
10644         * ChangeLog: more details about contributions.
10645
10646 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10647
10648         * lily/align-interface.cc (align_elements_to_extents): warn if
10649         called too early. Fixes: disappearing-staff-lines.ly
10650
10651         * VERSION (PACKAGE_NAME): release 2.5.24
10652
10653 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10654
10655         * stepmake/aclocal.m4: Typo.
10656
10657         * flower/string.cc (substitute): Take two strings or two
10658         characters.  Update callers.
10659
10660 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10661
10662         * flower/file-name.cc (File_name): Slashify.
10663
10664         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10665
10666         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10667
10668         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10669
10670         * configure.in (gui_b): Use it.
10671
10672         * lily/lilypond.rc.in: New file.
10673
10674         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10675
10676 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10677
10678         * Documentation/user/advanced-notation.itely: edit of Text
10679         section; clarify text scripts vs. text markup.
10680
10681 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10682
10683         * lily/multi-measure-rest-engraver.cc
10684         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10685         separation items on start. Fixes mm rests in start of score.
10686
10687         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10688         don't access StaffSymbol if not there.
10689         Fixes: crash-staff-symbol-engraver.ly.
10690
10691         * lily/instrument-name-engraver.cc (class
10692         Instrument_name_engraver): data member first_. Create
10693         InstrumentName on start. 
10694
10695 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10696
10697         * Documentation/user/instrument-notation.itely: add guitar
10698         position.
10699
10700         * Documentation/user/introduction.itely,
10701         Documentation/user/lilypond.tely,
10702         Documentation/user/tutorial.itely: begin pruning
10703         unused (duplicated) cindex entries and misc cleanup.
10704
10705 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10706
10707         * input/test/volta-chord-names.ly: Bring the explanation up to
10708         date.
10709
10710 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10711
10712         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10713         Specify `@documentencoding utf-8' for html, ignore warnings.
10714
10715 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10716
10717         * THANKS: Added bughunters.
10718
10719 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10720
10721         * lily/main.cc: update help string for `lilypond -H'.
10722
10723         * po/fi.po: update.
10724         
10725 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10726
10727         * Documentation/user/advanced-notation.itely: minor fixes.
10728
10729 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10730
10731         * scm/editor.scm: New module.
10732
10733         * scm/lily.scm (gui-main): Use it.
10734
10735         * scm/framework-gnome.scm (spawn-editor): Use it.
10736
10737         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10738
10739 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10740
10741         * scm/framework-ps.scm (load-font-via-GS):  new function.
10742
10743         * lily/pango-font.cc (pango_item_string_stencil): add support for
10744         CID keyed font.
10745
10746         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10747
10748 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10749
10750         * Documentation/user/basic-notation.itely: add @ref.
10751
10752         * Documentation/user/advanced-notation.itely: add example
10753         of 5/8 beaming.
10754
10755 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10756
10757         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10758
10759         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10760         going through ps2pdf wrappers.
10761
10762 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10763
10764         * Documentation/user/instrument-notation.itely: petrucci note
10765         heads: updated docu
10766
10767         * input/regression/note-head-style.ly: updated regression test;
10768         indentation fixes
10769
10770         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10771         heads as default
10772
10773         * mf/parmesan-heads.mf: minor editing; use musicological names
10774         (rather than optical description) as note head names
10775
10776         * scm/output-lib.scm: complete petrucci heads
10777
10778 2005-05-09  Pal Benko  <benkop@freestart.hu>
10779
10780         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10781         heads, but bigger)
10782
10783 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10784
10785         * lily/main.cc (main_with_guile): Remove no files check.
10786
10787         * lily/main.cc (ly:usage): Export to Scheme.
10788
10789         * scm/lily.scm (no-files-handler): New function.
10790
10791         * scm/lily.scm (lilypond-main): Use it.
10792
10793         * configure.in (gui_b): Add mbrtowc checking.
10794         Resurrect [utf8/]wchar.h checking.
10795
10796 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10797
10798         * Documentation/user/advanced-notation.itely (Metronome marks):
10799         Add link to the program reference for MetronomeMark
10800
10801         * Documentation/user/lilypond-book.itely (An example of a
10802         musicological document): Correct the example using psfonts 
10803
10804 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10805
10806         * po/fi.po: update after a lesson how to update entries against
10807         source.
10808         
10809         * po/TODO: document the lesson.
10810
10811 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10812
10813         * configure.in (gui_b): remove wcrtomb checking.
10814
10815         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10816         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10817
10818 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10819
10820         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10821         keep Scheme expressions and strings unmodified when doing the
10822         conversion to postfix notation for slurs and beams. Should
10823         hopefully solve most related conversion problems. 
10824
10825         * Documentation/user/lilypond-book.itely : Clarify and correct how
10826         to call dvips with -h psfonts.
10827
10828 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10829
10830         * Documentation/user/instrument-notation.itely (Entering lyrics):
10831         Typo.  Fixes build.
10832
10833 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10834
10835         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10836
10837         * Documentation/user/lilypond.tely, lilypond-book.itely,
10838         tutorial.itely: change references to 2.5.x to 2.6.x.
10839
10840         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10841         vs \lyricmode.
10842
10843         * Documentation/user/invoking.itely: remove old info about
10844         lilypond-profile.
10845
10846         * Documentation/topdocs/INSTALL.texi: remove old info about
10847         lilypond-profile, add warning about needing international fonts
10848         to build docs.
10849
10850 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10851
10852         * lily/include/grob-info.hh (class Grob_info): make data member
10853         private. Changes throughout.
10854
10855         * input/regression/alignment-order.ly: new file. 
10856
10857         * lily/vertical-align-engraver.cc (acknowledge_grob): read
10858         alignAboveContext and alignBelowContext
10859
10860 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10861
10862         * lily/pfb.cc (LY_DEFINE): add cast.
10863
10864         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
10865         matches .otf
10866         (write-preamble): warn about unknown fonts.
10867
10868         * lily/pfb.cc (Module): new function ly:otf->cff
10869
10870         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
10871         (get_otf_table): new function.
10872
10873 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10874
10875         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
10876         iso. ps2png.
10877
10878 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
10879
10880         * po/fi.po: apply second round of update.
10881
10882 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10883
10884         * scm/x11-color.scm (make-x11-color-handler): don't use
10885         #\sp. Apparently doesn't work on all platforms. 
10886
10887 2005-05-06  Graham Percival  <gperlist@shaw.ca>
10888
10889         * Documentation/user/advanced-notation.itely, putting.itely,
10890         tutorial.itely, global.itely, introduction.itely: really minor fixes.
10891
10892 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10893
10894         * VERSION (PACKAGE_NAME): release 2.5.23
10895
10896 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10897
10898         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
10899         convert to utf-8.
10900
10901         * THANKS: Add translators for this release, convert to utf-8.
10902
10903         * mf/GNUmakefile (MFTRACE_FLAGS):
10904         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
10905         outdir as option (WAS: hardcoded).
10906
10907 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10908
10909         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
10910         finished_span_
10911
10912         * THANKS: add Hans Forbrich.
10913
10914         * Documentation/topdocs/NEWS.tely (Top): document new feature.
10915
10916         * Documentation/user/basic-notation.itely (Staff symbol): document
10917         start/stop staff. Reference to ossia.ly
10918
10919         * input/test/ossia.ly: new example using stop and startStaff.
10920
10921         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
10922         in other words, don't create "|" barline at start of the score.
10923         (start_translation_timestep): don't set whichBar for start of score.
10924
10925         * input/regression/staff-halfway.ly: use new functionality.
10926
10927         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
10928         start and stop staff based on events.
10929
10930         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
10931
10932         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
10933
10934 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10935
10936         * Documentation/user/programming-interface.itely (How markups work
10937         internally ): remove \encoding reference.
10938
10939 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
10940
10941         * scripts/convert-ly.py: Attempt to do a smarter update of 
10942         text markups from versions < 1.9.0 with arbitrary nesting.
10943
10944 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
10945
10946         * po/fi.po: convert to utf-8, and update.
10947
10948 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10949
10950         * make/lilypond.suse.spec.in: update from suse 2.4 package.
10951
10952         * lily/*.cc: more <? >? to min/max changes
10953
10954         * lily/include/interpretation-context-handle.hh: rename
10955         Interpretation_context_handle to Context_handle.
10956
10957 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
10958
10959         * input/regression/GNUmakefile (local_delete): use `find` together 
10960         with `xargs` to avoid too long argument-lists in cmd line.
10961
10962 2005-05-04  Graham Percival  <gperlist@shaw.ca>
10963
10964         * Documentation/user/introduction.itely: updates "About this manual".
10965
10966         * Documentation/user/advanced-notation.itely,
10967         invoking.itely: minor fixes.
10968
10969 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10970
10971         * COPYING: add font exception. Update FSF address. 
10972
10973         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
10974         should be taken without child context.
10975
10976         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
10977
10978         * scm/define-markup-commands.scm (triangle): new command, as
10979         robust replacement for unicode Delta/Triangle.
10980
10981 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10982
10983         * ps/music-drawing-routines.ps: add fillp argument.
10984
10985         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
10986
10987         * lily/font-config.cc (init_fontconfig): don't add cff/
10988
10989         * VERSION (PACKAGE_NAME): release 2.5.22
10990
10991         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
10992
10993         * lily/grace-engraver.cc (consider_change_grace_settings): use
10994         is_alias(). Fixes problem with CueVoice grace notes. 
10995
10996         * lily/simultaneous-music-iterator.cc (construct_children): call
10997         Music_iterator::quit() for iterators that start out invalid. This
10998         fixes indefinitely continuing contexts.
10999
11000         * buildscripts/substitute-encoding.py: new file
11001
11002         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11003         missing @end 
11004
11005         * scripts/lilypond-book.py (write_if_updated): print file name.
11006
11007         * Documentation/user/basic-notation.itely (Explicitly
11008         instantiating voices): idem.
11009
11010         * Documentation/user/advanced-notation.itely (Text spanners):
11011         remove stray { } 
11012
11013         * lily/context.cc (default_child_context_name): the default child
11014         is now first in accepts_list_.
11015
11016         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11017         \defaultchild to all relevant contexts.  This fixes:
11018         drums-pitch.ly.
11019
11020         (Probably also fixes similar problems with ancient
11021         transcriptions getting CueVoices instead of the desired voices.)
11022  
11023         * lily/context-def.cc (get_default_child): new function.
11024         (get_accepted): place default child in front of list.
11025
11026         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11027
11028         * lily/include/context-def.hh (struct Context_def): add
11029         default_accept_
11030
11031 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11032
11033         * scm/define-grobs.scm: remove "remove-first" line, since
11034         the absent property is set to #f anyway.
11035
11036         * Documentation/user/basic-notation.itely,
11037         advanced-notation.itely, instrument-notation.itely: minor
11038         fixes.
11039
11040         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11041
11042         * Documentation/user/advanced-notation.itely,
11043         changing-defaults.itely: consolidate Text stuff in
11044         advanced notation.
11045
11046         * Documentation/user/global.itely: better docs for \header.
11047
11048         * Documentation/user/putting.itely: new chapter; placeholder
11049         for future expansion.
11050
11051         * Documentation/user/examples.itely: moved "suggestions for
11052         writing LP files" section into putting.itely.
11053
11054         * Documentation/user/lilypond.itely: added new chapter,
11055         fixed the short table of contents.
11056
11057 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11058
11059         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11060         infinity for unfeasible beams.
11061
11062         * make/lilypond.fedora.spec.in (Group): idem.
11063
11064         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11065
11066         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11067
11068         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11069         fonts directly.
11070
11071         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11072
11073         * mf/GNUmakefile: remove all CFF rules.
11074
11075         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11076
11077         * lily/open-type-font-scheme.cc (LY_DEFINE):
11078         new function ly:otf-font-table-data.
11079         (LY_DEFINE): new function otf-font?
11080
11081 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11082
11083         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11084         ($(outdir)/Fontmap.lily): idem.
11085
11086         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11087         for PFAEmmentaler-XXX.pfa. 
11088
11089         * Documentation/user/music-glossary.tely (accidental): NL
11090         translation of accidental.
11091
11092 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11093
11094         * flower/include/international.hh: Bugfix: include "string.hh".
11095
11096         * lily/include/mingw-compatibility.hh: New file.
11097
11098         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11099
11100         * configure.in: Search for mingw wcrtomb library.
11101
11102 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11103
11104         * scripts/convert-ly.py: Bug fix
11105
11106         * Documentation/user/changing-defaults.itely (Common tweaks):
11107         Added example where the context has to be specified explicitly
11108         (MetronomeMark). 
11109
11110 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11111
11112         * scripts/lilypond-book.py (ly_options): set timing to #f for
11113         notime option.
11114
11115         * scripts/convert-ly.py (conv): typo.
11116
11117         * flower/*.cc: remove <? and >?
11118         
11119         * lily/*.cc: remove <? and >?
11120
11121         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11122         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11123         editor.
11124
11125 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11126
11127         * lily/part-combine-engraver.cc: add space to variable list.
11128
11129 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11130
11131         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11132         remove-first to false (matches docs)
11133
11134         * Documentation/user/advanced-notation.itely: corrected docs
11135         concerning remove-first.
11136
11137 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11138
11139         * lily/part-combine-engraver.cc: make sure that the relevant
11140         properties are included in the documentation.
11141
11142 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11143
11144         * Documentation/user/lilypond-book.itely: Bernard's docs
11145         for \betweenLilyPondSystem.
11146
11147 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11148
11149         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11150         remarks.
11151
11152 2005-04-28  Pal Benko  <benkop@freestart.hu>
11153
11154         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11155         only on vertical lines of flexa shape, and use a constant
11156         thickness value for horizontal lines (patch slightly modified by
11157         Jürgen Reuter)
11158
11159         * lily/include/mensural-ligature.hh: make 2 comments clearer
11160
11161 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11162
11163         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11164         to need_extra_horizontal_space; bugfix: use class scope to avoid
11165         global namespace pollution
11166
11167         * Documentation/user/instrument-notation.itely (ligatures): added
11168         comment on possible future syntax change and how to work around
11169
11170         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11171         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11172         intervals (fixes agnus dei example)
11173
11174         * Documentation/user/instrument-notation.itely (white mensural
11175         ligatures): selected a more illustrative example
11176
11177 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11178
11179         * Documentation/index.html.in: specify utf-8 charset in meta content.
11180
11181 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11182
11183         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11184         empty 2nd page for single page.
11185
11186         * scm/lily.scm: remove p&c definitions.
11187
11188         * po/zh_TW.po (Module): new translation.
11189
11190         * lily/lily-guile.cc (ly_chain_assoc): remove.
11191
11192         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11193         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11194
11195 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11196
11197         * lily/beaming-info.cc: remove infinity_i
11198
11199         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11200
11201 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11202
11203         * Documentation/user/basic-notation.itely,
11204         instrument-notation.itely, advanced-notation.itely,
11205         changing-defaults.itely: minor fixes.  Added docs
11206         for colors to advanced-notation.itely.
11207
11208         * Documentation/user/advanced-notation.itely: fixed compile
11209         problem and added Bernard's x11-color doc patch.
11210
11211 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11212
11213         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11214         alright this time round.
11215
11216 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11217
11218         * Documentation/topdocs/INSTALL.texi (Top): idem.
11219
11220         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11221
11222         * VERSION (MAJOR_VERSION): release 2.5.21
11223
11224         * scm/output-ps.scm (grob-cause): bugfix.
11225
11226 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11227
11228         * cygwin/*: Update.
11229
11230         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11231         stuff.
11232
11233         * scm/output-ps.scm (grob-cause): Bugfix.
11234
11235         * scm/lily.scm (ly:load): Remove x11-color.
11236
11237         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11238         quote executable, fixes getting version from program --with
11239         --options.
11240         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11241         $ac_exeect.
11242
11243         * Documentation/user/GNUmakefile: Only build music-glossary with
11244         rendered lilypond snippets during web.
11245
11246 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11247
11248         * po/de.po: update.
11249
11250         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11251
11252 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11253  
11254         * scripts/abc2ly:
11255         second title line append with punctuation dash character;
11256         encode abc2ly python strings in utf-8
11257        
11258 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11259
11260         * scripts/abc2ly fix chords (again)
11261  
11262 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11263
11264         * scm/x11-color.scm: new file
11265         All x11 color names can be accessed with:
11266         #(x11-color 'ColorName),
11267         #(x11-color "ColorName") or:
11268         #(x11-color "color name")
11269         If the x11 color name is not recognised then it defaults
11270         to black
11271
11272         * scm/lily.scm: amended to call scm/x11-color.scm
11273
11274 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11275
11276         * Documentation/user/invoking.itely (Reporting bugs): comment out
11277         reference to online PNG bug repository.
11278
11279 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11280
11281         * lily/translator-scheme.cc (ly:translator-property): Remove.
11282         Update callers.
11283
11284         * lily/context-scheme.cc (ly:context-now): Move from translator.
11285         Update callers.
11286
11287 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11288
11289         * input/regression/grid-lines.ly (skips): refine example.
11290
11291         * scm/define-context-properties.scm
11292         (all-user-translation-properties): doc autoBeamCheck
11293
11294         * input/regression/grid-lines.ly (Module): new file.
11295
11296         * lily/grid-point-engraver.cc (Module): new file.
11297
11298         * lily/grid-line.cc (Module): new file.
11299
11300         * lily/grid-line-span-engraver.cc (Module): new file.
11301
11302         * lily/grid-line-interface.cc (Module): new file.
11303
11304 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11305
11306         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11307         missing parameter, actualy cdr through list.  Actually return a
11308         list with ENTRY removed (was '()).
11309
11310         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11311         opened.
11312         (do_conversion): Fix printing of continuation comma.
11313
11314         * Documentation/user/advanced-notation.itely (Beam formatting):
11315         Remove refbugs about compound time and mixed duration.
11316
11317         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11318         modulo moments explicitely.
11319
11320         * lily/moment.cc (operator %): New function.
11321
11322         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11323
11324         * lily/translator-scheme.cc (ly:translator-now,
11325         ly:translator-property): New function.
11326
11327         * scm/auto-beam.scm (default-auto-beam-check): New function.
11328
11329         * lily/auto-beam-engraver.cc (test_moment): Use it.
11330
11331         * flower/rational.cc (operator %): Bugfix.
11332
11333 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11334
11335         * scripts/abc2ly: Bugfix
11336
11337 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11338
11339         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11340         %'s on EndFont comment.
11341
11342         * lily/ledger-line-spanner.cc: some more words of explanation.
11343
11344 2005-04-20  John Williams <williams@tni.com>  
11345         
11346         * scripts/lilypond-book.py: htmlquote bugfix.
11347         Allow snippets to be given distinct filenames.
11348         Allow the default alt text to be overridden.
11349
11350 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11351
11352         * ly/performer-init.ly: Bugfix
11353
11354         * THANKS: Added bughunters.
11355
11356 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11357
11358         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11359
11360         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11361         position (was: use modulo measure length).
11362
11363         * configure.in (no gui_b): Remove optional gtk+ requirement.
11364
11365 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11366
11367         * Documentation/user/basic-notation.itely (Pitches): add
11368         LedgerLineSpanner.
11369
11370         * lily/dynamic-engraver.cc (process_music): set right bound to
11371         script if present. Else, do not set.
11372         (acknowledge_grob): only set right bound of finished spanner to
11373         note column if no other bound is set.
11374
11375         * python/lilylib.py (make_ps_images): switch back to png16m.
11376         
11377 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11378
11379         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11380         writing up to date file.  Add dvips usage suggestion.
11381
11382         * scripts/convert-ly.py: Fix error message.
11383         Print usage if no files on command line.
11384         (usage): Add example usage.
11385
11386         * input/test/compound-time.ly: New file.
11387
11388         * input/test/circle.ly: New file.
11389
11390         * Documentation/topdocs/NEWS.tely: Use them.
11391
11392         * input/test/boxed-stencil.ly: Remove \score.
11393
11394         * buildscripts/mf-to-table.py (base): Add .log dependency.
11395
11396         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11397         pfa's.  Add .log dependency
11398
11399         * scm/define-markup-commands.scm (lower): New command.
11400
11401         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11402         make it default.
11403
11404 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11405
11406         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11407         also to finished cresc as right bound. This fixes:
11408         skip-string-decresc.ly
11409
11410         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11411         relative_coordinate if extent is empty.
11412
11413         * lily/stem.cc (width_callback): determine correct extent if flag
11414         is not there. This fixes slur-no-flag.ly
11415
11416         * lily/grace-engraver.cc (consider_change_grace_settings): new
11417         function.
11418         (initialize): also consider_change_grace_settings() on
11419         initialization. Fixes large grace notes at start of score.
11420
11421         * lily/break-align-interface.cc (do_alignment): don't translate if
11422         total_extent is empty.
11423
11424         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11425
11426 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11427
11428         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11429         with slash.
11430
11431 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11432
11433         * stepmake/aclocal.m4: Remove tfm_path.
11434
11435 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11436
11437         * scm/music-functions.scm (markup-expression->make-markup): fix
11438         bug with cons arguments of markup commands.
11439         (music->make-music): fix music expression property list building
11440
11441 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11442
11443         * aclocal.m4: Massage package names.
11444
11445         * SCons updates.
11446
11447 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11448
11449         * VERSION (PACKAGE_NAME): release 2.5.20
11450
11451         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11452         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11453
11454         * lily/percent-repeat-engraver.cc (try_music): add measure before
11455         next_moment to future processing moment. Fixes:
11456         percent-repeat-mm-rest.ly
11457         (process_music): don't add moment for 2nd time.
11458
11459         * input/regression/repeat-percent.ly: add mmrests as extra test.
11460
11461         * lily/axis-group-engraver.cc (acknowledge_grob): read
11462         keepAliveInterfaces to decide what to kill.
11463
11464         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11465         percent-repeat-interface to keepAliveInterfaces. This fixes
11466         percent-repeat-harakiri.
11467
11468 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11469
11470         * SCons updates.
11471
11472 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11473
11474         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11475
11476         * aclocal.m4: remove --enable-tfm-path configure option
11477
11478         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11479
11480         * scm/backend-library.scm (postscript->png): newline after
11481         finishing command.
11482
11483         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11484         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11485
11486         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11487
11488         * lily/score.cc (default_rendering): use Music_output too.
11489
11490         * input/test/chord-names-languages.ly (Module): rename file.
11491
11492         * lily/text-spanner.cc: add bound-padding.
11493
11494         * lily/paper-book.cc (systems): accept Paper_score
11495         iso. Paper_system vector. 
11496
11497         * input/regression/line-arrows.ly: new file.
11498
11499         * lily/paper-score.cc (process): run get_paper_systems() only once.
11500
11501         * lily/line-spanner.cc (line_stencil): add arrows.
11502
11503 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11504
11505         * lily/line-interface.cc (make_arrow): new function. 
11506         (arrows): idem.
11507
11508 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11509
11510         * input/test/chord-names-german.ly: update for italian/french
11511         chords.
11512         
11513         * Documentation/user/instrument-notation.itely (Printing chord
11514         names): update.
11515
11516 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11517
11518         * lily/include/paper-score.hh (class Paper_score): remove unused
11519         prototypes.
11520
11521         * lily/book.cc (process): add -COUNT to midi output.
11522
11523         * lily/score.cc (book_rendering): remove outname argument
11524         (book_rendering): return list of Music_outputs. 
11525
11526         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11527
11528         * lily/book.cc (process): loop over Music_outputs returned from
11529         Score::book_rendering().
11530
11531         * lily/*.cc (width_callback): remove spurious "unused" warnings
11532         for assert (axis==[XY]_AXIS); 
11533
11534         * lily/include/music-output.hh (class Music_output): smobify class.
11535
11536         * lily/include/paper-score.hh (class Paper_score): make members
11537         private.
11538
11539         * lily/performance.cc (process): return #f iso. #<undefined>. This
11540         prevents #<undefined> leaking into GUILE-userspace.
11541
11542 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11543
11544         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11545
11546 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11547
11548         * scm/chord-name.scm : support for italian and french
11549         chords names.
11550
11551         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11552         a space defined by chordPrefixSpacer when the root name is
11553         direclty followed by a prefix.
11554
11555         * ly/engraver-init.ly : chordPrefixSpacer       
11556         * scm/define-context-properties.scm : chordPrefixSpacer
11557         * ly/property-init.ly : italianChords, frenchChords 
11558
11559 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11560
11561         * mf/feta-din.mf: Remove.
11562
11563         * mf/GNUmakefile (fontdir): Bugfix.
11564
11565         * mf/SConstruct: Some updates.
11566
11567         * SConstruct: Require pkg-config.
11568         (test_program): Bugfix for double digit version compares, use
11569         integer (not string-) compare.
11570         Optionally require gs 8.14.
11571
11572         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11573
11574         * lily/*: s/ifdef HAVE_*/if have/.
11575
11576         * SConstruct (test_lib): New function.  Update pkg-config and some
11577         other requirements.
11578
11579         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11580         freetype, pangof2t.
11581
11582 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11583
11584         * po/lilypond.pot, ...: Update using bison-CVS.
11585
11586         * python/lilylib.py (make_ps_images): Fixo.
11587
11588 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11589
11590         * python/lilylib.py (make_ps_images): typo.
11591
11592         * configure.in (gui_b): make bison optional.
11593
11594         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11595
11596 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11597
11598         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11599         with one parameter can be defined in a LaTeX file when processed
11600         by lilypond-book this will be evaluated between the systems of
11601         a multi-system score. The parameter is the number of systems processed.
11602
11603 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11604
11605         * python/lilylib.py (make_ps_images): Escape newline.
11606
11607         * Documentation/user/music-glossary.tely: Run
11608         texinfo-all-menus-update.
11609
11610 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11611
11612         * scm/lily-library.scm (old-relative-not-used-message)
11613         (version-not-seen-message): Add input-file-name-location to message.
11614
11615         * lily/parser.yy (lilypond): Add token aliases.
11616
11617         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11618         not confuse with alteration.
11619         (alteration): Add.
11620
11621 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11622
11623         * python/lilylib.py (make_ps_images): use -dEPSCrop
11624
11625         * VERSION (PACKAGE_NAME): release 2.5.19 
11626
11627         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11628         only put xrefs in info documentation.
11629
11630         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11631         .pdf rule to tex-rules.make.
11632
11633         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11634         from -systems.* output.
11635
11636         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11637         directly, remove -$(PAGESIZE) target.
11638
11639         * input/test/embedded-postscript.ly: update.
11640
11641 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11642
11643         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11644
11645         * Documentation/user/changing-defaults.itely (Font selection):
11646         document font-name.
11647
11648         * input/regression/font-name.ly: show Pango fonts for
11649         font-name. Update example. 
11650
11651         * lily/pango-select.cc (properties_to_pango_description): don't
11652         convert symbol font-size to number, but use to lookup.
11653
11654         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11655
11656         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11657         (NAME . FILE-NAME) tuples for font descriptions. 
11658         (write-preamble): display BeginFont DSC comments.
11659
11660         * python/fontextract.py (write_extracted_fonts): new file. Extract
11661         font resources from a PS file.
11662
11663         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11664         (Compile_error.process_include): do_file returns chunks.
11665
11666         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11667
11668         * make/lysdoc-targets.make: .texi is .PRECIOUS
11669
11670         * scripts/lilypond-book.py (write_if_updated): new function.
11671
11672 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11673
11674         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11675
11676 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11677
11678         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11679
11680         * input/regression/markup-syntax.ly: remove \score.
11681
11682         * scm/define-markup-commands.scm (draw-circle): add fill argument
11683
11684         * scm/stencil.scm (make-circle-stencil): add fill argument
11685
11686         * ps/music-drawing-routines.ps: add fill argument.
11687
11688         * ly/performer-init.ly: add CueVoice to MIDI too.
11689
11690         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11691         EndEPSF.
11692
11693         * input/regression/markup-eps.ly: new file.
11694
11695         * scm/framework-ps.scm (write-preamble): change order: vars should
11696         be inited before procedures.
11697
11698         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11699         for EPS files.
11700
11701         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11702
11703 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11704
11705         * configure.in (gui_b): add check for ghostscript 8.15
11706
11707 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11708
11709         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11710         start of line. Fixes cresc-after-newline.ly
11711
11712         * lily/source-file.cc (file_line_column_string): use get_column().
11713
11714 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11715
11716         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11717
11718 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11719
11720         * lily/*: use message () iso progress_indication () for messages.
11721         Revise/uniformise user messages.
11722
11723         * flower/warn.cc (progress_indication): New function.
11724         (message): Use it.  Fixes newline problems.
11725
11726         * config.make.in (webdir): Sort out install dirs.
11727
11728         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11729
11730         * python/lilylib.py (command_name): Bugfix.
11731         (make_ps_images):
11732
11733 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11734
11735         * lily/main.cc: --help says what types of backends are availabe
11736
11737 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11738
11739         Fix ./VERSION dependency, and without need to reconfigure.
11740
11741         * lily/main.cc (setup_paths): Update.
11742
11743         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11744
11745         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11746
11747         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11748         Add \line for some simplistic cases.
11749
11750         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11751
11752 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11753
11754         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11755         to compile LY files (useful for adding eg. "-I" args)
11756         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11757         2Gnome command for gnome backend.
11758         (LilyPond-command-formatgnome): call the 2Gnome command. key
11759         binding: C-c C-g
11760
11761 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11762
11763         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11764         depend on all PNG images.
11765
11766 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11767
11768         * GNUmakefile.in: Bugfix: also link .map files.
11769
11770 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11771
11772         * scm/music-functions.scm (music->make-music): generate 
11773         a (make-music ...) sexpr from a music expression.
11774         (display-scheme-music): use guile pretty printer to display the
11775         make-music sexpr.
11776
11777 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11778
11779         * ly/engraver-init.ly: reindent.
11780         Add CueVoice.
11781
11782         * scm/music-functions.scm (music-pretty-string): handle moments
11783         too.
11784         (music-pretty-string): only print non-empty lists.
11785         (cue-substitute): create CueVoice context, which has smaller type.
11786
11787         * lily/moment-scheme.cc (LY_DEFINE): new methods
11788         ly:moment-grace-{numerator,denominator}
11789
11790         * lily/context-handle.cc: remove quit() method. 
11791
11792         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11793         (init_fontconfig): success is 0, not !0
11794
11795 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11796
11797         * mf/feta-nummer-code.mf (code): add plus glyph.
11798
11799         * lily/tie.cc (print): idem.
11800
11801         * lily/slur.cc (print): don't use thickness property for
11802         slur shape-thickness.
11803
11804         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11805         while adding stencils.
11806
11807         * scm/define-markup-commands.scm (with-color): with-color markup
11808         command.
11809         (whiteout): new markup command 
11810         (filled-box): new markup command
11811
11812 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11813
11814         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11815         test for PDF docs.
11816
11817         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11818         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11819         
11820         Notes for tetex-3.0 make web:
11821            psclean.map: s/uhv8a/uhvr8a/
11822            config.ps add:
11823                 p +psfonts_t1.map
11824                 p +psclean.map
11825                 p +typeface.map
11826
11827 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11828
11829         * scm/music-functions.scm (music-pretty-string): fix bug with
11830         string argument.
11831
11832 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11833
11834         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11835
11836 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11837
11838         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11839         only process options if they're there.
11840         (write_file_map): add version-seen? to snippet-map.ly
11841
11842 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11843
11844         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
11845         formatting cleanups.
11846
11847         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
11848         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
11849
11850 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11851
11852         * scm/framework-ps.scm (ps-font-command): don't hash, just use
11853         name directly.
11854
11855         * lily/main.cc (setup_paths): either add mf/out to search path or 
11856         fonts/{otf,type1,etc}
11857         
11858         * lily/font-config.cc (init_fontconfig): either add mf/out to
11859         FontConfig or fonts/{otf,type1,etc}
11860
11861         * GNUmakefile.in: don't put mf/ link in share/ dir.
11862
11863         * lily/staff-spacing.cc: move same-direction-correction to
11864         note-spacing-interface
11865
11866         * scm/lily.scm (lilypond-main): use variable argument count for
11867         exception handler.
11868
11869         * lily/font-config.cc (init_fontconfig): add operator pacification
11870         message.
11871
11872         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
11873
11874         * buildscripts/gen-emmentaler-scripts.py (i): generate
11875         PFAEmmentaler as well.
11876
11877         * scm/framework-ps.scm (munge-lily-font-name): new function
11878         (write-preamble): hack: insert PFA equivalent of CFF into
11879         .PS. This makes LilyPond output printable on normal PS printers
11880         again.
11881
11882         * buildscripts/gen-emmentaler-scripts.py (i): generate
11883         PFAEmmentaler.pfa aswell.
11884
11885 2005-04-06  John Williams <williams@tni.com>  
11886         
11887         * scripts/lilypond-book.py: refactor the compose_ly procedure.
11888         
11889 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11890
11891         * scm/page-layout.scm (default-page-make-stencil): always combine
11892         the header stencil, even if empty. This prevents the body text to
11893         reach up to the margins.
11894
11895         * po/rw.po (Module): new file, for Kinyarwanda.
11896
11897         * input/test/spacing-optical.ly (Module): new file.
11898
11899         * lily/staff-spacing.cc: add same-direction-correction
11900
11901 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11902
11903         * Documentation/user/introduction.itely (Engraving): Comment-out
11904         non-existent file.
11905
11906 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11907
11908         * scm/define-grob-properties.scm (all-user-grob-properties): add
11909         same-direction-correction
11910
11911         * VERSION: release 2.5.18
11912
11913 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
11914
11915         * lily/grob.cc (mark_smob): Check pscore->layout_ before
11916         dereferencing.  Fixes make web.
11917
11918         * lily/midi-stream.cc: Handle unwritable midi file.  Include
11919         errno.h.
11920
11921         * Documentation/user/: Fix links.
11922
11923 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11924
11925         * lily/text-interface.cc (Module): rename from text-item.cc
11926
11927         * input/regression/apply-output.ly (texidoc): function naming fix.
11928
11929         * lily/time-signature-performer.cc (derived_mark): new function.
11930
11931         * lily/lily-parser-scheme.cc:  print mapped file name for progress
11932
11933         * scripts/lilypond-book.py (find_linestarts): new function.
11934         (find_toplevel_snippets): keep track of line numbers.
11935
11936         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
11937         all key changes.
11938
11939         * ly/declarations-init.ly (partCombineListener): use
11940         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
11941
11942         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
11943
11944 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
11945
11946         * lily/text-item.cc: Fix link.
11947
11948         * Documentation/user/changing-defaults.itely (Changing defaults):
11949         Fix programs reference links.
11950
11951         * Documentation/user/music-glossary.tely: Convert to utf-8.
11952
11953 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11954
11955         * make/lilypond-vars.make: remove TEXMF from variables.
11956         remove DEB_BUILD pk font variables.
11957         remove GUILE_LOAD_PATH
11958         remove TeX memory vars.
11959
11960 2005-04-04  Werner Lemberg  <wl@gnu.org>
11961
11962         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
11963
11964 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11965
11966         * ps/lilyponddefs.ps: remove reencode-font
11967
11968         * lily/simple-spacer.cc (add_columns): also compare
11969         directly. Column rank doesn't distinguish between broken and
11970         unbroken columns. This fixes large spaces before time sig changes.
11971
11972         * Documentation/user/point-and-click.itely: document ly:set-option.
11973
11974         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
11975         point_and_click_global is set.
11976
11977         * lily/scm-option.cc (LY_DEFINE): add point-and-click
11978         ly:set-option argument.
11979
11980 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11981
11982         * GNUmakefile.in: Include symlinks in webball.
11983
11984         * Documentation/user/GNUmakefile (source-links): Add symlinks to
11985         source dir for split and non-split manuals.
11986
11987         * Documentation/user/*y: Fix @uref/@inputfile links for
11988         split/non-split HTML documents.
11989
11990         * Documentation/user/GNUmakefile (local-WWW): Do not generate
11991         .ps.gz.
11992         
11993 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11994
11995         * GNUmakefile.in: Add newline.
11996
11997 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
11998
11999         * tex/lilyponddefs.tex: use color instead of xcolor
12000         * scm/output-tex.scm: minor editing
12001
12002 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12003
12004         * scm/music-functions.scm (display-scheme-music): pretty printer
12005         for music expressions.
12006
12007 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12008
12009         * buildscripts/install-info-html.sh (index_file): Fix link.
12010
12011 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12012
12013         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12014
12015         * Documentation/index.html.in: Add size estimates with some big pages.
12016
12017         * Documentation/user/tutorial.itely (Running LilyPond for the
12018         first time): Add/replace some @rglos links.  TODO: add more
12019         @rglos links in tutorial, test non-intrusiveness (.css).
12020
12021         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12022         annoying's indication of referencing external document.
12023
12024         * Documentation/user/GNUmakefile: Split version of glossary too.
12025         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12026         links, not only for html.
12027
12028         * Documentation/user/introduction.itely: Fix some links for other
12029         than html, do not use `here' as link name.
12030
12031 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12032
12033         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12034         @glossaryref.
12035
12036 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12037
12038         * scm/page-layout.scm (default-page-make-stencil): only add header
12039         if existing and not empty. Fixes spurious programming error.
12040
12041         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12042
12043 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12044
12045         * scm/output-tex.scm: implement {re,}setcolor
12046         * tex/lilyponddefs.tex: use color package
12047
12048 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12049
12050         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12051         additions to website.
12052
12053         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12054
12055         * Documentation/user/macros.itexi: Fix @usermanref html links in
12056         split documents: use @inforef.
12057
12058 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12059
12060         * Documentation/user/programming-interface.itely: minor fix.
12061
12062         * Documentation/user/advanced-notation.itely: added info to
12063         Metronome markings.
12064
12065 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12066
12067         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12068         use box-stencil.  Remove y-padding argument.
12069         (make-stencil-circler): New function.
12070
12071         * buildscripts/lilypond-words.py (F): 
12072         * elisp/SConscript (a): 
12073         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12074         * vim/SConscript (a): 
12075         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12076
12077         * lily/general-scheme.cc: Build fix.
12078
12079         * scm/markup.scm:
12080         * input/regression/markup-scheme.ly: 
12081         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12082
12083         * scm/stencil.scm (make-circle-stencil): New function.
12084
12085         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12086         name (was cicle).  Update callers.
12087         (circle): New markup command, similar to box.
12088
12089         * scm/stencil.scm (circle-stencil): New function.
12090
12091 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12092
12093         * configure.in: Detect libutf8/wchar.h variant.
12094
12095         * stepmake/aclocal.m4: Modify shared size test.
12096
12097 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12098
12099         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12100
12101 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12102
12103         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12104         
12105         * VERSION (PACKAGE_NAME):  release 2.5.17
12106
12107 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12108
12109         * scm/backend-library.scm (postscript->png): Fix comment and png
12110         message.
12111
12112         * GNUmakefile.in (link-tree): Fix locales.
12113
12114 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12115
12116         * lily/stencil-scheme.cc (LY_DEFINE): change to
12117         ly:stencil-aligned-to, non mutating.
12118
12119         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12120
12121         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12122
12123         * lily/quote-iterator.cc (derived_mark): call
12124         Music_wrapper_iterator::derived_mark() too.
12125
12126         * lily/grace-engraver.cc (derived_mark): change signature, add
12127         const.
12128
12129 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12130
12131         * SConstruct (symlink): 
12132         * GNUmakefile.in (link-tree): Add scripts to prefix.
12133
12134         * lily/general-scheme.cc (ly:effective-prefix): New function.
12135
12136         * scm/backend-library.scm (postscript->png): Use it.
12137
12138 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12139
12140         * lily/paper-score.cc (process): don't delete grobs after
12141         producing stencils. 
12142
12143         * scm/part-combiner.scm (determine-split-list): switch off
12144         debugging info.
12145
12146         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12147         if available.
12148
12149         * scm/define-context-properties.scm
12150         (all-user-translation-properties): add stringNumberOrientations.
12151
12152         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12153         so fingering and string-numbers are separately controlled.
12154
12155 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12156
12157         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12158         not use debugging.
12159
12160 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12161
12162         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12163
12164         * config.hh.in: add HAVE_FONTCONFIG.
12165
12166         * Documentation/user/instrument-notation.itely (String number
12167         indications): new node.
12168
12169         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12170
12171         * lily/new-fingering-engraver.cc (add_string): new function. 
12172         (acknowledge_grob): accept string-number-event as well.
12173
12174         * scm/define-markup-commands.scm (circle): new markup command.
12175
12176         * scm/output-lib.scm (print-circled-text-callback): new function.
12177
12178         * lily/GNUmakefile: move ifeq after include stepmake.make.
12179
12180 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12181
12182         * config.make.in (HAVE_LIBKPATHSEA_SO):
12183         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12184
12185         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12186         add KPATHSEA_LIBS.
12187
12188         * debian/watch: 
12189         * debian/control: Update.
12190
12191 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12192
12193         * input/test/title-markup.ly (spaceTest): remove.
12194
12195         * input/test/embedded-tex.ly (Module): remove.
12196
12197         * input/test/music-box.ly: use 'name property, not ly:music-name.
12198
12199         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12200
12201         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12202
12203 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12204
12205         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12206         about xdeltas.  Add information about CVS.
12207
12208         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12209         gracefully handle failed files.
12210
12211         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12212
12213         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12214         small fixes.
12215
12216         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12217         No unnecessarily specific i18n messages.  Remove stray `1'.
12218
12219 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12220
12221         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12222         documentencoding
12223
12224         * scm/documentation-lib.scm (texi-file-head): set utf-8
12225         documentencoding.
12226
12227         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12228         Delta, not the Symbol one. 
12229
12230         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12231         for the .map file.
12232
12233         * Documentation/topdocs/INSTALL.texi (Top): add running
12234         requirement as compilation requirement.
12235
12236 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12237
12238         * buildscripts/mutopia-index.py (headertext): add h1 header and
12239         utf-8 charset meta field.
12240
12241         * input/GNUmakefile: prune example list.
12242
12243         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12244         options.
12245
12246         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12247         extent for visible stems.
12248
12249         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12250
12251 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12252
12253         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12254
12255         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12256
12257 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12258
12259         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12260         pass inf/nan into slur scoring.
12261
12262         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12263         page.
12264
12265         * scripts/abc2ly.py (dump_voices): use alphabet().
12266
12267 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12268         
12269         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12270
12271 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12272         
12273         * flower/include/virtual-methods.hh: simplify. Patch by
12274
12275 2005-03-25  John Williams <williams@tni.com>  
12276
12277         * scripts/lilypond-book.py (main): add png for HTML too, guess
12278         only if necessary. 
12279
12280 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12281
12282         * Documentation/topdocs/INSTALL.texi: now recommends
12283         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12284
12285         * Documentation/user/basic-notation.itely,
12286         Documentation/user/tutoria.itely: warn about
12287         only one (phrasing) slur at once.
12288
12289 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12290
12291         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12292
12293 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12294
12295         * Documentation/user/basic-notation.itely: fixed info about
12296         ending a (de)cresc.
12297
12298         * Documentation/user/lilypond-book.itely: fixed
12299         lilypond-book filter example and warned about not doing
12300         --filter and --process at the same time.
12301
12302 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12303
12304         * lily/parser.yy (bass_number),
12305         Documentation/user/instrument-notation.itely (Figured bass): 
12306         Add the possibility to use text markup in figured bass. 
12307
12308 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12309
12310         * Documentation/user/global.itely: added info about naming
12311         identifiers and breakbefore.
12312
12313         * Documentation/user/invoking.itely: added info about batch
12314         processing files with convert-ly, removed references to TeX
12315         in the jail section.
12316
12317         * Documentation/user/examples.itely: possibly fixed piano
12318         dynamics.
12319
12320         * Documentation/user/advanced-notation.itely: added info
12321         about removing other types of Staff.
12322
12323         * Documentation/user/instrument-notation.itely: possibly
12324         fixed piano staff line switch.
12325
12326         * Documentation/user/changing-defaults.itely: added info
12327         about using normal font in titles.
12328
12329 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12330
12331         * VERSION (PATCH_LEVEL): release 2.5.16
12332
12333         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12334         explicitly.
12335
12336 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12337
12338         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12339         whitespace.
12340
12341         * python/lilylib.py (make_ps_images):
12342         * scm/backend-library.scm (postscript->pdf, postscript->png):
12343         Quote file name.  Use format rather than string-append juggling.
12344
12345 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12346
12347         * python/lilylib.py (make_ps_images): add x to -g argument. 
12348
12349         * lily/key-performer.cc (create_audio_elements): don't use
12350         scm_eval_string. Check for minor 3rd directly.
12351   
12352         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12353         (sarabandeCelloGlobal): key is D minor, not F major.
12354
12355 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12356
12357         Fix truncated --png output (Peter Danenberg).
12358         
12359         * python/lilylib.py (make_ps_images):
12360         * scripts/ps2png.py (copyright): Grok --papersize option.
12361
12362         * scm/backend-library.scm (postscript->png): Add parameter
12363         PAPERSIZE.  Update callers.
12364
12365         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12366         Fixes symbol placement.
12367
12368         * lily/spanner.cc: 
12369         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12370         <libc-extension.hh>).
12371
12372 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12373
12374         * Nitpick run.
12375
12376         * buildscripts/fixcc.py: Update.
12377
12378         Builddir run fixes.
12379
12380         * HACKING (datadir): Add VERSION.
12381
12382         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12383         higher up.
12384
12385 2005-03-15  Werner Lemberg  <wl@gnu.org>
12386
12387         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12388         diagonal stem doesn't become thinner.
12389
12390 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12391
12392         * buildscripts/fixcc.py: Fixes (Werner).
12393
12394 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12395
12396         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12397         Emmentaler/Aybabtu.
12398
12399         * GNUmakefile.in: fix lilypond-words path.
12400
12401         * po/tr.po: update to 2.3.21
12402
12403         * lily/new-fingering-engraver.cc (position_scripts): take priority
12404         from head position.
12405
12406         * input/regression/finger-chords-order.ly (texidoc): new file.
12407
12408 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12409
12410         * make/ly-rules.make: 
12411         * stepmake/aclocal.m4: 
12412         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12413
12414         * buildscripts/fixcc.py (rules): Leave space after operator.
12415
12416 2005-03-14  Werner Lemberg  <wl@gnu.org>
12417
12418         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12419         top of the glyph with smooth curve.
12420
12421 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12422
12423         * Documentation/user/global.itely (Page layout): remove
12424         printpagenumber.
12425
12426 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12427
12428         * input/regression/mensural-ligatures.ly: new file (with examples
12429         compiled by Pal Benko).
12430
12431         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12432         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12433         musicglyph access.  Many small beautifications in ancient
12434         examples.
12435
12436         * input/test/divisiones.ly: fixed indentation; small
12437         beautifications
12438
12439         * ly/engraver-init.ly: added FIXME comment
12440
12441         * scripts/lilypond-book.py,
12442         Documentation/user/lilypond-book.itely: added music fragment
12443         option "packed" to lilypond-book
12444
12445         * Documentation/user/instrument-notation.itely: Bugfix: added
12446         missing LedgerLineSpanner color setting in several places.  Added
12447         music fragment option "packed" to VaticanaContext example.
12448
12449 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12450
12451         * scm/define-grobs.scm (all-grob-descriptions): switch off
12452         Hyphen_spanner::set_spacing_rods 
12453
12454         * lily/lyric-hyphen.cc (print): add padding between syllable and
12455         hyphen.
12456         (print): shorten hyphen in tight situations (determine using
12457         minimum-length)
12458
12459         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12460         0.4pt.
12461
12462 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12463
12464         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12465
12466         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12467         header/footer markings for regression-test.
12468
12469         * scm/backend-library.scm (output-scopes, header-to-file): Move
12470         from framework-tex.scm.
12471
12472         * scm/framework-ps.scm (output-framework)
12473         (output-preview-framework):
12474         * scm/framework-eps.scm (output-classic-framework)
12475         (output-framework): Use it.  Fixes collated files.
12476
12477 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12478
12479         * input/sakura-sakura.ly: 
12480         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12481
12482         * buildscripts/guile-gnome.sh: Update.
12483
12484         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12485
12486         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12487
12488 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12489
12490         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12491         culprit: always exit the loop if we find a rod, even if it has
12492         distance < 0. 
12493
12494         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12495         algorithm.
12496
12497         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12498         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12499
12500         * scm/output-svg.scm (dashed-line): new  function body.
12501         
12502         * GNUmakefile.in: create .htaccess.
12503
12504 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12505
12506         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12507
12508 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12509
12510         * VERSION (PACKAGE_NAME): release 2.5.15
12511
12512         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12513
12514         * scm/framework-svg.scm (output-framework): put scaling in
12515         document header. Apply scaling only once.
12516         (output-framework): dump page size in px, not mm. 
12517
12518         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12519         from font-size.
12520
12521         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12522         ly:outputter-output-scheme, new function.
12523
12524         * scm/output-svg.scm (pango-description-to-svg-font): new function
12525
12526 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12527
12528         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12529         target.
12530
12531         * input/typography-demo.ly: new file.
12532
12533 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12534
12535         * Documentation/user/global.itely (File structure): Add markup blocks
12536         to toplevel expressions.
12537         (Multiple movements, Creating titles): Add markup blocks.
12538
12539         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12540         <libc-extension.hh>).
12541
12542         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12543
12544         * flower
12545         * lily
12546         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12547
12548 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12549
12550         * lily/accidental.cc: special bboxes for natural. 
12551
12552         * mf/feta-toevallig.mf: make stems heavier.
12553
12554         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12555         texts as well.
12556
12557         * mf/feta-klef.mf: revise. 
12558
12559         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12560
12561         * mf/feta-klef.mf: add rounded curve at top. 
12562         make thinnib a little heavier.
12563
12564 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12565
12566         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12567
12568         * buildscripts/fixcc.py: New file.
12569
12570         * input/regression/utf8.ly: Update Debian font description.
12571
12572 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12573
12574         * stepmake/aclocal.m4: Fix test.
12575
12576 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12577
12578         * Documentation/user/invoking.itely: added Sebastino Vigna's
12579         docs for the --jail option.
12580
12581 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12582
12583         * lily/stem.cc (print): only produce stemlets if there are no
12584         noteheads on this stem.
12585
12586         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12587         don't crash on stemlet (visible stem without heads).
12588
12589         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12590         unbroken situations. 
12591
12592         * scm/output-lib.scm (center-invisible): new function.
12593
12594         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12595         wishes to determine loose column space.
12596
12597         * lily/font-config.cc (init_fontconfig): add
12598         fonts/{otf,type1,cff}  to path.
12599
12600         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12601
12602         * mf/GNUmakefile (Module): install all fonts under otf/
12603
12604         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12605         replace /fonts/otf/ by /ps/ 
12606
12607         
12608 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12609
12610         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12611
12612         * lily/book.cc (process): Oops, add score_.header_.
12613
12614         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12615
12616         * lily/parser.yy: Handle toplevel and book texts as score.
12617
12618         * scm/page-layout.scm (default-page-make-stencil):
12619         Bugfix: (page-properties rename.
12620
12621         * scm/backend-library.scm (ly:system): Typo.
12622
12623 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12624
12625         * stepmake/stepmake/executable-targets.make (installexe): don't
12626         strip installed executables
12627
12628         * lily/font-select.cc (get_font_by_design_size): revert
12629         pango_description_string as well.
12630
12631         * lily/system.cc (set_loose_columns): put loose column just left
12632         of next column.
12633
12634         * lily/include/group-interface.hh (extract_grob_array): rename
12635         from Pointer_group_interface__extract_grobs
12636
12637         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12638
12639         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12640         function. Keep ledgered note heads at a minimum distance.
12641         Introduce minimum-length-fraction
12642         (print): introduce length-fraction property.
12643
12644 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12645
12646         * tex/GNUmakefile: remove latin1.enc rules.
12647
12648 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12649
12650         * scm/titling.scm: Typo.
12651
12652         * input/regression/score-text.ly: Really add.
12653
12654         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12655
12656 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12657
12658         * lily/open-type-font-scheme.cc:  new file.
12659
12660 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12661
12662         * scm/titling.scm (layout-extract-page-properties): Rename from
12663         page-properties.  Update callers.
12664
12665         * lily/lexer.ll (Lily_lexer):
12666         * lily/parser.yy: Junk lyric_markup state.
12667
12668         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12669
12670         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12671         Add texts parameter.
12672
12673 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12674
12675         * lily/lexer.ll (lyric_markup): New mode.
12676         (Lily_lexer::push_lyric_markup_state): New method.
12677         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12678
12679         * lily/parser.yy (book_body):
12680         (toplevel_expression): Grok \markup texts.
12681
12682         * lily/score-scheme.cc (ly:music-scorify): 
12683         * scm/lily-library.scm (collect-music-for-book): Take texts
12684         parameter.
12685
12686         * lily/score.cc (texts_): New member.
12687
12688         * lily/paper-book.cc (systems): Format score texts.
12689
12690         * score-text.ly: New file.
12691
12692         * ttftool/SConscript:
12693         * kpath-guile/SConscript: New file.
12694
12695         * lily/SConscript:
12696         * SConstruct: Update.
12697
12698 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12699
12700         * VERSION (PACKAGE_NAME): release 2.5.14
12701
12702 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12703
12704         * lily/main.cc: Add dummy xgettext markers.
12705
12706 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12707
12708         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12709         requirements
12710
12711         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12712         executable is < 40k
12713
12714         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12715         hack.
12716
12717 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12718
12719         * flower/libc-extension.cc:
12720         * flower/include/libc-extension.hh: [Open]BSD simply cast
12721         cookie/funopen declarations.
12722
12723         * stepmake/aclocal.m4: Check for libkpathsea.so.
12724
12725         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12726         dl_kpse_find_file.
12727
12728 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12729
12730         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12731         (open_library): alternative for static library.
12732
12733 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12734
12735         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12736
12737         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12738
12739         Drop run-time dependency on teTeX.
12740
12741         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12742
12743         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12744         KPATHSEA_LIBS in LIBS.
12745         (STEPMAKE_DLOPEN): New function.
12746
12747         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12748         not path.
12749
12750         * flower/file-path.cc (directories): Rename from paths, as this
12751         return an array of directories (a single path).
12752
12753 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12754
12755         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12756
12757         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12758         new ly:kpathsea-find-file
12759
12760         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12761
12762         * kpath-guile/GNUmakefile: new file
12763
12764         * buildscripts/gen-emmentaler-scripts.py (i): generate
12765         emmentaler-X.fontname as well.
12766
12767         * buildscripts/ps-embed-cff.py: new script
12768
12769         * scm/lily-library.scm: remove ps-embed-cff.
12770
12771         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12772         font loading. 
12773
12774         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12775         fontconfig as well.
12776
12777         * lily/font-config.cc (init_fontconfig): add cff/ too.
12778
12779         * ly/generate-embedded-cff.ly: capitalize.
12780
12781         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12782         so as to register the pango font.
12783
12784         * lily/font-config.cc (init_fontconfig): add
12785         prefix/{otf,type1,mf/out} to fontconfig path.
12786
12787         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12788         overrides all. 
12789
12790         * configure.in (gui_b): remove ec mftrace check
12791
12792         * config.hh.in: use lilypond-Major.Minor as data directory.
12793
12794         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12795
12796         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12797         name.
12798
12799 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12800
12801         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12802         error messages.
12803
12804         * flower/libc-extension.cc:
12805         * flower/include/libc-extension.hh: [Open]BSD fixes for
12806         cookie/funopen declarations.
12807
12808 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12809
12810         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12811         emmentaler.
12812
12813         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12814         lcrm10.
12815
12816         * scm/define-markup-commands.scm (fontsize): new markup
12817         command. Also set baseline-skip
12818
12819 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12820         
12821         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12822         use.
12823
12824 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12825
12826         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12827
12828         * lily/pdf.cc: remove PDF related files
12829
12830 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12831
12832         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12833         <hamamatsu@gmx.de>
12834
12835 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12836
12837         * Documentation/user/advanced-notation.itely: first draft
12838         of reorg done.
12839
12840         * Documentation/user/global.itely: fixed (sub)section
12841         bits of MIDI.
12842
12843 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12844
12845         * cygwin/mknetrel (extras): Bufix (Bertalan).
12846
12847         * Documentation/user/basic-notation.itely (Chords): @ref fix.
12848         * Documentation/user/instrument-notation.itely (Introducing chord
12849         names): Compile fix: must have unique name.
12850
12851 2005-03-02  Graham Percival  <gperlist@shaw.ca>
12852
12853         * Documentation/user/instrument-notation.itely: reorg.
12854
12855 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12856
12857         * scm/output-gnome.scm:
12858         * scm/output-svg.scm: Fix font scaling.
12859
12860 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12861
12862         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
12863         what link to use best.
12864
12865         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
12866         * Documentation/user/tutorial.itely (Automatic and manual beams):
12867         Fix @ref.
12868
12869         * lily/tweak-registration.cc (replace_grob_tweak): New function.
12870         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
12871         * scm/framework-gnome.scm (tweak): Use it.
12872
12873 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12874
12875         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
12876
12877         * scm/output-ps.scm (white-text): reinstate white-text
12878
12879 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12880
12881         * scm/output-ps.scm (offset-add): Remove.
12882
12883         * scm/lily-library.scm (offset-flip-y): New function.
12884         * scm/framework-gnome.scm (tweak): Use it.
12885
12886         * scm/output-gnome.scm (grob-cause): Add parameter.
12887
12888         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
12889         * scm/output-ps.scm (url-link): Move.
12890         (white-text): Warn user about brokenness.
12891
12892         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
12893         wrt ghostscript.
12894
12895 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12896
12897         * lily/slash-repeat-engraver.cc (try_music): always make slashes
12898         if body length smaller than measure length.
12899
12900         * scm/define-markup-commands.scm (with-url): oops. use Y extent
12901         for Y.
12902
12903         * ly/titling-init.ly (tagline): put default tagline in \paper
12904
12905 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12906
12907         * lily/kpath.cc: 
12908         * lily/pdf.cc (Pdf_file): Use more generic error messages.
12909
12910         * scm/lily-library.scm (version-not-seen-message): New function.
12911         * ly/init.ly: Use it.
12912
12913         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
12914         breaks as progess.
12915
12916         * scripts/lilypond-book.py (do_process_cmd): Do not lump
12917         whitespace with l10n message.
12918
12919         * scm/framework-tex.scm (convert-to-ps):
12920         (convert-to-dvi): Do not use overly specific l10n messages.
12921
12922         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
12923
12924         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
12925         merge stderr with stdout.  
12926
12927 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12928
12929         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
12930         Neeracher).
12931
12932 2005-02-29  Graham Percival  <gperlist@shaw.ca>
12933
12934         * Documentation/user/instrument-notation.teily: moved
12935         \arpeggio to Basic.
12936
12937         * Documentation/user/advanced-notation.itely: Articulation to
12938         Basic, a bunch of stuff from Basic moved to Advanced.
12939
12940         * Documentation/user/basic.itely: swapped various sections,
12941         reorganized Basic.
12942
12943 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12944
12945         * flower/memory-stream.cc: 
12946         * flower/libc-extension.cc: Remove obsolete #undefs.
12947
12948         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
12949         more carefully.
12950
12951 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12952
12953         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
12954         dependency.
12955
12956         * VERSION (PACKAGE_NAME): release 2.5.13
12957
12958         * GNUmakefile.in (web-ext): don't ship ps.gz
12959
12960         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
12961         stdout
12962
12963 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12964
12965         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
12966         without libintl.  Now it compiles too.
12967
12968 2005-02-28  Graham Percival  <gperlist@shaw.ca>
12969
12970         * Documentation/user/basic-notation.itely,
12971         instument-notation.itely, advanced-notation.itely:
12972         split up contents of notation.itely.
12973
12974         * Documentation/user/notation.itely: file removed.
12975
12976         * Documentation/user/invoking.itely, converters.itely:
12977         moved convert-ly info to invoking.itely.
12978
12979         * Documentation/user/global.itely, changing-defaults.itely,
12980         sound-output.itexi: moved global settings, file layout, and
12981         sound into global.itely.
12982
12983         * Documentation/user/sound-output.itexi: file removed.
12984
12985         * Documentation/user/lilypond.tely: removed links to
12986         notation.itely and sound.itely.
12987
12988 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12989
12990         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
12991
12992         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
12993  
12994         * THANKS: add sponsor.
12995
12996         * scm/define-markup-commands.scm (with-url): new markup command.
12997
12998         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
12999         tagline.
13000         
13001         * scm/output-tex.scm (url-link): stub.
13002
13003         * scm/output-ps.scm (url-link): new function.
13004
13005         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13006         ly:set-point-and-click
13007
13008 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13009
13010         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13011         based on pdf-viewer setting.
13012
13013         * scm/framework-ps.scm (write-preamble): Find and set preferred
13014         pdf-viewer.
13015
13016 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13017
13018         * Documentation/user/point-and-click.itely: update for PDF point &
13019         click.
13020
13021         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13022         editors based on EDITOR setting.
13023
13024 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13025
13026         * scm/*: Oops, more grand 2005 replace bits.
13027
13028 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13029
13030         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13031
13032         * scm/output-ps.scm (grob-cause): point & click support for
13033         PostScript
13034
13035 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13036
13037         * lily/input-scheme.cc (LY_DEFINE): rename to
13038         ly:input-file-line-column
13039
13040 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13041
13042         * Documentation/user/examples.itely: small fix from Steve Doonan.
13043
13044         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13045
13046         * THANKS: added Yuval Harel.
13047
13048         * Documentation/user/{various}: inserted two spaces after a period.
13049
13050         * Documentation/user/lilypond.tely: added framework for reorg.
13051
13052         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13053         advanced-notation.itely, global.itely: new files, placeholder for
13054         future reorg.
13055
13056 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13057
13058         * Documentation/user/notation.itely: revamped Polyphony section
13059         
13060 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13061
13062         * Documentation/user/lilypond-book.itely (Music fragment options):
13063         doc fontload.
13064
13065         * Documentation/user/changing-defaults.itely (Text encoding): add
13066         fontload option to utf8 include
13067
13068         * scripts/lilypond-book.py (compose_ly): add fontload option
13069
13070         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13071         force-eps-font-include option.
13072
13073         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13074         black triangle
13075
13076         * Documentation/user/invoking.itely (Editor support): remove
13077         lilypond-latex section.
13078
13079         * scripts/lilypond-latex.py (Module): remove script.
13080
13081         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13082         overwrite .log. 
13083
13084         * lily/main.cc: remove -m, --no-layout
13085
13086         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13087         to define. We don't want to override fprintf everywhere.
13088
13089 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13090
13091         * cygwin/lilypond.hint: 
13092         * cygwin/README.in: Update dependencies.
13093
13094         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13095         Bugfix: do not pollute CPPFLAGS, LIBS.
13096
13097         * cygwin/mknetrel (extras): Cross compile fixes.
13098
13099         * ttftool/util.c: 
13100         * ttftool/ttfps.c: 
13101         * ttftool/ps.c: #include libc-extension.hh
13102
13103         * flower/include/libc-extension.hh:
13104         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13105         wrapper using funopen.
13106         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13107         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13108
13109         * config.hh.in:
13110         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13111         (AC_CHECK_HEADERS): Add libio.h
13112
13113         * scripts/convert-ly.py: Uniformize, internationalize.
13114         (2.5.2): Remove fatal encoding rule.
13115         (2.5.13): Handle latin1 encoding gracefully.
13116
13117 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13118
13119         * HACKING: Fix line breaks.
13120
13121 2005-02-23  Werner Lemberg  <wl@gnu.org>
13122
13123         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13124         contains those two files.
13125
13126 2005-02-21  Werner Lemberg  <wl@gnu.org>
13127
13128         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13129         to improve overlap removal process.
13130
13131         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13132         left and right ending.  This ensures better overlapping.
13133         Update all callers.
13134         ("lineprall"): Don't use draw_gridline to get better overlapping.
13135
13136 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13137
13138         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13139
13140         * Documentation/topdocs/NEWS.tely (Top): oops.
13141
13142 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13143
13144         * HACKING: new file.
13145
13146         * input/regression/utf8.ly (portuguese): added a portuguese example
13147         to show latin1 accents.
13148
13149 2005-02-21  Pal Benko  <benkop@freestart.hu>
13150
13151         * lily/mensural-ligature-engraver.cc:
13152         * lily/mensural-ligature.cc:
13153         * lily/include/mensural-ligature.hh: new algorithm implemented
13154
13155         * scm/define-grob-properties.scm: join-left killed (add-join may
13156         be used); join-left-amount changed to join-right-amount
13157
13158 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13159
13160         * Documentation/user/notation.itely: small but urgent fix.
13161
13162 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13163
13164         * lily/duration-scheme.cc: bugfix: correct parameters to
13165         SCM_ASSERT_TYPE.
13166
13167         * THANKS: added Pal.
13168
13169         * Documentation/user/notation.itely: bugfix: unTeXified
13170         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13171         "timesig.*x/y" -> "timesig.*xy".
13172
13173 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13174         
13175         * VERSION (PACKAGE_NAME): release 2.5.12
13176
13177 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13178
13179         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13180
13181         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13182
13183         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13184
13185         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13186
13187 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13188
13189         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13190         latin1..utf-8.
13191
13192         * input/regression/stanza-number.ly:
13193         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13194
13195         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13196
13197 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13198
13199         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13200         NEWS. Refer to website for older news.  
13201
13202         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13203         .HTML. This should be done for specific servers only.
13204
13205         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13206         .ly image examples.
13207
13208         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13209         in layer 0 too.
13210
13211         * scm/define-context-properties.scm
13212         (all-user-translation-properties): add tieWaitForNote
13213
13214         * scm/define-grobs.scm (all-grob-descriptions): add
13215         Tie_column::before_line_breaking
13216
13217         * lily/tie.cc (get_column_rank): new function
13218
13219         * lily/tie-column.cc (before_line_breaking): new function.
13220         (werner_directions): take into account ties that start on
13221         different columns.  
13222
13223         * lily/score-engraver.cc (set_columns): move add_column() so we
13224         have column rank available.
13225
13226         * lily/tie.cc (get_column_rank): new function.
13227
13228         * input/regression/utf8.ly (japanese): add japanese lyrics.
13229
13230         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13231
13232         * THANKS: add Steve D
13233
13234         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13235         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13236
13237 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13238
13239         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13240         to show harmonic notes
13241         * scm/define-markup-commands.scm: in \markup-by-number
13242         "dots-dot" -> "dots.dot" to show dotted notes
13243
13244 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13245
13246         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13247
13248         * flower/memory-stream.cc (writer): new file.
13249
13250         * configure.in: add endian test.
13251
13252 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13253
13254         * Documentation/user/examples.itely: small
13255         simplification/beautification
13256
13257         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13258         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13259         notation manual.
13260
13261         * lily/mensural-ligature.cc: bugfix: another few victims of the
13262         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13263
13264         * ly/gregorian-init.ly: commit some experimental code for hi-level
13265         ligature input language lying around here for several months.
13266
13267         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13268         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13269
13270         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13271         "x-y-z"->"x.y.s-z" fixes.
13272
13273 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13274
13275         * scm/framework-pdf.scm (scm): new file
13276
13277         * lily/include/pdf.hh (class Pdf_file): new file.
13278
13279         * lily/pdf.cc (write_trailer): new file.
13280
13281 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13282
13283         * input/regression/color.ly: new file
13284
13285         * lily/stencil.cc (interpret_stencil_expression):
13286         when a color expression is encountered: save current color,
13287         process the rest of the expression, and restore previous color.
13288
13289         * lily/system.cc (get_line): check all grobs for color property and
13290         prepare the stencil scheme expressions for further processing.
13291         Fix layer-loop.
13292
13293         * scm/define-grob-properties.scm: introduce the color property.
13294
13295         * scm/output-lib.scm: color helper functions.
13296
13297         * scm/output-ps.scm: introduce setcolor/resetcolor.
13298
13299 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13300
13301         * ly/*.ly, input/regression/*.ly: Added missing \version
13302         statements in some files.
13303
13304 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13305
13306         * Documentation/user/notation.itely: minor editing.
13307
13308         * Documentation/user/converters.itely: updated convert-ly bugs.
13309
13310         * Documentation/user/lilypond-book.itely: add info about using
13311         feta characters in latex.
13312
13313 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13314
13315         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13316
13317 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13318
13319         * scm/define-grob-properties.scm (all-user-grob-properties):
13320         removed 'dashed property.
13321
13322 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13323
13324         * scm/lily.scm (define-safe-public): new macro for defining
13325         variables that can be used in --safe mode. Use it in *.scm
13326         instead of manually setting safe-objects in safe-lily.scm.
13327
13328 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13329         
13330         * lily/slur.cc: Slur-dash patch by Bertalan.
13331
13332         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13333
13334         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13335
13336 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13337
13338         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13339
13340 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13341
13342         * mf/GNUmakefile: teTeX-3.0 install fix.
13343
13344         * Cygwin patch from Bertalan.
13345
13346         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13347
13348 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13349
13350         * GNUmakefile.in: 
13351         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13352
13353         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13354         2.0.x compatibility.
13355
13356 2005-02-08  Werner Lemberg  <wl@gnu.org>
13357
13358         * mf/feta-din-code.mf: Format; clean up code.
13359         Replace `---' with `--' plus explicit path directions.
13360         (linethickness#, stafflinethickness#): Remove.
13361         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13362         ("dynamic s"): Improve shape.
13363         ("dynamic p"): Improve shape.
13364         Replace `draw' with better outline approximation.
13365         ("dynamic r"): Improve shape.
13366         Don't call `fill' and `draw' at the same time.
13367
13368 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13369
13370         * SConstruct (symlink):
13371         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13372         build fix: add enc symlink.
13373
13374         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13375
13376         Support for DESTDIR besides prefix=/foo
13377
13378         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13379
13380         * stepmake/stepmake/*.make:
13381         * */GNUmakefile:
13382         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13383
13384         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13385
13386         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13387         mawk in fontforge (date) test.
13388
13389 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13390
13391         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13392         font-family=roman. Add Luxi Sans as sans
13393
13394 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13395
13396         * Documentation/user/notation.itely: add warning about
13397         percent repeats and Voice contexts.
13398
13399         * Documentation/user/lilypond-book.itely: clarified the
13400         necessity of dvips -u arguments.
13401
13402 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13403
13404         * THANKS: Added a bunch of bug hunters.
13405
13406 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13407
13408         * scm/framework-ps.scm (output-preview-framework): bugfix.
13409
13410         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13411         o/ for chord modifier..
13412
13413         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13414
13415         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13416         Welsh Duggan). 
13417
13418 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13419
13420         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13421
13422         * ly/titling-init.ly: Do not also print intstrument in header on
13423         first page.  Do not print page number on first and only page.
13424
13425 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13426
13427         * input/regression/*.ly: remove old-relative everywhere
13428
13429         * lily/music-sequence.cc (simultaneous_relative_callback): do
13430         what-if analysis on copy, not on original. Fixes old-relative
13431         compatibility.
13432
13433         * scm/backend-library.scm (postscript->png): space before
13434         --verbose.
13435         
13436 2005-02-05  Werner Lemberg  <wl@gnu.org>
13437
13438         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13439         is defined.
13440
13441         * mf/feta-alphabet.mf: Define `staffsize#'.
13442         Include `feta-params.mf'.
13443         s/staffheight/design_size/.
13444
13445         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13446
13447         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13448
13449         * mf/feta-nummer-code.mf: Reformatted.
13450         (draw_six): Use outline intersection to avoid a self-intersecting
13451         path.
13452         ("Numeral comma"): Fix serious outline glitches.  This slightly
13453         changes the glyph shape.
13454         ("Numeral dash"): Use `draw_rounded_block'.
13455         ("Numeral dot"): Use `drawdot'.
13456         ("Numeral 1"): Assure identical tangent directions for the
13457         intersection points of paths.  The glyph shape improvement is only
13458         visible at very high magnifications.
13459         ("Numeral 2"): Use `solve' macro to make the lower right part of
13460         the glyph outline touch the x axis exactly.  This changes the
13461         glyph shape.
13462         Minor fixes for better overlap removal support.
13463         ("Numeral 4"): Make lefter corner `rounder'.
13464         ("Numeral 5"): Assure identical tangent directions for the
13465         intersection points of paths.  This improves the glyph shape at
13466         high magnifications.
13467         ("Numeral 7"): Use `solve' macro to make the upper right part of
13468         the glyph outline touch the metrics box exactly.  This changes the
13469         glyph shape.
13470         Avoid corner in the upper left part of the glyph (causing a minor
13471         shape change).
13472
13473         * mf/feta-ital-*.mf: Removed.  Unused.
13474
13475 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13476
13477         * VERSION (PATCH_LEVEL): release 2.5.11
13478
13479         * input/regression/fill-line-test.ly: new file.
13480
13481         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13482         emmentaler name, eg. emmentaler-23. 
13483
13484 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13485
13486         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13487         alignment with centered texts
13488
13489         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13490         list of paddings
13491
13492 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13493
13494         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13495
13496         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13497         of parents when translating rests. Fixes: c-chord-rest.ly 
13498
13499         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13500         dimension_callback_ member.
13501
13502         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13503         of extents.
13504
13505 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13506
13507         * all but lily/*: The grand 2004/2005 replace.
13508
13509 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13510
13511         * lily/*: add space after ,  
13512
13513         * scm/music-functions.scm (has-request-chord): don't use
13514         ly:music-name anywhere. Fixes <<\\>> notation. 
13515
13516         * scm/define-markup-commands.scm (box): use font-size for
13517         padding. Fixes boxed-rehearsal-marks.ly
13518
13519         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13520         identifier definition too, so foo = \lyrics { ...   } bar = #1
13521         doesn't complain about "bar" being LYRICS_STRING.
13522
13523         * lily/paper-def.cc (find_pango_font): new routine; Store
13524         pango_fonts in hash tab too. This is necessary for retrieving
13525         Pango_fonts::physical_font_tab() later on.
13526  
13527         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13528         crash if psname is null.
13529
13530         * lily/lily-guile.cc (ly_hash2alist): new function
13531
13532         * Documentation/user/changing-defaults.itely (Text encoding):
13533         rewrite. 
13534
13535         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13536         -> font_filename mapping.
13537
13538         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13539         ly_pango_font_physical_fonts
13540
13541         * scm/framework-ps.scm (supplies-or-needs): extract names from
13542         physical Pango_fonts.
13543
13544         * utf8.ly: new file.
13545
13546 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13547
13548         * Documentation/user/changing-defaults.itely (Page layout): add
13549         doco about systemSeparatorMarkup.
13550
13551         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13552         function.
13553         (default-page-make-stencil): insert system separators.
13554
13555         * scm/define-markup-commands.scm (hcenter): add
13556         (beam): add.
13557
13558 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13559
13560         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13561
13562 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13563
13564         * lily/main.cc: Spell backend consistently.  Sort options.
13565
13566 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13567
13568         * scripts/lilypond-book.py (Module): revert @include.
13569         
13570 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13571
13572         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13573         Bugfix: @include .tex (not .texi).  Small cleanups.
13574
13575         * stepmake/bin/add-html-footer.py (i18n): New function.
13576
13577 2005-01-31  Werner Lemberg  <wl@gnu.org>
13578
13579         * mf/feta-nummer.mf: Removed.  Unused.
13580
13581 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13582
13583         * lily/ : 2004 -> 2005 s&r
13584
13585         * scm/file-cache.scm (cached-file-contents): add file. Read each
13586         file only once.
13587
13588         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13589         now default.
13590
13591         * VERSION: release 2.5.10
13592         
13593         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13594
13595         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13596
13597         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13598         that both X and Y extents of bbox are non-nil.
13599
13600 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13601
13602         * scm/chord-name.scm (alteration->text-accidental-markup): change
13603         - to . 
13604
13605         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13606
13607         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13608
13609         * Documentation/user/invoking.itely (Invoking lilypond): add note
13610         about EPS backend.
13611
13612         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13613         files for inclusion in lilypond-book document.
13614
13615         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13616
13617         * input/tutorial/lbook-texi-test.texi: new file.
13618
13619         * scm/safe-lily.scm (safe-objects): add
13620         {begin,end}-of-line-(in)?visible as safe.
13621  
13622 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13623
13624         * Documentation/user/changing-defaults.itely: fixed example
13625         of (dynamics).
13626
13627 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13628
13629         * lily/main.cc: fix info about -o=FILE.
13630
13631 2005-01-29  Werner Lemberg  <wl@gnu.org>
13632
13633         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13634         construction to assure smooth transition from straight to curved
13635         lines.
13636
13637 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13638
13639         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13640         stencils.
13641
13642         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13643         translate to top of page. Fixes alignment problems of
13644         lilypond-generated EPS files.
13645
13646 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13647
13648         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13649         crescendo-end as well, since Decrescendo maybe ended with Stop
13650         Crescendo.). Fixes: partcombine-diminuendo.ly
13651
13652         * scm/script.scm (default-script-alist): swap portato symbols.
13653
13654         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13655
13656         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13657         ly:outputter-port. New function.
13658
13659         * scm/framework-ps.scm (output-classic-framework): dump a
13660         -systems.texi too
13661         (output-classic-framework): dump multiple systems on an "infinite"
13662         page EPS including fonts. 
13663
13664         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13665         .eps files for both texi and tex formats. Use PNG coming from
13666         lilypond.
13667         
13668 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13669
13670         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13671
13672         * scripts/lilypond-latex.py: fix info about -o=FILE.
13673
13674 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13675
13676         * ly/generate-embedded-cff.ly: write .cff.ps files.
13677
13678         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13679
13680         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13681         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13682
13683 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13684
13685         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13686
13687 2005-01-28  Werner Lemberg  <wl@gnu.org>
13688
13689         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13690         macros.
13691         (draw_bulb): Improved.
13692
13693         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13694         metapost bug.
13695         (draw_pedal_P): Use soft_end_penstroke.
13696         (draw_pedal_d): Use soft_start_penstroke.
13697
13698         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13699         path.
13700         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13701         doesn't change the glyph shape.
13702
13703         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13704         changing the shape) to avoid fontforge warnings.
13705
13706         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13707         soft_end_penstroke and fix glyph shape.
13708
13709 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13710
13711         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13712
13713 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13714
13715         * scm/define-markup-commands.scm (line): filter out empty stencils
13716         from line command.
13717
13718         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13719         amount.
13720
13721 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13722
13723         * Documentation/user/notation.itely: added info about what
13724         \voiceFoo does.  Also rewrote warning about marks at
13725         a line break.
13726
13727         * Documentation/user/changing-defaults.itely: added info
13728         about putting dynamics in parenthesis and brackets.
13729
13730 2005-01-27  Werner Lemberg  <wl@gnu.org>
13731
13732         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13733
13734 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13735
13736         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13737         portato-direction.ly
13738
13739         * lily/beam.cc (consider_auto_knees): add beam height to
13740         threshold. Fixes: knee-multiple-beam.ly
13741
13742         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13743         pedal line spanners. Fixes: instrument-center-pedal.ly
13744
13745         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13746         if encountering barline. Fixes: auto-beam-repeat.ly
13747
13748 2005-01-26  Werner Lemberg  <wl@gnu.org>
13749
13750         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13751         overlapping.
13752
13753         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13754         with inflections for the 1/2 sharp glyph.
13755
13756         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13757         connection between `t' and `r'.
13758         Unify bulb with the rest of `r' to avoid grazing outlines which
13759         confuses the overlap removal algorithm of fontforge.
13760
13761         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13762         inflections.
13763         (draw_cross): Fix shape to have uniform thickness in corners.
13764
13765         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13766         to avoid an uneven number of self-intersections; this confuses
13767         fontforge.
13768         Fix a slight bug in the shape at left bottom (which is visible only
13769         at high magnifications).
13770         `Center' the stem horizontally to avoid overlapping.
13771
13772 2005-01-24  Werner Lemberg  <wl@gnu.org>
13773
13774         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13775         to `asis'.
13776         (fet_begingroup): Save group name in string `feta_group'.
13777         (fet_endgroup): Updated.
13778         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13779
13780         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13781
13782         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13783         in metapost.
13784
13785 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13786
13787         * Documentation/user/notation.itely: really minor editing.
13788
13789 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13790
13791         * Documentation/user/examples.itely: minor editing.
13792
13793         * Documentation/user/changing-defaults.itely: minor editing.
13794
13795         * Documentation/user/notation.itely: clarified info on polyphony
13796         and \addlyrics.
13797
13798 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13799
13800         * scm/output-gnome.scm: 
13801         * scm/output-svg.scm:
13802         * scm/lily-library.scm (font-name-style): Update font name
13803         kludging for fontconfig use.
13804
13805 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13806
13807         * scm/define-markup-commands.scm: Document right-align and
13808         larger markup commands. Remove "TODO" from the topmost comment
13809         "each markup function should have a doc string." More consistent
13810         use of new-lines.
13811
13812 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13813
13814         * Documentation/user/changing-defaults: removed info about
13815         copyright symbol, since it's likely to change soon.
13816         Added info about betweensystemspace.
13817
13818         * Documentation/user/notation.itely: minor fixes.
13819
13820         * Documentation/user/lilypond.tely,
13821         Documentation/user/music-glossary.tely: changed copyright
13822         date to 2005 instead of 2004.
13823
13824         * input/test/volta-chord-names.ly: added old example back.
13825
13826 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13827
13828         * mf/feta-beugel.mf: use design size 20 (not 15).
13829
13830         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13831         change name to aybabtu completely
13832
13833 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13834
13835         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13836         design_size to fontname
13837
13838 2005-01-19  Werner Lemberg  <wl@gnu.org>
13839
13840         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13841         mf/feta-schrift.mf: s/p/pat/ if a path variable.
13842
13843         * mf/feta-autometric.mf (set_char_box): Add code which emits
13844         specials for mf2pt1 if run with metapost.
13845         (to_bp): New macro for mf2pt1.
13846
13847 2005-01-18  Graham Percival  <gperlist@shaw.ca>
13848
13849         * Documentation/user/changing-defaults: added info on
13850         creating a copyright symbol.
13851
13852 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13853
13854         * VERSION: release 2.5.9
13855         
13856 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
13857
13858         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
13859
13860         * Documentation/user/notation.itely: Document
13861         score-override-auto-beam-setting Fix documentation for
13862         revert-auto-beam-setting.
13863
13864 2005-01-18  Werner Lemberg  <wl@gnu.org>
13865
13866         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
13867         (procset): New function to define a procset resource.
13868         (ps-embed-pfa): New function to define a font resource.
13869         (setup): New function to define a `Setup' environment.
13870         (preamble): Use new functions.
13871
13872         * ps/lilypond.defs (init-lilypond-parameters): New function to
13873         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
13874
13875 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13876
13877         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
13878
13879 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
13880
13881         * scm/define-markup-commands.scm: Change number->markletter-string
13882         to take two arguments (vector number). Add number->mark-alphabet-vector
13883         and markalphabet markup command.
13884
13885         * scm/translation-functions.scm: Add format-mark-box-alphabet,
13886         format-mark-alphabet, format-mark-box-barnumbers and
13887         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
13888
13889 2005-01-17  Graham Percival  <gperlist@shaw.ca>
13890
13891         * Documentation/user/examples.itely: add SATB automatic piano
13892         reduction template.
13893
13894         * Documentation/user/notation.itely: added info about changing
13895         partcombine texts.  Also adds examples of alternate lyrics.
13896
13897         * Documentation/user/changing-defaults.itely: added warning
13898         about \RemoveEmptyStaffContext overriding previous changes.
13899
13900 2005-01-17  Werner Lemberg  <wl@gnu.org>
13901
13902         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
13903         feta-alphabet*.
13904
13905 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13906
13907         * python/lilylib.py (make_ps_images): don't do final showpage for
13908         multi-page documents.
13909         
13910         * VERSION (MY_PATCH_LEVEL): release 2.5.8
13911
13912 2005-01-16  Graham Percival  <gperlist@shaw.ca>
13913
13914         * Documentation/user/lilypond.tely: changed order of appendices;
13915         unified index should be last.
13916
13917         * Documentation/user/notation.itely: add example of key signatures
13918         and info about Staff.printKeyCancellation.
13919
13920 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13921
13922         * lily/include/repeated-music.hh (class Repeated_music): change
13923         into "namespace" class.
13924
13925         * lily/event.cc: remove Key_change_event.
13926
13927         * lily/include/transposed-music.hh (class Transposed_music): remove.
13928
13929         * lily/transposed-music.cc: remove
13930
13931         * lily/include/relative-music.hh: remove.
13932
13933         * lily/include/music-sequence.hh (struct Music_sequence): change
13934         into "namespace" class.
13935
13936         * lily/untransposable-music.cc (Module): remove
13937
13938         * lily/include/un-relativable-music.hh (Module): remove
13939
13940         * lily/include/untransposable-music.hh (Module): remove
13941
13942         * lily/include/music-list.hh (Module): remove file
13943
13944         * lily/un-relativable-music.cc: remove file.
13945
13946 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13947
13948         * lily/parser.yy: Compile fix.
13949
13950 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13951
13952         * lily/include/music.hh (class Music): unvirtualize transpose().
13953
13954         * lily/sequential-music.cc: remove file.
13955
13956         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
13957
13958         * lily/slur-scoring.cc (get_best_curve): only switch on
13959         DEBUG_SLUR_SCORING for non NDEBUG builds.
13960
13961         * lily/include/music.hh (class Music): replace Music::start_mom()
13962         by start-callback property
13963
13964         * lily/include/grace-music.hh: remove file. 
13965
13966         * lily/stem.cc (height): robustness fix.
13967
13968         * lily/time-scaled-music.cc: remove file.
13969
13970         * lily/include/music.hh (class Music): include SCM init argument.
13971         (class Music): replace Music::get_length() virtual by
13972         length-callback property everywhere.
13973
13974         * scripts/convert-ly.py (conv): add  # to \property scalar value.
13975
13976         * mf/GNUmakefile: don't install *list.ly
13977
13978 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13979
13980         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
13981
13982 2005-01-12  Werner Lemberg  <wl@gnu.org>
13983
13984         This patch addresses the following problems in the feta sources
13985         files which contribute to the fetaXX fonts.
13986
13987         . Many fixes for rasterization at low resolutions (consistent use of
13988           `vround' and `hround', integer shift values for paths, applying
13989           `eps' for mirrored paths, use of `define_whole_pixels' and
13990           friends, etc.) -- while this probably looks like a waste of time
13991           it has revealed deficiencies in some glyph shapes.  See comment at
13992           the end of feta-params.mf how vertical symmetry is achieved.
13993
13994         . The `---' operator has been replaced everywhere with `--'; this
13995           both improves and considerably reduces the font size after
13996           conversion with mf2pt1.
13997
13998         These change aren't explicitly mentioned below since virtually all
13999         glyphs are affected.
14000
14001         Other notable differences:
14002
14003         . Glyphs from feta-accordion.mf now have charboxes around the
14004           outline.
14005
14006         . Fixed incorrect charbox for `accDot'.
14007
14008         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14009
14010         . Fixed position of the bow in the `upprall' glyph and its siblings.
14011
14012         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14013           dependent on the staff line thickness to avoid touching the middle
14014           staff line at smaller sizes.
14015
14016         . Largely extended output for feta-testXX: Where useful, glyphs
14017         are shown both between and on staff lines.
14018
14019
14020         * mf/feta-params.mf (staff_space_rounded,
14021         stafflinethickness_rounded, linethickness_rounded,
14022         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14023         Update all code which uses them where appropriate.
14024         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14025         New variables used to control rasterization at low resolutions.  Set
14026         to zero if feta code is processed with metapost.
14027
14028         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14029         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14030         (flare_path): Updated.
14031         Make it work with `filldraw' (but only circular pens).
14032         (hfloor, vfloor, hceiling, vceiling): New macros.
14033
14034         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14035         Use `draw' again in mf mode to have good pixel dropout control.
14036         Fix intersection points of horizontal lines with circle.
14037         ("accDot"): Fix parameters for set_char_box.
14038         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14039         control.
14040
14041         * mf/feta-banier.mf: Updated.
14042
14043         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14044         testing.
14045         (undraw_inside_ellipse): Remove `center' argument.  Update all
14046         callers.
14047         (draw_brevis): New macro, called by "Brevis notehead".
14048         (draw_whole_triangle_head): New macro, called by "Whole
14049         trianglehead".
14050         (draw_small_triangle_head): Use `filldraw'.
14051
14052         * mf/feta-eindelijk.mf: Remove useless global group.
14053         Updated.
14054
14055         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14056         `filldraw'.
14057
14058         * mf/feta-pendaal.mf: Updated.
14059
14060         * mf/feta-puntje.mf: Updated.
14061
14062         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14063         less points.
14064         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14065         dropout control.
14066         ("Varied Coda"): Use `draw_block'.
14067         (draw_comma): Fix typo.
14068         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14069         pixel dropout control.
14070
14071         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14072         position of bow.
14073
14074         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14075         sizes.
14076
14077         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14078         testing.
14079         (draw_meta_sharp): Much simplified.
14080         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14081
14082         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14083
14084 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14085
14086         * Documentation/user/notation.itely (Ancient rests): Fix typo
14087         (thanks Anthony)
14088
14089 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14090
14091         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14092
14093         * lily/main.cc (setup_paths): Add cff.
14094
14095         * mf/GNUmakefile (foe): Include actual target %.cff.
14096         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14097
14098 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14099
14100         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14101         suffix for main_input_b_.
14102
14103         * scm/music-functions.scm (toplevel-music-functions):
14104         precompute music lengths for music expressions.  
14105
14106 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14107
14108         * lily/include/input.hh (class Input): new `end_' slot for end of
14109         input. Renamed defined_str0_ to start_.
14110
14111         * lily/input.cc (Input): Add Input::Input (Input const &) and
14112         remove Input::Input (Source_file*, char const *). Use the new
14113         slots.
14114         (set_location): method used by bison to propagate input
14115         locations (YYLLOC_DEFAULT).
14116         (end_line_number, end_column_number, step_forward): new methods
14117         
14118         * lily/input-scheme.cc (ly:input-both-locations): new function,
14119         similar to ly:input-location, but also return the end line and
14120         column.
14121
14122         * lily/include/includable-lexer.hh: 
14123         * lily/includable-lexer.cc: 
14124         * lily/include/lily-lexer.hh (class Lily_lexer): 
14125         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14126         Includable_lexer to Lily_lexer, in order to update lexloc (the
14127         yylloc), a new slot of Lily_lexer.
14128         (here_input, LexerError): simplify by using the lexloc slot (aka
14129         yylloc)
14130
14131         * lily/lexer.ll: #define yylloc to use input locations (it may
14132         be useless here?). Fixed the #embedded_scm rule (step the location
14133         forward in order to skip the sharp sign before parsing the scheme
14134         expression)
14135
14136         * lily/include/lily-parser.hh (class Lily_parser): 
14137         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14138         here_input()
14139         (parser_error): overload for more precise locations of errors.
14140
14141         * lily/parser.yy (YYLTYPE): set location type to Input
14142         (YYLLOC_DEFAULT): use Input::set_location()
14143         (yylex): add the YYLTYPE* location parameter.
14144         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14145         Give an Input parameter to THIS->parser-error() for more accurate
14146         messages.
14147
14148 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14149
14150         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14151
14152         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14153         on BEAMQUANTING for non-NDEBUG builds.
14154
14155         * lily/stem.cc (head_count): performance: avoid String::String()
14156         inside oft called function.
14157
14158 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14159
14160         * Documentation/user/examles.itely: attempted fix for broken
14161         string quartet template.
14162
14163         * Documentation/user/notation.itely: remove unnecessary broken
14164         link.
14165
14166 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14167
14168         * VERSION (PACKAGE_NAME): release 2.5.7
14169
14170 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14171
14172         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14173         mf-nowin for teTeX-3.0.  Backportme.
14174
14175         * scm/output-svg.scm (utf8-string): New function.
14176
14177         * scm/output-gnome.scm (utf8-string): New function.
14178         (otf-name-mangling): Remove.
14179
14180         * lily/pango-font.cc (Pango_font): Use font string iso font
14181         filename for utf8-text.
14182
14183         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14184         name.
14185
14186 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14187
14188         * Documentation/user/notation.itely: add info about
14189         Staff.extraNatural = ##f in Pitches section.  Also
14190         fixed some minor issues in the Vocal music section.
14191
14192 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14193
14194         * scm/output-ps.scm (white-text): comment out Helvetica font,
14195         which is broken for my GS install.
14196
14197         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14198         which provides a tighter bbox.
14199
14200         * scm/define-grobs.scm (all-grob-descriptions): remove all
14201         extra-offsets from definitions.
14202
14203 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14204
14205         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14206         add tuning for 4-string bass and some common 4/5-string banjo
14207         tunings.  New function (four-string-banjo) turns a 5-string tuning
14208         into a 4-string tuning.  New function
14209         (fret-number-tablature-format-banjo) computes correct fret numbers
14210         on 5-string banjos.
14211
14212         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14213         Add beam correction to TabVoice.
14214
14215         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14216         using bold font; makes tabs more readable.
14217
14218 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14219
14220         * lily/font-select.cc (get_font_by_design_size): don't make
14221         Modified_font_metric; this causes trouble, since we don't know the
14222         font magnification from inside Pango_font::text_stencil()
14223
14224         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14225
14226         * Documentation/user/notation.itely (The Lyrics context): comment out
14227         broken {Small ensembles} link.
14228
14229         * scm/framework-svg.scm (output-framework): change calling convention.
14230
14231         * lily/object-key-dumper-scheme.cc: new file.
14232
14233         * lily/object-key-undumper-scheme.cc: new file.
14234
14235         * lily/tweak-registration-scheme.cc: new file.
14236
14237         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14238
14239         * Documentation/user/examples.itely (String quartet): uncomment
14240         broken example.
14241
14242         * lily/font-config.cc: new file.
14243
14244 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14245
14246         * scm/output-svg.scm: 
14247         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14248
14249         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14250
14251 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14252
14253         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14254         Add headers.
14255
14256         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14257
14258 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14259
14260         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14261
14262         * lily/include/main.hh: lose _b hungarian suffixes for global
14263         variables.
14264
14265         * lily/include/lily-guile-macros.hh: new file.
14266
14267         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14268
14269         * lily/general-scheme.cc: new file. 
14270
14271         * lily/font-select.cc (get_font_by_design_size): retrieve
14272         PangoFont for (designsize . "pango-descr") entries.
14273
14274         * lily/lily-parser-scheme.cc: new file.
14275
14276         * lily/output-def-scheme.cc: new file.
14277
14278         * lily/paper-book-scheme.cc: new file.
14279
14280         * lily/duration-scheme.cc (LY_DEFINE): new file.
14281
14282         * lily/pitch-scheme.cc:  new file.
14283
14284         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14285
14286 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14287
14288         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14289
14290 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14291
14292         * Documentation/user/notation.itely: minor editing.
14293
14294         * Documentation/user/changing-defaults: minor editing.
14295
14296         * Documentation/user/examples.itely: add template for
14297         string quartet part extraction; demonstrates tag.
14298
14299 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14300
14301         * Documentation/user/notation.itely: documents
14302         format-mark-box-letters and format-mark-box-numbers
14303
14304         * scm/define-context-properties.scm: change comment.
14305
14306 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14307
14308         * scm/framework-ps.scm (output-classic-framework): new function:
14309         dump systems as separate .eps files (without fonts) and write a
14310         single collecting .tex file.
14311
14312 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14313
14314         * Documentation/user/notation.itely (Setting simple songs):
14315         Correct several errors in the equivalent formulation of
14316         \addlyrics. 
14317         (The Lyrics context): Corrected link to the SATB example.
14318
14319 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14320
14321         * scm/lily.scm (completize-formats): new function
14322         (postprocess-output): new function
14323
14324         * lily/paper-book.cc (classic_output): change calling
14325         convention. Give basename as first argument. 
14326         remove Paper_book::post_processing().
14327
14328         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14329
14330 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14331
14332         * lily/paper-outputter.cc (LY_DEFINE): new function
14333         ly:outputter-close.
14334
14335         * lily/main.cc: change --format,-f to --backend,-b
14336
14337         * lily/include/main.hh: rename format to backend.
14338
14339         * scm/translation-functions.scm (format-mark-box-numbers): add.
14340         patch by Erlend Aasland
14341
14342 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14343
14344         * lily/pango-font.cc (text_stencil): dump string as
14345         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14346
14347 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14348
14349         * configure.in (gui_b): Remove handy developer-only
14350         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14351         CVS source installations (but break other non-default but correct
14352         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14353
14354         * SConstruct: 
14355         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14356         compatibility (backportme).
14357
14358         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14359
14360 2005-01-03  Werner Lemberg  <wl@gnu.org>
14361
14362         Prepare glyph shapes for mf2pt1 conversion.
14363
14364         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14365         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14366         `penstroke'.
14367         (accDot): Use `drawdot'.
14368         (accBayanbase): Replace `draw' with `draw_gridline'.
14369         (print_penpos): Moved to feta-macros.mf.
14370         (accOldEE): Replace `filldraw' with `penstroke'.
14371         Replace `draw' with `penstroke' and `drawdot'.
14372
14373         * mf/feta-banier.mf: Code clean-up.
14374         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14375         `fill'.
14376
14377         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14378
14379         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14380         paremeter to control drawing of labels.  Update all callers.
14381
14382         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14383         (new_bulb): Return a bulb as a single path.  To do that, it now
14384         takes some more parameters.  Updated all callers.
14385         (draw_gclef): Major clean-up.  `draw' has been replaced with
14386         `penstroke', unnecessary outlines have been removed.
14387         Remove (unused) gnome-canvas code.
14388
14389         * mf/feta-macros.mf (print_penpos): New macro (from
14390         feta-accordion.mf).
14391         Other minor fixes.
14392
14393         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14394         ("Pedal dot"): Use `drawdot'.
14395         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14396         all callers.
14397         Fix shape at top.
14398         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14399         all callers.
14400         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14401         all callers.
14402         Revert drawing direction.
14403
14404         * mf/feta-schrift.mf (draw_fermata): Use single path.
14405         (draw_short_fermata): Replace `filldraw' with `fill'.
14406         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14407         `draw_rounded_block' with a single path.
14408         ("Thumb"): Draw full circle instead of mirroring segments.
14409         (draw_accent): New macro.
14410         ("> accent", "espr"): Use it.
14411         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14412         ("open (unstopped)"): Draw full circle instead of mirroring
14413         segments.
14414         (draw_vee): Removed.
14415         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14416         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14417         path.
14418         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14419         partial pieces drawn with `fill' -- these do still overlap with the
14420         stem of the `t' but just once, not multiple times so that fontforge
14421         can handle it gracefully.
14422         Change other parts of the glyph so that fontforge's overlapping
14423         algorithm reliably works.
14424         (draw_heel): Replace `draw' with `fill'.
14425         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14426         ("Flageolet"): Replace `draw' with `penstroke'.
14427         ("Segno"): Replace `filldraw' with `penstroke'.
14428         Replace `draw' with `drawdot'.
14429         ("Coda"): Replace `fill' with `penstroke', using a single path.
14430         ("Varied Coda"): Use less overlapping paths.
14431         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14432         single path.
14433
14434         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14435         group to better control the `labels' command.
14436         Rename argument to `offset' and use it actually.  Update all
14437         callers.
14438         Replace `filldraw' with `fill'.
14439         ("mordent", "prallmordent", "upmordent", "downmordent",
14440         "lineprall"): Replace `draw' with `draw_gridline'.
14441         ("upprall", "downprall"): Replace `draw' with `fill'.
14442
14443         * mf/feta-timesig.mf: Formatting.
14444
14445         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14446         to...
14447         ("Flat"): Here.
14448         (draw_paren): Move code to draw labels to...
14449         ("Right Parenthesis"): Here.
14450
14451 2005-01-02  Graham Percival <gperlist@shaw.ca>
14452
14453         * Documentation/user/notation.itely: add example of \setTextDecresc
14454         and \setTextDim.
14455
14456 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14457
14458         * scm/define-markup-commands.scm :  fix glyph-strings of
14459         accidentals and \note-by-number
14460
14461 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14462
14463         * VERSION: 2.5.6 released.
14464         
14465         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14466
14467         * input/regression/new-markup-scheme.ly: oops. font-family=music
14468         -> font-encoding fetaMusic.  
14469
14470         * lily/main.cc: put default to PS.
14471
14472         * lily/tfm.cc: idem.
14473
14474         * lily/afm.cc: idem.
14475
14476         * lily/include/modified-font-metric.hh (struct
14477         Modified_font_metric): remove coding_scheme() method.
14478
14479         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14480
14481         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14482
14483         * input/les-nereides.ly: convert to utf8
14484
14485         * lily/modified-font-metric.cc (text_dimension): idem.
14486
14487         * lily/parser.yy (TODO): idem.
14488
14489         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14490
14491         * lily/lexer.ll: remove encoding
14492
14493         * scm/framework-ps.scm (output-variables): separately scale the
14494         page to mm 
14495
14496         * lily/pango-font.cc (Pango_font): fix scaling.
14497
14498         * lily/font-metric.cc (design_size): design_size returns a
14499         dimension now as well.
14500
14501 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14502
14503         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14504         brace generation. 
14505
14506         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14507
14508 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14509
14510         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14511         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14512
14513 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14514
14515         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14516         in first run as well.
14517
14518         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14519         dimension less points (ie. 12 = 12 point)
14520
14521         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14522
14523         * lily/all-font-metrics.cc (find_pango_font): set description_
14524
14525         * lily/pango-font.cc (text_stencil): export size as well.
14526         (text_stencil): fix scaling and extents box.
14527
14528 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14529
14530         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14531
14532         * Documentation/user/invoking.itely (Invoking lilypond): document
14533         texstr
14534
14535         * scripts/convert-ly.py (conv): add ancient rules.
14536
14537         * scm/clef.scm (c0-pitch-alist): replace - with .
14538
14539         * scripts/lilypond-book.py (process_snippets): add texstr support.
14540
14541         * scm/framework-texstr.scm (header): change extension to .textmetrics
14542
14543         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14544         -f tex.
14545
14546         * lily/text-metrics.cc: new file.
14547         (try_load_text_metrics): new function
14548
14549         * lily/include/text-metrics.hh: new file.
14550
14551 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14552
14553         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14554         ly_scheme_function to ly_lily_module_constant.
14555
14556         * lily/modified-font-metric.cc (text_dimension): try
14557         lookup_tex_text_dimension() first.
14558
14559         * lily/tfm.cc: new function ly:load-text-dimensions
14560
14561 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14562
14563         * scm/output-texstr.scm (text): use \lilygetmetrics
14564
14565         * scm/framework-texstr.scm (header): dump in new format.
14566
14567         * tex/lilypond-tex-metrics: new file.
14568         
14569 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14570
14571         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14572         mapping.
14573         (index_to_charcode): New method.
14574
14575         * scm/output-ps.scm (glyph-string): 
14576         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14577
14578 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14579
14580         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14581         implement fully, need FONT to get to charcode.
14582
14583         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14584
14585         * scm: Cleanups.
14586
14587         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14588         {Tunable context properties},
14589         {All layout objects},
14590         {Music definitions}.
14591
14592 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14593
14594         * VERSION: release 2.5.5
14595         
14596         * lily/main.cc: use TeX as default output format.
14597
14598         * flower/file-path.cc (find): try to open directly as well, so we
14599         find absolute path files. 
14600
14601         * lily/pango-select.cc: new file.
14602
14603         * scm/framework-ps.scm: remove all encoding code. 
14604         load pfb/pfa for PangoFont too.
14605         
14606         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14607
14608 2004-12-22  Werner Lemberg  <wl@gnu.org>
14609
14610         Prepare glyph shapes for mf2pt1 conversion.
14611
14612         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14613
14614         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14615         (define_triangle_shape): Use it to replace `draw' with `fill' and
14616         `unfill'.  Update all callers.
14617         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14618         (draw_cross): Ditto.
14619         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14620         Use penrazor for better conversion with mf2pt1.
14621         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14622         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14623         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14624         draw_la_head, draw_ti_head): Replace `filldraw' with
14625         `fill'.  Update all callers.
14626
14627 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14628
14629         * lily/paper-book.cc (output): revert: only allow a single output
14630         format.
14631
14632         * lily/include/pango-font.hh: new file.
14633
14634         * lily/pango-font.cc: new file.
14635
14636         * lily/font-metric.cc (text_stencil): new routine
14637
14638         * lily/all-font-metrics.cc (find_pango_font): new routine.
14639
14640         * lily/include/font-metric.hh (struct Font_metric): add
14641         text_stencil()
14642
14643         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14644
14645 2004-12-22  Werner Lemberg  <wl@gnu.org>
14646
14647         Prepare glyph shapes for mf2pt1 conversion.
14648
14649         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14650
14651         * mf/feta-toevallig.mf: Formatting.
14652         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14653         ("Natural"): Fix paths to allow better postprocessing.
14654         (draw_meta_flat): Use `z3l' as additional point in path to get
14655         better conversion with mf2pt1.
14656         Other minor cleanups.
14657         ("3/4 Flat"): Add auxiliary points and modify path to replace
14658         `draw' with `fill'.
14659         ("Double Sharp"): Mirror path segments instead of picture elements
14660         to get a single outline.
14661         Modify path to replace `filldraw' with `fill'.
14662
14663 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14664
14665         * input/test/unfold-all-repeats.ly: added file back.
14666
14667         * Documentation/user/notation.itely,
14668         Documentation/user/programming-interface.itely
14669         Documentation/user/changing-defaults.itely: fixed misc broken
14670         links to input/test/ files.
14671
14672 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14673
14674         * tex/texinfo.tex: Update.  We should not be distributing this,
14675         but since we do, use latest version.
14676
14677         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14678         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14679         macros for feta glyphs.
14680
14681 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14682
14683         * Documentation/user/changing-defaults.itely: fix index for set.
14684
14685         * Documentation/user/converters.itely: added convert-ly bugs list
14686         from CVS.
14687
14688 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14689
14690         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14691         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14692         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14693         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14694
14695         * mf/GNUmakefile (pfa_warning): Use less broken check.
14696
14697         * python/lilylib.py (setup_environment): Remove cruft from
14698         GS_FONTPATH.
14699
14700         * configure.in: Bump mftrace requirement to 1.1.1.
14701
14702 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14703
14704         * scm/output-svg.scm (beam): Use polygon.
14705
14706         * scm/lily-library.scm: Bugfix.
14707
14708         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14709
14710         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14711
14712 2004-12-19  Werner Lemberg  <wl@gnu.org>
14713
14714         Prepare glyph shapes for mf2pt1 conversion.
14715
14716         * mf/feta-eindelijk: Some formatting.
14717         (multi_rest_x, multi_beam_height): Removed.  Unused.
14718         ("Quarter rest"): Use `intersectiontimes' to create a single
14719         outline.
14720         (rest_crook): Removed.  Unused.
14721         (draw_rest_bulb): Return path (without filling).  Update callers.
14722         Simplified.
14723         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14724         "128th rest"): Simplify `pat'.
14725         Create single outline.
14726
14727 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14728
14729         * mf/GNUmakefile (ALL_GEN_FILES):
14730         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14731
14732         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14733         function.
14734
14735 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14736
14737         * scm/output-texstr.scm (placebox): add routine
14738
14739         * VERSION (PACKAGE_NAME): release 2.5.4
14740
14741         * scm/framework-texstr.scm (output-framework): new file.  
14742
14743         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14744         processing.
14745
14746         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14747
14748         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14749         rule.
14750
14751         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14752
14753         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14754
14755         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14756
14757 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14758
14759         * scm/framework-svg.scm (dump-page): Implement landscape.
14760
14761 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14762
14763         * lily/main.cc (setup_paths): Add svg to search path.
14764
14765         * scm/output-svg.scm:
14766         * scm/framework-svg.scm: Add pageSet.  Update.
14767         (dump-fonts): New function.
14768         (output-framework): Use it.
14769
14770         * mf/GNUmakefile: 
14771         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14772
14773 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14774
14775         * tex/lilyponddefs.tex: comment out new ifpdf code.
14776
14777 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14778
14779         * GNUmakefile.in: 
14780         * SConstruct (symlink): Replace afm by otf.
14781
14782         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14783         ly:pango-add-afm-decoder.
14784
14785         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14786
14787 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14788
14789         * scm/output-ps.scm (new-text): don't access t glyph for getting
14790         space dimension.
14791
14792         * ly/init.ly: warn about \version
14793
14794         * lily/lexer.ll: set version-seen?
14795
14796 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14797
14798         * scm/output-svg.scm (string->entities): Update.
14799
14800 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14801
14802         * lily/main.cc (setup_paths): replace afm by otf for path. 
14803
14804         * lily/pangofc-afm-decoder.cc: remove.
14805
14806         * lily/include/pangofc-afm-decoder.hh: remove.
14807
14808         * scm/framework-scm.scm (output-framework): new file.
14809
14810         * mf/GNUmakefile: remove SAUTER_FONTS.
14811         remove SVG/sodipodi hacks.
14812
14813         * scm/lily-library.scm (stderr): move stderr.
14814
14815         * mf/GNUmakefile: remove AFM support.
14816
14817         * buildscripts/mf-to-table.py (base): remove AFM support.
14818
14819         * lily/open-type-font.cc (design_size): use design_size
14820
14821 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14822
14823         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14824
14825 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14826
14827         * mf/GNUmakefile: Generate combined aybabtu info.
14828         * mf/aybabtu.pe.in (i): Load it.
14829
14830         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14831         are not symbols.
14832
14833         * lily/include/open-type-font.hh (count): New method.
14834
14835         * mf/aybabtu.pe.in: Typo.
14836
14837         * Documentation/user/out/lilypond-internals.nexi (Scheme
14838         functions): Typo.
14839
14840         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14841
14842 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14843
14844         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
14845         subfonts.
14846
14847         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
14848
14849         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
14850         (tex-font-command-raw): new function.
14851
14852         * lily/include/virtual-font-metric.hh (Module): remove file
14853
14854         * lily/virtual-font-metric.cc (Module): remove file.
14855         
14856
14857         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
14858         (get_indexed_char): read bbox from lily table if present.
14859
14860 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14861
14862         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
14863         aybabtu.subfonts
14864
14865         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
14866         global glyphname. Enables more than 64 glyphs in the OTF.
14867
14868 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
14869
14870         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
14871         braces.
14872
14873         * lily/open-type-font.cc (design_size): Use 12 as default for
14874         design size.
14875
14876         * mf/aybabtu.pe.in: New file.  Merge all our braces.
14877
14878         * mf/GNUmakefile: Generate aybabtu.
14879
14880         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
14881
14882 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14883
14884         * scm/lily-library.scm (char->unicode-index): Remove.
14885
14886         * scm/output-gnome.scm (text): Bugfix for plain string input.
14887         Updates.
14888
14889         * scm/output-svg.scm (svg-font): Add weight to font selection.
14890
14891 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
14892
14893         * Documentation/topdocs/INSTALL.texi (Top): Point to
14894         buildscripts/out/clean-fonts instead of
14895         buildscripts/clean-fonts.sh. 
14896
14897 2004-12-13  Graham Percival  <gperlist@shaw.ca>
14898
14899         * input/regression/figured-bass.ly: attempt to clarify text.
14900
14901         * Documentation/user/notation.tely: add cindex for tag, attempt to
14902         add figured bass example.
14903
14904         * Documentation/user/changing-defaults: basic editing.
14905
14906 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14907
14908         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
14909
14910         * lily/open-type-font.cc (LY_DEFINE): new function
14911         ly:font-sub-fonts
14912
14913         * lily/include/font-metric.hh (struct Font_metric): new method
14914         sub_fonts()
14915
14916         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
14917         . with - in add.stem.
14918         
14919 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14920
14921         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
14922         and fetaDynamic.
14923
14924         * lily/rest.cc (glyph_name): Change - to . .
14925
14926         * scm/output-gnome.scm (text): Hello world, again.
14927
14928         * scm/output-svg.scm (named-glyph): New function.  Hello world!
14929
14930         * lily/modified-font-metric.cc (index_to_charcode): New method.
14931
14932         * lily/include/font-metric.hh (index_to_charcode): New function.
14933
14934         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
14935         new function.
14936         (ly:font-glyph-to-index): Remove.
14937
14938 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14939
14940         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
14941
14942         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
14943
14944         * lily/open-type-font.cc (load_scheme_table): new function
14945
14946         * lily/dots.cc (print): replace - 
14947
14948         * lily/open-type-font.cc (attachment_point): new function.
14949         (load_table): read LILC table
14950
14951         * buildscripts/gen-bigcheese-scripts.py (Module): new
14952         file. Generate FF scripts.
14953
14954         * mf/feta-din10.mf: idem.
14955
14956         * mf/feta-nummer10.mf: remove mf files.
14957
14958         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
14959
14960 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14961
14962         * lily/lily-guile.cc: Use scm_from_locale_stringn.
14963
14964         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
14965         compatibility.
14966
14967 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14968
14969         * lily/open-type-font.cc (get_indexed_char): scale metrics by
14970         design-size and units_per_EM.
14971
14972         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
14973
14974 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14975
14976         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
14977         does not crash fontforge.
14978
14979         * scm/lily-library.scm (char->unicode-index): Hack to map onto
14980         PUA.
14981
14982 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14983
14984         * scm/framework-ps.scm (ps-embed-cff): new function.
14985
14986         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
14987
14988 2004-12-12  Werner Lemberg  <wl@gnu.org>
14989
14990         * mf/bigcheese.pe.in: Add PUA mapping.
14991         Don't create Type 42 but bare CFF font.
14992
14993 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14994
14995         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
14996         within canvas boundaries.
14997
14998         * mf/merge.pe.in: Set font names, version, license GPL.
14999
15000         * make/substitute.make: Add FONTFORGE.
15001
15002         * config.make.in (FONTFORGE): Add.
15003
15004         * configure.in (gui_b): Use PATH_PROG for fontforge.
15005
15006 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15007
15008         * scm/define-markup-commands.scm: add baseline-skip to info
15009         about \column.
15010
15011 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15012
15013         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15014
15015         * scm/output-gnome.scm (named-glyph): Use it.
15016
15017         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15018
15019         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15020         (upper_string, lower_string, reverse_string): Remove.
15021
15022         * configure.in (fontforge): Reinstate version check.
15023
15024         * ly/engraver-init.ly: Fix clef glyph names.
15025
15026         * lily/time-signature.cc (special_time_signature): Fix fraction
15027         glyph names.
15028
15029 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15030
15031         * mf/merge.pe: new file.
15032
15033         * lily/freetype.cc: new file.
15034
15035         * lily/include/open-type-font.hh (class Open_type_font): new file.
15036
15037         * lily/include/freetype.hh: new file.
15038
15039         * lily/open-type-font.cc: new file.
15040
15041         * lily/all-font-metrics.cc (find_otf): new function.
15042
15043 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15044
15045         * lily/time-signature.cc (special_time_signature): Fix.
15046
15047         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15048         GTK2 before checking for pango.  Fixes -fgnome.
15049
15050         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15051         Scheme name.
15052
15053         * scm/define-markup-commands.scm:
15054         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15055
15056         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15057
15058         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15059         date versions.  Fixes configure.
15060         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15061         argument.
15062
15063 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15064
15065         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15066         names in .enc
15067
15068         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15069
15070 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15071
15072         * Documentation/user/changing-defaults.itely: add info about
15073         make-dynamic-script
15074
15075         * Documentation/user/notation.itely: add link in dynamics to
15076         section about make-dynamic-script.
15077
15078 2004-12-09  Christian hitz  <chhitz@gmx.net>
15079
15080         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15081
15082 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15083
15084         * buildscripts/mf-to-table.py (parse_logfile): use . for
15085         concatting name and group.
15086         (parse_logfile): use M for Minus (negative.)
15087
15088         * lily/include/type-swallow-translator.hh
15089         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15090
15091         * lily/*.cc: cosmetics around = sign.
15092
15093         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15094         lyric spacing on the penultimate column.
15095
15096 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15097
15098         * configure.in:
15099         * lily/accidental-placement.cc:
15100         * lily/bar-line.cc:
15101         * lily/beam-concave.cc:
15102         * lily/beam-quanting.cc:
15103         * lily/beam.cc:
15104         * lily/bezier-bow.cc:
15105         * lily/bezier.cc:
15106         * lily/break-align-interface.cc:
15107         * lily/custos.cc:
15108         * lily/dimension-cache.cc:
15109         * lily/dot-column.cc:
15110         * lily/font-metric.cc:
15111         * lily/font-select.cc:
15112         * lily/gourlay-breaking.cc:
15113         * lily/grob-property.cc:
15114         * lily/grob.cc:
15115         * lily/lily-guile.cc:
15116         * lily/line-spanner.cc:
15117         * lily/lookup.cc:
15118         * lily/lyric-extender.cc:
15119         * lily/lyric-hyphen.cc:
15120         * lily/mensural-ligature.cc:
15121         * lily/midi-def.cc:
15122         * lily/misc.cc:
15123         * lily/note-collision.cc:
15124         * lily/note-column.cc:
15125         * lily/note-head.cc:
15126         * lily/paper-outputter.cc:
15127         * lily/percent-repeat-item.cc:
15128         * lily/rest-collision.cc:
15129         * lily/side-position-interface.cc:
15130         * lily/simple-spacer.cc:
15131         * lily/slur-configuration.cc:
15132         * lily/slur-scoring.cc:
15133         * lily/slur.cc:
15134         * lily/spaceable-grob.cc:
15135         * lily/spacing-spanner.cc:
15136         * lily/spanner.cc:
15137         * lily/staff-symbol-referencer.cc:
15138         * lily/stem.cc:
15139         * lily/stencil.cc:
15140         * lily/system-start-delimiter.cc:
15141         * lily/system.cc:
15142         * lily/text-item.cc:
15143         * lily/tie.cc:
15144         * lily/tuplet-bracket.cc:
15145         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15146         <cmath> beacause isinf/isnan is undefined in <cmath>
15147
15148 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15149
15150         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15151
15152 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15153
15154         * VERSION: release 2.5.3
15155         
15156 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15157
15158         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15159
15160 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15161
15162         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15163
15164         * lily/note-head.cc (internal_print): always try the "s" head if
15165         u/d not found.
15166
15167         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15168
15169 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15170
15171         * mf/parmesan-heads.mf (overdone_heads): typos.
15172
15173 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15174
15175         * lily/parser.yy (markup): in markups, { .. } without command
15176         before are also flattened, ie \line must be explicitely used.
15177
15178         * Documentation/user/changing-defaults.itely:
15179         * Documentation/user/notation.itely: 
15180         * input/wilhelmus.ly: 
15181         * input/regression/instrument-name-markup.ly: 
15182         * input/regression/markup-score.ly: 
15183         * input/regression/new-markup-scheme.ly: 
15184         * input/regression/new-markup-syntax.ly: 
15185         * input/test/coriolan-margin.ly: use \line in markups where
15186         appropriate
15187         
15188 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15189
15190         * scm/new-markup.scm (map-markup-command-list): helper function
15191         used in parser.yy to map markup commands on a markup list.
15192
15193         * lily/parser.yy: get rid off < > in markups by treating { } as
15194         real lists.
15195
15196         * lily/lexer.ll: remove < > from markup lexer mode.
15197
15198         * scripts/convert-ly.py (conv): add rule for converting 
15199         \markup < > to \markup { }
15200
15201         * ly/titling-init.ly: 
15202         * input/test/coriolan-margin.ly: 
15203         * input/regression/new-markup-syntax.ly: 
15204         * input/regression/new-markup-scheme.ly: 
15205         * input/regression/multi-measure-rest-text.ly: 
15206         * input/regression/markup-stack.ly: 
15207         * input/regression/markup-score.ly: 
15208         * input/regression/instrument-name-markup.ly: 
15209         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15210         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15211         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15212         * input/wilhelmus.ly: 
15213         * Documentation/user/notation.itely: 
15214         * Documentation/user/music-glossary.tely: 
15215         * Documentation/user/changing-defaults.itely: change < > to { } in
15216         markups
15217
15218 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15219
15220         * lily/accidental-placement.cc (position_accidentals): shortcut if
15221         no accidentals to place.
15222
15223 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15224
15225         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15226         typo s/ly:dimension ?/ly:dimension?/
15227
15228         * input/regression/lily-in-scheme.ly: 
15229         * input/regression/music-function.ly: 
15230         * ly/spanners-init.ly (assertBeamSlope): 
15231         * scm/music-functions.scm (def-grace-function): add the paper
15232         argument to music function definitions.
15233
15234 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15235
15236         * lily/moment.cc (LY_DEFINE):
15237         ly:moment-main-{denominator,numberator}, new function.
15238
15239         * lily/score-engraver.cc (typeset_all): assign to column on basis
15240         of axis-group-parent-X setting.
15241
15242         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15243         add_element() on basis of axis-group-parent-Y setting.
15244
15245         * lily/grob.cc: add axis-group-parent-{XY} properties.
15246
15247         * input/regression/spacing-stick-out.ly: new file.
15248
15249         * lily/simple-spacer.cc (add_columns): use binary search for
15250         setting column rods. Changes O(n^2) to O(n log(n)) for
15251         constructing spacing problem from columns.
15252         (add_columns): read allow-outside-line to make sure no texts stick
15253         out.
15254         (solve): Simple_spacer::is_active() only determines
15255         satisfies_constraints_ for non-ragged typesetting.
15256
15257         * lily/simultaneous-music.cc (to_relative_octave): only set
15258         old_relative_used if return pitch actually changed.
15259
15260         * scm/define-context-properties.scm
15261         (all-user-translation-properties): change to match implementation.
15262
15263         * python/lilylib.py: Replace re.match by re.search and adds "-c
15264         showpage" to the gs command line (Johannes Schindelin)
15265
15266         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15267         before processing. Prevents crash when inf is in the extent.
15268
15269         * scm/define-markup-commands.scm (note-by-number): add "s" to
15270         "noteheads-" glyphname.
15271  
15272         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15273         music function as well.
15274         
15275 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15276
15277         * VERSION: release 2.5.2
15278
15279         * Documentation/user/changing-defaults.itely (Creating titles):
15280         add breakbefore variable.
15281
15282         * lily/paper-book.cc (set_system_penalty): new function. Set
15283         penalty_ based on breakBefore setting
15284
15285         * lily/context-specced-music-iterator.cc (construct_children):
15286         interpret special context id $uniqueContextId 
15287
15288         * lily/context.cc (create_unique_context): new method. Move
15289         creation of unique (\new) contexts into interpreting phase. This
15290         makes
15291
15292           foo= \new Staff ..
15293           << \foo \foo >>
15294
15295         produce 2 staves.
15296         
15297
15298         * scm/define-music-properties.scm (all-music-properties): add
15299         quoted-voice-direction
15300
15301         * ly/music-functions-init.ly: killCues function.
15302
15303         * scm/music-functions.scm (cue-substitute): move creation of voice
15304         contexts further to the back. 
15305
15306 2004-11-25  Werner Lemberg  <wl@gnu.org>
15307
15308         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15309         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15310
15311 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15312
15313         * buildscripts/guile-gnome.sh: Fixed typo.
15314
15315 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15316
15317         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15318
15319         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15320
15321         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15322         to regular engraver. 
15323
15324 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15325
15326         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15327
15328 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15329
15330         * scm/define-markup-commands.scm (fill-line): Typo.
15331
15332         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15333         and newer.
15334
15335 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15336
15337         * ly/dynamic-scripts-init.ly: Fixed typo.
15338
15339 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15340
15341         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15342         note-head, to have different attachment points for up and down.
15343
15344         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15345
15346         * mf/feta-generic.mf (else): remove solfa.
15347
15348         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15349
15350         * scm/define-context-properties.scm
15351         (all-user-translation-properties): add shapeNoteStyles property.
15352
15353         * lily/shape-note-heads-engraver.cc (process_music): new file.
15354
15355         * lily/event.cc (transpose): call Event::transpose() for
15356         transposing the tonic.
15357
15358 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15359
15360         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15361         Unicode/OpenType and AFM.
15362
15363         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15364
15365 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15366
15367         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15368
15369         * lily/context.cc (Context): unprotect key from ctor.
15370
15371         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15372         is '()
15373         (stack-stencils): idem.
15374
15375         * Documentation/user/changing-defaults.itely (Creating titles):
15376         document new title layout options.
15377
15378         * lily/parser.yy (lilypond_header_body): copy previous
15379         $globalheader if present.
15380
15381         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15382         ly:module-copy
15383         
15384         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15385
15386         * scm/titling.scm: remove old titling functions
15387
15388         * lily/stencil.cc (translate): remove absolute dimension.
15389
15390         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15391         via markup.
15392
15393         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15394         field from user-supplied markup
15395
15396         * scm/define-markup-commands.scm (on-the-fly): new markup
15397         command. Enter SCM markup procedure directly in Scheme.
15398         (fromproperty): new markup command. Read markup from props argument.
15399
15400         * scm/titling.scm (marked-up-title): create title via
15401         user-specified markup. 
15402
15403         * scm/define-markup-commands.scm (column): remove empty stencils
15404         from column.
15405
15406         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15407         not have side-effect of creating variable stub.
15408
15409         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15410
15411 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15412
15413         * scm/encoding.scm (coding-alist): 
15414         * scm/font.scm (add-ec-fonts):
15415         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15416         Extended-TeX-Font-Encoding---Latin.
15417
15418         * lily/side-position-interface.cc (general_side_position): Add
15419         actual offset to error message (avoid constant error messages).
15420
15421         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15422         block.
15423
15424         * lily/font-select.cc (select_encoded_font)
15425         (get_font_by_mag_step, get_font_by_design_size): 
15426         * lily/modified-font-metric.cc (Modified_font_metric): 
15427         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15428
15429         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15430         (read-encoding-file): Bugfix: do not require space after bracket.
15431
15432         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15433         these do not exist.
15434
15435 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15436
15437         * Documentation/user/notation.itely: added info about typesetting
15438         boxed bar numbers.
15439
15440 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15441
15442         * flower/interval.cc (T_to_string): gcc4 fixes.
15443
15444         * scm/define-markup-commands.scm (fill-line): use
15445         stack-stencils. This fixes problems with putting already centered
15446         stencils in a line.
15447
15448         * VERSION: release 2.5.1
15449
15450         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15451
15452 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15453
15454         * input/example-[1-3].ly: simplify.
15455
15456         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15457
15458         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15459         show glyphs.
15460
15461         * scm/encoding.scm (decode-byte-string): new function.
15462
15463         * scripts/convert-ly.py (conv): add warning about
15464         set-global-staff-size.
15465
15466         * Doxyfile: add. 
15467
15468         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15469         (conv): warn for TextSpanner split.
15470         (conv): warn for textheight.
15471
15472 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15473
15474         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15475         building the documentation, info with images are installed.
15476         (final-install): Fix description.  Mention sourcing of login
15477         scripts (instead of running).
15478
15479 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15480
15481         * Debian lmodern support.  Note that LilyPond will issue warnings
15482         
15483             no such encoding: "FontSpecific"
15484
15485           The font selection mechanism wants to get the encoding from the
15486           font itself, but the idea of lmodern is that it is usable with
15487           different encodings, ie, Lily should get the encoding from the
15488           font tree, rather than the font itself.  This would require some
15489           more work.
15490         
15491         * configure.in: Test for and accept lmodern if EC fonts not found.
15492
15493         * scm/framework-tex.scm (font-load-command): TeX font name
15494         mangling for latin1 encoded cork-lm fonts.
15495         (convert-to-ps): Load lm.map if available.
15496
15497         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15498         available.
15499
15500         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15501
15502         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15503         available.
15504
15505         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15506         path for absolute file name, that is silly.
15507
15508         * lily/score-engraver.cc (initialize): 
15509
15510         * Documentation/user/GNUmakefile (local-install-info): Invoke
15511         install-info --remove first.
15512
15513         * #include cleanup (Andreas Scherer).
15514
15515 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15516
15517         * input/test/script-abbreviations.ly: fix typos.
15518
15519 2004-11-17  Werner Lemberg  <wl@gnu.org>
15520
15521         * python/lilylib.py (options_help_str): Support pretty-printing of
15522         newlines in fourth element of option description.
15523
15524         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15525         feature.
15526         Sort options.
15527
15528         * Documentation/user/lilypond-book.itely: Finish update.
15529
15530 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15531
15532         * Documentation/user/macros.itexi: Add comment about \command.
15533
15534         * Documentation/user/lilypond.tely:
15535         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15536         and lilypond-book nodes, so that `info lilypond' visits the manual
15537         at top level, and `info lilypond-book' visits the lilypond-book
15538         section.
15539
15540         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15541         and packager messages.
15542
15543         * lily/pangofc-afm-decoder.cc: Update test.
15544
15545 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15546
15547         * scm/lily-library.scm (char->unicode-index): New function.
15548
15549         * scm/output-gnome.scm: 
15550         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15551
15552         * Proper naming of file name throughout; s/filename/file[-_]name/.
15553
15554         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15555
15556         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15557
15558 2004-11-16  Werner Lemberg  <wl@gnu.org>
15559
15560         * scripts/lilypond-book.py: The Lord has commanded me to use only
15561         tabs for indentation.  Your humble servant obeys.
15562
15563 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15564
15565         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15566         including font, if LilyPond-feta font is only feta font in path.
15567
15568         * scm/output-gnome.scm (text): Revert to file name of font if font
15569         has no name.  Fixes ec font selection.
15570         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15571
15572         * scm/framework-svg.scm:
15573         * scm/output-svg.scm: New file.  TODO: figure out how to
15574         do character by index in font.
15575
15576         * scm/output-sodipodi.scm: Remove.
15577
15578         * scm/output-ps.scm (stem): Remove.
15579
15580 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15581
15582         * scm/output-gnome.scm (beam): New function.
15583         (slur): Round corners.
15584         (round-filled-box): Round corners.
15585
15586 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15587
15588         * scm/output-gnome.scm (beam): add function.
15589         (draw-line): new routine.
15590         (dashed-line): stub; call draw-line
15591         (polygon): new routine.
15592
15593 2004-11-15  Werner Lemberg  <wl@gnu.org>
15594
15595         * Documentation/user/lilypond-book.itely: Revise section on
15596         lilypond-book options.
15597         Other minor fixes.
15598
15599         * scripts/lilypond-book.py: Change indentation to 4.
15600         Minor formatting.
15601
15602 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15603
15604         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15605         grobs that have tweaks specced.
15606         
15607 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15608
15609         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15610
15611 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15612
15613         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15614         actual char #, not 0 based index.
15615
15616         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15617
15618         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15619         Warning: do make -C mf clean.
15620
15621         * lily/context-property.cc: Compile fix.
15622
15623         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15624         Grok ec-fonts, braces and dynamics.
15625
15626         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15627
15628 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15629
15630         * lily/include/tweak-registration.hh: new file.
15631
15632         * lily/tweak-registration.cc: new file.
15633
15634         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15635         saving tweaks.
15636
15637         * scm/output-gnome.scm (text): comment dribble.
15638
15639 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15640
15641         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15642
15643         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15644         path-def before using.  Fixes muchtomany slurs in wrong places
15645         bug.
15646
15647 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15648
15649         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15650
15651         * lily/include/object-key-undumper.hh (Module): new file.
15652
15653         * lily/object-key-undumper.cc (Module): New file. Deserialize
15654         keys. SCM bindings
15655
15656         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15657         Provide SCM bindings.
15658
15659         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15660         new file. Serialize object keys.
15661         
15662         * lily/object-key.cc (dump): new function.
15663         (as_scheme): new virtual function
15664         (undump): new function
15665         (undumpers): new table.
15666
15667         * lily/include/global-context.hh (Context): take \score key upon init.
15668
15669         * lily/object-key-dumper.cc (serialize_key): new file.
15670
15671         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15672
15673         * lily/lily-lexer.cc: remove \quote.
15674
15675         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15676
15677         * lily/context.cc (Context): take key argument in ctor.
15678         (create_context): new function
15679
15680         * lily/grob.cc (Grob): take key argument in ctor.  
15681
15682         * lily/lilypond-key.cc (do_compare): new file.
15683
15684         * lily/object-key.cc (Object_key): new file.
15685
15686         * lily/include/object-key.hh (class Object_key): new file.
15687
15688         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15689
15690 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15691
15692         * Documentation/user/lilypond-book.itely: add small warning about
15693         noindent default in lilypond-book.
15694
15695         * Documentation/user/converters.itely: add examples for convert-ly.
15696
15697         * Documentation/user/examples.itely: change version string in templates
15698         to 2.4.0.
15699
15700 2004-11-12  Karl Hammar  <karl@aspodata.se>
15701
15702         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15703         cmdline, use xargs instead (backportme)
15704
15705 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15706         
15707         * Documentation/user/: Numerous fixes in the user manual.
15708
15709 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15710
15711         * lily/parser.yy (re_rhythmed_music): search music expression for
15712         context-id, surround by \new Voice if not found. Fixes:
15713         addlyrics-second-staff.ly
15714
15715         * VERSION: 2.5.0 released.
15716         
15717 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15718
15719         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15720
15721         * Documentation/user/GNUmakefile: Separate rules for split and
15722         unsplit html documents.  Remove perl massaging.  (backportme)
15723
15724 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15725
15726         * Documentation/user/lilypond-book.itely: add short warning about
15727         \lilypond{} in LaTeX docs.
15728
15729 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15730
15731         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15732         found.  (backportme)
15733
15734         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15735         version requirement.  (backportme)
15736
15737         * configure.in: Be explicit about old versions of
15738         ec-fonts-mtraced.  (backportme)
15739
15740         * lily/context-selector.cc (set_tweaks): New function.
15741         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15742         web with -DTWEAK.
15743
15744         * Documentation/user/introduction.itely (Automated engraving):
15745         Remove fragment option.  Fixes web.
15746
15747         * lily/context-property.cc (make_item_from_properties):
15748         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15749         #ifdef.
15750
15751         * scm/define-context-properties.scm
15752         (all-internal-translation-properties): Add tweakRank and tweakCount.
15753
15754         * lily/grob.cc: 
15755         * scm/define-grob-properties.scm (all-internal-grob-properties):
15756         Add tweak-rank and tweak-count.
15757
15758 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15759
15760         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15761         New function.
15762         (text): Use them.
15763
15764         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15765         animated/opaque grob dragging tweaks.
15766
15767         * buildscripts/guile-gnome.sh: Update.
15768
15769 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15770
15771         * scm/define-grobs.scm (all-grob-descriptions): Added
15772         line-interface to the LigatureBracket object.
15773
15774 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15775
15776         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15777         dragging tweaks.
15778
15779         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15780
15781         * lily/context-selector.cc (store_context): New function.
15782
15783         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15784         (store_grob): New function.
15785         (identify_grob): Add Moment parameter.
15786
15787         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15788         exists.
15789
15790         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15791
15792 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15793
15794         * scm/framework-gnome.scm (item-event): Print grob id.
15795         (save-tweaks): New function.
15796         (tweak): New funtion.
15797         (item-event): Use it, bound to arrow keys.
15798
15799         * lily/context-property.cc (make_item_from_properties): Register grob.
15800         * lily/context.cc (add_context): Register context.
15801
15802         * lily/include/context-selector.hh:
15803         * lily/include/grob-selector.hh:
15804         * lily/context-selector.cc:
15805         * lily/grob-selector.cc: New file.
15806
15807 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15808
15809         * lily/slur.cc: add 'positions to interface
15810
15811         * lily/main.cc: reinstate PS as standard output format. 
15812
15813         * scm/framework-tex.scm (output-preview-framework): print systems
15814         up to first non title system.
15815
15816         * lily/grace-engraver.cc (start_translation_timestep): split
15817         scm_cadddr
15818         
15819 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15820
15821         * lily/quote-iterator.cc (Module): remove old quote-iterator
15822
15823         * scm/define-music-types.scm (music-descriptions): move
15824         NewQuoteMusic over QuoteMusic
15825
15826         * Documentation/user/notation.itely (Formatting cue notes): use
15827         \cueDuring.
15828
15829         * lily/new-quote-iterator.cc (quote_ok): new function.
15830
15831         * input/regression/quote-cue-during.ly: new file.
15832
15833         * input/regression/quote-grace.ly: new file.
15834
15835         * scm/define-context-properties.scm (Module): change definition of
15836         graceSettings
15837
15838         * lily/context-property.cc (Module): rename from
15839         translator-property.cc
15840
15841         * lily/context.cc (context_name_symbol): new function
15842
15843         * lily/grace-engraver.cc: new file. Set properties for grobs based
15844         on the grace-ness of now_moment().
15845
15846         * scm/music-functions.scm (add-grace-property): use list
15847         iso. vector for graceSettings
15848         remove set-{start,stop}-grace-properties. 
15849
15850         * lily/new-quote-iterator.cc (construct_children): set
15851         quote_outlet_ if no quoted-context-{id,type} specified.
15852
15853         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
15854
15855         * lily/parser.yy (command_element): remove \quote.
15856
15857         * ly/music-functions-init.ly (location): add quoteDuring music
15858         function. 
15859
15860         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
15861         optional semicolon. (backportme)
15862
15863 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15864
15865         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
15866         need to link to GUILE et al.
15867
15868 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15869
15870         * scm/define-music-properties.scm (all-music-properties): add
15871         quoted-context-type, quoted-context-id.
15872
15873         * scm/lily.scm (type-check-list): new function.
15874         
15875         * scm/lily-library.scm: new file. Generic library routines.
15876
15877         * lily/parser.yy (Generic_prefix_music): move typechecking out of
15878         parser.
15879
15880         * ly/music-functions-init.ly: add quoteDuring function.
15881
15882         * lily/include/music-iterator.hh (class Music_iterator): rename
15883         set_translator -> set_context
15884
15885         * lily/parser.yy (Generic_prefix_music_scm): add
15886         MUSIC_FUNCTION_SCM_SCM_MUSIC
15887
15888         * scm/lily.scm (sanitize-command-option): new function. (backportme)
15889
15890         * scm/framework-tex.scm (header): sanitize TeX paper size.
15891         (backportme)
15892
15893 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15894
15895         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
15896
15897         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
15898
15899         * scm/framework-tex.scm (font-load-command): Use T1 if no
15900         font-encoding set.  (backportme)
15901
15902         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
15903         exists before converting.  (backportme)
15904
15905         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
15906         exists before converting.  (backportme)
15907         (convert-to-ps): Remove .ps file if it exists before
15908         converting.  (backportme)
15909
15910         * lily/lexer.ll: Remove extra progress newline, use present tense.
15911
15912         * scm/paper.scm (paper-alist): public.
15913         * scm/framework-tex.scm (convert-to-ps):
15914         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
15915         command line.
15916
15917 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15918
15919         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
15920
15921         * lily/recording-group-engraver.cc (derived_mark): mark
15922         now_events_. (backportme)
15923
15924 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15925
15926         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
15927
15928         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
15929         invoking latex. (backportme.)
15930
15931         * lily/stem.cc (off_callback): center stems for all rest stems.
15932
15933 2004-11-05  Werner Lemberg  <wl@gnu.org>
15934
15935         * Documentation/user/lilypond.tely: Add more guidelines for writing
15936         lilypond texinfo documents.
15937
15938 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
15939
15940         * Documentation/index.html.in: remove <hr>.
15941
15942         * THANKS: change 2.3 to 2.4.
15943
15944 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
15945
15946         * scm/output-gnome.scm: More fontconfig comment.
15947
15948 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
15949
15950         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
15951         <package> directory in $(builddir)/share according with
15952         PACKAGE_NAME defined in the VERSION file.
15953
15954 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15955
15956         * lily/beam.cc (rest_collision_callback): use local beam
15957         multiplicity.
15958
15959         * input/regression/stem-stemlet.ly: new file.
15960
15961         * lily/stem.cc (add_head): store rests as well.
15962
15963         * scm/define-grob-properties.scm (all-user-grob-properties): add
15964         stemlet-length
15965
15966         * lily/stem.cc: store rests as well.
15967         
15968         * input/regression/new-slur.ly: mention forcing.
15969
15970 2004-11-04  Werner Lemberg  <wl@gnu.org>
15971
15972         * Documentation/user/*: A new round of layout fixes and document
15973         structure cleanup.
15974
15975 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
15976
15977         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
15978
15979 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
15980
15981         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
15982
15983 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
15984
15985         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
15986
15987         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
15988
15989         * lily/main.cc (main): Invoke identify.
15990
15991         * scm/lily.scm (postscript->pdf): Remove progress newline.
15992         Write progress to stderr.
15993
15994         * lily/paper-book.cc (output): Remove progress newline.
15995
15996         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
15997         gettext on user messages, and remove whitespace.
15998
15999         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16000
16001         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16002         argv[0] (Thomas Scharkowski).
16003
16004         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16005         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16006         for ec-fonts-mtraced.
16007
16008         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16009         --srcdir build (Bertalan).
16010
16011         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16012         headers and library too (Laura Conrad).
16013
16014         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16015         package for guile too (Laura Conrad).
16016
16017         * lily/main.cc (usage): Typo.
16018
16019 2004-11-02  Werner Lemberg  <wl@gnu.org>
16020
16021         * Documentation/user/notation.ly: More fixes to improve appearance.
16022
16023         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16024         better output for multicolumn tables.
16025
16026 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16027
16028         * lily/main.cc (dir_info): Fixed typo in the printouts.
16029
16030 2004-11-01  Werner Lemberg  <wl@gnu.org>
16031
16032         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16033         of output.
16034         Set `per_line' to 2; replace hard-coded value with it.
16035
16036         * Documentation/user/*: Many fixes to improve appearance of
16037         printed manual.
16038
16039 2004-11-01  Werner Lemberg  <wl@gnu.org>
16040
16041         * Documentation/user/changing-defaults.itely,
16042         Documentation/user/notation.ly,
16043         Documentation/user/programming-interface.itely: Use @/.
16044         Fix formatting of some lilypond snippets and tables.
16045
16046         * scripts/lilypond-book.py (compose_ly): Provide useful default
16047         for LINEWIDTH in `override'.
16048
16049 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16050
16051         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16052
16053 2004-10-31  Werner Lemberg  <wl@gnu.org>
16054
16055         Resetting @exampleindent to `5' gives ugly results with texinfo's
16056         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16057         (if not quoting) to change @exampleindent only locally.
16058
16059         * scripts/lilypond-book.py (NOQUOTE): New variable.
16060         (output) [LATEX]: Remove AFTER and BEFORE.
16061         [TEXINFO]: Remove AFTER and BEFORE.
16062         Fix QUOTE and VERBATIM pattern.
16063         Add NOQUOTE pattern.
16064         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16065         and BEFORE.
16066         [output_texinfo]: Use NOQUOTE.
16067
16068 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16069
16070         * Documentation/user/changing-defaults.itely: clarify paper
16071         size commands with correct info.
16072
16073         * Documentation/user/lilypond-book.itely: add more docs for
16074         filename extensions.
16075
16076 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16077
16078         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16079         (PATCH_LEVEL): start 2.5.0.
16080
16081 #Local variables:
16082 #coding: utf-8
16083 #End:
16084