]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* lily/grob-property.cc: add scm debugging hooks into
[lilypond.git] / ChangeLog
1 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
2         * lily/grob-property.cc: add scm debugging hooks into
3         property modification
4
5         * lily/context-property.cc:
6         * lily/engraver.cc:
7         rename make_foo_from_properties to internal_make_foo and
8         move it from context-property.cc to a member function of
9         Engraver.
10
11         * lily/include/lily-guile-macros.hh:
12         overload ly_symbol2scm macro so that there is no more need
13         to use internal_foo
14
15         * lily/volta-repeat-iterator.cc:
16         * lily/tweak-engraver.cc:
17         * lily/tuplet-bracket.cc:
18         * lily/span-bar-engraver.cc:
19         * lily/script-engraver.cc:
20         * lily/prob-scheme.cc:
21         * lily/pointer-group-interface.cc:
22         * lily/parser.yy:
23         * lily/grob-scheme.cc:
24         * lily/grob-property.cc:
25         * lily/context.cc:
26         * lily/context-property.cc:
27         * lily/break-substitution.cc:
28         * lily/break-align-engraver.cc:
29         * lily/axis-group-interface.cc:
30         * lily/align-interface.cc:
31         remove calls to internal_FOO
32
33         * lily/system-start-delimiter-engraver.cc:
34         * lily/parenthesis-engraver.cc:
35         * lily/accidental-engraver.cc:
36         remove calls to make_foo_from_properties
37
38 2006-09-23  Graham Percival  <gpermus@gmail.com>
39
40         * Documentation/user/programming-iterfaces.itely: fix
41         def-music-function -> define-music... leftover.
42
43 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
44
45         * lily/page-spacing.cc (min_page_count): by running the loop
46         backwards, we can calculate ragged_last properly.
47
48 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
49
50         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
51         printfirst-page-number -> print-first-page-number
52
53         * python/convertrules.py: corresponding rule.
54
55         * Documentation/user/page.itely (Page formatting): Document the
56         default values of all page layout parameters. 
57
58 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
59
60         * lily/lexer.ll: remove limitation on music function arity. New
61         mode extratoken, which inserts extra EXPECT_* tokens after
62         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
63
64         * lily/parser.yy: Change grammar for music function accordingly.
65
66         * lily/include/lily-parser.hh: New method get_state, new member
67         hidden_state. Works around a problem when parser fetches
68         MUSIC_FUNCTION token but not the following EXPECT_* token.
69
70         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
71         remove try_music
72
73         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
74         references to Music; use ASSIGN_EVENT_ONCE everywhere
75
76         * lily/grob-info.cc: junk *music_cause
77
78         * lily/music.cc: copy eventified articulations to stream event
79
80         * lily/part-combine-iterator.cc: Cleanup using enums
81
82         * lily/translator-group.cc: Junk OldMusicEvent, and associated
83         methods
84
85         * lily/include/engraver.hh: Junk music.hh include
86
87         * lily/stream-event.cc: Changed constructors
88
89 2006-09-21  Graham Percival  <gpermus@gmail.com>
90
91         * Documentation/user/tweaks.itely (Fitting music onto fewer
92         pages): change settings to avoid warning messages.
93
94 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
95
96         * Documentation/user/tweaks.itely (Fitting music onto fewer
97         pages): Add between-system-space setting. 
98
99 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
100
101         * lily/accidental-placement.cc (calc_positioning_done): don't
102         trigger Y-extent calculation too early. Use pure_height instead.
103
104         * lily/scale.cc (LY_DEFINE): new file. 
105
106 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
107
108         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
109         that happen at the start of a score: having a zero-length
110         chunk was messing up min_system_count calculations.
111
112         * lily/source-file.cc (get_line): lower_bound, not
113         binary_search. Fixes problem where point-and-click would
114         always point to the first line.
115
116 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
117
118         * lily/accidental-placement.cc (calc_positioning_done): also put
119         stems into accidental support. 
120
121         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
122         event_ detected.
123
124         * scm/script.scm (default-script-alist): avoid-slur and
125         slur-padding for portato script.
126
127         * lily/stem-tremolo.cc (translated_stencil): new function. 
128         (height): use new function. Fixes tremolos on whole notes.
129
130         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
131         slur found.
132
133 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
134
135         * scripts/abc2ly.py (try_parse_comment): idem.
136
137         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
138         bar_string iso. string.find()
139
140         * lily/*.cc: idem.
141
142         * lily/slur.cc (get_curve): always use scm_is_pair() looping
143         scheme lists.  
144
145 2006-09-18  Graham Percival  <gpermus@gmail.com>
146
147         * Documentation/user/basic-notation.itely: add bug
148         warning about ties and octavation/clef.
149
150 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
151
152         * VERSION (PACKAGE_NAME): release 2.9.18
153
154 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
155
156         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
157         figure out midi file names right here.
158         
159 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
160
161         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
162
163         * scm/backend-library.scm: option naming:  gs-font-load*s*
164
165         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
166         include-eps-fonts
167
168 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
169
170         * scm/define-music-types.scm (music-descriptions): remove
171         BreakEvent and fix {Page,Line}{Break,Turn}Event so
172         Music::to_event doesn't complain.
173
174         * lily/accidental-placement.cc (ape_compare):
175         * lily/semi-tie.cc (compare): 
176         * lily/note-column.cc (shift_compare): replace by XXX_less
177
178         * lily/tie-formatting-problem.cc (set_chord_outline): 
179         * lily/tie-column.cc (calc_positioning_done): 
180         * lily/system.cc (post_processing)
181         (get_paper_system): 
182         * lily/stem.cc (note_head_positions)
183         (calc_positioning_done): 
184         * lily/spanner.cc (do_break_processing)
185         (find_broken_piece): 
186         * lily/span-bar.cc (print): 
187         * lily/semi-tie-column.cc (calc_positioning_done): 
188         * lily/rest-collision.cc (calc_positioning_done): 
189         * lily/program-option.cc (get_help_string): 
190         * lily/note-collision.cc (get_clash_groups):
191         * lily/new-fingering-engraver.cc (position_scripts):
192         * lily/keyword.cc (Keyword_table):
193         * lily/hara-kiri-group-spanner.cc (request_suicide):
194         * lily/grob-pq-engraver.cc (stop_translation_timestep):
195         * lily/accidental-placement.cc (calc_positioning_done):
196         (stagger_apes):
197         * lily/beam.cc (get_beam_segments):
198         * lily/grob-array.cc (remove_duplicates):
199         use new vector_sort
200         
201         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
202         ragged-last-bottom = ##f (test the new page breaker)
203
204         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
205
206         * scm/define-context-properties.scm
207         (all-internal-translation-properties): remove properties that
208         were used to communicate page-turn stuff to the paper-column
209         engraver.
210
211         * lily/lily-guile.cc (robust_scm2string): new function
212
213         * lily/paper-column-engraver.cc: Clean up page turn stuff
214
215         * lily/page-turn-engraver.cc: Re-write the page turn logic here
216         instead of cluttering up paper-column-engraver.cc
217
218 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
219
220         * scm/layout-page-dump.scm (scm): export utility function names,
221         to allow user writing cutsom dumping functions.
222
223         * scm/layout-page-layout.scm: export utility function names to
224         enable custom page breaking function writing. Tabify.
225         (line-next-space): use ?-suffix only for predicates
226         (page-maximum-space-to-fill): new function. Return the space
227         between first and bottom system of a page, to give to
228         space-systems.
229         (space-systems): use a space-to-fill argument (for instance as
230         computed by page-maximum-space-to-fill) instead of computing
231         internaly this space with the page height. That way, the caller
232         can adjust the space to use.
233         (make-page-from-systems, walk-paths): compute space to fill before
234         calling space-systems.
235
236 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
237
238         * scm/script.scm (default-script-alist): set paddings for every
239         type here, increase for portato mark.
240
241         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
242         -dinclude-eps-fonts
243
244 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
245
246         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
247         use spanner::set-spacing-rods
248
249         * lily/note-column.cc: reformat.
250
251         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
252         step positioning for note/rest combinations.
253
254         * input/regression/rest-note-collision.ly: new file.
255
256         * scm/define-grobs.scm (all-grob-descriptions): add
257         springs-and-rods
258
259         * flower/include/std-vector.hh: switch off again.
260
261         * VERSION (PATCH_LEVEL): bump to 2.9.18
262
263         * flower/include/std-string.hh: idem.
264
265         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
266
267 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
268
269         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
270         PianoStaff. 
271
272 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
273
274         * Documentation/user/page.itely: update page breaking documentation
275
276 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
277
278         * lily/note-collision.cc (calc_positioning_done): only access
279         first head if available.
280
281         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
282
283         * scm/framework-ps.scm (output-preview-framework): use new name.
284
285         * lily/program-option.cc (internal_set_option): use new names.
286
287         * Documentation/user/SConscript (lilypond_book_flags): update -d
288         variable names.
289
290         * Documentation/user/lilypond-book.itely (Inserting LilyPond
291         output into other programs): new variable names.
292
293         * scm/lily.scm (define-scheme-options): uniformize var names.
294
295         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
296         tuplets_ is non-empty before popping.
297
298 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
299
300         * lily/spanner.cc (find_broken_piece): 
301         * lily/spacing-spanner.cc (get_columns): 
302         * lily/source-file.cc (get_line): 
303         * lily/simple-spacer.cc (get_column_description): 
304         * lily/keyword.cc (lookup): 
305         use the new binary search.
306
307         * flower/include/std-vector.hh: replace binary_search with
308         a more STL-like version
309
310 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
311
312         * lily/tie-performer.cc: remove unused last_event_ property.
313         (class Tie_performer): add now_tied_heads_ property for
314         partially-tied heads.
315         (acknowledge_audio_element): when adding an Audio_note, put the
316         note in now_tied_heads_ if the audio note is partially tied.
317         (stop_translation_timestep): always include entries in
318         now_tied_heads_ in heads_to_tie_.
319
320         * lily/drum-note-performer.cc (process_music): look for tie-events
321         in the articulations; pass to Audio_note constructor.
322
323         * lily/note-performer.cc (process_music): look for tie-events in
324         the articulations; pass to Audio_note constructor.
325
326         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
327         constructor.
328
329         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
330         include initializer in constructor.
331
332 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
333
334         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
335         unless they are breakable. This fixes discrepancies between the forces
336         calculated here and the forces calculated in get_line_configuration.
337
338         * lily/grob.cc (pure_relative_y_coordinate): fix some
339         mis-estimation that was happening with piano staves.
340
341         * lily/constrained-breaking.cc (resize): don't choke if we get a
342         measure that won't fit on a line.
343         (combine_demerits): don't consider uniformity when ragged
344
345         * lily/page-spacing.cc (solve): why the f* were there two of these?
346         (calc_subproblem): properly handle the case where a system is taller
347         than the page.
348
349         * lily/system.cc (get_paper_system): ensure that all the permissions
350         and penalties are passed to the paper systems.
351
352         * lily/page-breaking.cc (create_system_list): support system-count.
353
354         * scm/define-grobs.scm (pure-print-callbacks): add
355         ly:script-interface::print
356
357         * lily/page-spacing.cc (min_page_count): fix calculation of min
358         pages if we are ragged and there are non-zero springs.
359
360         * scm/layout-page-layout.scm: if the pure-height estimates are under
361         the real height, allow space-systems to ignore padding if it is
362         needed in order to fit the systems on one page
363
364         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
365         ragged properties
366         (solve): fix performance problem. Make sure we always get at least
367         one solution
368
369         * lily/page-breaking.cc (make_pages): include write-page-breaks
370         and page-stencil
371
372         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
373
374         * scm/define-grobs.scm: add the new slur-callback
375         fix pure-relevant to not exclude grobs whose extent is already
376         calculated
377
378         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
379         page breaker
380
381         * lily/slur.cc (pure_height): new callback to estimate the height
382         of a slur
383
384 2006-09-02  Graham Percival  <gpermus@gmail.com>
385
386         * Documentation/user/invoking.itely: small update on
387         MacOS X notes; thanks Trevor!
388
389 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
390
391         * VERSION (MY_PATCH_LEVEL): release 2.9.17
392
393         * lily/lexer.ll: accept EOF in all states.
394
395         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
396
397         * lily/source-file.cc (Source_file): always 0-terminate character
398         array, to prevent Flex from barfing.
399
400         * lily/global-context.cc (get_output): robustness: don't crash if
401         no Score context found.
402
403         * lily/include/book.hh (class Book): idem.
404
405         * lily/include/context-def.hh (struct Context_def): idem.
406
407         * lily/include/score.hh (class Score): don't derive from Input.
408
409         * lily/book.cc (Book): add a copy ctor. 
410
411         * buildscripts/output-distance.py (FileLink.calc_distance): count
412         orphans in distance too.
413
414         * python/midi.c (midi_parse_track): robustness: don't read past
415         end of string.
416
417         * ly/performer-init.ly: add Control_track_performer, move
418         Tempo_performer and Time_signature_performer to Score.        
419
420         * lily/score-performer.cc (acknowledge_audio_elements): override
421         from base class: add to audio-columns
422
423         * lily/control-track-performer.cc (add_text): new file: generate
424         the control track.
425
426         * lily/performance.cc: move output_header_track to
427         Control_track_performer ()
428
429         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
430
431         * lily/include/midi-item.hh (class Midi_channel_item): insert
432         class into hierarchy, for items that can have a channel setting. Dehungarify.
433
434         * lily/include/performer.hh (class Performer): remove
435         play_element();  move functionality into announce/acknowledge.
436
437         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
438
439         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
440         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
441
442 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
443
444         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
445         ambituses.
446
447         * lily/all-font-metrics.cc: remove TFM support.
448
449         * lily/include/tfm.hh: remove TFM support, TFM reader.
450
451         * lily/include/binary-source-file.hh: remove Binary_source_file.
452
453 2006-08-27  Graham Percival  <gpermus@gmail.com>
454
455         * Documentation/topdocs/NEWS.itely: add @c marker for
456         stuff I've processed.
457
458         * Documentation/user/ various: info from NEWS.
459
460 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
461
462         * lily/paper-column-engraver.cc (finalize): Oops, this change
463         should have gone in on 2006-08-23
464
465 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
466
467         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
468         quotes to quote arguments. Fixes Windows problem.
469
470         * python/lilylib.py (progress): idem
471
472 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
473
474         * scripts/musicxml2ly.py: fix for importing
475         minor key signatures from MusicXML.  (Phillip Kirlin)
476
477 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
478
479         * python/musicxml.py: 
480         (Attributes.get_key_signature): now correctly retrieves mode from 
481         MusicXML. 
482
483 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
484
485         * lily/parser.yy (output_def_body): take ownership of identifier
486         back to C++.
487
488         * Documentation/user/advanced-notation.itely (Metronome marks):
489         update use of \tempo in \midi.
490
491         * VERSION: release 2.9.16
492         
493 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
494
495         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
496         web partially)
497
498 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
499
500         * input/regression/tie-chord-partial.ly: clarify example.
501
502         * scm/define-music-properties.scm (all-music-properties): remove
503         untied.
504
505         * ly/music-functions-init.ly: remove \untied.
506
507         * lily/tie-engraver.cc (struct Head_event_tuple): store both
508         stream events and music events.
509         (stop_translation_timestep): search acknowledged heads for
510         tie-event.
511
512         * input/regression/tie-chord-partial.ly: new file.
513
514         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
515         for \char markup command.
516
517         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
518
519         * scm/define-music-types.scm (music-descriptions): consistency:
520         Use solo-{one,two}-event iso. solo-[12]-event.
521
522         * lily/part-combine-engraver.cc (process_music):
523         Use solo-{one,two}-event iso. solo-[12]-event.
524
525         * ly/declarations-init.ly (partCombineListener): add Timing as
526         alias
527
528         * flower/std-string.cc (string_copy): use copy ()
529
530         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
531
532 2006-08-24  Graham Percival  <gpermus@gmail.com>
533
534         * Documentation/user/changing-defaults.itely, global.itely,
535         lilypond-book.itely, page.itely: minor changes from mailist.
536
537 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
538
539         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
540         snippet-map
541
542         * scm/define-context-properties.scm
543         (translator-property-description): robustness: detect type errors
544         in property definitions.
545
546         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
547         after getting it from SCM. 
548
549         * lily/smobs.cc (protect_smob): switch off fancy smob protection
550         for now. 
551
552         * lily/include/performer.hh (class Performer): strip get_tempo()
553         method.
554
555         * lily/midi-def.cc: strip file.
556
557         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
558
559         * lily/include/context-def.hh (struct Context_def): use
560         VIRTUAL_COPY_CONSTRUCTOR().
561
562         * lily/source-file.cc: smobification.
563
564         * lily/include/source-file.hh (class Source_file): smobify
565         Source_file. Trim redundant members.
566
567         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
568         clones after creation. This plugs a huge memory leak.
569
570         * python/convertrules.py (FatalConversionError.sub_tempo):
571         complete rule for \midi{ \tempo }
572
573         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
574
575         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
576
577 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
578
579         * input/regression/optimal-page-breaking-hstretch.ly: test for
580         ragged-last-bottom also
581
582         * lily/paper-column-engraver.cc (finalize): make the end of a score
583         breakable by default. This is to balance out a change in behaviour
584         of the page-turn-breaker which no longer makes the end of a score
585         breakable.
586
587         * lily/paper-book.cc (pages): set the systems_ once the pages are
588         broken
589
590         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
591         Page_breaking interface.
592
593         * lily/page-breaking.cc (class Page_breaking): make the interface
594         more consistent and provide abstractions for dealing with
595         Line_divisions.
596
597         * lily/optimal-page-breaking.cc (solve): use a more straightforward
598         algorithm. Use the new interface to Page_breaking.
599
600         * lily/page-spacing.cc: better support for ragged-bottom and
601         ragged-last-bottom
602
603 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
604
605         * python/convertrules.py (conv): warning on \tempo{}
606
607         * ly/performer-init.ly: set tempoWholesPerMinute.
608
609         * ly/midi-init.ly: remove \midi
610
611         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
612         MIDI tempo.
613
614         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
615         tempoUnitDuration for determining what to print.
616
617         * lily/lyric-extender.cc: typo.
618
619         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
620
621         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
622         function.
623
624         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
625
626         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
627         eps-pad-boxes is set.
628
629         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
630
631         * THANKS: update sponsors.
632
633         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
634
635         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
636
637         * input/regression/tie-chord-untied.ly: new file.
638
639         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
640
641         * scm/define-music-properties.scm (all-music-properties): add
642         'untied property.
643
644         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
645         than .ly.txt.
646         (headertext_nopics): sanitize no-examples text.
647
648         * scm/page.scm (make-page-stencil): don't rely on extents of
649         page-stencil. This fixes spurious space around .EPS files produced
650         with the EPS backend.
651
652 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
653
654         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
655
656         * lily/hara-kiri-engraver.cc (process_music): remember
657         keepAliveInterfaces after processing \set
658
659         * lily/lyric-extender.cc (print): support left/right-padding for
660         extenders.
661
662         * scm/documentation-generate.scm (string-append): revert lilypond/
663         path, doc why.
664
665 2006-08-20  Graham Percival  <gpermus@gmail.com>
666
667         * Documentation/user/lilypond.tely: clarification to
668         license presentation (not to actual license).
669
670         * Documentation/user/basic-notation.itely,
671         instrument-notation.itely: minor changes.
672
673         * input/ {regression, test}/+.ly: clarification to
674         text (you can click on examples).  Thanks, Mats!
675
676         * input/manual/bar-lines.ly: adds ||: repeats.
677
678 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
679
680         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
681
682         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
683
684         * Documentation/user/lilypond.tely: strip lilypond/ from info
685         links, rename to category LilyPond
686
687         * lily/pango-font.cc (description_string): new function.
688
689         * VERSION: release 2.9.15
690
691         * lily/spacing-engraver.cc (stop_translation_timestep): use
692         Dscho's fix for spacing spanner. 
693
694         * scm/define-music-types.scm (music-descriptions): use
695         apply-output-event for ApplyOutputEvent
696
697         * lily/output-property-engraver.cc (listen_apply_output): rename
698         from listen_layout_instruction.
699
700         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
701         function protect()
702
703 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
704
705         * scm/lily.scm (lilypond-all): option read-file-list: substitute
706         commandline args with contains, split by \n.
707
708         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
709         write snippet-names file, call with -dread-file-list. Fixes
710         command limitations on 64-bit systems.
711
712         * input/regression/stencil-color-rotation.ly: new file.
713
714         * lily/include/translator.hh (struct Acknowledge_information):
715         revert: don't use Protected_scm in global objects, as GUILE can't
716         handle gc_unprotect from automated destructors on MacOS X.
717  
718         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
719         color, not the original stencil. Fixes combinations of
720         color/transparency/rotation. 
721
722         * scripts/lilypond-book.py (main): add --formats=eps for
723         texinfo/latex.
724
725         * lily/spacing-engraver.cc (stop_translation_timestep): don't
726         crash if spacing_ is nonexistent.
727
728 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
729
730         * scripts/lilypond-book.py (output): Remove obsolete(!?)
731         \catcode`\@=12 in the LaTeX output.
732
733 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
734
735         * scm/define-music-types.scm (music-descriptions):
736         use sustain-event iso. sustain-pedal-event.
737
738 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
739
740         * scripts/convert-ly.py: honour the -n command-line switch
741
742 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
743
744         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
745         break specification.
746
747 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
748
749         * Documentation/user: convert-ly the user manual
750
751 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
752
753         * stepmake/aclocal.m4: version check patch (thanks MWD)
754
755         * ly/music-functions-init.ly: robustness. Don't crash if
756         currentBarNumber is not a number.
757
758         * VERSION (PATCH_LEVEL): bump.
759
760 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
761
762         * stepmake/aclocal.m4: better version check; handle fooX.Y
763         binaries too.
764
765         * ly/performer-init.ly: instrument name fixup.
766
767         * input/manual/chord-names-jazz.ly (banterProperties):
768         instrumentName update
769
770         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
771
772         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
773
774         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
775         function. Use hash tables to check membership.
776
777         * lily/general-scheme.cc (LY_DEFINE): new function.
778
779         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
780
781         * lily/include/translator.hh (struct Acknowledge_information): add
782         Protected_scm
783
784         * ly/music-functions-init.ly: change name to BreathingEvent
785
786         * input/regression/*.ly: apply it.
787
788         * python/convertrules.py (conv): better instrumentName conversion
789         rule.
790
791         * scm/define-music-types.scm (music-descriptions): add
792         line-break-event to LineBreakEvent music
793
794         * lily/music.cc (to_event): don't crash if music type not set.
795
796         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
797         spacing not set.
798
799         * lily/spacing-engraver.cc (stop_translation_timestep): set
800         spacing for proportional notation too.
801
802         * scm/translation-functions.scm (format-bass-figure): inspect
803         stream-event.
804
805         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
806
807 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
808
809         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
810
811         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
812
813         * scm/layout-page-layout.scm (make-page-from-systems): new function
814         (optimal-page-breaks): use the new page-breaking calling convention
815
816         * scm/define-context-properties.scm (all-user-translation-properties):
817         add revokePageTurns
818
819         * lily/paper-column-engraver.cc (stop_translation_timestep): add
820         revokePageTurns  functionality. If there is a special barline within
821         the breakable region, break there instead of at the end of the region.
822
823         * lily/paper-book.cc (pages): use the new page-breaking calling
824         convention
825
826 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
827
828         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
829
830         * scripts/lilypond-book.py: insert \sourcefileline command in
831         output, so lilypond error messages refer to the spot in the
832         original .lytex / .itely sourcefile.
833
834 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
835
836         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
837         space to next column for distance to fixed col.
838
839         * VERSION (PACKAGE_NAME): release 2.9.14
840
841         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
842         if no accidental.
843
844         * lily/accidental-engraver.cc (process_acknowledged): don't create
845         accidental for trill span event. This fixes spurious accidentals
846         on trills.
847
848 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
849
850         * scm/define-grob-properties.scm (all-user-grob-properties):
851         Clarify documentation of side-axis and direction. Thanks to Paul
852         for the inspiration.
853
854         * lily/bar-line.cc: Add documentation for "||:" also in the
855         interface documentation.
856
857 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
858
859         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
860
861         * lily/paper-column.cc (set_system): new function.
862
863         * lily/spacing-engraver.cc (stop_translation_timestep): store
864         SpacingSpanner refs in Paper_column.
865
866         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
867         compute loose clique spacing using GraceSpacing/SpacingSpanner.
868
869 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
870
871         * lily/beam-engraver.cc (listen_beam): add method for
872         Grace_beam_engraver too.
873
874 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
875
876         * python/convertrules.py: Fix indentation bug that broke
877         conversion of files older than 1.3.117.
878         Fix escape error in the description for 2.9.6.
879
880 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
881
882         * lily/*-engraver.cc: convert all try_music functions to listen_*
883         functions.
884
885         * lily/piano-pedal-engraver.cc: some additional cleanups: use
886         enums to represent pedal types, and calculate more data statically.
887
888         * scm/part-combiner.scm (recording-group-emulate): create a
889         softcoded substitute for recording-group-engraver.cc.
890
891         * lily/music.cc: make a common transpose function for events and
892         music
893
894         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
895         ManualMelismaEvent, and obsoletes Melisma_translator.
896
897 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
898
899         * input/test/instrument-name-align.ly: update version.
900
901 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
902
903         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
904         Doc the --pdf flag to lilypond-book.
905
906 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
907
908         * Documentation/topdocs/NEWS.tely (Top): add description.
909
910         * input/regression/tuplet-full-length-note.ly: add file.
911
912         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
913         always store axis group.
914
915 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
916
917         * input/regression/instrument-switch.ly: new file.
918
919         * lily/instrument-switch-engraver.cc (process_music): new file.
920
921         * ly/engraver-init.ly: add Instrument_switch_engraver
922
923         * ly/music-functions-init.ly: \instrumentSwitch
924
925         * scm/define-context-properties.scm
926         (all-user-translation-properties): add instrumentCueName
927
928         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
929
930 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
931
932         * ly/music-functions-init.ly: music function \transposition.
933
934         * lily/parser.yy (command_element): softcode \transposition.
935
936         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
937         (process_music): oops.
938
939         * lily/instrument-name-engraver.cc (start_spanner): new
940         function. Create spanner when property changes.
941         (stop_spanner): new function.
942
943         * python/convertrules.py (conv): add rule.
944
945         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
946         shortInstrumentName iso. instr.
947
948         * scm/output-ps.scm (dashed-line): add phase argument to
949         dashed-line.
950
951         * lily/bar-line.cc (dashed_bar_line): new function.
952         (compound_barline): support \bar "dashed". 
953
954         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
955         --output=DIR to DIR/BASE if it is a dir. 
956
957         * flower/file-name.cc (file_part): new function
958         (dir_part): new function
959
960         * lily/lily-parser-scheme.cc (LY_DEFINE): 
961
962         * DEDICATION: update
963
964 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
965
966         * lily/instrument-name-engraver.cc: formatting.
967
968         * python/convertrules.py (conv): bugfix for \epsfile.
969
970 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
971
972         * lily/grob.cc:
973         
974         * lily/gourlay-breaking.cc: Oops, these should have been included
975         in my last commit
976
977 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
978
979         * scripts/*.py (program_name): cleanup relocation snippets.
980
981         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
982
983 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
984
985         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
986         page-breakable by default
987
988         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
989         correctly calculated for a single-system page
990
991         * scm/lily-library.scm (interval-sane?): also check that the first number is no
992         bigger than the second number
993
994         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
995         acknowledge that we aren't satisfying constraints)
996
997         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
998         non-Items
999
1000         * lily/grob.cc (pure_height): add minimum-Y-extent
1001
1002         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1003         ragged
1004
1005         * lily/constrained-breaking.cc: convert code to use new Matrix class
1006         (get_best_solution): new function
1007
1008         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1009         is a page with no systems
1010
1011 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1012
1013         * VERSION (PACKAGE_NAME): release 2.9.13
1014
1015         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1016         assignment.
1017
1018 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1019
1020         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1021
1022         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1023         function.
1024
1025         * scm/define-grob-properties.scm (all-user-grob-properties):
1026         remove grace-space-factor.
1027
1028         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1029         grace-spacing-interface
1030         (spacing-options-interface): add.
1031
1032         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1033
1034         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1035
1036         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1037         GraceSpacing object.
1038
1039         * lily/note-spacing.cc: fix prop list formatting
1040
1041         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1042         beaming for grace notes too.
1043
1044         * input/regression/spacing-grace.ly: update.
1045
1046         * lily/grace-spacing-engraver.cc: new file.
1047
1048         * lily/spacing-spanner.cc: add strict-grace-spacing.
1049
1050 2006-07-20  Graham Percival  <gpermus@gmail.com>
1051
1052         * lily/parser.yy: compile fix.
1053
1054 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1055
1056         * scm/define-grobs.scm (all-grob-descriptions): typo.
1057
1058         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1059         .eps extension from includegraphics.
1060
1061         * scripts/lilypond-book.py (main): add support for --pdf. 
1062
1063         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1064         callback to compute common shortest duration.
1065         (set_springs): typo.
1066
1067         * scm/define-grob-properties.scm (all-user-grob-properties): add
1068         strict-grace-spacing.
1069
1070         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1071         support float_grace_columns_.
1072
1073         * lily/spacing-options.cc (init_from_grob): new file.
1074
1075         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1076
1077         * input/regression/spacing-loose-grace.ly: new file.
1078
1079         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1080
1081         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1082         tupletFullLengthNote too. Choose right bound depending on value.
1083
1084         * input/regression/tuplet-full-length-note.ly: new file.
1085
1086 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1087
1088         * lily/*-performer.cc: Converted try_music to listen_*
1089
1090         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1091         as a stream-event internally. Introduce event_cause (), deprecate
1092         music_cause ().
1093
1094         * scm/define-music-types.scm: Removed BusyPlayingEvent
1095         
1096 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1097
1098         * Documentation/user/advanced-notation.itely (Font selection):
1099         Document how to get a list of available fonts using 'lilypond
1100         -dshow-available-fonts blabla'.
1101
1102 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1103
1104         * GNUmakefile.in: filter lily-XXX.pdf files.
1105
1106         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1107
1108         * scm/define-grob-properties.scm (all-internal-grob-properties):
1109         remove delta-pitch. Use delta-position everywhere.
1110
1111         * scm/output-lib.scm (fall::print): use new order.
1112
1113         * scm/output-ps.scm (path): reorder arguments.
1114
1115         * scm/output-svg.scm (path): support for path primitive.
1116
1117         * input/regression/bend-after.ly: new file.
1118
1119         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1120         recipe for eps -> pdf conversion.
1121
1122 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1123
1124         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1125         Angelo Contardi.
1126
1127 2006-07-19  Graham Percival  <gpermus@gmail.com>
1128
1129         * input/manual/screech-boink.ly: moved to here.
1130
1131         * input/screech-boink.ly: deleted.
1132
1133         * scm/define-grob-properties.scm: clarify doc string.
1134
1135 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1136
1137         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1138
1139         * scm/output-ps.scm (path): define path.
1140
1141         * scm/define-stencil-commands.scm
1142         (ly:register-stencil-expression): add path.
1143
1144         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1145
1146         * ly/engraver-init.ly: add Fall_engraver
1147
1148         * lily/parser.yy (music_function_event): allow musicfunction
1149         without music arg as music_function_event.
1150
1151         * lily/grob-scheme.cc (LY_DEFINE):
1152         ly:grob-robust-relative-extent. New function.
1153
1154         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1155
1156         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1157
1158         * scm/output-lib.scm (fall::print): new function
1159
1160         * lily/fall-engraver.cc (stop_fall): new file.
1161
1162         * ly/music-functions-init.ly: alphabetise.
1163
1164         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1165         base.
1166
1167 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1168
1169         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1170
1171         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1172         doc pdftex usage.
1173
1174         * lily/translator-group.cc (connect_to_context): non const error message.
1175
1176         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1177
1178         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1179         if unset.
1180
1181         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1182
1183         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1184
1185         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1186         systems.pdftex too.
1187
1188         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1189
1190         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1191
1192         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1193
1194         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1195
1196         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1197
1198         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1199
1200 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1201
1202         * scm/layout-page-layout.scm: Define module, tidy code, use more
1203         functions iso. a single big one.
1204
1205         * scm/layout-page-dump.scm: move page dump functions used in two
1206         pass spacing to this file. Define module.
1207
1208         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1209          (separate module)
1210
1211         * ly/paper-defaults.ly: use module layout-page-layout.
1212
1213 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1214
1215         * lily/music.cc: Revised MusicEvent event class. It now contains
1216         event data directly instead of encapsulating it in music. The
1217         previously used class is renamed to OldMusicEvent.
1218
1219         * lily/stream-event.cc: Stream events are now probs.
1220         
1221         * lily/translator-group.cc, lily/translator.cc: Translators can
1222         now listen directly to stream events, by using macros
1223         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1224
1225         * lily/arpeggio-engraver.cc: Converted to use new event system
1226
1227         * THANKS: Corrected spelling mistake.
1228
1229 2006-07-12  Graham Percival  <gpermus@gmail.com>
1230
1231         * Documentation/user/SConscript, make/lilypond-vars.make,
1232         input/GNUmakefile: doc build looks in input/manual instead
1233         of input/test/
1234
1235         * input/manual/ GNUmakefile, SConscript: build files for
1236         input/manual/
1237
1238         * input/test/ various: some files moved to input/manual/ 
1239
1240         * Documentation/user/basic-notation.itely: small updates;
1241         thanks Kieren and Charles!
1242
1243 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1244
1245         * VERSION (PACKAGE_NAME): release 2.9.11
1246
1247         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1248
1249         * Documentation/user/basic-notation.itely (Tuplets): new property
1250         value.
1251
1252 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1253
1254         * python/convertrules.py (conv): tweaks. 
1255
1256         * VERSION (PATCH_LEVEL): bump version.
1257
1258         * python/convertrules.py (conv): add rule for
1259         tupletNumberFormatFunction.
1260
1261         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1262         tupletNumberFormatFunction.
1263
1264         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1265         text through 'text callback.
1266
1267         * lily/time-scaled-music-iterator.cc (construct_children): copy
1268         tweaks generated events.
1269
1270         * scm/define-context-properties.scm
1271         (all-user-translation-properties): remove tupletNumberFormatFunction
1272
1273         * lily/tuplet-engraver.cc (process_music): don't read
1274         tupletNumberFormatFunction
1275
1276         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1277         function.
1278
1279 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1280
1281         * lily/global-context-scheme.cc: Separated ly:run-translator into
1282         smaller pieces.
1283
1284         * lily/score-engraver.cc, lily/score-performer.cc,
1285         scm/define-context-properties.scm: Make paper/midi output
1286         accessable as a context property.
1287
1288         * lily/score-translator.cc, lily/score-context.cc: Removed.
1289
1290 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1291
1292         * scm/ps-to-png.scm (Module): 
1293         * scm/framework-tex.scm (Module): 
1294         * scm/framework-ps.scm (Module): 
1295         * scm/backend-library.scm (Module): 
1296         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1297         "dDEVICEHEIGHTPOINTS".
1298
1299 2006-07-04  Graham Percival  <gpermus@gmail.com>
1300
1301         * Documentation/user/ various: general improvements to
1302         "working with lilypond files" section.
1303
1304 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1305
1306         * lily/sequential-iterator.cc: Change the default get_music_list
1307         to read elements-callback music property
1308
1309         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1310         processing of multimeasure rests. Softcoded
1311         sequential-music-iterator.
1312
1313         * lily/sequential-music-iterator.cc: Removed.
1314
1315 2006-06-28  Graham Percival  <gpermus@gmail.com>
1316
1317         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1318
1319 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1320
1321         * lily/parser.yy: Wrap non-post-events in EventChords before
1322         assigning them to identifiers.
1323
1324 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1325
1326         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1327         gives correct vertical placement of \bar ":" in all staff
1328         sizes. Thanks Martial!
1329
1330 2006-06-26  Graham Percival  <gpermus@gmail.com>
1331
1332         * Documentation/user/invoking.itely : minor update from mailist.
1333
1334 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1335
1336         * lily/ various: Introduce stream events of types Prepare,
1337         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1338         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1339
1340         * lily/global-context*.cc: Time is now -inf before iteration
1341         starts.
1342
1343         * lily/include/context.hh: Removed unique_, init_
1344
1345         * Documentation/topdocs/NEWS: Make the feathered beam example
1346         avoid triggering a bug.
1347
1348 2006-06-24  Graham Percival  <gpermus@gmail.com>
1349
1350         * Documentation/user/ various: small additions from mailist.
1351
1352 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1353
1354         * ly/performer-init.ly: Add some missing links in the context
1355         hierarchy for MIDI output. There are probably some more missing!
1356
1357 2006-06-21  Graham Percival  <gpermus@gmail.com>
1358
1359         * Documentation/user/ various: minor spelling fixes;
1360         thanks Dave Luttinen!
1361
1362         * Documentation/user/ various: small clarifications;
1363         thanks Anthony Youngman!
1364
1365 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1366
1367         * po/fr.po: add \n appropriately.
1368
1369         * lily/lexer.ll: remove ? from version-seen?  
1370
1371 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1372
1373         * po/fr.po; update translation, by Jean-Charles Malahieude and
1374         John Mandereau.
1375
1376 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1377
1378         * THANKS: add Markus Schneider.
1379
1380         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1381         Staff_symbol_engraver
1382
1383         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1384         replace staff_engraver
1385
1386         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1387         spanner.
1388
1389         * lily/staff-collecting-engraver.cc
1390         (acknowledge_end_staff_symbol): new function
1391
1392         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1393
1394         * lily/staff-collecting-engraver.cc
1395         (acknowledge_end_staff_symbol): new function.
1396
1397         * lily/main.cc: switch on relocation by default.
1398
1399 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1400
1401         * lily/spacing-spanner.cc (musical_column_spacing): set
1402         compound_fixed_note_space to 0.0. Document why.
1403
1404         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1405         range of inverse_hooke_
1406         (Simple_spacer): init completely.
1407         (fits): const
1408         (get_line_configuration): don't use cols.resize(); it introduces
1409         initialized data.
1410
1411         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1412
1413         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1414
1415         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1416         try. Divide by beatlength.
1417
1418         * input/regression/beaming-ternary-metrum.ly: update doc.
1419         add beatLength hack.
1420
1421         * scm/music-functions.scm (make-time-signature-set): add
1422         standard-beat-grouping. 
1423
1424 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1425
1426         * input/regression/tie-whole.ly: new file.
1427
1428         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1429         cross center of note head in case of invisible stem. 
1430
1431 2006-06-16  Graham Percival  <gpermus@gmail.com>
1432
1433         * Documentation/user/ various: small fixes from mailist.
1434
1435 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1436
1437         * lily/breathing-sign.cc (offset_callback): idem.
1438
1439         * lily/align-interface.cc (align_to_fixed_distance): remove
1440         hungarian suffix.
1441
1442         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1443         x%2==0.
1444
1445 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1446
1447         * VERSION (PACKAGE_NAME): release 2.9.9
1448
1449         * ly/lilypond-book-preamble.ly: add \version
1450
1451 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1452
1453         * scripts/lilypond-book.py (PREAMBLE_LY): include
1454         lilypond-book-preamble.ly
1455
1456         * lily/stem.cc (get_beaming): return max of 0 and
1457         scm_ilength. Fixes slurring from/to beams.
1458
1459         * ly/lilypond-book-preamble.ly: new file.
1460
1461         * lily/slur.cc: add inspect-index feature.
1462
1463 2006-06-13  Graham Percival  <gpermus@gmail.com>
1464
1465         * Documentation/user/tutorial.itely: trivial fix.
1466
1467 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1468
1469         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1470         all non-event music in the parser via MAKE_SYNTAX.
1471
1472         * lily/parser-scheme.cc: Add ly:parser-error function
1473
1474         * scm/paper.scm: fix typo
1475
1476 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1477
1478         * THANKS: add RT.
1479
1480         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1481         is null.
1482
1483         * buildscripts/output-distance.py (test_compare_signatures):
1484         timing routines.
1485         (read_signature_file): use new signature format.
1486
1487         * scm/stencil.scm (write-system-signature): simpler signature
1488         format.
1489
1490         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1491         for beamed case. 
1492
1493         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1494         stem_end_position, but estimate instead. 
1495
1496         * lily/tuplet-bracket.cc (calc_positions): look at
1497         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1498         brackets narrower than beams. 
1499
1500         * lily/lexer.ll: set version-seen? even if version is
1501         INVALID. 
1502
1503         * lily/rest.cc (y_offset_callback): bugfix: decide position
1504         override based on scm_is_number(). Fixes \rest on center staff
1505         line. 
1506
1507         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1508         patterns for 16th triplets.
1509
1510 2006-06-10  Graham Percival  <gpermus@gmail.com>
1511
1512         * Documentation/user/ page.itely, global.itely: editing
1513         and reorg.
1514
1515         * Documentation/user/ various: findex -> funindex.
1516
1517 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1518
1519         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1520         insert extra tuplet events.
1521
1522 2006-06-10  Graham Percival  <gpermus@gmail.com>
1523
1524         * Documentation/user/programming-interfaces.itely: add
1525         info from NEWS.
1526
1527         * python/convertrules.py: add annotatefoo -> annotate-foo
1528         rules.
1529
1530         * Documentation/user/global.itely: start editing.
1531
1532         * Documentation/user/page.itely: major editing, new spacing
1533         docs.
1534
1535 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1536
1537         * scm/define-markup-commands.scm (wordwrap-markups): use
1538         output-def 'line-width if undefined.
1539
1540         * HACKING: trim outdated info.
1541
1542 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1543
1544         * scm/define-grobs.scm (all-grob-descriptions): Add
1545         line-spanner-interface to all grobs that already have
1546         text-spanner-interface or dynamic-text-spanner-interface
1547
1548         * scm/page.scm: Rename annotate{headers,systems,page}->
1549         annotate-*
1550
1551         * input/regression/page-spacing.ly,
1552         input/regression/page-layout-manual-position.ly: idem
1553
1554 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1555
1556         * lily/line-spanner.cc: cleanup property list.
1557
1558         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1559         generator expressions (2.3 compat). 
1560
1561 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1562
1563         * lily/vertical-align-engraver.cc: Make sure that the
1564         align{Above,Below}Context properties are included in the automatic
1565         documentation.
1566
1567 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1568
1569         * scm/paper-system.scm (paper-system-annotate): also annotate the
1570         estimated pure-Y-extent
1571
1572         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1573
1574         * lily/system.cc (break_into_pieces): set the estimated height
1575         of each child system
1576
1577         * lily/stem.cc (pure_height): new pure-Y-extent callback
1578
1579         * lily/staff-symbol-referencer.cc (callback): don't destroy
1580         the staff-position property
1581
1582         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1583         consider_suicide into two functions
1584
1585         * lily/constrained-breaking.cc (resize): use the new pure
1586         callbacks to estimate the height of a system
1587
1588         * lily/axis-group-interface.cc (pure_group_height): new
1589         side-effect-free VerticalAxisGroup height-callback
1590
1591         * lily/align-interface.cc (get_extents_aligned_translates):
1592         split align_elements_to_extents into two functions
1593         (get_pure_child_y_translation): new function
1594
1595         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1596
1597         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1598
1599         * lily/paper-score.cc: cache break_indices and columns
1600
1601         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1602         
1603 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1604
1605         * lily/font-config.cc (init_fontconfig): do the init if
1606         cache_file, but don't look at cache_file.
1607
1608         * input/regression/quote-tie.ly: new file.
1609
1610         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1611         to Head_event_tuple, so we deal gracefully with ties on
1612         cue-endings.
1613
1614         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1615         for FcChar8*
1616
1617 2006-06-08  Graham Percival  <gpermus@gmail.com>
1618
1619         * input/test/ smart-transpose.ly, reverse-music.ly:
1620         \applyMusic to music functions update, thanks Michael!
1621
1622 2006-06-07  Graham Percival  <gpermus@gmail.com>
1623
1624         * input/test/ add-staccato.ly, add-text-script.ly,
1625         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1626         music functions update, thanks to Michael Meixner.
1627
1628         * Documentation/user/music-glossary.tely: small fix
1629         from Francisco.
1630
1631         * Documentation/user/ various: minor additions from mailist.
1632
1633         * Documentation/user/lilypond.tely, basic-notation.itely:
1634         small test of @funindex.  (works here)
1635
1636         * input/test/font-table.ly: reduce size to partially
1637         de-ugly version in manual.
1638
1639         * Documentation/user/page.itely: new file (split former
1640         "global issues" into "page settings" and "non-musical
1641         output".
1642
1643         * Documentation/user/ various: fix @ref{}s to match
1644         new chapter names (above).
1645
1646 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1647
1648         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1649
1650 2006-06-06  Graham Percival  <gpermus@gmail.com>
1651
1652         * Documentation/user/advanced-notation.itely: add example
1653         for segno/coda on barline.
1654
1655         * tex/texinfo.tex: merge from upstream.
1656
1657 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1658
1659         * scripts/lilypond-book.py (process_snippets): Argument fix.
1660
1661         * SConstruct:
1662         * buildscripts/builder.py:
1663         * lily/SConscript: 
1664         * mf/SConscript: 
1665         * Documentation/user/SConscript:  More SCons fixes.
1666
1667 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1668
1669         * lily/font-config.cc (init_fontconfig): Only initialize if
1670         global cache_file is found.
1671
1672 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1673
1674         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1675         new \applyOutput.
1676
1677 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1678
1679         * VERSION (PACKAGE_NAME): release 2.9.8
1680
1681         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1682         function. Delay ledger modifying ledgered grobs to
1683         stop_translation_timestep(), to ensure that we're ledgering
1684         according to the new spanner.
1685         (acknowledge_staff_symbol): don't check for non-NULL
1686         staff_sym->get_bound()
1687
1688         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1689         creation.
1690
1691         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1692         pictures too.
1693
1694         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1695         directly from srcdir/stepmake/aclocal.m4
1696         
1697         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1698         disting MISC files.
1699
1700         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1701
1702 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1703
1704         * lily/simple-spacer.cc (get_line_configuration): add
1705         keep-inside-line rods
1706         (struct Column_desc): add constructor
1707         (struct Rod_desc): add constructor
1708         (get_line_forces): check for forced page breaks here too
1709
1710         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1711         support/elements cycles between InstrumentNames and AxisGroups
1712
1713 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1714
1715         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1716
1717         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1718         make-txt-files target.
1719
1720         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1721         make-txt-files target.
1722
1723         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1724
1725         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1726         top-build-dir.
1727
1728 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1729
1730         * Documentation/user/instrument-notation.itely,
1731         input/regression/breathing-sign-ancient.ly,
1732         input/test/divisiones.ly: Removed redundant property settings for
1733         vaticana contexts.
1734
1735         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1736         fix lyrics alignment problems.  They are implemented now as scheme
1737         functions that add the appropriate unicode char to the first lyric
1738         event rather than adding a separate lyric event.  Minor edit of
1739         comments.
1740
1741 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1742
1743         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1744         pollute src dir with built .txt files, but install directly from
1745         Documentation/topdocs/out/
1746
1747         * buildscripts/output-distance.py
1748         (ComparisonData.create_html_result_page): put version/directories
1749         in table header.
1750
1751         * Documentation/topdocs/NEWS.tely (Top): document spacing section
1752         feature.
1753
1754         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
1755         Patch by Karl Hammar
1756         
1757         * buildscripts/readlink.py: add  file.
1758         Patch by Karl Hammar
1759
1760 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1761
1762         * lily/tuplet-number.cc (print): prevent stencil from being
1763         garbage collected.
1764
1765 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1766
1767         * scm/stencil.scm (write-system-signature): explicitly 
1768         -well, superfluously- close output port.
1769
1770         * buildscripts/output-distance.py (main): oops. Add extra argument.
1771
1772 2006-06-05  Graham Percival  <gpermus@gmail.com>
1773
1774         * Documentation/user/music-glossary.tely: clarified example
1775         from Francisco Vila, thanks!
1776
1777 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1778
1779         * input/regression/spacing-section.ly: new file.
1780
1781         * lily/input.cc (programming_error): new function.
1782
1783         * lily/spacing-engraver.cc (try_music): new function. Accept
1784         spacing-section-event
1785
1786         * lily/spacing-spanner.cc (set_springs): take slices of all
1787         columns for spacing.
1788
1789         * lily/include/paper-column.hh (class Paper_column): add
1790         Paper_column::compare.
1791
1792         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
1793
1794         * scm/define-music-types.scm (music-descriptions): add
1795         SpacingSectionEvent
1796
1797         * lily/music-iterator.cc (report_event): use programming_error for
1798         sending non-event error.
1799
1800         * lily/input.cc (programming_error): new function
1801
1802         * buildscripts/output-distance.py (main): use compare-XXX for
1803         compare files.
1804         (main): --threshold option, default at 0.30
1805
1806         * output-distance.py (main): add --threshold option.
1807
1808 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1809
1810         * scm/paper-system.scm (paper-system-annotate): fix problem when
1811         annotating an empty system
1812
1813 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1814
1815         * GNUmakefile.in: reinstate old web tar/copying.
1816
1817 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1818
1819         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
1820         nothing changes. (Erik S) 
1821
1822         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
1823         count. (Erik S)
1824
1825 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1826
1827         * scm/define-markup-commands.scm (whiteout): do not force
1828         foreground color of argument markup to black.
1829
1830         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
1831         the left of the arrow, instead of below the arrow name, so that,
1832         when two little arrows are vertically stacked, their dimensions
1833         and name should not overlap. Add a color key parameter.
1834
1835         * scm/paper-system.scm (paper-system-annotate): Annotate
1836         next-space+next-padding instead of next-space. Annotate space
1837         between next-padding and next-space+padding, respectively, and
1838         following system extent and refpoint-Y-extent. Use colors.
1839
1840         * scm/page.scm (annotate-page): translate annotations slightly to
1841         the right.
1842
1843 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1844
1845         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
1846         fix for x-staff slurs. Thanks Joe!
1847
1848         * buildscripts/output-distance.py
1849         (SystemLink.output_expression_change_count): keep track of changed
1850         details, and dump in details html page.
1851  
1852         * input/regression/figured-bass-staff.ly: add note about setting
1853         properties in Staff context.
1854
1855         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
1856         add slurs and ties to support too.
1857
1858         * buildscripts/output-distance.py (main): set dest_dir
1859         argument. Add --max-count option.
1860
1861 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
1862
1863         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
1864         shortcuts for special unicode chars that are useful in chant
1865         notation.  Revised exisiting and added new comments.
1866
1867 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1868
1869         * make/mutopia-rules.make: remove duplicate recipe.
1870
1871 2006-06-02  Werner Lemberg  <wl@gnu.org>
1872
1873         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
1874         Add support for U+0132 (IJ) and U+0133 (ij).
1875
1876 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1877
1878         * buildscripts/output-distance.py (FileLink): new class. collect
1879         info systems from one .ly file. 
1880         (FileLink.link_files_for_html): further tweaks.
1881
1882 2006-06-02  Graham Percival  <gpermus@gmail.com>
1883
1884         * tex/texinfo.tex: partial fix for @funindex.
1885
1886         * Documentation/user/macros.tely: uncomment @funindex (doesn't
1887         break anything).
1888
1889 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1890
1891         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
1892
1893         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
1894         @example too. Backportme.
1895
1896 2006-06-02  Graham Percival  <gpermus@gmail.com>
1897
1898         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
1899         from Werner Lemberg.
1900
1901 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
1902
1903         * Documentation/user/music-glossary.tely: additional spanish
1904         updates and a lyrics fix in an example.
1905
1906 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
1907
1908         * scm/define-grob-properties.scm: Previous patch contained
1909         spurious line from another patch not yet committed.  Fixed.
1910
1911         * scm/define-grob-properties.scm: Add missing doc strings for
1912         ancient notation.
1913
1914 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1915
1916         * buildscripts/output-distance.py
1917         (ComparisonData.write_text_result_page): separate the scores, sort
1918         by geo_score.
1919
1920         * scm/framework-eps.scm (output-classic-framework): start at 1 for
1921         system signatures.
1922
1923         * buildscripts/output-distance.py (me_path): use argv[0] for
1924         sys.path extension
1925         (ComparisonData.img_cell): use colored borders.
1926
1927         * scm/stencil.scm (write-system-signature): escape newlines too.
1928         (write-system-signature): use (1,-1) interval for empty interval
1929
1930 2006-01-01  Graham Percival  <gpermus@gmail.com>
1931
1932         * Documentation/user/music-glossary.tely: Spanish updates
1933         from Francisco Vila.
1934
1935         * Documentation/user/lilypond-book.itely: addition from
1936         Vaclav Smilauer.
1937
1938         * Documentation/user/ various: edits, small additions
1939         from mailist, etc.
1940
1941 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1942
1943         * GNUmakefile.in (tree-lib-prefix-current):
1944         (tree-share-prefix-current): Use version number in tree, add
1945         `current' symlinks.
1946
1947 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1948
1949         * GNUmakefile.in: write VERSION, again.
1950
1951         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
1952         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
1953
1954         * stepmake/aclocal.m4: robuster version detection.
1955
1956         * buildscripts/output-distance.py
1957         (ComparisonData.create_html_result_page): copy only if file
1958         exists, fixup src paths.
1959
1960         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
1961
1962 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1963
1964         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
1965         Another datarootdir reto.
1966
1967         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
1968         available.  This should be moved to postinstall-lilypond-doc.
1969
1970 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1971
1972         * GNUmakefile.in: simplify local-WWW-post. 
1973         remove -type l from find.
1974
1975         * buildscripts/output-distance.py (ComparisonData.compare_trees):
1976         fixes. Don't follow symlinks.
1977         (ComparisonData.create_html_result_page): remove previous results.
1978         insert ../python in path.
1979
1980         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
1981
1982 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
1983
1984         * config.make.in (datadir): Add datarootdir to silence autoconf.
1985
1986         * stepmake/aclocal.m4: Update for autoconf-2.59d.
1987
1988 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
1989
1990         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
1991
1992         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
1993         slash beams too wide.
1994
1995 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1996
1997         * VERSION: release 2.9.7
1998         
1999 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2000
2001         * lily/relocate.cc (read_relocation_dir): Do not blindly
2002         dereference DIR.
2003
2004 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2005
2006         * lily/parser.yy: replace THIS by PARSER
2007
2008         * Documentation/index.html.in: add link to test-results.html page.
2009
2010         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2011
2012         * scm/translation-functions.scm (format-bass-figure): translate
2013         digits over 10 to the left
2014
2015         * scm/define-markup-commands.scm (translate-scaled): new markup.
2016
2017         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2018         7 glyph. 
2019
2020         * ly/engraver-init.ly: add Figured_bass_engraver
2021
2022         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2023
2024         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2025
2026         * lily/score-engraver.cc (announce_grob): only note START announces.
2027
2028         * lily/include/engraver-group.hh (Translator_group):
2029         acknowledge_hash_table_ is now drul.
2030
2031         * lily/engraver.cc (announce_end_grob): new method.
2032
2033         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2034
2035         * lily/translator-dispatch-list.cc (create): take start_end argument.
2036
2037         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2038         acknowledge_static_array_ to drul
2039
2040         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2041
2042         * scm/define-grob-interfaces.scm
2043         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2044
2045         * scm/define-grobs.scm (all-grob-descriptions): add
2046         BassFigureAlignmentPositioning
2047
2048         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2049         number stays up to date. Backportme.
2050
2051 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2052
2053         * Documentation/user/basic-notation.itely (Bar lines): Document
2054         the "||:" bar type. 
2055
2056 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2057
2058         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2059
2060         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2061         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2062         build.
2063
2064         * Resurrect `scons lily' build.
2065
2066         * SConstruct (symlink_tree): Bugfix: link
2067         music-drawing-routines.ps to file iso directory.
2068
2069         * lily/SConscript: Remove kpath-guile from LIBS.
2070
2071         * SConstruct (libdir_package_version): Typo.
2072         (configure): Comment-out fontforge for lack of fontforge.pc .
2073         Also add libdir* to environment.
2074
2075 2006-05-30  Graham Percival  <gpermus@gmail.com>
2076
2077         * Documentation/user/ various: minor additions from mailist and
2078         editing.
2079
2080 2006-05-30  Paco <fravd@ya.com>
2081
2082         * Documentation/user/music-glossary.tely: numerous corrections and
2083         some new translations.
2084
2085 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2086
2087         * BackportmeStart.
2088         
2089         * buildscripts/output-distance.py
2090         (ComparisonData.create_html_result_page): new routine: summarise
2091         results in HTML page with images. 
2092         (ComparisonData.create_text_result_page): create summary text files too.
2093
2094         * GNUmakefile.in (web-ext): package .signature files too. They
2095         compress well. 
2096
2097         * scm/stencil.scm (write-system-signature): typo.
2098
2099         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2100
2101         * scm/stencil.scm (write-system-signature): better escaping.
2102         only write signature for music systems, not for markup systems.
2103
2104         * scm/framework-ps.scm (output-framework): dump-signatures support
2105         for plain output.
2106
2107         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2108
2109         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2110         for -dno-point-and-click
2111
2112         * lily/grob.cc (get_print_stencil): don't read
2113         point_and_click_global to determine whether to set grob-cause.
2114
2115 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2116
2117         * buildscripts/output-distance.py (main): new function.
2118         (ComparisonData): new class.
2119
2120         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2121         careful with generating new LedgerLineSpanners.
2122
2123         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2124
2125         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2126         context. This fixes double ledger lines in output. 
2127
2128         * lily/system.cc (get_paper_system): remove 3 layer limit.
2129
2130         * buildscripts/output-distance.py (SystemLink.distance): new
2131         file. Compare signatures.
2132
2133         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2134
2135         * lily/grob-array.cc (remove_duplicates): rename from
2136         uniq(). Sort before calling uniq() so it actually works.
2137
2138 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2139
2140         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2141         \version from lilypond file snippet.
2142         (Lilypond_file_snippet.ly): oops. typo.
2143         (find_toplevel_snippets): urgh. again.
2144
2145         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2146         prevent duplicated broken items in output.
2147
2148         * scm/framework-eps.scm (output-classic-framework): only dump if
2149         dump-signatures is set.
2150
2151         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2152
2153         * scm/stencil.scm (write-system-signature): new routine: write
2154         python parseable signature of a separate paper system.
2155         BackportmeEnd.
2156         
2157 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2158
2159         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2160         iso is_string().
2161         include header.
2162
2163 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2164
2165         * translator-group.cc: send music events to engravers in
2166         non-bottom contexts.
2167
2168         * tuplet-engraver.cc: process tuplet brackets in correct order.
2169
2170 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2171
2172         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2173         arg 2 might point us to a new binary (patch by Karl Hammar)
2174         
2175 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2176
2177         * VERSION (PACKAGE_NAME): release 2.9.6
2178
2179         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2180
2181         * Documentation/user/*.itely: 2nd
2182         attempt: replace funindex -> findex globally.
2183
2184 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2185
2186         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2187         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2188
2189         * scm/define-music-display-methods.scm: display methods for
2190         breaks. Fix \applyOutput.
2191
2192 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2193
2194         * Documentation/user/macros.itexi: comment out funindex expansion. 
2195
2196         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2197         everywhere.
2198
2199         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2200         Karl Hammar. Backportme.
2201  
2202         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2203
2204         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2205
2206         * Documentation/user/programming-interface.itely (Running a
2207         function on all layout objects): idem.
2208
2209         * Documentation/user/introduction.itely (Automated engraving):
2210         update \applyOutput syntax
2211
2212         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2213         remove debugging hook.
2214
2215         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2216         expansion. 
2217
2218         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2219
2220         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2221         TEXI2DVI_FLAGS to texi2dvi invocation. 
2222
2223 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2224
2225         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2226         works. More work is done by iterator now, and engraver has been
2227         very much simplified.
2228
2229         * lily/translator-group.cc: try_music is now invoked through a
2230         listener
2231
2232         * lily/*-iterator.cc: Massive cleanups. Junked
2233         try_music_in_children globally. Renamed try_music to report_event,
2234         and made that method descend to a bottom context automatically.
2235
2236         * lily/event-iterator.cc: New file.
2237
2238         * lily/output-property-iterator.cc,
2239         lily/old-lyric-combine-music-iterator.cc: Removed.
2240
2241         * python/convert-rules.py: Modified the syntax for \applyOutput.
2242
2243 2006-05-23  Graham Percival  <gpermus@gmail.com>
2244
2245         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2246         creation.
2247
2248         * Documentation/user/ various: stuff that might have helped
2249         to fix the pdf creation, plus some minor doc additions.
2250
2251         * Documentation/user/changing-defaults.itely: remove @b from
2252         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2253
2254 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2255
2256         * lily/beaming-pattern.cc (beamify): deal with negative start
2257         moments for beaming patterns.
2258
2259 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2260
2261         * lily/beaming-info.cc (beamify): new function: read beatLength
2262         and beatGrouping from context. 
2263
2264         * input/regression/beam-beat-grouping.ly (Module): new file.
2265
2266         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2267
2268         * lily/beam.cc (get_beam_segments): generate events for
2269         max_connect_ case too.
2270         (get_beam_segments): read Stem::max-beam-connect.
2271
2272         * input/regression/beam-single-stem.ly: new file.
2273
2274         * lily/stem.cc (set_beaming): use #f as signaling value for
2275         beamcount 0.
2276
2277         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2278
2279         * lily/beam.cc (set_beaming): read clip-edges property.
2280         (calc_direction): don't suicide for single stem.
2281
2282         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2283         argument, remove 1<<15 hack. Remove clip_edges() 
2284
2285         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2286
2287 2006-05-21  Graham Percival  <gpermus@gmail.com>
2288
2289         * Documentation/user/basic-notation.itely: reorg.
2290
2291         * Documentation/user/ various: minor fixes.
2292
2293 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2294
2295         * lily/stencil-expression.cc (register_stencil_head): opps, append
2296         to cdr of static SCM object.
2297
2298 2006-05-19  Graham Percival  <gpermus@gmail.com>
2299
2300         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2301         update framework for command index.  DOC WRITERS: use @funindex
2302         instead of @cindex @code{}.
2303
2304         * Documentation/user/ various: replace @cindex @code{} => @funindex
2305
2306 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2307
2308         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2309         case positions is set manually. 
2310
2311 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2312         
2313         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2314         rules to Scheme.
2315
2316 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2317
2318         * Documentation/user/changing-defaults.itely (Contexts explained):
2319         use absolute dimension for @image.
2320
2321         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2322         out image for illustration too.
2323         ($(outdir)/%.png): add more png <-> eps rules. 
2324
2325 2006-05-17  Graham Percival  <gpermus@gmail.com>
2326
2327         * Documentation/user/ various: remove trailing whitespace, cosmetic
2328         change to reduce changes produced by diff.
2329
2330 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2331
2332         * lily/main.cc (do_chroot_jail): correctness tweak.
2333
2334         * python/lilylib.py (system): import subprocess in system () only.
2335
2336         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2337
2338         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2339         variable. Backportme.
2340
2341 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2342         
2343         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2344
2345 2006-05-17  Werner Lemberg  <wl@gnu.org>
2346
2347         * lily/lexer.ll (init_signature_has_table): Add
2348         `scm-scm-music-music'.
2349
2350         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2351         (Generic_prefix_music_scm): Add rule for it.
2352
2353         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2354         `quoted-transposition' property.
2355
2356         * ly/music-functions-init.ly (transposedCueDuring): New function.
2357
2358         * scm/define-music-properties.scm (all-music-properties): Updated.
2359
2360         * Documenation/topdocs/NEWS.itely: Document it.
2361
2362 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2363
2364         * python/lilylib.py (system): move import subprocess to system()
2365         definition. 
2366
2367         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2368
2369         * VERSION (PATCH_LEVEL): release 2.9.5
2370         
2371         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2372         build instructions. 
2373
2374         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2375
2376 2006-05-16  Graham Percival  <gpermus@gmail.com>
2377
2378         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2379
2380         * Documentation/user/ various: minor fixes.
2381
2382 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2383
2384         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2385
2386 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2387
2388         * Documentation/user/advanced-notation.itely (Instrument names):
2389         Modified obsolete instruction on how to move instrument names away
2390         from the staves. Hmm, at second thought the bug probably has been
2391         solved, so the full bug description should probably be removed.
2392
2393 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2394
2395         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2396         currentCommandColumn. 
2397
2398         * lily/hairpin.cc (print): also add padding for non-neighbor
2399         hairpin bounds.
2400
2401         * scm/define-context-properties.scm
2402         (all-user-translation-properties): add hairpinToBarline
2403
2404         * input/regression/hairpin-to-barline.ly: new file.
2405
2406         * lily/context.cc (internal_send_stream_event): thinko fix.
2407
2408         * lily/tie.cc (set_default_control_points): robustness fix.
2409
2410         * python/musicxml.py (Part.interpret): don't complain about
2411         incomplete measures.
2412
2413         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2414         new music if last_event_chord() returned None.
2415
2416         * python/musicxml.py (Part.interpret): skip back over chord notes.
2417
2418 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2419         
2420         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2421         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2422         lily/slash-repeat-engraver.cc,
2423         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2424         iterator sends PercentEvents
2425
2426         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2427         rework tuplets: send start/stop events to engraver
2428
2429         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2430         dispatchers event-source and events-below to Context
2431         
2432 2006-05-15  Graham Percival  <gpermus@gmail.com>
2433
2434         * Documentation/user/README.txt: update info for doc writers.
2435
2436         * Documentation/user/programming-interface.itely: integrate
2437         Nicolas' fixes for chapter rewrite.
2438
2439         * Documentation/user/ various: minor fixes.
2440
2441 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2442
2443         * lily/clef-engraver.cc: cleanup.
2444
2445         * Documentation/user/GNUmakefile: dist context-example.eps too.
2446
2447         * lily/key-engraver.cc (create_key): use
2448         explicitKeySignatureVisibility for cancellation too. 
2449
2450         * lily/font-config.cc (init_fontconfig): don't close file if
2451         f==NULL. 
2452
2453 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2454
2455         * Documentation/topdocs/NEWS.tely: niente and rotation news
2456
2457 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2458
2459         * lily/include/stencil.hh
2460         * lily/stencil.cc (rotate): new function. Makes it possible
2461         to rotate a stencil around a given offset.
2462
2463         * lily/grob.cc (get_print_stencil): add rotation support
2464
2465         * lily/stencil-interpret.cc (interpret_stencil_expression):
2466         add rotation support
2467
2468         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2469
2470         * scm/define-grob-properties.scm: add 'rotation property
2471
2472         * scm/define-markup-commands.scm: add rotate markup command
2473         
2474         * scm/output-ps.scm: add rotation support in PostScript backend
2475
2476         * scm/output-svg.scm: add rotation support in SVG backend
2477
2478 2006-05-13  Graham Percival  <gpermus@gmail.com>
2479
2480         * Documentation/user/music-glossary.itely: French correction.
2481
2482         * Documentation/user/programming-interface.itely: major
2483         new docs, some reorg, some info from Nicolas.
2484
2485         * Documentation/user/ various: small fixes.
2486
2487 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2488
2489         * Documentation/user/programming-interface.itely (Markup
2490         programmer interface): Remove duplicate text.
2491
2492 2006-05-12  Graham Percival  <gpermus@gmail.com>
2493
2494         * Documentation/user/context-example.eps: new file.
2495
2496         * Documentation/user/changing-defaults.itely: set up file to
2497         use eps image.
2498
2499         * Documentation/user/programming-interface.itely: changes
2500         from mailist.
2501
2502 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2503
2504         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2505
2506 2006-05-11  Graham Percival  <gpermus@gmail.com>
2507
2508         * Documentation/user/programming-interface.itely: first round of
2509         editing and merging emails from Nicolas.
2510
2511         * Documentation/user/scheme-tutorial: minor edit.
2512
2513 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2514
2515         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2516         XML attributes.
2517         (Xml_node.message): use it.
2518
2519         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2520         oops. Add duration argument.
2521
2522 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2523
2524         * lily/paper-column-engraver.cc (make_columns):
2525         * scm/define-grobs.scm: Revert my previous change and set the default
2526         in define-grobs.scm instead.
2527
2528 2006-05-09  Graham Percival  <gpermus@gmail.com>
2529         
2530         * Documentation/user/changing-defaults.itely: general editing,
2531         info about \set and \override.
2532
2533         * Documentation/user/tweaking.itely, advanced-notation.itely:
2534         fixes from Dave Luttinen, thanks!
2535
2536 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2537
2538         * lily/paper-column-engraver.cc (make_columns): By default, a column
2539         needs to be breakable.
2540
2541 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2542
2543         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2544         Attributes methods
2545         (musicxml_time_to_lily): idem
2546         (musicxml_key_to_lily): idem
2547         (instrument_drumtype_dict): dict for supported drumtypes.
2548         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2549         moments and pending mm rests
2550         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2551         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2552         (musicxml_voice_to_lily_voice): add mode change.
2553         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2554         speed and less memory usage (factor 5 to 10).
2555         (convert): write -defs.ly  and driver file separately so people
2556         can script their own part extraction.
2557
2558         * python/musicxml.py (minidom_demarshal_node): new function:
2559         separate minidom handling.
2560         (lxml_demarshal_node): new function: support lxml.etree too.
2561         (Xml_node.message): new function: verbose error message, with XML
2562         path to offending node.
2563         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2564         (Part_list.generate_id_instrument_dict): new method: collect
2565         instrument names, to be able to set drum_type.
2566         (Part.interpret): handle underfull measures
2567         (Part.interpret): assign instrument names.
2568
2569         * python/musicexp.py (Output_printer.close): new method
2570         (MusicWrapper.print_ly): new class: support other modes,
2571         eg. \drummode
2572         (BarCheck.print_ly): new class. Support bar checks, with comments
2573         and fancy barchecks. 
2574         (NoteEvent.__init__): also set drum_type for drum notes.
2575         (MultiMeasureRest.lisp_expression): dump mm rests.
2576
2577         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2578         line-break-permission if forbidBreak is not set.
2579
2580 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2581
2582         * scm/define-context-properties.scm:
2583         * scm/define-grob-properties.scm:
2584         * scm/define-grobs.scm:
2585         * scm/define-music-display-methods.scm:
2586         * scm/define-music-properties.scm:
2587         * scm/define-music-types.scm:
2588         * scm/music-functions.scm:
2589         * ly/declarations-init.ly:
2590         * lily/include/constrained-breaking.hh:
2591         * lily/system.cc:
2592         * lily/spaceable-grob.cc:
2593         * lily/simple-spacer.cc:
2594         * lily/paper-score.cc:
2595         * lily/paper-column.cc:
2596         * lily/paper-column-engraver.cc:
2597         * lily/item.cc:
2598         * lily/gourlay-breaking.cc:
2599         * lily/constrained-breaking.cc:
2600         * python/convertrules.py:
2601         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2602         "page-break-penalty" and "line-break-permission".
2603         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2604         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2605
2606         * lily/bar-engraver.cc:
2607         * lily/beam-engraver.cc:
2608         * lily/forbid-break-engraver.cc:
2609         * lily/ligature-engraver.cc:
2610         * lily/paper-column-engraver.cc:
2611         * lily/percent-repeat-engraver.cc:
2612         * lily/score-engraver.cc:
2613         * lily/score-engraver.hh:
2614         * lily/paper-column-engraver.hh:
2615         Inter-engraver communication regarding line breaks is done through context
2616         properties (Score.forbidBreak) instead of function calls.
2617
2618 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2619
2620         * VERSION (PACKAGE_NAME): release 2.9.4
2621
2622 2006-05-08  Graham Percival  <gpermus@gmail.com>
2623
2624         * Documentation/user/working.itely: proofreading from Dave
2625         Luttinen, thanks.
2626
2627         * Doucmentation/user/README.txt: updated with manual style info.
2628
2629         * Documentation/user/ various: trim linewidth to 78 chars.
2630
2631 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2632
2633         * scm/define-grob-properties.scm (all-internal-grob-properties):
2634         remove chord-tremolo property.
2635
2636         * lily/beam.cc (get_beam_segments): don't use stem position as
2637         base for broken ends.
2638
2639 2006-05-06  Graham Percival  <gpermus@gmail.com>
2640
2641         * Documentation/user/putting.itely: proofreading from Dave
2642         Luttinen, thanks!
2643
2644         * Documentation/user/ various: more reorg and clarifications.
2645
2646 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2647
2648         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2649
2650         * ly/music-functions-init.ly: new function featherDurations
2651
2652         * lily/beam.cc: read grow-direction for feathered beaming.
2653
2654         * Documentation/topdocs/NEWS.tely (Top): typo.
2655
2656 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2657
2658         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2659         tremolo beams.
2660
2661 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2662         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2663         used by music streams.
2664
2665         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2666         lily/stream-event.cc, lily/stream-event-scheme.cc,
2667         lily/listener.cc, lily/scheme-listener.cc,
2668         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2669         lily/include/stream-event.hh, lily/include/listener.hh,
2670         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2671         Created data structures for music streams.
2672         
2673 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2674
2675         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2676         construction of a beam. 
2677         (print): rewrite. 
2678
2679         * flower/include/std-vector.hh (default_compare): use only one comparison.
2680
2681         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2682         (note-by-number): further attachment fixes.
2683
2684         * scm/lily-library.scm (ordered-cons): new function.
2685         (interval-index): new function
2686
2687         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2688
2689         * lily/note-head.cc (get_stem_attachment): new function.
2690
2691         * scm/define-markup-commands.scm (note-by-number): read 'style
2692         property. 
2693
2694         * input/regression/markup-note.ly: show note-head style option.
2695
2696         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2697         triangle head.
2698
2699 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2700
2701         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2702
2703         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2704
2705         * lily/include/constrained-breaking.hh: GCC 4 fix.
2706
2707 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2708
2709         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2710         Replace it with functions get_line_forces and get_line_configuration.
2711         (class Simple_spacer): Make data private.
2712         Rewrite compression algorithm to be faster and simpler.
2713
2714         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2715         * lily/gourlay-breaking.cc (solve):
2716         * lily/constrained_breaking.cc (space_line):
2717         Change it to the new simple-spacer code.
2718
2719         * lily/paper-score.cc (get_paper_systems):
2720         (Paper_score):
2721         (process):
2722         Delay breaking the systems until they are requested.
2723         (find_break_indices):
2724         Use vsize for indices.
2725         (calc_breaking):
2726         Move the "Calculating line breaks" message here.
2727
2728         * lily/system.cc (pre_processing):
2729         Move the "Calculating line breaks" message away from here.
2730         (break_into_pieces):
2731         Allow multiple calls to this function in sequence (with touching-but-
2732         not-overlapping breakpoints).
2733
2734         * lily/constrained-breaking.cc:
2735         Replace most of the get_XXXX functions with get_line_details.
2736         Only calculate the force for each line. Calculate configurations only
2737         for the lines we will actually use.
2738         Replace cols_ with lines_.
2739
2740 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2741
2742         * mf/GNUmakefile (depth): remove FC_FIND.
2743
2744         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2745
2746         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
2747
2748         * scm/framework-ps.scm (write-preamble): new function.
2749         (write-preamble): load mac fonts via fondu, even if gs-font-load
2750         is set.
2751
2752 2006-05-03  Werner Lemberg  <wl@gnu.org>
2753
2754         * mf/GNUmakefile (FC_FIND): Fix typo.
2755
2756 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
2757
2758         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
2759
2760 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2761
2762         * stepmake/aclocal.m4: run python-config for crosscompiling
2763         flags. 
2764
2765         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
2766         -f png for HTML, TEXINFO formats. 
2767
2768         * input/tutorial/lbook-html-test.html: new file.
2769
2770         * lily/include/tie-formatting-problem.hh (class
2771         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
2772         [column, direction]. This fixes laissez vibrer ties.
2773  
2774         * flower/include/tuple.hh (struct Tuple2): new file.
2775
2776         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
2777         $(FCMATCH), only if $(NCSB_DIR) not set. 
2778
2779         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
2780
2781         * config.make.in (DOCUMENTATION): set FCMATCH.  
2782
2783         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
2784
2785 2006-05-03  Graham Percival  <gpermus@gmail.com>
2786
2787         * Documentation/user/ various: final round of reorg.
2788
2789         * Documentation/user/instrument-notation.itely: some more
2790         fixes from Eduardo, thanks!
2791
2792 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2793
2794         * VERSION (PACKAGE_NAME): release 2.9.3
2795
2796         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
2797
2798         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
2799
2800 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
2801
2802         * scm/define-grob-properties.scm (all-user-grob-properties):
2803         Correct typo, thanks to Eduardo.
2804
2805 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2806
2807         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
2808
2809         * buildscripts/lilypond-words.py (F): indent fix.
2810
2811         * input/regression/tie-arpeggio-collision.ly: new file.
2812
2813         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
2814         function: store outlines per column rank.
2815
2816         * lily/include/tie-configuration.hh (class Tie_configuration): add
2817         column_ranks_ to specification and configuration, to distinguish
2818         between ties for different heads in arpegiated chords.
2819
2820         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
2821
2822         * *.py: more 4 space indents.
2823
2824         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
2825
2826 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
2827
2828         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
2829
2830 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2831
2832         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
2833
2834         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
2835
2836         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
2837
2838 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2839
2840         * python/convertrules.py (conv): indent 4 for python files.
2841
2842 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
2843
2844         * Documentation/user/changing-defaults.itely (Creating contexts):
2845         Clarify \new semantics.
2846
2847 2006-04-28  Graham Percival  <gpermus@gmail.com>
2848
2849         * Documentation/user/ various: major new sections in the
2850         Learning manual, slight reorg elsewhere.
2851
2852 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2853
2854         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
2855
2856         * scm/framework-ps.scm (output-framework): remove PageMedia
2857
2858 2006-04-27  Graham Percival  <gpermus@gmail.com>
2859
2860         * Documentation/user/ tweaks.itely, working.itely: new
2861         files, being more advanced "learning manual" chapters.
2862
2863         * Documentation/user/ tutorial, putting, lilypond: reorg.
2864
2865 2006-04-26  Graham Percival  <gpermus@gmail.com>
2866
2867         * input/regression/lyric-combine-polyphonic.ly: fixed test
2868         (no more "can't find context `one'" error).
2869
2870 2006-04-25  Joe Neeman <joeneeman@gmail.com>
2871
2872         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
2873
2874         * input/regression/stem-tremolo.ly: add 2 more whole note examples
2875         
2876 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2877
2878         * lily/relocate.cc (read_relocation_dir): new function.
2879
2880 2006-04-26  Graham Percival  <gpermus@gmail.com>
2881
2882         * Documentation/user/instrument-notation.itely: a few more fixes
2883         from Eduardo, thanks!
2884
2885         * Documentation/user/README.txt: new file; contains info on
2886         style that used to be in lilypond.tely.
2887
2888         * Documentation/user/ various: first round of doc reorg.
2889
2890         * Documentation/user/baer-flat-bw.png: remove alpha bit from
2891         graphic; this probably causes problems on some pdf
2892         viewers, notably Adobe Acrobat.
2893
2894 2006-04-24  Graham Percival  <gpermus@gmail.com>
2895
2896         * Documentation/user/instrument-notation.itely: many alterations
2897         to Vocal music, from Eduardo Viera.
2898
2899 2006-04-23  Graham Percival  <gpermus@gmail.com>
2900
2901         * Documentation/user/instrument-notation.itely: fix \new
2902         instead of \context problem.
2903
2904 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2905
2906         * lily/relocate.cc (expand_environment_variables): new function.
2907         (read_line): id.
2908         (read_relocation_file): id.
2909
2910         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
2911
2912 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
2913
2914         * ly/engraver-init.ly: remove old comments from TabVoice
2915
2916 2006-04-20  Graham Percival  <gpermus@gmail.com>
2917
2918         * Documentation/user/instrument-notation.itely: added Erlend's
2919         latest doc patch, thanks!
2920
2921 2006-04-19  Erlend Aasland <erlenda@gmail.com>
2922
2923         * lily/include/slur.hh:
2924         * lily/slur.cc:
2925         * lily/phrasing-slur-engraver.cc:
2926         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
2927         acknowledge_extra_object () from Phrasing_slur_engraver:: and
2928         Slur_engraver:: and putting it in
2929         Slur::auxiliary_acknowledge_extra_object ().
2930
2931         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
2932
2933         * lily/note-collision.cc: fix a comment
2934
2935 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2936
2937         * stepmake/bin/add-html-footer.py: fix footer position in
2938         generated html files: before </body> and </html> tags.
2939
2940 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2941
2942         * scripts/GNUmakefile: revert last "fix", which rather broke make.
2943         Earlier successive `make' commands finally compiled ok.
2944
2945         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
2946
2947 2006-04-18  Erlend Aasland <erlenda@gmail.com>
2948
2949         * lily/include/stem-tremolo.hh:
2950         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
2951         callers.
2952
2953         * lily/lookup.cc:
2954         * lily/include/lookup.hh: add rotated_box ()
2955
2956 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2957
2958         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
2959         been generated. Fixes "can't get `--help'" bug after make clean.
2960
2961         * THANKS: alphabetize contributors.
2962
2963 2006-04-17  Graham Percival  <gpermus@gmail.com>
2964
2965         * Documentation/user/instrument-notation.itely: added Erlend's
2966         tabs and banjo doc patch.  Thanks!
2967
2968 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
2969
2970         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
2971
2972         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
2973
2974         * scm/output-lib.scm: add some more predefined string tunings.
2975
2976         * Documentation/user/instrument-notation.itely: and doc them.
2977
2978 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
2979
2980         * ly/engraver.ly: Remove obsolete comments.
2981
2982         * ly/gregorian-init.ly: Define default layout block.
2983
2984         * input/puer-fragment.ly: Updated and extended.
2985
2986 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2987
2988         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
2989         pdf conversion behaviour.
2990
2991         * flower/file-name.cc (dir_name)
2992         (get_working_directory): Move from relocate.cc.
2993
2994         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
2995         
2996         * lily/relocate.cc: Encapsulate sys/stat.h in
2997         HAVE_STAT_H.
2998
2999 2006-04-14  Graham Percival  <gpermus@gmail.com>
3000
3001         * Documentation/user/ various: small updates from Cameron
3002         and Juergen, thanks!
3003
3004         * Documentation/user/ various: small updates of my own.
3005
3006         * THANKS: 2.7 -> 2.8.
3007
3008 2006-04-11  Graham Percival  <gpermus@gmail.com>
3009
3010         * scm/define-context-properties.scm: typo.
3011
3012         * Documentation/user/ : many more small updates.
3013
3014 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3015
3016         * scm/define-music-types.scm: disposed "docme".
3017
3018 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3019
3020         * lily/hairpin.cc: make niente circles a bit smaller.
3021
3022 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3023
3024         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3025         get-pfa and get-*-fonts targets.
3026
3027 2006-04-10  Graham Percival  <gpermus@gmail.com>
3028
3029         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3030         music-glossary, programming-interface: more minor fixes
3031         from mailist.
3032
3033         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3034
3035         * scm/define-context-properties.scm: another old \property update.
3036         This time tested for compiling!
3037
3038 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3039
3040         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3041
3042 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3043
3044         * scm/define-context-properties.scm (all-user-translation-properties): 
3045         * Documentation/user/global.itely (Page formatting): Compile fix.
3046
3047 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3048
3049         * Documentation/user/advanced-notation.itely (Polymetric
3050         notation): Update the example to use the "+" symbol and add link
3051         to input/test/compound-time.ly.
3052
3053 2006-04-08  Graham Percival  <gpermus@gmail.com>
3054
3055         * scm/define-grob-properties.scm: clarify docs for #'direction.
3056
3057         * scm/define-context-properties.scm: update old \property override.
3058
3059         * Documentation/user/ advanced-notation, global, lilypond-book:
3060         more minor doc updates.
3061
3062 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3063
3064         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3065
3066         * scm/backend-library.scm (search-gs): oops.
3067
3068 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3069
3070         * scripts/lilypond-book.py (output): use base, not filename for href.
3071
3072         * scm/backend-library.scm: only look for gs.
3073
3074         * scripts/lilypond-book.py (output): fix printfilename.
3075
3076         * lily/parser.yy (music_function_musicless_prefix): fold together
3077         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3078
3079         * lily/slur.cc (print): only set font-size if not set yet.
3080
3081         * lily/slur-configuration.cc (add_score): improved layout of debug
3082         scoring output.
3083
3084 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3085
3086         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3087         (draw_circle): Hopefully fixed regression.
3088         Improved documentation for several procedures.
3089         
3090 2006-03-04  Werner Lemberg  <wl@gnu.org>
3091
3092         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3093
3094 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3095
3096         * scripts/musicxml2ly.py (bindir): add dynamic
3097         relocation. 
3098
3099 2006-04-04  Graham Percival  <gpermus@gmail.com>
3100
3101         * Documentation/user/ basic-notation, advanced-notation, putting,
3102         instrument-notation, invoking, lilypond, THANKS: another ream of small
3103         fixes from the Doc Helpers.
3104
3105 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3106
3107         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3108
3109         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3110
3111         * Cleaned up interfaces between PostScript and Scheme, and moved
3112         computations from PostScript to Scheme:
3113
3114         * music-drawing-routines.ps
3115         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3116         with stroke_and_fill throughout.
3117         (euclidean_length, print_letter, draw_box): Deleted unused
3118         procedures.  If someone needs draw_box, implement it using
3119         draw_round_box; don't duplicate code.
3120         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3121         Refactored/cleaned up interfaces.
3122         (mark_URI): Moved.
3123
3124         * output-ps.scm: reordered arguments to PostScript functions to
3125         match new interfaces
3126         (glyph-string): Rewrote glyph-string.
3127         (grob-cause): Replaced string-append with format.
3128         (repeat-slash): Rewrote to do computation here.
3129         (round-filled-box): Rewrote to do computation here.
3130
3131 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3132
3133         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3134
3135         * stepmake/stepmake/toplevel- targets.make: print help info about
3136         cvs-clean
3137
3138 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3139
3140         * input/regression/hairpin-circled.ly: new file
3141
3142 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3143
3144         * lily/hairpin.cc (print): add support for circled tip
3145
3146         * scm/define-grob-properties.scm: add circled-tip parameter
3147
3148         * scm/define-grobs.scm: init circled-tip to false
3149         
3150 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3151
3152         * scm/music-functions.scm (quote-substitute): set
3153         iterators-ctor. 
3154
3155 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3156
3157         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3158         BSTINPUTS. 
3159
3160         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3161
3162         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3163
3164 2006-03-31  David Feuer  <david.feuer@gmail.com>
3165         
3166         * scm/framework-ps.scm:
3167         
3168         * scm/output-ps.scm: glyph-string now produces smaller, more
3169         readable, and probably faster PostScript.  Several findfont
3170         scalefont setfont instances changed to selectfont
3171         Hacked-up string-appends changed to formats.
3172
3173         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3174         
3175 2006-03-30  Graham Percival  <gpermus@gmail.com>
3176
3177         * scm/lily-library.scm: make "no version" warning message more polite.
3178
3179         * lily/music.cc: add double quotes to failed octave check.
3180
3181         * Documentation/user/ advanced-notation, changing-defaults,
3182         instrument-notation, invoking, music-glossary: whole bunch of minor
3183         fixes from mailist.
3184
3185 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3186
3187         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3188         $(buildscriptdir) iso. depth.
3189
3190         * VERSION (PACKAGE_NAME): release 2.9.1
3191
3192 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3193
3194         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3195
3196         * VERSION (PATCH_LEVEL): bump version number.
3197
3198         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3199         scm_from_uint32 ()
3200
3201         * lily/pango-font.cc (pango_item_string_stencil): use
3202         scm_from_uint32 ()
3203
3204         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3205         $(outdir)/emmentaler-%.svg): remove canary.
3206
3207         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3208         glyphnames if we have a ttf font.
3209
3210 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3211
3212         * Documentation/user/advanced-notation.itely (Font selection):
3213         Corrected reference to the font-family-override.ly example.
3214
3215 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3216         
3217         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3218         stem-tremolo object in the stem (or else the stem might not be
3219         long enough).
3220
3221 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3222
3223         * lily/ttf.cc (print_trailer): only print existing glyphs.
3224
3225 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3226
3227         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3228         position the tremolo based on the position of the notehead.
3229
3230         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3231         notes and update the texidoc line with the new positioning rules.
3232         
3233 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3234
3235         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3236
3237         * scripts/lilypond-book.py (Module): set default for linewidth if
3238         preamble not found.
3239
3240 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3241
3242         * VERSION (PACKAGE_NAME): release 2.9.0.
3243
3244         * input/regression/stem-tremolo-position.ly: new file.
3245
3246         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3247
3248 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3249
3250         * lily/stem-tremolo.cc (print): position
3251         the tremolo depending only on the end of the stem
3252         and not on the notehead
3253         (raw_stencil): center, on the middle staff line, the
3254         flag that is closest to the end of the stem (previously
3255         the bottom flag)
3256         (calc_width): add this callback to shorten a tremolo when
3257         it is beamed or it is stemup with a flag
3258         (style): add this callback to make a tremolo rectangular when
3259         it is beamed or it is stemup with a flag
3260         (rotated_box): this is like Lookup::beam but makes a rotated
3261         rectangle instead of a parallelogram
3262
3263         * lily/stem.cc (calc_stem_info): make sure the stem
3264         is long enough to fit the tremolo
3265         (calc-length): reduce the length of tremolo stems since the
3266         tremolo code is now capable of better positioning
3267
3268         * scm/define-grobs.scm: make calc_width the default beam-width
3269         callback for stem-tremolo and add the style callback
3270                 
3271 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3272
3273         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3274         case. 
3275
3276 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3277
3278         * lily/ttf.cc (make_index_to_charcode_map): restore old
3279         cmap. 
3280
3281 2006-03-28  Werner Lemberg  <wl@gnu.org>
3282
3283         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3284
3285 2006-03-28  Graham Percival  <gpermus@gmail.com>
3286
3287         * THANKS: update for 2.9, add section for Documentation helpers.
3288
3289         * Documentation/topdocs/NEWS.tely: compile fix.
3290
3291         * Documentation/user/ basic-notation, global, advanced-notation,
3292         examples.itely: minor fixes from mailist.
3293
3294 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3295
3296         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3297         note heads. 
3298
3299         * lily/ttf.cc (print_trailer): use it.
3300
3301         * lily/pango-font.cc (get_unicode_name): new function.
3302
3303         * lily/ttf.cc (make_index_to_charcode_map): move function from
3304         open-type-font.cc
3305         (print_trailer): substitute uniXXXX name if applicable. 
3306
3307         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3308         (pango_item_string_stencil): use it to generate uniXXXX names.
3309
3310         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3311         note heads, for uniform widths in shape note output.
3312         (overdone_heads): hmm. remove them again.
3313
3314         * scripts/lilypond-book.py (output): add links to filenames.
3315
3316         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3317
3318         * lily/note-collision.cc (get_clash_groups): only consider when
3319         Note_column::dir <> CENTER. 
3320
3321         * scripts/lilypond-book.py (get_option_parser): init output_name
3322         to ''. 
3323
3324 2006-03-24  Graham Percival  <gpermus@gmail.com>
3325
3326         * Documentation/topdocs/NEWS.tely: add @end itemize
3327
3328         * Documentation/user/ global, advanced-notation: minor
3329         stuff from mailist.
3330
3331 2006-03-23  Graham Percival  <gpermus@gmail.com>
3332
3333         * Documentation/user/ lilypond.tely, music-glossary,
3334         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3335
3336 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3337
3338         * mf/GNUmakefile: don't install .enc files.
3339
3340         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3341
3342         * VERSION (PATCH_LEVEL): bump to 2.9.0
3343
3344 2006-03-22  Graham Percival  <gpermus@gmail.com>
3345
3346         * Documentation/user/advanced-notation.itely: minor fixes
3347         from mailist.
3348
3349 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3350
3351         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3352
3353         * branch lilypond_2_8
3354
3355 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3356
3357         * scripts/lilypond-book.py (samefile): new function, for windoze
3358         compatibility.
3359
3360 2006-03-21  Graham Percival  <gpermus@gmail.com>
3361
3362         * ly/engraver-init.ly: add info about StaffGroup.
3363
3364 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3365
3366         * input/regression/stem-direction-context.ly: idem.
3367
3368         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3369
3370         * THANKS: add Mats.
3371
3372         * input/regression/page-layout-twopass.ly: comment out \markup so
3373         tweak-file is left.
3374
3375         * lily/instrument-name-engraver.cc (finalize): add to instrument
3376         name global System. This also fixes chopped instrument names, but
3377         doesn't crash when there are slurs/beams.
3378
3379         * lily/slur-configuration.cc (add_score): disallow negative slur
3380         scores.
3381         
3382 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3383
3384         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3385
3386         * lily/instrument-name-engraver.cc (process_music): kludge: add
3387         InstrumentName spanner to axis group of left bound. Fixes chopped
3388         off instrument names in EPS images.
3389
3390         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3391
3392         * scripts/abc2ly.py (option_parser): update to 2.7.40
3393
3394 2006-03-20  Graham Percival  <gpermus@gmail.com>
3395
3396         * THANKS: move small doc contributors to SUGGESTIONS.
3397
3398         * Documentation/user/ basic-notation, advanced-notation,
3399         global: small changes from mailist.
3400
3401 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3402
3403         * Documentation/user/advanced-notation.itely (Text marks): update
3404         for new rehearsalMarkAlignSymbol convention.
3405
3406         * VERSION (PATCH_LEVEL): bump version.
3407
3408         * input/test/instrument-name-align.ly: new file.
3409
3410         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3411
3412         * input/test/instrument-name-align.ly: new file. Document how to
3413         align instrument names.
3414
3415         * lily/mark-engraver.cc: remove properties.
3416
3417         * scm/define-context-properties.scm
3418         (all-user-translation-properties): remove align symbol properties
3419         for barnumber/reh. mark.
3420
3421         * lily/break-align-interface.cc (self_align_callback): new
3422         interface, new function. Look at complete alignment. This handles
3423         tunable break alignments in case break-align-symbols are missing.
3424
3425         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3426
3427         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3428
3429         * python/convertrules.py (conv): mark/bar number alignment rule.
3430
3431         * lily/break-align-interface.cc (calc_positioning_done): also
3432         store offset from last visible break-alignment to its
3433         neighbor. This makes alignment on non-visible objects more reliable.
3434
3435         * po/lilypond.pot (Module): ran po-replace.
3436
3437         * input/regression/tie-single-manual.ly (Module): new file.
3438
3439         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3440         look at has_manual_position_.
3441         (from_ties): set has_manual_position_ if tie has staff-position set.
3442
3443         * lily/tuplet-bracket.cc (calc_positions): idem.
3444
3445         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3446         doesn't span time.
3447
3448 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3449
3450         * scm/define-markup-commands.scm (smallCaps): new markup command
3451         for turning a text to small caps using smaller font size and upper
3452         casing.
3453
3454 2006-03-17  Graham Percival  <gpermus@gmail.com>
3455
3456         * Documentation/user/ examples, instrument-notation,
3457         advnaced-notation: minor fixes from mailist.
3458
3459 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3460
3461         * Documentation/user/tutorial.itely (First steps): change example
3462         to verbatim.  
3463
3464 2006-03-17  Graham Percival  <gpermus@gmail.com>
3465
3466         * Documentation/user/ examples, advanced: minor changes from mailist.
3467
3468         * THANKS: add Geoff Horton, for documentation stuff.
3469
3470 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3471
3472         * python/lilylib.py (system): revert have_select kludge.
3473
3474         * Documentation/user/tutorial.itely (Commenting input files):
3475         update version numbers in doc. 
3476
3477         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3478         bound-padding to multi-measure-interface
3479
3480 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3481
3482         * input/test/engraver-example.ily: update version number.
3483
3484         * VERSION (PACKAGE_NAME): release 2.7.39
3485
3486         * lily/note-spacing.cc (get_spacing): heighten threshold where
3487         accidentals/arpeggios influence previous spacing fully.
3488
3489         * lily/rest.cc (y_offset_callback): only use direction if
3490         staff-position wasn't set before.
3491
3492         * lily/bar-number-engraver.cc: add support for
3493         barNumberAlignSymbol. 
3494         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3495
3496         * lily/pointer-group-interface.cc (set_ordered): new function. 
3497         (add_unordered_grob): new function.
3498
3499         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3500         to ordered, unless the opposite has been proved.  This fixes
3501         random reordering of large object groups across linebreaks,
3502         eg. beams.
3503
3504         * lily/main.cc (do_chroot_jail): printf format fix.
3505
3506         * lily/tie-formatting-problem.cc (generate_configuration):
3507         multiply y-shift for dot with direction.
3508  
3509         * scm/define-markup-commands.scm (note-by-number): put (magstep
3510         size) in y-attach too.
3511
3512         * Documentation/topdocs/NEWS.tely (Top): show override.
3513
3514         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3515         direction for stems.
3516         
3517 2006-03-15  Graham Percival  <gpermus@gmail.com>
3518
3519         * Documentation/user/ changing-defaults, global: minor
3520         fixes from mailist.
3521
3522 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3523
3524         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3525
3526         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3527         breakable items after uniformly stretched notes.
3528
3529         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3530         outline with outer edge of note heads. This prevents infinity
3531         problems with tied whole notes.
3532
3533         * scripts/lilypond-book.py (do_file): use os.popen
3534
3535         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3536
3537 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3538
3539         * Documentation/user/invoking.itely: Add ragged-right to bug report
3540         guidelines.
3541
3542 2006-03-14  Graham Percival  <gpermus@gmail.com>
3543
3544         * Documentation/user/global.itely: small fix from mailist.
3545
3546 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3547
3548         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3549         file descriptor returned by tempfile.mkstemp() when writing
3550         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3551         on mingw.
3552
3553 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3554
3555         * po/fi.po: newline bugfix.
3556
3557 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3558
3559         * scm/paper.scm (paper-alist): Rounding fixes.
3560
3561 2006-03-13  Graham Percival  <gpermus@gmail.com>
3562
3563         * Documentation/user/ changing-defaults, instrument-notation,
3564         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3565
3566 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3567
3568         * po/fi.po: update.
3569
3570 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3571
3572         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3573         mailto: to http:// 
3574
3575         * python/lilylib.py (print_environment): move ps_page_count to
3576         lilypond-book.py
3577
3578 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3579
3580         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3581
3582         * scm/framework-ps.scm (embed-document): new function. Use to
3583         embed PFA files.
3584
3585         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3586
3587 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3588
3589         * Documentation/user/instrument-notation.itely (Setting simple
3590         songs): Added \book{...} around the full example, so the separate
3591         markups are included in the printed example. 
3592
3593 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3594
3595         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3596         tmphandle.
3597
3598         * python/lilylib.py (system): rewrite system() using
3599         subprocess. Remove >& redirection trickery.
3600
3601 2006-03-11  Graham Percival  <gpermus@gmail.com>
3602
3603         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3604         notation-appendices.itely: minor fixes from mailist.
3605
3606 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3607
3608         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3609         unsplit man also needs images.
3610
3611         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3612
3613         * VERSION (PACKAGE_NAME): 2.7.38 released.
3614
3615 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3616
3617         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3618         log in output dir.
3619
3620 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3621
3622         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3623         respects the Score.skipTypesetting property.
3624         
3625 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3626
3627         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3628         Prolog. No %%EOF after CFF file.
3629
3630 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3631         
3632         * lily/constrained-breaking.cc (get_max_systems): used to return a
3633         much too big value
3634         (combine_demerits): use pointers to reduce copying data
3635         (calc_subproblem): idem
3636         (get_page_penalty): add page turn penalties
3637         
3638 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3639
3640         * Documentation/user/invoking.itely (Invoking lilypond): better
3641         explanation of -e usage.
3642
3643         * lily/main.cc (main_with_guile): don't append to
3644         init_scheme_code_string
3645
3646         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3647
3648         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3649
3650         * scripts/convert-ly.py (do_options): don't print help for
3651         --show-rules rule.
3652
3653         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3654         @code and @example. Update from texinfo.tex from CVS.
3655
3656 2006-03-08  Graham Percival  <gpermus@gmail.com>
3657
3658         * Documentation/user/scheme-tutorial.itely: clarifies distances
3659         measured in staff-spaces.
3660
3661 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3662
3663         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3664         consider[k] is true.
3665
3666         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3667
3668         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3669         consider columns that have originals.  Unifies spacing for mm
3670         rests around line breaks.
3671
3672         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3673         (set_text_rods): idem.
3674         (calculate_spacing_rods): new function: share code between
3675         set_text_rods and set_spacing_rods.
3676         (set_text_rods): take extents of bounds into account.  
3677
3678 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3679
3680         * Documentation/user/basic-notation.itely (Writing music in
3681         parallel): don't use relative.
3682
3683 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3684
3685         * ly/music-functions-init.ly (Module): add shiftDurations
3686
3687         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3688
3689         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3690
3691         * ly/engraver-init.ly: init vocalName to nil.
3692
3693 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3694
3695         * scm/music-functions.scm (music->make-music): bugfix,
3696         KeyChangeEvents are now handled correctly.
3697
3698         * scripts/lilypond-book.py: Add --debug option.
3699
3700 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3701
3702         * python/lilylib.py: add tempfile.
3703
3704 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3705
3706         * VERSION (PACKAGE_NAME): release 2.7.37
3707
3708         * python/lilylib.py (ps_page_count): remove make_ps_images().
3709         (ps_page_count): remove mkdir_p
3710         (system): remove cleanup_temp.
3711         (exit): remove lilypond_version_(check)
3712         (error_log): remove pseudo_filter_p
3713         remove read_pipe
3714         remove cp_to_dir
3715         remove identify
3716
3717         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3718         use __main__
3719
3720         * lily/accidental-engraver.cc (make_standard_accidental): only add
3721         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3722
3723         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3724         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3725         Make incompatibilities.
3726
3727         * scm/output-ps.scm (grob-cause): replace backslashes by /
3728         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3729
3730 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3731
3732         * cygwin/GNUmakefile: Install fixes.
3733
3734         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3735
3736         * lily/note-head.cc (head::get_balltype): Compile fix.
3737
3738         * flower/file-name.cc (dos_to_posix): Flower string fix.
3739
3740 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3741
3742         * python/lilylib.py: pychecker cleanups.
3743
3744         * scripts/lilypond-book.py
3745         (Lilypond_snippet.output_print_filename): pychecker cleanups
3746
3747         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
3748
3749         * python/lilylib.py (underscore): remove identify() , warranty()
3750
3751         * ps/music-drawing-routines.ps: change Border routine for GSView
3752         compatibility.
3753
3754         * lily/stem.cc (height): use quantize-positions.  This triggers
3755         set_stem_lengths, so scripts on beamed stems are handled correctly.
3756
3757         * lily/side-position-interface.cc (aligned_side): check if edges
3758         of script are inside staff. Fixes accent of edge of the staff.
3759
3760         * input/regression/staccato-pos.ly: more examples.
3761
3762         * stepmake/aclocal.m4 (depth): fix bashism.
3763
3764         * lily/lyric-combine-music-iterator.cc: move from
3765         new-lyric-combine-iterator.cc
3766         (process): add pending_grace_lyric_ member to delay lyrics on
3767         grace notes.
3768
3769         * lily/system-start-text.cc (print): suicide if we don't have any
3770         elements. Fixes hara kiri'd instrument names.
3771
3772         * scripts/mup2ly.py (Module): remove.
3773
3774 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3775
3776         * Documentation/user/global.itely (A single music expression):
3777         close @lilypond properly
3778
3779         * lily/volta-bracket.cc (modify_edge_height): change from
3780         after_line_breaking_callback. Suicide last bracket if appropriate.
3781  
3782         * python/lilylib.py: strip getopt support
3783
3784         * scripts/etf2ly.py (do_options): use optparse
3785
3786         * scripts/midi2ly.py: optparse, strip lilylib copy. 
3787
3788         * scripts/abc2ly.py (voices): use optparse.
3789
3790         * stepmake/stepmake/generic-vars.make: new function absdir.
3791
3792         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
3793
3794         * scripts/lilypond-book.py (find_file): use global_options for
3795         include path
3796
3797         * scm/ps-to-png.scm (ps-page-count): prevent null characters
3798         entering C code.
3799
3800 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3801
3802         * python/lilylib.py (get_global_option): ughness for extracting
3803         global options from lilylib.
3804         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
3805
3806         * scripts/lilypond-book.py (get_option_parser): use optparse for
3807         option handling.  Put options in global_options variable.
3808
3809 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
3810
3811         * Documentation/index.html.in: clarify.
3812
3813 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3814
3815         * scm/layout-page-layout.scm (write-page-breaks): add a
3816         music-system-heights property to the page layout output.
3817
3818         * scm/page.scm (make-page-stencil): take footer into account when
3819         computing the 'space-left page property
3820         (annotate-space-left): take footer into account when annonating
3821         space left.
3822
3823 2006-02-28  Graham Percival  <gpermus@gmail.com>
3824
3825         * Documentation/user/ advanced-notation, global: more (final)
3826         docs for music expressions, removed special fermatas.
3827
3828 2006-02-27  Graham Percival  <gpermus@gmail.com>
3829
3830         * Documentation/user/ basic-notation, global: minor changes
3831         from mailist.
3832
3833 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3834
3835         * scm/framework-ps.scm:         
3836         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
3837         layer for inf? and nan? from framework-ps to lily-library.
3838
3839 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3840
3841         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
3842         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
3843
3844         * buildscripts/substitute-encoding.py (Module): remove file.
3845
3846         * mf/GNUmakefile: more PFA strippage.
3847
3848         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
3849
3850         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
3851         generation
3852
3853         * scm/framework-ps.scm: remove font name munging.
3854
3855         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
3856
3857 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3858
3859         * scm/markup.scm (define-markup-command): change
3860         def-markup-command to define-markup-command
3861
3862         * scm/music-functions.scm (define-music-function): change
3863         def-music-function to define-music-function.
3864
3865         * python/convertrules.py (conv): rules for def-music-function
3866         and def-markup-commands
3867
3868         * Documentation/user/programming-interface.itely,
3869         input/no-notation/display-lily-tests.ly,
3870         input/regression/lily-in-scheme.ly,
3871         input/regression/markup-user.ly,
3872         input/regression/music-function.ly, input/regression/tie-chord.ly,
3873         scm/fret-diagrams.scm, ly/music-functions-init.ly,
3874         ly/gregorian-init.ly: use new macro names (define-music-function,
3875         define-markup-command).
3876
3877 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3878
3879         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
3880         (output): add comments to lp-book latex output.
3881
3882         * GNUmakefile.in (footifymail): use gmane address for webpage bug
3883         address.
3884
3885 2006-02-23  Graham Percival  <gpermus@gmail.com>
3886
3887         * Documentation/user/ tutorial, global: minor changes.
3888
3889 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3890
3891         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
3892         blocks (for make 3.80)
3893
3894         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
3895         \notemode so that user should not have to explicitely type it.
3896
3897         * scm/define-music-display-methods.scm: various
3898         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
3899         constructs)
3900
3901         * input/no-notation/display-lily-tests.ly: new tests for
3902         \applyOutput and \applyContext
3903
3904 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3905
3906         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
3907         changed it slightly so that the number of systems returned by
3908         solve () will be the same as the last value passed to resize
3909         (). I've also added more documentation, removed casts, fixed style
3910         problems and put in some recovery if constraints aren't satisfied."
3911
3912 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
3913
3914         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
3915         for emacs < 22 compatibility.
3916         (count-rexp): Use it.
3917         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
3918         substring juggling (Milan Zamazal).
3919
3920 2006-02-23  Graham Percival  <gpermus@gmail.com>
3921
3922         * Documentation/user/ basic-notation, advanced-notation,
3923         global.itely, invoking.itely, tutorial,itely:
3924         minor fixes from mailist.
3925
3926         * scm/define-markup-commands.scm: improve docs of \filled-box.
3927
3928 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
3929
3930         * Documentation/index.html.in: changes concern the previous release.
3931
3932         * input/regression/+.ly: cultivate typographical terminology.
3933
3934 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3935
3936         * scm/define-grob-interfaces.scm (parentheses-interface): add
3937         padding to parentheses-interface.
3938
3939         * Documentation/user/GNUmakefile: remove $(CROSS) support from
3940         Documentation/user/GNUmakefile. Use --disable-documentation for that.
3941
3942         * VERSION (PATCH_LEVEL): release 2.7.36
3943
3944         * lily/slur.cc: add avoid-slur (ugh.)
3945         
3946         * lily/slur-configuration.cc (fit_factor): oops, skip point if
3947         intersection gets smaller. This fixes slurs over extreme points.
3948
3949         * lily/melody-engraver.cc (stop_translation_timestep): ignore
3950         stems with neutral-direction set.
3951
3952         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
3953
3954         * lily/open-type-font.cc (load_table): format error.
3955
3956         * lily/change-iterator.cc (process): format fix.
3957
3958         * flower/include/international.hh (_f): idem.
3959
3960         * flower/include/std-string.hh: add format printf attribute.
3961
3962         * scm/define-grobs.scm (all-grob-descriptions): height of all
3963         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
3964
3965         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
3966         ambitus lines.
3967
3968         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
3969
3970 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
3971
3972         * input/regression/: upgraded syntax for some files.
3973
3974         * THANKS: Add bughunters.
3975
3976 2006-02-22  Graham Percival  <gpermus@gmail.com>
3977
3978         * Documentation/user/ invoking.itely, advanced-notation.itely,
3979         global.itely: long-awaited "let's make chapter 10 not suck"
3980         update.  Rearrange chapter 10; now called "global issues",
3981         addresses file structure, etc.  Some info from other files
3982         moved into global.itely.
3983
3984 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3985
3986         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
3987         catch trill-span-event notes.
3988
3989         * Documentation/user/examples.itely (Ancient notation templates): typo.
3990         (Jazz combo): typo.
3991
3992         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
3993
3994         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
3995
3996         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
3997
3998         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
3999
4000         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4001         froum Laissez_vibrer_engraver.
4002
4003         * ly/declarations-init.ly (repeatTie): add \repeatTie
4004
4005         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4006
4007         * scm/define-grob-properties.scm (all-user-grob-properties): add
4008         head-direction property.
4009
4010         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4011         from_lv_ties. Take head direction argument.
4012
4013         * lily/semi-tie-column.cc: rename from
4014         laissez-vibrer-tie-column.cc. Rename class too.
4015
4016         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4017         class too.
4018
4019         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4020
4021         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4022         0 case.
4023         (find_breaks): idem.
4024
4025 2006-02-21  Graham Percival  <gpermus@gmail.com>
4026
4027         * Documentation/user/advanced-notation.itely: fixed make-moment]
4028         example.
4029
4030         * Documentation/user/basic-notation.itely: more clarification to
4031         transpose.
4032
4033 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4034
4035         * lily/include/constrained-breaking.hh (class
4036         Constrained_breaking): new file.
4037
4038         * lily/constrained-breaking.cc (resize): new file.
4039
4040         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4041
4042         * Documentation/user/advanced-notation.itely (Clusters): insert
4043         end ignore too.
4044
4045         * lily/tie-column.cc (calc_positioning_done): support for
4046         tie-score debugging
4047
4048         * lily/tie-formatting-problem.cc
4049         (generate_extremal_tie_variations): factor out.
4050         (score_ties_configuration): annotate all tie 
4051         (print_ties_configuration): new routine.
4052         (generate_configuration): nudge extremal ties outside of the head
4053         Y extents.
4054         (score_ties_configuration): oops. convert to staff-space before
4055         determining position symmetry.
4056
4057 2006-02-20  Graham Percival  <gpermus@gmail.com>
4058
4059         * Documentation/user/*-notation.itely: misc minor editing,
4060         shifting doc sections around.
4061
4062         * Documentation/user/*-notation-itely, global.itely,
4063         changing-defaults.itely: added new stuff from NEWS.
4064
4065 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4066
4067         * po/fi.po: update.
4068
4069 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4070
4071         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4072         lilypond --verbose for lp-book.
4073
4074         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4075         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4076
4077         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4078         $(buildscript-dir) iso. absolute depth.
4079
4080         * buildscripts/genicon.py (dir): thinko.
4081
4082         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4083
4084 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4085
4086         * scm/output-lib.scm: swap darkcyan/darkyellow
4087
4088         * THANKS: Add bughunters.
4089
4090 2006-02-19  Graham Percival  <gpermus@gmail.com>
4091
4092         * Documentation/user/programming-interfaces.itely: fixed example.
4093
4094         * Documentation/user/instrument-notation.itely: fix @{ @}.
4095
4096         * scm/script.scm: add avoid-slur for \open.
4097
4098 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4099
4100         * lily/tie-formatting-problem.cc (score_configuration): use
4101         sliding score for min-length. 
4102
4103         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4104         spaghetti for icons.
4105
4106         * buildscripts/genicon.py (program_name): new file.
4107
4108         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4109         in outline too.  
4110         (generate_configuration): for small ties, also look for collisions
4111         at Y + DIR*h + DELTA_Y.
4112         (get_variations): consider variation for dot positions too.
4113
4114         * lily/side-position-interface.cc (aligned_side): take abs for
4115         quantized rounded position. Fixes tenuto below staff.
4116
4117         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4118         markers when necessary.
4119
4120         * lily/program-option.cc (internal_set_option): add
4121         strict_infinity_checking option.
4122
4123         * scm/output-lib.scm (cyan): swap yellow and cyan.
4124
4125 2006-02-19  Graham Percival  <gpermus@gmail.com>
4126
4127         * darwin.patch: trivial linenumber update.
4128
4129         * Documentation/user/ {various}: `\context foo = named' changed
4130         to `\new foo = "name"' in docs.
4131
4132 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4133
4134         * scm/stencil.scm (annotate-y-interval): use it.
4135
4136         * scm/lily-library.scm (interval-sane?): new function.
4137
4138         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4139         tfm_checksum stuff.
4140
4141         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4142         common refpoint.
4143
4144         * flower/include/std-vector.hh (iterof): add iterof macro.
4145
4146         * lily/enclosing-bracket.cc (width): new function.
4147
4148         * lily/align-interface.cc (align_elements_to_extents): reinstate
4149         warning.
4150
4151 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4152
4153         * Documentation/index.html.in: fix spelling: thankyous.
4154
4155 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4156
4157         * lily/lyric-hyphen.cc: typo.
4158
4159 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4160
4161         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4162         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4163         builds don't work. 
4164
4165         * VERSION: release 2.7.35
4166
4167         * lily/beam.cc (get_default_dir): oops. Take abs () for
4168         extremes[DOWN].
4169         (get_default_dir): use extreme position criterion only in absence
4170         of forced stem directions.
4171
4172         * VERSION (PATCH_LEVEL): bump VERSION.
4173
4174         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4175         dependencies. Necessary for -jX builds.  
4176
4177 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4178
4179         * lily/relocate.cc (setup_paths): Yet another const fix.
4180
4181 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4182
4183         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4184
4185         * lily/relocate.cc (setup_paths): oops.
4186
4187 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4188
4189         * Documentation/index.html.in: order links: html before PDF.
4190
4191 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4192
4193         * lily/tie-column-format.cc (Module): remove.
4194
4195         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4196
4197         * lily/text-spanner.cc (print): idem.
4198
4199         * lily/dynamic-text-spanner.cc (print): only print line if longer
4200         than dash-period.
4201
4202         * lily/auto-change-iterator.cc (change_to): formatting.
4203
4204         * lily/beam.cc (get_default_dir): take extreme note head as input
4205         for stem direction.
4206
4207         * lily/tie.cc (get_default_dir): only look directions for visible
4208         stems. 
4209
4210         * lily/side-position-interface.cc (aligned_side): oops. Don't
4211         mutiply with direction. This fixes quantized (staccato, tenuto)
4212         scripts below notes.
4213
4214         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4215         direction. Fixes c-lyrics-center-align.ly
4216
4217 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4218
4219         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4220         constructor.
4221
4222         * lily/std-string.cc:
4223         * lily/include/std-vector.hh (split_string): Move and rename from
4224         lily/include/misc.hh, lily/misc.cc.  Update callers.
4225
4226 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4227
4228         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4229
4230 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4231
4232         * flower/test-file.cc: New file.
4233
4234         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4235         libraries.
4236
4237         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4238
4239 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4240
4241         * flower/include/file-storage.hh: remove file.
4242
4243         * lily/include/midi-item.hh (class Midi_track): idem.
4244
4245         * lily/include/source.hh (class Sources): idem.
4246
4247         * lily/include/performance.hh (class Performance): use vector
4248         iso. Cons<>
4249
4250         * flower/include/cons.hh (class Cons): remove file.
4251
4252         * flower/include/flower-proto.hh: remove template cruft.
4253
4254         * lily/include/font-metric.hh: use size_t not vsize for indices.
4255
4256         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4257         from proto.
4258
4259         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4260
4261         * lily/include/paper-book.hh (class Paper_book):
4262         make get_system_specs() public.
4263
4264         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4265         the force=10000 case if we don't have a current-best. 
4266
4267         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4268         vsize 
4269
4270         * flower/include/flower-proto.hh: remove outdated templates.
4271
4272         * scm/page.scm: use annotate-spacing
4273
4274 2006-02-15  Graham Percival  <gpermus@gmail.com>
4275
4276         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4277
4278         * THANKS: moved Erlend Aasland to contributors.
4279
4280 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4281
4282         * config.hh.in: remove HAVE_PANGO_16
4283
4284         * lily/tuplet-bracket.cc (calc_positions): multiply with
4285         staff-space for beam case. This fixes tuplets+beams on scaled
4286         staves.
4287
4288         * config.hh.in: remove all Kpathsea related defines.
4289
4290         * lily/dot-column.cc (side_position): reach stem via dots->
4291         head->stem. Inspect all stems for dot collisions. 
4292
4293         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4294         stem handling.
4295
4296         * lily/bar-number-engraver.cc (process_music): document function
4297         of whichBar.
4298
4299         * lily/score.cc (default_rendering): add pscore, not systems
4300         themselves.
4301
4302         * lily/paper-book.cc (get_system_specs): separate generation of
4303         titles and systems.
4304
4305         * flower/include/std-vector.hh: don't include config.hh
4306
4307 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4308
4309         * flower/include/std-vector.hh: Better wrapper compatibility with
4310         std::vector.
4311
4312         * flower/include/flower-proto.hh: Remove cheap forward declaration
4313         attempts.
4314
4315         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4316
4317 2006-02-14  Graham Percival  <gpermus@gmail.com>
4318
4319         * Documentation/user/invoking.itely: add warning about command line.
4320
4321 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4322
4323         * lily/include/lily-proto.hh: add Prob, rm Page.
4324
4325         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4326
4327         * VERSION: release 2.7.34
4328
4329         * lily/relocate.cc (framework_relocation): show canary if
4330         GHOSTSCRIPT_VERSION undefined.
4331
4332         * GNUmakefile.in: remove $(VERSION) symlink.
4333
4334         * lily/relocate.cc (setup_paths): add + 
4335
4336 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4337
4338         * Documentation/index.html.in: specify sizes for all big HTML pages.
4339
4340 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4341
4342         * config.hh.in: remove @FRAMEWORKDIR@
4343
4344         * lily/system-start-text.cc (get_stencil): new file: separate out
4345         system-start-delimiter text support.
4346
4347         * input/**ly: replace \context with \new where appropriate.
4348         
4349         * THANKS: add Don.
4350
4351         * lily/slur-scoring.cc (get_base_attachments): use
4352         robust_relative_extent. This fixes problems with empty paper-columns. 
4353
4354 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4355
4356         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4357
4358         * scm/define-music-properties.scm (all-music-properties):
4359         create-new property.
4360
4361         * lily/context-specced-music-iterator.cc (construct_children):
4362         inspect 'create-new property iso. magical $uniqueContextId context
4363         id.
4364
4365         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4366
4367         * lily/context-key-manager.cc (Module): new file. Encapsulate
4368         object key generation.
4369
4370         * lily/include/context-key-manager.hh (Module): new file.
4371
4372 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4373
4374         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4375         names vertically
4376
4377         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4378         options.
4379         (reloc_b): excise --enable-framework-dir
4380
4381         * lily/relocate.cc (framework_relocation): use getenv
4382         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4383
4384 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4385
4386         * flower/include/std-string.hh: 
4387         * flower/include/std-vector.hh: Finish std:: conversion; move
4388         flower extensions from std:: namespace.  Update users.
4389
4390         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4391         their expansion to vector<*>.  Update users.
4392
4393 2006-02-10  Graham Percival  <gpermus@gmail.com>
4394
4395         * Documentation/user/invoking.itely: add example to File structure.
4396
4397         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4398         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4399
4400 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4401
4402         * ly/paper-defaults.ly: typo.
4403
4404         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4405         set_parent() for parentheses. This will make it show up in bbox
4406         calculations.
4407
4408         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4409         ly:grob-common* functions.
4410
4411         * lily/grob-scheme.cc (LY_DEFINE):
4412         ly:grob-common-refpoint-of-array: new function 
4413         ly:grob-common-refpoint: new function 
4414         ly:grob-relative-coordinate: new function 
4415
4416         * lily/instrument-name-engraver.cc (process_music): use
4417         Text_interface::is_markup(). This fixes \markup on instrument names.  
4418
4419         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4420         for ties and slurs.
4421
4422         * lily/slur.cc (print): idem.
4423
4424         * lily/tie.cc: add line-thickness for ties. 
4425
4426 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4427
4428         * scm/output-svg.scm: Document diversion from GNU coding standards
4429         as a workaround for a bug in Microsoft Internet Explorer.
4430
4431 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4432
4433         * lily/instrument-name-engraver.cc (process_music): use
4434         is_markup() iso. is_string()
4435
4436         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4437
4438         * lily/percent-repeat-engraver.cc (process_music): only look at
4439         main_part_ for % repeats.
4440
4441         * lily/stem-tremolo.cc (get_beam_translation): new function.
4442         (calc_slope): new function.
4443         (height): don't use real slope.
4444
4445 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4446
4447         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4448         new connect-to-neighbor, control-points and staff-padding
4449         properties to make ligature brackets showing up again.
4450
4451 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4452
4453         * VERSION: release 2.7.33
4454
4455         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4456         too many.
4457
4458         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4459         remove applyOutput example.
4460         (Objects connected to the input): document \tweak, \parenthesize
4461
4462         * lily/relocate.cc (prefix_relocation): allow "current"
4463         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4464         changing VERSION in a lily tree less painful.
4465
4466         * input/regression/parenthesize.ly: new file. 
4467
4468         * scm/output-lib.scm (parenthesize-element): new function.
4469
4470         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4471
4472         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4473
4474         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4475         cause: accidentals are caused by note heads, not note events. 
4476
4477 2006-02-08  Graham Percival  <gpermus@gmail.com>
4478
4479         * darwin.patch: small patch from Erlend, thanks!
4480
4481         * Documentation/user/basic-notation.itely: add stem-neutral example.
4482
4483         * Documentation/user/putting.itely: clarifications.
4484
4485 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4486
4487         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4488         note, add more guidelines to what should go into NEWS.
4489
4490         * input/sakura-sakura.ly: document how to override font.
4491
4492         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4493
4494 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4495
4496         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4497
4498 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4499
4500         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4501         convertrules.  Add explicit grouping, needed for python2.2.
4502
4503 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4504
4505         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4506
4507 2006-02-07  Graham Percival  <gpermus@gmail.com>
4508
4509         * Documentation/user/global.itely: fix line-width in (text) docs.
4510
4511         * Documentation/user/lilypond-book.itely: same.
4512
4513 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4514
4515         * VERSION (PACKAGE_NAME): release 2.7.32
4516
4517         * Documentation/topdocs/NEWS.tely (Top): document new variable
4518         naming.
4519
4520         * flower/include/array.icc (Message): remove file.
4521
4522         * flower/include/std-vector.hh: make sure vsize and VPOS are
4523         defined for binary_search_bounds().
4524
4525         * flower/std-string.cc (std): add to_string(long unsigned).
4526
4527         * configure.in (gui_b): excise std_string option.
4528         (gui_b): excise std_vector option.
4529
4530         * flower/string.cc (Module): excise flower array & string
4531
4532         * flower/include/std-string.hh: excise flower string.
4533
4534         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4535
4536         * python/convertrules.py (lilypond_version_re_str): require
4537         only numbers and dots in \version string.
4538
4539 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4540
4541         * lily/system-start-delimiter.cc (print): allow style = text too.
4542
4543         * lily/system-start-delimiter-engraver.cc
4544         (acknowledge_system_start_text): new function, also add add to
4545         support of system-start-text (instrument names). This fixes
4546         instrument names on piano staves.
4547
4548         * lily/instrument-name-engraver.cc: rewrite. Use
4549         system-start-delimiter approach. This save memory and cpu.
4550
4551         * scm/define-grobs.scm (all-grob-descriptions): remove
4552         instrument-name from break-alignment.
4553
4554         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4555
4556 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4557
4558         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4559         jobserver going.
4560
4561         * configure.in (std_vector): On by default.
4562
4563         * lily/include/font-metric.hh:
4564         * lily/include/tfm-reader.hh: 
4565         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4566         Update users.
4567
4568         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4569
4570 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4571
4572         * VERSION (PACKAGE_NAME): 2.7.31
4573
4574         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4575         EPS edge at 0, but take minimum with left-overshoot. This fixes
4576         cut off system start delims. 
4577
4578         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4579         hack: add to axis group if not added yet. This fixes hara kiri'd
4580         piano staves.
4581
4582         * lily/hara-kiri-group-spanner.cc
4583         (force_hara_kiri_in_y_parent_callback): fix signatures.
4584
4585         * lily/hairpin.cc (print): check next hairpin to see whether or
4586         not to be continuing.
4587
4588 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4589
4590         * Remove trailing whitespace from makefiles.
4591         
4592         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4593         for earlier gcc.
4594
4595         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4596
4597         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4598
4599         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4600
4601         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4602
4603         * configure.in: Use it.
4604
4605 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4606
4607         * scm/music-functions.scm (pitch-of-note): new function.
4608
4609         * ly/music-functions-init.ly: add \octave and \addquote
4610
4611         * lily/parser.yy (music_function_chord_body): softcode \octave.
4612         (lilypond_header): softcode \addquote
4613
4614 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4615
4616         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4617         array.hh, parray.hh at all.  Getting ready to flip the
4618         configure default.
4619
4620         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4621
4622         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4623         a bit.
4624
4625         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4626
4627 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4628
4629         * flower/include/array.hh: typo. 
4630
4631 2006-02-02  Graham Percival  <gpermus@gmail.com>
4632
4633         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4634
4635 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4636
4637         * flower/include/pqueue.hh: Derive from std::vector.
4638
4639         * flower/include/parray.hh: Conform to std::vector interface.
4640         Update users.
4641
4642 2006-02-02  Graham Percival  <gpermus@gmail.com>
4643
4644         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4645
4646 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4647
4648         * flower/file-path.cc (is_file): remove if 0 section.
4649
4650         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4651         selecting afii61352.
4652
4653 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4654
4655         * flower/include/std-vector.hh (boundary): Oops, reverse.
4656
4657         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4658         remove superfluous `d'.
4659
4660         * flower/include/std-vector.hh (boundary, top): Detach from class.
4661         Remove empty vector shell.
4662
4663         * flower/include/array.hh (reverse, swap): Detach from class.
4664         Update users.
4665         
4666         * flower/include/std-vector.hh
4667         * flower/include/array.hh (concat): Globally change to insert ().
4668
4669         
4670         * flower/include/std-vector.hh
4671         * flower/include/parray.hh
4672         * flower/include/array.hh (elem, elem_ref): Globally replace by
4673         at ().
4674
4675 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4676
4677         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4678
4679         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4680         anticipate on identifier substitutions.
4681
4682 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4683
4684         * flower/include/std-vector.hh (insert): Remove, replace by
4685         std::vector interface.  Update callers.
4686
4687         * flower/include/array.icc (insert): Change signature to
4688         match std::vector interface.
4689         
4690         * flower/include/array.icc (vector_sort): Bugfix.
4691
4692 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4693
4694         * lily/parser.yy (output_def_head_with_mode_switch): new
4695         production. Result: dashes and underscores may be used in the
4696         \paper block.
4697
4698         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4699
4700         * python/convertrules.py (conv): oops. One slash too much.
4701
4702 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4703
4704         * flower/include/std-vector.hh (sort): Remove, replace by
4705         ::vector_sort.  Update callers.
4706
4707         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4708         (sort): Bugfix.
4709
4710         * flower/test-std.cc (vector_sort): New test.
4711
4712 2006-02-01  Graham Percival  <gpermus@gmail.com>
4713
4714         * Documentation/user/putting.itely: fixes from Erik.
4715
4716 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4717
4718         * flower/test-std.cc: Add simple unit test for vector migration.
4719
4720         * stepmake/stepmake/test*: Unit test support.
4721
4722         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4723         update callers.
4724
4725         * flower/include/array.hh (begin, end): Add.
4726         (del, get): Remove.
4727
4728 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4729
4730         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4731         std::string not String. 
4732
4733         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4734         iso UINT_MAX.
4735
4736         * lily/prob.cc (Prob): copy type_ too.
4737
4738         * lily/lily-guile.cc (mangle_cxx_identifier): new
4739         function. Class_bla::foo_bar_[px] ->
4740         ly:class-bla::foo-bar[?!]. Changes throughout
4741
4742 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4743
4744         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4745
4746         * lily/beam.cc (calc_direction): take dir from visible stem in
4747         degenerate case.
4748
4749 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4750
4751         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
4752         Fix -1, >=0 boundary checks for unsigned vsize.
4753
4754         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
4755         loop for unsigned vsize.
4756
4757         * configure.in (--enable-std-vector): New option.
4758         (--enable-std-string): On by default.
4759
4760         * flower/include/std-vector.hh: New file.  Enable switch to
4761         std::vector, update client code.
4762
4763 2006-01-30  Graham Percival  <gpermus@gmail.com>
4764
4765         * scm/document-translation.scm: clarify "this context is also
4766         known as".  Thanks, Werner!
4767
4768         * Documentation/user/putting.itely: small fixes from Don Blaheta.
4769
4770         * Documentation/user/invoking.itely: small fix from Don.
4771
4772 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4773
4774         * scm/lily.scm (define-scheme-options): rename option
4775         preview-include-book-title to book-title-preview
4776         (define-scheme-options): move force-eps-font-include (from paper
4777         block) to eps-font-include -d option.
4778
4779         * VERSION (PATCH_LEVEL): release 2.7.30
4780
4781         * input/bach-schenker.ly (staffPiano): new file.
4782
4783         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
4784
4785         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
4786         credits to Nicolas.
4787
4788         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
4789
4790         * ps/lilyponddefs.ps: remove start-system, stop-system,
4791         start-page fluff. This saves putting { } code on the stack, fixing
4792         stack overflows when including EPS files.
4793
4794 2006-01-29  Graham Percival  <gpermus@gmail.com>
4795
4796         * Documentation/user/putting.itely: minor fixes (comments on -devel).
4797
4798 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4799
4800         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
4801
4802 2006-01-28  Graham Percival  <gpermus@gmail.com>
4803
4804         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
4805
4806 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4807
4808         * input/mutopia/claop.py: Update.
4809
4810 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4811
4812         * input/regression/completion-heads.ly (texidoc): fix.
4813
4814         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
4815
4816         * lily/tie-formatting-problem.cc
4817         (set_ties_config_standard_directions): use abs iso fabs for ints.
4818
4819         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
4820
4821         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
4822         little less than noteheight, to prevent overlaps in chords.
4823
4824         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
4825         head, and fudge stem-attachment.
4826
4827         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
4828
4829         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
4830
4831 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
4832
4833         * lily/main.cc (main): Debugging aid: catch exceptions.
4834
4835         * flower/std-string.cc (to_string): Robustification.  Fixes midi
4836         output with std::string.
4837
4838 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4839
4840         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
4841
4842 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4843
4844         * Fix -DSTRING_UTILS_INLINED.
4845
4846 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4847
4848         * VERSION (PATCH_LEVEL): release 2.7.29
4849
4850         * lily/relocate.cc (setup_paths): mingw uses std string too.
4851
4852         * lily/*.cc: various fixes for substr(ARG).
4853
4854         * lily/sustain-pedal.cc (print): 
4855
4856         * flower/file-name.cc (slashify): use std strings.
4857
4858         * flower/string-convert.cc: remove publib.h
4859
4860         * scm/define-markup-commands.scm (verbatim-file): new markup
4861         command \verbatim-file
4862
4863         * Documentation/topdocs/NEWS.tely: fixup URLs
4864
4865         * input/regression/alignment-vertical-manual-setting.ly (Module):
4866         new file.
4867
4868         * lily/align-interface.cc (align_elements_to_extents): overwrite
4869         translations with numbers in alignment-offsets from left bound
4870
4871         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
4872         (page-translate-systems): new function: take into account Y-offset.
4873
4874         * Documentation/topdocs/NEWS.tely (Top): document new features.
4875
4876         * input/regression/page-layout-manual-position.ly (Module): new
4877         file.
4878
4879 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4880
4881         * flower/file-path.cc (path::parse_path): Oops.
4882
4883         * Finish std::string interface.  For now, use std:: marker
4884         throughout for easy s/r.
4885
4886 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4887
4888         * Documentation/user/putting.itely (Score is a single musical
4889         expression): typo.
4890         (Score is a single musical expression): more typos.
4891
4892         * scm/page.scm (annotate-space-left): thinko.
4893         (annotate-page): more thinkos.
4894
4895 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4896
4897         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
4898         for different \score blocks separately.
4899         (post-process-pages): put write-page-layout into paper block.
4900
4901         * lily/output-def.cc (get_parser): new file.
4902
4903         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
4904         file.
4905
4906         * lily/include/output-def.hh (class Output_def): add parser_ member.
4907
4908         * input/regression/page-layout-twopass.ly (Module): new file.
4909
4910         * scm/lily.scm: remove cpp hack.
4911
4912         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
4913
4914 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4915
4916         * GNUmakefile.in (c-clean): New target.
4917
4918         * flower/include/std-string.hh: String/std::string compatibility:
4919         Use NPOS for `not found' (iso -1), use ssize for length () and pos
4920         type.
4921
4922         * flower/rational.cc: 
4923         * flower/include/rational.hh: 
4924
4925         * flower/offset.cc: 
4926         * flower/include/offset.hh: 
4927
4928         * flower/interval.cc: 
4929         * flower/include/interval.hh: 
4930
4931         * flower/string-convert.cc: 
4932         * flower/include/string-convert.hh: Use std::string [interface].
4933         Update callers.
4934
4935 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
4936
4937         * Documentation/index.html.in: clean up.
4938
4939 2006-01-25  Graham Percival  <gpermus@gmail.com>
4940
4941         * Documentation/user/putting.itely: another new untested doc section.
4942
4943 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4944
4945         * scm/layout-page-layout.scm (write-page-breaks): write
4946         \spacingTweaks #ALIST. Handle grace timing.
4947
4948         * scm/: more imports.
4949
4950         * scm/page.scm (make-page): add footer/header.
4951         (annotate-space-left): revise: only take page argument.
4952         (layout->page-init): new function.
4953
4954         * scm/layout-page-layout.scm (write-page-breaks): preliminary
4955         version of the system/spacing/linebreak hack writing to the output
4956
4957         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
4958         ly:make-prob.
4959
4960         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
4961         ly:spanner-bound
4962
4963 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4964
4965         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
4966
4967         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
4968
4969         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
4970         handling to page.scm
4971
4972         * lily/prob-scheme.cc (LY_DEFINE): new file.
4973         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
4974
4975         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
4976         prob functions.
4977
4978         * lily/music.cc (derived_mark): derive Music from Prob.
4979
4980         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
4981
4982         * lily/prob.cc (Module): Implement Prob (Property Object), object
4983         with shared and r/w property alists.  
4984
4985         * lily/include/prob.hh (Module): new file. Declare Prob.
4986
4987         * flower/string.cc: remove is_empty().
4988
4989         * flower/include/string.hh (class String): remove String:: qualifier.
4990
4991         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
4992         substitute appropriate functions.
4993
4994         * flower/include/string.hh (class String): remove to_str0 and
4995         is_empty(). S&R everywhere.
4996
4997 2006-01-23  Graham Percival  <gpermus@gmail.com>
4998
4999         * Documentation/user/basic-notation.itely: add hairpin
5000         after-linebreak tweak to commonprop.
5001
5002         * Documentation/user/putting.itely: added two new sections.
5003
5004 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5005
5006         * flower/international.cc: 
5007         * flower/include/international.hh: 
5008
5009         * flower/getopt-long.cc: 
5010         * flower/include/getopt-long.hh: Use std::string [interface].
5011         Update callers.
5012
5013         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5014
5015         * stepmake/stepmake/executable-rules.make: Add dependency on
5016         module libraries.
5017
5018 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5019
5020         * flower/file-path.cc: 
5021         * flower/include/file-path.hh: Use std::string [interface].
5022         Update callers.
5023
5024         * flower/direction.cc: 
5025         * flower/axis.cc: Unused.  Remove.
5026
5027         * configure.in (--enable-std-string): New option.
5028
5029         * flower/std-string.cc: 
5030         * flower/include/std-string.hh: New file.
5031
5032         * flower/file-name.cc[STD_STRING]:
5033         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5034
5035 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5036
5037         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5038
5039         * scm/define-markup-commands.scm (with-dimensions):
5040         with-dimensions markup command.
5041
5042         * input/test/font-table.ly: use it.
5043
5044         * lily/open-type-font.cc (glyph_list): new function.
5045
5046         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5047
5048         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5049
5050 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5051
5052         * ly/music-functions-init.ly (parallelMusic): new music function
5053         for parallel music entry.
5054
5055         * scm/define-music-properties.scm (all-music-properties): new
5056         'void music property
5057
5058         * scm/music-functions.scm (ly:music-message): make public, to be
5059         used in music function definitions
5060
5061         * scm/lily-library.scm (collect-music-for-book): discard music
5062         when the 'void property is set.
5063
5064 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5065
5066         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5067
5068         * mf/GNUmakefile: idem.
5069
5070         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5071
5072         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5073
5074         * Documentation/user/notation-appendices.itely (The Feta font):
5075         use it.
5076
5077         * input/test/font-table.ly: new file. Generate font table within lily.
5078
5079         * Documentation/user/notation-appendices.itely (The Feta font):
5080         use new font-table.ly file. 
5081
5082         * stepmake/stepmake/install-out-targets.make
5083         (local-install-outfiles): only create directory if
5084         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5085
5086 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5087
5088         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5089
5090         * VERSION (PACKAGE_NAME): release 2.7.28
5091
5092         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5093         the right font from a Mac dfont.
5094         (write-preamble): don't forget directory, only look at files.
5095
5096         This fixes problems with TTF files in dfonts that don't match
5097         their PostScript names.
5098          
5099         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5100         PS name from TTF font.
5101
5102         * input/regression/tie-manual.ly: document new feature.
5103
5104         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5105
5106         * VERSION (MY_PATCH_LEVEL): bump to .28
5107
5108         * Documentation/user/basic-notation.itely (Ties): add tie examples
5109         refs.
5110
5111         * lily/tie-formatting-problem.cc (score_ties_configuration):
5112         symmetry penalties for outer ties.
5113
5114 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5115
5116         * lily/tie-formatting-problem.cc (generate_configuration) 
5117         (set_manual_tie_configuration): skip non-pair manual
5118         tie-configuration, so you can set individual ties as
5119
5120           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5121
5122         * input/regression/tie-chord.ly: use generateTiePattern to
5123         simplify file.
5124
5125         * lily/tie-formatting-problem.cc (peak_around): new function.
5126         (score_configuration): use sliding criterion for staff line collisions. 
5127         (score_configuration): idem for dot collisions.
5128         (generate_configuration): use separate stem_gap for gap to stem.
5129
5130         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5131         separate penalty factors for x and y distance.
5132         (struct Tie_details): separate penalties for tip and center line collisions.
5133
5134 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5135
5136         * lily/tie-formatting-problem.cc (generate_configuration): make
5137         large ties avoid stafflines in the horizontal section.
5138         (score_configuration): use softcoded penalties
5139         (score_aptitude): idem.
5140
5141         * lily/tie-helper.cc (from_grob): softcode tie details
5142
5143         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5144
5145         * lily/staff-symbol-referencer.cc (on_line): rename from
5146         on_staffline 
5147
5148 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5149
5150         * ly/music-functions-init.ly: remove duplicate tag.
5151
5152         * lily/include/*.hh: GCC 4.1 fixes.
5153
5154 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5155
5156         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5157
5158         * scm/define-music-types.scm: fix bug in desc. string
5159         for OverrideProperty
5160
5161 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5162
5163         * scripts/lilypond-book.py: bugfix
5164
5165         * scm/define-music-types.scm: fix typos.
5166
5167 2006-01-14  Graham Percival  <gpermus@gmail.com>
5168
5169         * Documentation/user/ basic-notation.itely, global.itely,
5170         advanced-notation.itely, instrument-notation.itely: small
5171         additions (bugs and commonly tweaked properties).
5172
5173 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5174
5175         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5176         detection of mingw build.
5177         (MINGW_BUILD): opps.
5178
5179 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5180
5181         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5182         i686-mingw32.
5183
5184 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5185
5186         * scm/music-functions.scm (skip->rest): add skip->rest
5187
5188 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5189
5190         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5191         explicitly.
5192
5193         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5194         config dirs. Aids debugging. 
5195         (display_config): also display config files.
5196
5197 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5198
5199         * VERSION: release 2.7.27
5200
5201         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5202         for determining bar size.
5203
5204         * lily/staff-symbol.cc (print): place lines at distance line-positions
5205
5206         * scm/define-grob-properties.scm (all-user-grob-properties): add
5207         line-positions.
5208
5209         * lily/staff-symbol.cc (height): new function.
5210
5211         * input/regression/staff-line-positions.ly:  new file.
5212
5213 2006-01-06  Graham Percival  <gpermus@gmail.com>
5214
5215         * input/test/add-staccato.ly: remove reference to old file.
5216
5217 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5218
5219         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5220         lilypond binary too.
5221
5222 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5223
5224         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5225
5226 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5227
5228         * scripts/midi2ly.py: Bugfix: Declare datadir.
5229
5230         * make/ly-rules.make:
5231         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5232         that seems to be gone). Fixes make web.
5233
5234         * The grand 2005-2006 replace.
5235
5236         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5237
5238 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5239
5240         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5241         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5242         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5243         like -dgs-font-load.
5244
5245         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5246         remove absolute path to lilypond binary.
5247         
5248 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5249
5250         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5251
5252 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5253
5254         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5255
5256         * mf/GNUmakefile: remove broken dvips map symlink.
5257
5258 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5259
5260         * lily/main.cc: 
5261         * configure.in: Cosmetic fixes.
5262
5263 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5264
5265         * Documentation/user/music-glossary.tely (Pitch names): Added
5266         Spanish pitch names and durations, thanks to Ernesto Gancedo
5267
5268 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5269
5270         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5271         init. Fixes verbose printing of .scm files.
5272
5273         * stepmake/aclocal.m4: add spaces before - options.
5274         
5275 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5276
5277         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5278         of path search in local block variable.
5279
5280 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5281
5282         * configure.in (NCSB_DIR): --enable-ncsb-dir
5283         (LINK_GXX_STATICALLY): denko.
5284
5285         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5286
5287         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5288         use locate to find c059033l.pfb. 
5289         
5290 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5291
5292         * lily/tie-formatting-problem.cc
5293         (problem::generate_base_chord_configuration): Use my_round (was
5294         round).
5295
5296         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5297         do not invoke mbrtowc.
5298
5299         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5300
5301 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5302
5303         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5304
5305 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5306
5307         * Documentation/user/invoking.itely (svg): revise.
5308
5309 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5310
5311         * lily/lexer.ll: use sourcefilename iso. renameinput.
5312
5313 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5314
5315         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5316         <PostScriptName>.ttf instead of c059XXXttf.
5317
5318         * lily/program-option.cc (LY_DEFINE): special support for
5319         --verbose, so it works before option init too.
5320  
5321         * mf/GNUmakefile (local-install): oops.
5322
5323         * lily/lyric-hyphen.cc (print): oops.
5324
5325         * buildscripts/pfx2ttf.fontforge: new file.
5326         
5327         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5328         ($(outdir)/%.ttf): new rule. 
5329
5330         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5331         to LyricHyphen.
5332
5333         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5334         font-size
5335
5336 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5337
5338         * VERSION: release 2.7.26
5339         
5340         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5341
5342 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5343
5344         * lily/font-config.cc (init_fontconfig): verbosity.
5345
5346         * THANKS: add Muziekacademie Lede. 
5347
5348         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5349         (print_score_setup): new function
5350         (convert): read part definition to output staves properly.
5351
5352         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5353         Music_xml notes.
5354
5355         * python/musicexp.py (Output_printer.__init__): use _ in data
5356         members.
5357         (Output_printer.unformatted_output): new function: no formatting,
5358         but count braces.
5359         (Duration.get_length): remove isinstance() checks for
5360         Output_printer everywhere.
5361
5362         * input/regression/lyrics-bar.ly (texidoc): add
5363         Separating_line_group_engraver.
5364
5365 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5366
5367         * lily/relocate.cc (framework_relocation): New function,
5368         factored from set_relocation ().
5369         (prefix_relocation): Rename from set_relocation ().
5370         (setup_paths): Use it.
5371
5372 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5373
5374         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5375         numbers. Patch by Erlend Aasland.
5376
5377 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5378
5379         * lily/font-config.cc (init_fontconfig): print warning if cache
5380         file is not existant.
5381
5382         * lily/main.cc: don't use #ifdef but #if
5383
5384 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5385
5386         * lily/grob-property.cc (internal_set_property): don't abort on
5387         calculation-in-progress.
5388
5389         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5390
5391         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5392         connect-to-neighbor property not connect-to-other
5393
5394         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5395         (LY_DEFINE): oops. don't forget protection.
5396
5397         * flower/parse-afm.cc (Module): strip AFM handling completely.
5398
5399         * lily/stencil-expression.cc: idem.
5400
5401         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5402
5403         * lily/function-documentation.cc (ly_add_function_documentation):
5404         use static member iso. Protected_scm
5405
5406         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5407
5408         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5409
5410 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5411
5412         * lily/relocate.cc (set_env_dir): New function.
5413         (set_relocation): Use it to fix setting PANGO_PREFIX.
5414
5415 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5416
5417         * input/regression/stem-direction-context.ly: remove rest.
5418
5419         * lily/melody-engraver.cc (process_music): restart for bar lines.
5420         (acknowledge_slur): restart for slurs.
5421
5422 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5423
5424         * Documentation/user/invoking.itely: describe how to view SVG 
5425         output using Inkscape which replace embedded fonts with OTF fonts.
5426
5427 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5428
5429         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5430
5431 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5432
5433         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5434         comment.
5435
5436 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5437
5438         * VERSION (PACKAGE_NAME): release 2.7.25
5439
5440         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5441
5442         * input/regression/stem-direction-context.ly: new file.
5443
5444         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5445
5446         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5447         on rest.
5448
5449         * ly/engraver-init.ly: add Melody_engraver
5450
5451         * lily/beam.cc (calc_direction): use default-direction
5452         iso. get_default_direction()
5453
5454         * scm/define-grob-properties.scm (all-user-grob-properties): add
5455         default-direction property.
5456
5457         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5458
5459         * lily/stem.cc (calc_default_direction): remove
5460         Stem::get_default_direction, use default-direction with callback
5461         instead.
5462
5463         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5464
5465         * lily/melody-engraver.cc: new file. Acknowledge stems for
5466         interpolated stem directions. 
5467
5468         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5469
5470         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5471
5472         * lily/slur-configuration.cc (fit_factor): more robust check for
5473         point in curve X-extent.
5474
5475         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5476         (outside_slur_callback): check for 'outside avoidance.
5477
5478         * lily/slur-configuration.cc (score_extra_encompass): don't use
5479         bound->column() == avoid->column() for checking extents, as this
5480         doesn't work for accidentals. 
5481
5482         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5483         DynamicText hardcoding.
5484
5485         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5486         crash if bound stem is NULL
5487
5488         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5489         pedals.
5490
5491 2005-12-22  Graham Percival  <gpermus@gmail.com>
5492
5493         * scm/define-markup-commands.scm: typo.  @code{\raise}
5494         => @code{\\raise}.
5495
5496         * darwin.patch: now used again, includes a
5497         required patch from fink.
5498
5499 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5500
5501         * po/TODO: mention gtranslator along with kbabel.
5502         * po/fi.po: update translations.
5503
5504 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5505
5506         * lily/relocate.cc (setup_paths): Bugfix.
5507
5508 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5509
5510         * lily/slur-configuration.cc (score_extra_encompass): don't use
5511         "avoid" choice for avoid-slur.
5512
5513         * stepmake/bin/install.py (dest): don't create existing dir.
5514
5515 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5516
5517         * stepmake/bin/install.py: Remove file before copying.
5518
5519         * config.make.in: 
5520         * stepmake/aclocal.m4: Do not substitute INSTALL.
5521
5522 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5523
5524         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5525         depend on link-tree.
5526
5527         * lily/relocate.cc (setup_paths): only check path for non-absolute
5528         dir without directory part.
5529
5530         * flower/file-name.cc (is_absolute):  new method.
5531         (is_absolute): check root_ too.
5532
5533 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5534
5535         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5536         relocation code.  Oops, don't comment out too much.
5537
5538         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5539         iso itself.
5540
5541         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5542         compile.
5543
5544 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5545
5546         * .cvsignore: Add install-sh.
5547
5548         * autogen.sh (srcdir): Typo.
5549
5550 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5551
5552         * autogen.sh (srcdir): urg. Touch install-sh.
5553
5554         * stepmake/bin/install-sh (Module): remove.
5555
5556         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5557
5558         * lily/include/relocate.hh: new file.
5559
5560         * lily/relocate.cc: new file. Contain relocation logic.
5561
5562         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5563         (main): read LILYPOND_VERBOSE as the first thing.
5564
5565         * stepmake/aclocal.m4: remove INSTALL variable.
5566
5567         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5568         separate target for making font symlinks.
5569         (documentation-dir): use $(if $(findstring )) for switching off
5570         Documentation.
5571
5572         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5573         something if DOCUMENTATION is no.
5574
5575 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5576
5577         * VERSION: release 2.7.24
5578
5579         * lily/script-column-engraver.cc (stop_translation_timestep):
5580         delay adding to script-column.
5581
5582         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5583
5584         * python/convertrules.py (conv): rule for number-visibility
5585
5586         * lily/slur-configuration.cc (score_extra_encompass): different
5587         distance measure for avoid and inside avoidance.
5588         (score_extra_encompass): use 1/(distance+eps) as penalty.
5589
5590         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5591         encompass objects for generating slur curves.
5592
5593         * lily/slur.cc: use details iso. slur-details property.
5594
5595         * input/regression/slur-tuplet.ly: new file.
5596
5597         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5598
5599         * flower/include/offset.hh (class Offset): new operator /=
5600
5601         * lily/tuplet-number.cc (print): new file, new interface.
5602
5603         * scm/define-grob-properties.scm (all-user-grob-properties):
5604         remove number-visibility property.
5605
5606         * lily/tuplet-bracket.cc (calc_control_points): new function
5607         (calc_connect_to_neighbors): new function.
5608         (print): remove text handling for tuplet numberdef.
5609
5610         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5611         TupletNumbers too. 
5612
5613         * lily/lily-guile.cc (robust_scm2booldrul): new function
5614
5615         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5616
5617         * lily/tuplet-bracket.cc (calc_position_and_height): use
5618         staff-padding to control whether tuplet brackets are over staves.
5619
5620         * lily/grob.cc (suicide): clear dim_caches_.
5621
5622         * lily/dimension-cache.cc (clear): new function.
5623
5624         * lily/grob.cc (extent): swap order of min-extent and extent
5625         calculations. This fixes hara kiri staves. 
5626
5627 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5628
5629         * lily/main.cc: Nitpick: relocation is not based on path, but on
5630         directory (location).
5631
5632 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5633
5634         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5635
5636         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5637
5638         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5639
5640         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5641
5642         * stepmake/stepmake/generic-vars.make (Module): idem.
5643
5644         * stepmake/stepmake/executable-targets.make (default): use it.
5645
5646         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5647
5648         * make/GNUmakefile: don't install make rules.
5649
5650         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5651         slashes.
5652         (prepend_env_path): more verbosity.
5653
5654 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5655
5656         * GNUmakefile.in: add dir argument for find command.
5657
5658         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5659         fixes weird line numbers for point & click.
5660
5661         * lily/source-file.cc (get_counts): init line/column/char counts.
5662
5663 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5664
5665         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5666
5667 2005-12-16  Graham Percival  <gpermus@gmail.com>
5668
5669         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5670         minor fixes from Fredric.  Thanks!
5671
5672 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5673
5674         * ly/music-functions-init.ly: add \bar and \clef music function 
5675
5676         * lily/lily-lexer.cc: idem.
5677
5678         * lily/parser.yy (FIXME): remove BAR and CLEF.
5679
5680 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5681
5682         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5683
5684         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5685         function arguments too
5686
5687         * lily/main.cc (set_relocation): new function.
5688
5689         * scripts/musicxml2ly.py (convert): add \version
5690
5691         * lily/tie.cc: remove get_default_attachments()
5692
5693         * VERSION (PACKAGE_NAME): release 2.7.23
5694         
5695         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5696         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5697
5698         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5699
5700         * lily/tie-formatting-problem.cc (score_ties): new function
5701         (get_variations): new function. Try flipping dirs for collisions.
5702         (generate_optimal_chord_configuration): new function. 1-opt search
5703         for better configuration.
5704
5705         * lily/tie-configuration.cc: new file.
5706
5707         * lily/tie.cc: junk Tie::get_configuration()
5708
5709         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5710         (score_ties_configuration): new function.
5711         (generate_ties_configuration): new function.
5712         (generate_base_chord_configuration): new function.
5713         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5714         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5715
5716         * input/regression/tie-dot.ly: new file.
5717
5718         * lily/tie-formatting-problem.cc (score_configuration): score
5719         tie/dot collisions.
5720
5721         * lily/tie-helper.cc (get_transformed_bezier): new function
5722
5723         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5724
5725         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5726         -undefined suppress iso. -framework Python 
5727
5728         * scm/define-grobs.scm (all-grob-descriptions): set
5729         springs-and-rods (thanks Joe Neeman!)
5730
5731 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5732
5733         * input/no-notation/display-lily-tests.ly (test): 
5734         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5735         changed from \tag #'(a b) to \tag #'a \tag #'b
5736
5737 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5738
5739         * Documentation/topdocs/NEWS.tely: strip out-www.
5740
5741         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5742
5743         * config.make.in (AR): add AR and RANLIB
5744
5745         * flower/libc-extension.cc: include cassert
5746
5747         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
5748         darwin check.
5749
5750 2005-12-11  Graham Percival  <gpermus@gmail.com>
5751
5752         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
5753
5754         * stepmake/stepmake/python-modules-vars.make: define
5755         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
5756
5757         * THANKS: added Johannes Schindelin.
5758
5759 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5760
5761         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
5762
5763         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5764         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
5765
5766         * lily/parser.yy: reorganize file layout.
5767
5768         * ly/music-functions-init.ly: add tweak music function.
5769
5770         * lily/grob-info.cc (ultimate_music_cause): new function:
5771         recursively lookup causes. 
5772
5773         * lily/parser.yy (chord_body_element): allow music functions for
5774         post-events, allow music functions for chord elements. 
5775  
5776         * lily/font-config-scheme.cc (display_fontset): add cast.
5777
5778         * python/convertrules.py (FatalConversionError.sub_syms): \tag
5779         #'(a b) -> \tag #'a \tag #'b rule.
5780
5781         * python/musicexp.py (Output_printer.dump_version): new function
5782
5783 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5784
5785         * lily/parser.yy (FIXME): remove \tag
5786         (FIXME): remove tag_music() function.
5787
5788         * lily/lily-lexer.cc: remove \tag
5789
5790         * ly/music-functions-init.ly: define music-function "tag"
5791
5792         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
5793
5794 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5795
5796         * VERSION (PATCH_LEVEL): release 2.7.22
5797
5798         * input/regression/lyric-hyphen-retain.ly: renew.
5799
5800         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
5801         grob
5802
5803         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
5804         iso. minimum-length property for rods.
5805
5806         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
5807         LyricSpace item to keep lyrics spaced apart.
5808
5809         * ly/engraver-init.ly: remove Separating_line_group_engraver
5810
5811         * Documentation/user/music-glossary.tely: do setfilename before
5812         music-glossary.
5813
5814 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
5815
5816         * Documentation/user/lilypond-book.itely: use `,´ after xref:
5817         See xref documentation, for example.
5818
5819 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5820
5821         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
5822         pending_skip iso. ly_voice[-1]
5823         (main): add if __main__ for debugging.
5824
5825         * python/musicxml.py (Accidental.__init__): new class.
5826
5827         * scripts/musicxml2ly.py (progress): new function
5828         (musicxml_key_to_lily): don't barf on modeless keys.
5829         (create_skip_music): new function.
5830         (musicxml_spanner_to_lily_event): new function. Handle beams too.
5831         (musicxml_note_to_lily_main_event): new function.
5832
5833         * python/musicexp.py (Music.__init__): add comment field.
5834         (NestedMusic.append): new routine.
5835         (SequentialMusic.print_ly): print comment.
5836         (ArpeggioEvent.ly_expression): new class
5837         (BeamEvent.ly_expression): new class
5838         (NoteEvent.__init__): support for cautionary/forced accs.
5839
5840         * lily/lookup.cc (slur): normal order for array loop.
5841
5842         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
5843         to 0.0.
5844
5845         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
5846         collapsed.
5847
5848 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
5849
5850         * scm/music-functions.scm: Make phrasing slurs follow voice direction
5851
5852         * scripts/lilypond-book.py: Introduce option
5853             --preserve-line-breaks, for usage with srcltx
5854
5855 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5856
5857         * scm/output-lib.scm (print-circled-text-callback): draw circle
5858         around text using make-circle-markup.
5859
5860         * Documentation/user/*: strip out-www from file names.
5861
5862 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
5863
5864         * Documentation/user/lilypond.tely (direntry): remove empty lines;
5865         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
5866
5867 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5868
5869         * Documentation/user/GNUmakefile: idem.
5870
5871         * Documentation/user/macros.itexi: strip out-www
5872
5873         * python/rational.py: python 2.3 compat.
5874
5875         * VERSION (PATCH_LEVEL): release 2.7.21
5876
5877         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
5878         option formatting, lilypond style.
5879
5880         * python/musicexp.py: grab from Ikebana: a library for composing
5881         ly music expressions. 
5882         (Output_printer): class for advanced .ly printing.
5883         (eg. tupletting) 
5884
5885         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
5886         convert to pythonesque structure.
5887
5888         * python/rational.py: PD rational number class.
5889
5890         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
5891
5892 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
5893
5894         * lily/part-combine-iterator.cc: Minor bugfix
5895         
5896         * THANKS: Update bughunters
5897
5898 2005-12-02  Werner Lemberg  <wl@gnu.org>
5899
5900         * mf/README: Document process for proper mf2pt1 conversion.
5901
5902         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
5903         overlapping.
5904
5905         * mf/feta-harmonica.mf: Removed.  Unused.
5906
5907 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5908
5909         * scripts/lilypond-book.py (do_file): fix thinkos.
5910
5911 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5912
5913         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
5914         ($(outdir)/parser.cc): 
5915         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
5916
5917 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
5918
5919         * ly/titling-init.ly (tagline): it should be a space between
5920         "Music engraving by LilyPond" and the version number.
5921
5922 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5923
5924         * VERSION (PACKAGE_NAME): release 2.7.20
5925
5926 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5927
5928         * scm/define-markup-commands.scm (pad-to-box): new markup command.
5929
5930         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
5931         1.0.
5932         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
5933
5934 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5935
5936         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
5937
5938         * kpath-guile/: remove directory
5939
5940         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
5941         file. Encapsulate kpathsea using commandline tools.
5942
5943         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
5944         kpathsea) module.
5945
5946 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
5947
5948         * Documentation/user/advanced-notation.itely (Setting automatic
5949         beam behavior): Correct a few typos. Thanks to David Bobroff.
5950
5951         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
5952         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
5953
5954 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5955
5956         * scripts/*.py: gmane address for bugs.
5957
5958 2005-11-28 Pal Benko <benkop@freestart.hu>
5959         
5960         * make/ly-rules.make: add -f switch to mv
5961
5962         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
5963
5964         * lily/bar-line.cc: interpret it
5965
5966 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5967
5968         * configure.in (--disable-documentation): New switch.
5969
5970         * GNUmakefile.in: Use it.
5971
5972         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
5973
5974 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5975
5976         * scripts/lilypond-book.py (do_file): search chunks for
5977         \\begin{document}
5978
5979         * GNUmakefile.in: add copy step in between so we can lose the
5980         out-www directories.
5981
5982 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5983
5984         * lily/pango-font.cc (pango_item_string_stencil): put
5985         geometry.width into glyph-string too.
5986
5987 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5988
5989         * scm/define-music-display-methods.scm (RevertProperty):
5990         (OverrideProperty): Use grob-property-path property, a list of
5991         symbols, instead of grob-property, which used to be a single
5992         symbol.
5993         (BassFigureEvent): a figure can be a plain number, not necessarily a
5994         markup.
5995
5996 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5997
5998         * VERSION: release 2.7.19
5999         
6000         * lily/figured-bass-engraver.cc (process_music): check
6001         figuredBassCenterContinuations first.
6002
6003         * scm/translation-functions.scm (format-bass-figure): make double
6004         sharp larger. 
6005
6006         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6007         determine X-parent.
6008
6009         * lily/system-start-delimiter-engraver.cc: move from
6010         Nested_system_start_delimiter_engraver, rename
6011         Nested_system_start_delimiter_engraver ->
6012         System_start_delimiter_engraver.
6013
6014         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6015         bracket type from hierarchy.
6016
6017 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6018
6019         * lily/rest.cc (y_offset_callback): read staff-position.
6020
6021         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6022         mark after-line-breaking-callback as internal.
6023
6024         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6025
6026 2005-11-25  Werner Lemberg  <wl@gnu.org>
6027
6028         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6029
6030 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6031
6032         * stepmake/bin/add-html-footer.py (do_file): add google
6033
6034         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6035         staff if first_start_ is true.
6036
6037 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6038
6039         * scripts/midi2ly.py (split_track): add __repr__ members.
6040         (track_first_item): only return Item if not None. This fixes a
6041         problem when dumping a track that starts with an empty channel.
6042
6043         * python/midi.c: doc module.
6044
6045 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6046
6047         * Documentation/user/global.itely (Creating MIDI files): Fix
6048         compilation problem.
6049
6050 2005-11-22  Graham Percival  <gpermus@gmail.com>
6051
6052         * Documentation/user/basic-notation.itely: clarify dynamic
6053         padding text.
6054
6055         * Documentation/user/advanced-notation.itely: add unicode
6056         escape control example, whatever that is.  :)
6057
6058         * Documentation/user/global.itely: added "removing dynamics
6059         from MIDI" code.
6060
6061 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6062
6063         * VERSION (PATCH_LEVEL): release 2.7.18
6064
6065         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6066         System_start_delimiter_engraver by
6067         Nested_system_start_delimiter_engraver.
6068
6069         * lily/nested-system-start-delimiter-engraver.cc (struct
6070         Bracket_nesting_node): new class.
6071         (struct Bracket_nesting_group): new class
6072         (struct Bracket_nesting_staff): new class.
6073         (process_music): create hierarchy of grobs. This allows separate
6074         tuning of different SSDs. 
6075
6076         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6077         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6078
6079 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6080
6081         * lily/side-position-interface.cc (aligned_side): multiply
6082         staff_radius by 2.
6083
6084         * lily/script-engraver.cc (make_script_from_event): allow setting
6085         values to '()
6086
6087 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6088
6089         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6090
6091         * scm/define-grobs.scm (all-grob-descriptions): new grob
6092         NestedSystemStartDelimiter.
6093
6094         * input/regression/system-start-heavy-bar.ly: new file.
6095
6096         * lily/nested-system-start-delimiter-engraver.cc: new file.
6097
6098         * lily/nested-system-start-delimiter.cc: new file.
6099
6100         * input/regression/system-start-nesting.ly: new file.
6101
6102         * scm/define-grobs.scm (all-grob-descriptions): use X side
6103         positioning for positioning braces for nested contexts.
6104
6105         * lily/system-start-delimiter.cc (print): don't divide extent by
6106         staff_space.
6107         (print): use style iso. glyph.
6108         (staff_bracket): translate glyph inside routine already.
6109
6110 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6111
6112         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6113         names.
6114
6115 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6116
6117         * scm/define-context-properties.scm
6118         (all-user-translation-properties): rename figuredBassFormatter
6119         from newFiguredBassFormatter.
6120
6121         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6122
6123         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6124
6125         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6126
6127         * lily/beam.cc (calc_beaming): new function.
6128         (calc_shorten): new function.
6129
6130         * THANKS: add Edward Neeman.
6131
6132         * input/regression/accidental-clef-change.ly: new file.
6133
6134         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6135
6136         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6137
6138         * lily/clef-engraver.cc (inspect_clef_properties): reset
6139         localKeySignature for clef changes.
6140
6141 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6142
6143         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6144         add dummy definition that works in Linux and add information in
6145         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6146
6147         * Documentation/user/changing-defaults.itely (Modifying context
6148         plug-ins): Add index for \with.
6149
6150         * Documentation/user/music-glossary.tely (dal segno): Updated
6151         example to version >=2.6.
6152
6153 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6154
6155         * Documentation/user/instrument-notation.itely (Printing chord
6156         names): Reorder \chordmode and \repeat in one example.
6157
6158 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6159
6160         * VERSION: release 2.7.17
6161         
6162         * Documentation/topdocs/NEWS.tely (Top): add note about
6163         refactoring.
6164
6165         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6166         new function. Search region of 3 positions for best tie.
6167         (score_configuration): new function.
6168         (score_aptitude): new function.
6169         (generate_configuration): new function.
6170         (get_configuration): new function.
6171         (Tie_formatting_problem): new function
6172
6173         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6174
6175         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6176
6177         * THANKS: add Eduardo Vieira & Ralph Little
6178
6179         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6180         narrower.
6181
6182         * lily/include/tie-formatting-problem.hh (class
6183         Tie_formatting_problem): add Tie_details to
6184         Tie_formatting_problem. Update calling conventions.
6185
6186         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6187         config.make.
6188
6189         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6190
6191 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6192
6193         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6194         scm/define-context-properties.scm: Maintenance bugfix: make
6195         ligature brackets work again by removing obsolete ligature
6196         primitive callback push/pop.
6197
6198         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6199         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6200         value.
6201
6202 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6203
6204         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6205         used and do not call it a path.
6206         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6207
6208 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6209
6210         * lily/include/tie-formatting-problem.hh (class
6211         Tie_formatting_problem): new file.
6212
6213         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6214
6215         * Documentation/misc/ChangeLog-2.3:  new file.
6216
6217         * lily/audio-staff.cc (output): degarianize.
6218
6219 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6220
6221         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6222         Unset PYTHONOPTIMIZE.  Fixes install if set.
6223
6224 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6225
6226         * python/convertrules.py (conv): add warning about drums. 
6227
6228         * make/stepmake.make: include toplevel-version.make after config.make.
6229
6230         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6231         also allow python2.4
6232
6233         * config.make.in (configure-srcdir): remove GXX GCC vars.
6234
6235         * stepmake/aclocal.m4: don't do non-srcdir build with
6236         symlinks. Use inclusion, so the src directory name can be changed.
6237
6238 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6239
6240         * make/mutopia-vars.make:
6241         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6242         files.
6243
6244 2005-11-13  Werner Lemberg  <wl@gnu.org>
6245
6246         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6247         but the affected path.  This ensures that the (overlapping) outlines
6248         have the same direction, which is a necessary prerequisite for
6249         FontForge's algorithm to remove overlaps.
6250         Formatting.
6251
6252         * mf/feta-haak.mf: Formatting.
6253         (draw_bracket): Slightly modify outline to avoid an unnecessary
6254         corner.
6255         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6256         them from the affected paths.
6257
6258 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6259
6260         * mf/README: remove xpm / accordion notes.
6261
6262         * lily/tie-column-format.cc (set_chord_outline): add dots into
6263         skyline extents. This fixes tie formatting if the left head has dots.
6264
6265         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6266         space inside the staff.
6267         (get_configuration): shift another position if necessary in case
6268         of left head tie  
6269
6270 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6271
6272         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6273         buildscript-dir iso. $(depth)/buildscripts.
6274
6275         * tex/GNUmakefile (local-uninstall): remove
6276         music-drawing-routines.ps juggling.
6277
6278         * stepmake/stepmake/install-targets.make (local-install-files):
6279         prepend src-dir to install targets.
6280
6281         * lily/system-start-delimiter-engraver.cc
6282         (acknowledge_system_start_delimiter): use
6283         add_offset_callback(). This fixes translation of nested
6284         staffgroups.
6285
6286         * lily/grob-closure.cc (add_offset_callback): only encaps in
6287         simple_closure if it's a procedure.
6288         
6289         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6290         from bar-line.
6291
6292         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6293         remove-empty where pertinent.
6294
6295 2005-11-12  Graham Percival  <gpermus@gmail.com>
6296
6297         * Documentation/user/instrument-notation.itely: added
6298         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6299
6300 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6301
6302         * lily/GNUmakefile
6303         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6304         make picture in builddir, not srcdir.
6305
6306 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6307
6308         * VERSION: release 2.7.16
6309         
6310         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6311         shell arguments. 
6312
6313 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6314
6315         * Documentation/user/examples.itely (Piano templates): Minor
6316         modification to the Piano centered lyrics example.
6317
6318 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6319
6320         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6321         $BROWSER.
6322
6323         * Documentation/user/point-and-click.itely: simplify p&c
6324         instruction: don't configure firefox. Put lilypond-invoke-editor
6325         in front of the browser.
6326
6327         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6328         (run-browser): new function.
6329
6330         * lily/parser.yy (Lily_lexer): recognize Book
6331
6332         * lily/book.cc (clone): new function
6333
6334         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6335
6336 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6337
6338         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6339         Maintenance bugfix: reduce number of font related warnings by
6340         updating naming conventions for glyph-name.
6341
6342 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6343
6344         * scm/define-grobs.scm (all-grob-descriptions): add
6345         rhythmic-grob-interface to TabNoteHead.
6346
6347         * scm/layout-beam.scm (check-quant-callbacks): remove
6348         set_stem_lengths()
6349
6350 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6351
6352         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6353         alignment of centered divisiones.
6354
6355         * scm/scripts.scm (articulations): Maintenance bugfix:
6356         follow-into-staff -> quantize-position.
6357
6358         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6359         plica head in porrectus deminutus.
6360
6361 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6362
6363         * make/lilypond.fedora.spec.in (Group): add %clean section.
6364
6365         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6366         less then 1/5th of total length.  
6367         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6368
6369         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6370         events into EventChord. This fixes textspanners on mm rests. Fixes
6371         spanner-rest.ly
6372
6373         * lily/side-position-interface.cc (get_axis): read side-axis
6374         (set_axis): set side-axis.
6375
6376         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6377         properties everywhere.
6378
6379         * lily/spacing-spanner.cc (breakable_column_spacing): add
6380         average-spacing-wishes. Take maximum if not set.
6381         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6382
6383         * scm/define-grobs.scm (all-grob-descriptions): add
6384         average-spacing-wishes.
6385
6386         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6387         offset callbacks. This fixes alignment for Fingering objects.
6388
6389         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6390         space for key - timesig combination. 
6391
6392         * input/regression/script-stem-tremolo.ly (Module): new file.
6393
6394         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6395         to key sig.
6396
6397         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6398         Fixes: c-tremolo-script.ly.
6399         
6400         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6401
6402         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6403         
6404         * scm/define-grobs.scm (all-grob-descriptions): remove
6405         self-X-offset. Fixes alignment of octavate-8.
6406
6407         * scripts/lilypond-book.py (datadir): look in
6408         LILYPONDPREFIX/share/lilypond/current/
6409
6410         * GNUmakefile.in: symlink current to <VERSION>. 
6411
6412 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6413
6414         * lily/main.cc: eps listed as a backend.
6415
6416 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6417
6418         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6419
6420 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6421
6422         * lily/include/score.hh (class Score): remove texts_ member.
6423
6424         * lily/beam.cc (set_stem_lengths): force direction callback.
6425         (print): read quantized-positions, so we can force
6426         Beam::set_stem_lengths to occur.
6427         (rest_collision_callback): use common X parent. 
6428
6429 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6430
6431         * flower/file-path.cc (find): Bugfix: Return name of file found.
6432
6433         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6434         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6435         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6436
6437 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6438
6439         * flower/offset.cc: idem.
6440
6441         * mf/*.mf: update email address.
6442
6443         * lily/font-config-scheme.cc:  new file.
6444
6445         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6446
6447         * lily/*:  cs.uu.nl -> xs4all.nl
6448
6449         * VERSION (PATCH_LEVEL): release 2.7.15
6450
6451         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6452         spec files.
6453
6454         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6455
6456 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6457
6458         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6459
6460         * lily/staff-performer.cc (process_music): add audio
6461         elements. This makes MIDI instrument changes work once again.
6462
6463         * lily/main.cc (LY_DEFINE): add gmane address.
6464
6465         * lily/beam.cc: remove calc_positions()
6466
6467         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6468         original_ in private scope.
6469         (class Grob): drop pscore_ pointer, change to output_def pointer.
6470         (class Grob): cleanup class definition.
6471
6472         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6473
6474 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6475
6476         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6477         absolute.  Better diagnostics.
6478
6479         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6480         This makes lilypond run from the build directory using argv0
6481         relocation (without any --prefix or LILYPONDPREFIX setting).
6482
6483 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6484
6485         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6486
6487         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6488         with simple-closure.
6489
6490         * lily/self-aligment-interface.cc (set_align_self): new function
6491         (set_center_parent): new function.
6492
6493         * lily/side-position-interface.cc (set_axis): new function.
6494
6495         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6496         generic code. 
6497
6498         * scm/define-grob-properties.scm (all-user-grob-properties):
6499         remove [XY]-offset-callbacks add [YX]-offset
6500         
6501 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6502
6503         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6504         entry for time signatures after breathing signs. Bug report by
6505         Scott Russell.
6506
6507 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6508
6509         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6510         not absolute, make it absolute using PATH.
6511
6512 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6513
6514         * python/midi.c (initmidi): Fix type for mingw.
6515
6516 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6517
6518         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6519
6520         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6521         cross compiling.
6522
6523         * stepmake/aclocal.m4: Support python cross compiling.
6524
6525         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6526         Add mingw section.
6527
6528 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6529
6530         * scm/output-lib.scm (chain-grob-member-functions): replace
6531         chained-callback.cc
6532
6533         * lily/chained-callback.cc (Module): remove file.
6534
6535         * lily/rest-collision.cc (force_shift_callback_rest): change to
6536         chained callback.
6537
6538         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6539
6540         * lily/grob.cc (y_parent_positioning): remove axis argument from
6541         parent_positioning callbacks.
6542         (Grob): junk init code
6543         (get_offset): use generic property callbacks for
6544         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6545         (axis_parent_positioning): new function
6546         (axis_offset_symbol): new function
6547         (chain_offset_callback): new function
6548         (add_offset_callback): new function
6549
6550         * lily/beam.cc (rest_collision_callback): change signature; this
6551         is now a chained callback.
6552
6553         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6554         callback administration.
6555
6556         * lily/simple-closure.cc: new file. Smob type that allows "grob
6557         member functions",
6558
6559             (ly:make-simple-closure FUNC A B)
6560
6561         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6562         in various ways.
6563
6564         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6565         callbacks.
6566
6567         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6568
6569         * lily/rest.cc (polyphonic_offset_callback): remove.
6570
6571         * lily/script-engraver.cc (try_music): remove bool* argument.
6572
6573         * scm/script.scm (default-script-alist): set quantize-position
6574         appropriately.
6575
6576         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6577
6578         * lily/side-position-interface.cc (aligned_side): move staff
6579         position quantization from
6580         Side_position_interface::quantised_position().
6581         (quantised_position): remove
6582         
6583 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6584
6585         * input/regression/beam-quant-standard.ly: reindent, set
6586         debug-beam-quanting to #t.
6587
6588         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6589         10000 if this is a "hard" concave beam.
6590
6591         * lily/beam.cc (calc_least_squares_positions): change from
6592         calc_least_squares_dy
6593         (set_stem_lengths): this is now a chained callback.
6594
6595         * lily/context-property.cc (execute_general_pushpop_property):
6596         bugfix override with procedure should have effect.
6597
6598         * scm/define-grob-properties.scm (all-internal-grob-properties):
6599         remove position-callbacks.
6600
6601         * scm/define-grobs.scm (all-grob-descriptions): use
6602         ly:make-callback-chain for positions property.
6603
6604         * scm/layout-beam.scm (check-quant-callbacks): return list of
6605         chained callbacks.
6606
6607         * scm/lily.scm (type-p-name-alist): add callback-chain
6608
6609         * lily/lily-guile.cc (type_check_assignment): type check failure
6610         is warning not message.
6611
6612         * lily/grob-property.cc (try_callback): walk callback chain if
6613         appropriate.
6614
6615         * lily/chained-callback.cc: new file. new smob type.
6616
6617         * lily/lily-guile.cc (procedure_arity): new function.
6618
6619 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6620
6621         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6622
6623 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6624  
6625         * Documentation/user/instrument-notation.itely (Figured bass):
6626         describe new features
6627
6628 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6629
6630         * lily/beam.cc (calc_least_squares_dy): use property callback.
6631
6632         * lily/beam-concave.cc (calc_concaveness): use property callback.
6633
6634         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6635
6636 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6637
6638         * HACKING: Update.
6639
6640 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6641
6642         * scm/layout-page-layout.scm (page-headfoot): annotate
6643         pagetopspace too.
6644
6645         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6646
6647         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6648         doesn't take y-space.
6649
6650         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6651
6652 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6653
6654         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6655         src-wildcard, remove $(wildcard).
6656
6657         * po/GNUmakefile (PO_FILES): 
6658         * ps/GNUmakefile (PS_FILES): 
6659         * tex/GNUmakefile (TEX_FILES): 
6660         * cygwin/GNUmakefile (POSTINSTALLS):
6661         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6662         some wildcard calls.
6663
6664 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6665
6666         * THANKS: add Thomas Bushnell.
6667
6668 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6669
6670         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6671         (lilypond-main): Redirect to gui-main if 'gui is set.
6672
6673         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6674         for alternative installations kludging s/share/lib/g
6675         LILYPONDPREFIX. 
6676
6677         * SConstruct (libdir_package_version): Define.
6678
6679         * python/SConscript: 
6680         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6681         module in libdir.  
6682
6683 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6684
6685         * lily/main.cc: clarify --safe.
6686
6687 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6688
6689         * VERSION: release 2.7.14
6690         
6691         * Documentation/user/*.itely: remove minimumVerticalExtent.
6692
6693         * scm/define-grobs.scm (all-grob-descriptions): remove
6694         RemoveEmptyVerticalGroup
6695
6696         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6697
6698         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6699         compile on MOSX
6700
6701         * python/convertrules.py (conv): add rules.
6702
6703         * lily/grob.cc: remove is_empty()
6704
6705         * lily/grob-property.cc: remove add_to_list_property().
6706
6707         * scripts/convert-ly.py (datadir): add prefix switching hack to
6708         .py too.
6709
6710         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6711         space-function tweak.
6712
6713         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6714
6715         * scm/define-grob-properties.scm (all-user-grob-properties):
6716         remove callback property.
6717
6718         * lily/include/grob.hh (class Grob): remove property_callbacks_
6719         member. Properties of procedure type are assumed to be callbacks.
6720
6721         * lily/ligature-engraver.cc (override_stencil_callback):
6722         rewrite. Use noteHeadLigaturePrimitive as source.
6723
6724         * scm/define-grob-properties.scm (all-internal-grob-properties):
6725         remove ligature-primitive-callback
6726
6727         * lily/include/dimension-cache.hh (class Dimension_cache): make
6728         class, with Grob as friend.
6729
6730         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6731         has_extent_callback()
6732
6733         * scm/translation-functions.scm (format-new-bass-figure): read
6734         figuredBassPlusDirection
6735
6736         * scm/define-context-properties.scm
6737         (all-user-translation-properties): add figuredBassPlusDirection.
6738
6739         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6740
6741         * lily/align-interface.cc (set_ordered): new function.
6742
6743         * lily/grob.cc (flush_extent_cache): rewrite.
6744
6745         * lily/dimension-cache.cc (Dimension_cache): cache extent as
6746         Interval pointer directly.
6747
6748         * lily/main.cc (setup_paths): insert extra / .
6749         (setup_paths): junk cff entry.
6750
6751         * lily/font-config.cc (init_fontconfig): only add type1 / otf
6752         directories.
6753
6754         * lily/axis-group-engraver.cc (finalize): remove
6755         extraVerticalExtent, minimumVerticalExtent verticalExtent.
6756
6757         * lily/grob.cc (Grob): don't set extent from ctor.
6758         (extent): use property callbacks. 
6759
6760         * lily/axis-group-interface.cc: remove set_axes() function.
6761
6762         * lily/grob-property.cc (del_property): new function.
6763
6764 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6765
6766         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
6767         
6768 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6769
6770         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
6771
6772 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6773
6774         * mf/SConscript: Updates.
6775
6776         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
6777
6778         * stepmake/stepmake/*:
6779         * */GNUmakefile:
6780         * config.make.in:
6781         * GNUmakefile.in:
6782         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
6783         from any directory in build-dir.  Cleanups.
6784
6785         * make/srcdir.make.in: Remove.
6786
6787         * lily/main.cc (setup_paths): Fix and document build-dir hack.
6788
6789         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
6790         main).
6791
6792         * lily/SConscript: Remove ttftools.
6793
6794         * SConstruct: Resurrect.
6795
6796 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6797
6798         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
6799         Y coordinate. 
6800
6801         * lily/paper-book.cc (add_score_title): put Paper_score title into
6802         systems_ list.
6803
6804         * scm/translation-functions.scm (format-new-bass-figure): also
6805         allow plus in combination with _
6806
6807 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6808
6809         * VERSION: 2.7.13 released.
6810
6811         * lily/note-collision.cc (check_meshing_chords): don't wipe
6812         stencil, merely set transparent.
6813
6814         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
6815         (Top): document #'callbacks.
6816         (Top): document nested \override.
6817
6818         * input/regression/figured-bass.ly: update for slash and pluses.
6819
6820         * input/regression/figured-bass-continuation-forbid.ly (Module):
6821         new file.
6822
6823         * scm/translation-functions.scm (format-new-bass-figure): use
6824         slashed-digit if diminished is set.
6825         (format-new-bass-figure): add + if 'augmented is set.
6826
6827         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
6828
6829         * input/test/piano-staff-distance.ly: remove file.
6830
6831         * Documentation/user/advanced-notation.itely (Formatting cue
6832         notes): use length-fraction for making stems/beams smaller.
6833
6834         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
6835         modifications.
6836
6837         * lily/new-figured-bass-engraver.cc: new property
6838         centerFiguredBassContinuations
6839
6840         * Documentation/user/changing-defaults.itely (Difficult tweaks):
6841         use callbacks.
6842
6843         * lily/context-property.cc (execute_general_pushpop_property):
6844         robustness checks.
6845
6846         * input/regression/override-nest.ly: new file.
6847
6848         * python/convertrules.py (FatalConversionError.subber): conversion
6849         rule for #'callbacks
6850
6851         * input/regression/override-nest.ly: new function.
6852
6853         * lily/parser.yy (music_property_def): allow \override #'a #'b =
6854         #c too. 
6855
6856         * lily/context-property.cc (lookup_nested_property): new function.
6857         (evict_from_alist): new function.
6858         (general_pushpop_property): new function.
6859         (execute_general_pushpop_property): rewrite. Support nested
6860         properties too.
6861
6862 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6863
6864         * lily/beam.cc: use length-fraction too.
6865
6866         * scm/define-grob-properties.scm (all-user-grob-properties):
6867         remove property flag-width-function
6868         (all-user-grob-properties): remove space-function.
6869
6870         * scm/layout-beam.scm: remove flag-width-function.
6871
6872         * lily/beam.cc: remove flag-width-function
6873
6874         * scm/layout-beam.scm: remove beam dir functions.
6875
6876         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
6877
6878         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
6879         for easier grace tweaks.
6880
6881         * lily/beam.cc: remove dir-function.
6882
6883         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
6884
6885         * lily/grob.cc: remove spacing-procedure.
6886
6887         * lily/note-head.cc (calc_stem_attachment): new function.
6888         (internal_print): use callback to get glyph-name.
6889
6890         * lily/grob-property.cc (get_interfaces): new function.
6891
6892         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
6893
6894         * lily/stem.cc (calc_stem_end_position): new function.
6895         (calc_length): new function.
6896         document details for stem.
6897         remove Stem::get_direction()
6898
6899         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
6900
6901         * lily/grob-property.cc (set_callback): new function.
6902
6903         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
6904
6905         * lily/item-scheme.cc: new file.
6906
6907         * lily/bar-line.cc (before_line_breaking): remove function.
6908         remove bar-size-procedure, break-glyph-function
6909
6910         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
6911
6912         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
6913
6914         * lily/system-start-delimiter.cc (print): suicide from
6915         here. Remove after_line_breaking_callback.
6916
6917         * lily/script-interface.cc (calc_direction): use callback for direction.
6918
6919         * lily/side-position-interface.cc (aligned_side): don't use
6920         Side_position_interface::get_direction directly. Use callback. 
6921
6922         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
6923         calculate stencil.
6924         (get_print_stencil): rename from get_stencil: create stencil with
6925         transparency, color and cause. 
6926
6927         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
6928
6929         * python/convertrules.py (conv): insert temporary warning rule.
6930
6931         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
6932
6933         * lily/grob-property.cc (try_callback): remove marker if applicable.
6934
6935         * lily/grob.cc: elucidate doc about after/before-line-breaking
6936
6937         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
6938
6939         * lily/stem.cc (height): idem.
6940
6941         * lily/stem-tremolo.cc: idem.
6942
6943         * lily/slur.cc (height): don't use get_uncached_stencil()
6944
6945         * lily/rest.cc (y_offset_callback): use offset callback
6946         iso. after-line-breaking callback.
6947
6948         * lily/grob.cc: change after/before-line-breaking-callback to
6949         after/before-line-breaking dummy properties.
6950
6951         * lily/include/grob.hh: remove Grob_status.
6952
6953         * scm/define-context-properties.scm
6954         (all-user-translation-properties): remove verticalAlignmentChildCallback
6955
6956         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
6957         (calc_direction): use callback
6958         (calc_positions): use callback.
6959
6960         * lily/tie.cc (calc_direction): use callback. Only call parent
6961         positioning for more than one tie.
6962
6963         * lily/tie-column.cc (calc_positioning_done): use callback
6964
6965         * lily/slur-scoring.cc (calc_control_points): use callback
6966
6967         * lily/slur.cc (calc_direction): use callback.
6968
6969         * lily/note-collision.cc (force_shift_callback): remove.
6970
6971         * lily/dot-column.cc (force_shift_callback): remove. Use
6972         other_axis_parent_positioning.
6973
6974         * lily/grob.cc (other_axis_parent_positioning): new function.
6975         (same_axis_parent_positioning): new function
6976
6977         * lily/align-interface.cc (alignment_callback): remove function.
6978
6979         * lily/note-collision.cc (calc_positioning_done): use callback.
6980
6981         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
6982         (calc_direction): idem.
6983         remove print function.
6984
6985         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
6986
6987         * lily/dot-column.cc (calc_positioning_done): use callback.
6988
6989         * lily/break-align-interface.cc (calc_positioning_done): use callback.
6990
6991         * lily/beam.cc (calc_direction): use pseudo-property for beam
6992         direction callback.
6993         (calc_positions): use callback 
6994
6995         * lily/align-interface.cc (calc_positioning_done): use
6996         callback. Fold fixed  distance and normal alignment in one function.
6997
6998         * lily/stem.cc (calc_stem_end_position): use callback.
6999         (calc_positioning_done): idem.
7000         (calc_direction): idem.
7001         (calc_stem_end_position): idem
7002         (calc_stem_info): idem.
7003
7004         * lily/grob-property.cc (get_property_data): new function: 
7005         (try_callback): new function.
7006
7007         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7008         callbacks property.
7009
7010         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7011
7012 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7013
7014         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7015         tie
7016         has no heads.
7017         
7018         * lily/include/*.hh (Module): compile fixes.
7019
7020 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7021
7022         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7023         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7024         instead of (char-syntax nil), thanks to Milan Zamazal.
7025
7026 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7027
7028         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7029         dist.
7030
7031         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7032         themselves.
7033
7034 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7035
7036         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7037         add class_name() method.
7038
7039         * lily/music-scheme.cc: remove ly:music-name.
7040
7041 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7042
7043         * cygwin/postinstall-lilypond.sh: Remove cruft.
7044
7045         * cygwin/postremove-lilypond.sh: Remove.
7046
7047         * cygwin/GNUmakefile (default): Remove postremove rules.
7048
7049 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7050
7051         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7052         even header too.
7053         
7054         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7055         MacOS 9 users.
7056
7057         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7058         consider break index for broken spanner.
7059
7060         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7061         characters from string before splitting.
7062
7063 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7064
7065         * scm/framework-ps.scm (output-preview-framework): use
7066         is-book-title to determine whether to chop off the booktitle.
7067
7068         * lily/paper-book.cc (systems): init from book-title-properties
7069         (add_score_title): init score-title-properties.
7070
7071         * ly/paper-defaults.ly: add {score,book}-title-properties.
7072
7073         * scm/document-backend.scm (lookup-interface): error message if
7074         using unknown interface.
7075
7076         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7077         edge-height.
7078
7079         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7080         make_bracket.
7081         (make_bracket): new function.
7082
7083         * scm/lily.scm (define-scheme-options): add paper-size option.
7084
7085         * ly/declarations-init.ly (laissezVibrer): get paper size from
7086         -dpaper-size
7087
7088         * scm/translation-functions.scm: use \fontsize for changing the
7089         fontsize.
7090
7091         * scm/define-grobs.scm (all-grob-descriptions): set
7092         between-length-limit to 1.0
7093
7094         * lily/tie-helper.cc: add between_length_limit_ detail property.
7095
7096         * mf/feta-bolletjes.mf: typos.
7097
7098         * lily/note-head.cc (internal_print): don't shadow idx
7099         parameter. This fixes wrong attachment for do shape heads.
7100
7101 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7102
7103         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7104
7105         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7106
7107         * scm/layout-slur.scm: rename from slur.scm
7108
7109         * scm/layout-page-layout.scm: rename from page-layout.scm
7110
7111         * scm/layout-beam.scm: rename from beam.scm
7112
7113         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7114         bass-figure-interface
7115
7116         * lily/new-figured-bass-engraver.cc (process_music): add
7117         implicitBassFigures property.
7118         
7119         * scm/define-markup-commands.scm (pad-x): new markup.
7120
7121         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7122         minimumVerticalExtent on FiguredBass context.
7123
7124         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7125         case the continuation crosses a line break.
7126
7127 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7128
7129         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7130         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7131         absolute file name bug.  
7132
7133 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7134
7135         * VERSION (PACKAGE_NAME): release 2.7.12
7136
7137         * input/regression/figured-bass-continuation-center.ly: new file.
7138
7139         * input/regression/beam-outside-beamlets.ly: new file.
7140
7141         * lily/beam.cc (set_beaming): don't clip edges.
7142         (connect_beams): don't clip edges.
7143
7144         * lily/beaming-info.cc (clip_edges): new function.
7145
7146         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7147
7148         * Documentation/user/instrument-notation.itely (Figured bass):
7149         demonstrate extenders, update seealso links.
7150
7151         * scm/titling.scm (marked-up-headfoot): change tagline
7152         handling. tagline = ##f will blank the tagline as well.
7153
7154 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7155
7156         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7157
7158         * lily/new-figured-bass-engraver.cc (struct
7159         New_figured_bass_engraver): add new_music_found_ member.
7160
7161         * lily/lilypond-version.cc (Lilypond_version): deal with
7162         incorrectly formatted version strings. 
7163
7164         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7165         New_figured_bass_engraver by default.
7166
7167         * lily/ttf.cc (print_trailer): only define glyph names when
7168         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7169
7170 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7171
7172         * lily/horizontal-bracket.cc (make_bracket): new function.
7173
7174         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7175         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7176         BassFigureLine, BassFigureAlignment
7177
7178         * lily/new-figured-bass-engraver.cc (process_music): new file.
7179
7180         * lily/figured-bass-continuation.cc: new file.
7181
7182         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7183         new file.
7184
7185 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7186
7187         * scripts/lilypond-book.py: Bug fix, put the quote around the
7188         actual score for LaTeX documents.
7189
7190         * scm/define-grobs.scm (all-grob-descriptions): Change
7191         collapse-height of the SystemStartBracket grob to 5.0, 
7192         so the bracket disappears for single stave score lines (similarly
7193         to SystemStartBraces). 
7194
7195         * Documentation/user/advanced-notation.itely (Polymetric
7196         notation): Clarify the use of compressMusic.
7197
7198         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7199         that the grace spacer note in other staves need the same duration
7200         and document the stroke-style property.
7201
7202 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7203
7204         * Documentation/user/global.itely (Vertical spacing): document
7205         alignment-extra-space and fixed-alignment-extra-space.
7206
7207         * Documentation/topdocs/NEWS.tely (Top): add entry.
7208
7209         * input/regression/alignment-vertical-spacing.ly: new file.
7210
7211         * python/convertrules.py (conv): add rule.
7212
7213         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7214
7215         * lily/align-interface.cc (stretch_after_break): new
7216         function. Read fixed-alignment-extra-space property.
7217         (align_elements_to_extents): read alignment-extra-space property.
7218
7219         * lily/lily-guile.cc (robust_scm2dir): new function.
7220
7221         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7222         (annotate-space-left): new function. Annotate space left on page. 
7223         (annotate-y-interval): new function.
7224         (paper-system-annotate-last): new function. Annotate bottom-space.
7225
7226         * mf/feta-beugel.mf (y): 
7227
7228 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7229
7230         * VERSION (PACKAGE_NAME):  release 2.7.11
7231
7232         * scm/lily-library.scm (interval-translate): new function
7233         (interval-center): new function. 
7234
7235         * scm/page-layout.scm (paper-system-annotate): new function. Add
7236         arrows for dimensions.
7237  
7238         * scm/stencil.scm (dimension-arrows): new function.
7239
7240         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7241
7242         * input/regression/page-spacing.ly: add annotatespacing
7243
7244         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7245         (LY_DEFINE): new function ly:paper-system-set-property!
7246
7247         * Documentation/user/global.itely (Paper size): explain how to add
7248         sizes.
7249
7250         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7251         correspond to GS's definition.
7252
7253         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7254         tuplet bracket.
7255         (print): only connect to next bracket if the next one is alive.
7256         (print): set padding to 0.0 if the bound is a breakable
7257         column. This makes tupletFullLength brackets reach up to the staff
7258         line if it doesn't connect to the next line.
7259
7260 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7261
7262         * lily/bar-number-engraver.cc: correct docs.
7263
7264         * scm/output-lib.scm (first-bar-number-invisible): rename from
7265         default-bar-number-visibility
7266
7267 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7268
7269         * scm/define-music-properties.scm (all-music-properties): remove
7270         predicate property.
7271
7272 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7273
7274         * po/fi.po: refresh.
7275
7276 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7277
7278         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7279         superfluous s1.
7280         (disappear): bugfix.
7281
7282         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7283
7284         * lily/include/paper-system.hh (class Paper_system): remove
7285         staff_extents_ member.
7286
7287         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7288
7289         * lily/include/paper-system.hh (class Paper_system): remove
7290         number_ variable. Remove is_title_. Remove break_before_penalty_
7291
7292         * lily/paper-book.cc (systems): use 'number property iso. number_
7293         member.
7294
7295         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7296         remove ly:paper-system-number.
7297
7298         * scm/lily-library.scm (paper-system-title?): new function.
7299
7300         * lily/book.cc (process): bugfix: flip ?: cases. 
7301
7302         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7303         add outputProperty.
7304
7305         * ly/music-functions-init.ly: add outputProperty music function.
7306
7307         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7308
7309         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7310         and next-padding.
7311         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7312
7313         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7314
7315         * lily/paper-system.cc (internal_get_property): new function.
7316
7317         * Documentation/user/global.itely (Vertical spacing): refer to
7318         page-spacing.ly
7319
7320         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7321         pagetopspace
7322
7323         * input/regression/page-spacing.ly: new file.
7324
7325         * input/regression/page-top-space.ly: new file.
7326
7327         * lily/spacing-spanner.cc: cmath -> math.h
7328
7329         * lily/paper-system.cc (read_left_bound): new function. Read
7330         line-break-system-details from left bound to determine extents.
7331  
7332         * Documentation/user/programming-interface.itely (Using LilyPond
7333         syntax inside Scheme): change applyxxx -> applyXxx.
7334
7335         * ly/music-functions-init.ly: add outputProperty music function.
7336
7337         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7338
7339         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7340
7341         * python/convertrules.py (conv): rule
7342
7343         * ly/music-functions-init.ly: applyxxx -> applyXxx
7344
7345         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7346         TabVoice to Voice.
7347
7348 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7349
7350         * flower/include/real.hh: include <math.h> iso. <cmath>
7351
7352         * flower/include/offset.hh: include real.hh
7353
7354 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7355
7356         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7357         fix example, now that 'interfaces is no longer directly available.
7358
7359         * lily/book.cc (process): don't crash if paper == NULL.
7360
7361         * po/fr.po: update.
7362
7363 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7364
7365         * scm/define-music-types.scm (music-descriptions): set length and
7366         start-callback for QuoteMusic
7367
7368 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7369
7370         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7371         arguments. Fixes compilation error with gcc 3.3.
7372
7373 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7374
7375         * VERSION: release 2.7.10
7376
7377         * stepmake/stepmake/python-module-rules.make
7378         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7379
7380         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7381         real.hh
7382
7383 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7384
7385         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7386         -Werror. Otherwise GCC barfs over various optimizations.
7387
7388         * scm/define-grob-properties.scm (all-internal-grob-properties):
7389         add note-head property
7390
7391         * Documentation/user/instrument-notation.itely (Laissez vibrer
7392         ties): new node.
7393
7394         * input/regression/laissez-vibrer-ties.ly: new file.
7395
7396         * lily/laissez-vibrer-engraver.cc: new file.    
7397
7398         * lily/include/tie-column-format.hh: new file.
7399
7400         * lily/tie-column-format.cc: new file. 
7401
7402         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7403
7404         * lily/laissez-vibrer-tie.cc: new file.
7405
7406         * lily/include/laissez-vibrer-tie.hh: new file.
7407
7408         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7409
7410         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7411
7412         * scm/define-grobs.scm (all-grob-descriptions): add
7413         LaissezVibrerTie, LaissezVibrerTieColumn
7414
7415         * lily/tie-column.cc (set_tie_config_directions): new function
7416         (final_shape_adjustment): new function.
7417         (shift_small_ties): new function.
7418
7419         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7420
7421         * lily/include/tie.hh (struct Tie_details): add x_gap_
7422         (struct Tie_configuration): add head_position_
7423
7424         * lily/tie-column.cc (set_chord_outline): new function.
7425
7426         * mf/cmr.enc.in:  remove file.
7427
7428 2005-09-11  Graham Percival  <gpermus@gmail.com>
7429
7430         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7431
7432 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7433
7434         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7435         reduce aliasing effects.
7436
7437         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7438         box in skyline.
7439
7440 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7441
7442         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7443
7444         * flower/include/real.hh: std::fabs too.
7445
7446 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7447
7448         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7449
7450         * lily, flower: Include C++ iso C headers.  Import namespace std
7451         throughout.
7452
7453         * lily/side-position-interface.cc: 
7454         * lily/scm-hash.cc: 
7455         * lily/note-head.cc: 
7456         * lily/include/includable-lexer.hh: 
7457         * flower/include/string-data.icc: Remove using std::*.
7458
7459         * lily, flower: Include C++ iso C headers.  Import namespace std
7460         throughout.
7461
7462         * lily/side-position-interface.cc: 
7463         * lily/scm-hash.cc: 
7464         * lily/note-head.cc: 
7465         * lily/include/includable-lexer.hh: 
7466         * flower/include/string-data.icc: Remove using std::*.
7467
7468         * Documentation/user/instrument-notation.itely (Entering lyrics):
7469         Multiple latin-1->utf-8 conversion fix.
7470
7471         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7472
7473 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7474
7475         * lily/tie.cc (get_configuration): also avoid dots for non-space
7476         situations.
7477
7478 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7479
7480         * Documentation/user/instrument-notation.itely: Bugfix.
7481
7482 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7483
7484         * tex/GNUmakefile: don't install texinfo.tex
7485
7486         * tex/ : cleanup: remove unused files.
7487
7488         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7489
7490         * flower/include/real.hh: using std::{isnan,isinf}
7491         
7492         * VERSION (PATCH_LEVEL): release 2.7.9
7493
7494 2005-09-05  Graham Percival  <gpermus@gmail.com>
7495
7496         * Documentation/user/ instrument-notation.itely,
7497         advanced-notation.itely: minor tweaks.
7498
7499         * input/test/script-chart.ly: add item padding.
7500
7501 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7502
7503         * flower/offset.cc: use math.h iso. <cmath>
7504
7505         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7506         of IE users.
7507
7508         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7509         (widen-left-stencil-edges): new function. Fix alignment problems
7510         with LaTeX includegraphics.
7511
7512         * lily/text-interface.cc (interpret_markup): use abort().
7513
7514 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7515
7516         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7517
7518         * lily/tie.cc (get_configuration): update bezier shape as we
7519         change Y positions.
7520         (get_configuration): don't move large ties if we're outside of the
7521         staff.
7522
7523 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7524
7525         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7526         
7527 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7528
7529         * .cvsignore: Add auto-generated configure files and then some.
7530
7531 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7532
7533         * scm/define-grobs.scm (DynamicLineSpanner): Add
7534         X-extent-callback.  Fixes hairpin-slur collision.
7535
7536 2005-08-31  Graham Percival  <gpermus@gmail.com>
7537
7538         * Documentation/user/advanced-notation.itely,
7539         basic-notation.itely: minor changes.
7540
7541 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7542
7543         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7544         \linebreak between each .eps file if \betweenLilyPondSystem is
7545         undefined. 
7546
7547         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7548         music): Document the \linebreak
7549
7550         * Documentation/user/lilypond-book.itely,
7551         input/tutorial/lbook-latex-test.tex,
7552         Documentation/user/examples.itely: Remove \usepackage{graphics}
7553
7554 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7555
7556         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7557
7558         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7559         compat bugfix.
7560
7561         * scripts/lilypond-book.py (PREAMBLE_LY): define
7562         inside-lilypond-book
7563         (modify_preamble): new function. Insert \RequirePackage{graphics}
7564         when no {graphics found in preamble.  
7565
7566 2005-08030  Graham Percival  <gpermus@gmail.com>
7567
7568         * Documentation/user/basic-notation.itely, global.itely,
7569         tutorial.itely: misc small changes.
7570
7571 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7572
7573         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7574         VERSION.
7575
7576 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7577
7578         * lily/tie-column.cc (new_directions): put Tie down on center
7579         staff line. 
7580
7581         * lily/script-interface.cc (before_line_breaking): use
7582         Grob::programming_error
7583
7584         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7585
7586         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7587         of splitext.
7588
7589 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7590
7591         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7592
7593 2005-08-29  Werner Lemberg  <wl@gnu.org>
7594
7595         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7596         the `*.scale.pfa' files to avoid warnings.
7597
7598 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7599
7600         * lily/tempo-performer.cc (process_music): idem.
7601
7602         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7603
7604 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7605
7606         * Documentation/user/advanced-notation.itely (Text markup): not a
7607         fragment.
7608
7609         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7610
7611         * lily/staff-performer.cc (initialize): add tempo/name to
7612         audio_staff_
7613
7614
7615 2005-08-26  Graham Percival  <gpermus@gmail.com>
7616
7617         * Documentation/user/advanced.itely: add text-only example.
7618
7619         * Documentation/user/invoking.itely: add index entries for
7620         convert-ly.
7621
7622         * Documentation/user/ tutorial.itely, basic-notation.itely:
7623         small fixes suggested by Steve D.  Thanks!
7624
7625 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7626
7627         * input/regression/markup-bidi-pango.ly: new file.
7628
7629         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7630         standard. Remove #ifdef. Remove memleak.
7631         (text_stencil): use text_dir to decide how to composite items.
7632         (text_stencil): determine uniform text direction for the entire
7633         string.
7634
7635         * scripts/lilypond-book.py (output_name): remove
7636         latex_filter_cmd. Non-portable to non-Unix systems. 
7637         (get_latex_textwidth): use File.write and os.unlink() instead.
7638
7639         * THANKS: add Vicente & Trevor.
7640
7641         * lily/grob.cc (discretionary_processing): look up origin for
7642         programming_error too. 
7643
7644         * input/regression/tie-broken.ly: new file.
7645
7646         * lily/tie-column.cc (set_chord_outlines): set outline for line
7647         break case too.
7648         
7649 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7650
7651         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7652         unscaled transform, just translate stencils.
7653
7654         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7655         MIDI.
7656
7657         * scm/define-markup-commands.scm (wordwrap-string): use
7658         text-direction
7659         (wordwrap-stencils): idem.
7660         (line): idem.
7661         (fill-line): idem.
7662         (wordwrap-stencils): translate last line to right for
7663         text-direction = LEFT.
7664
7665         * scm/define-grob-properties.scm (all-user-grob-properties): add
7666         text-direction.
7667
7668 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7669
7670         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7671         when copying a Lily_parser object.
7672
7673 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7674
7675         * scm/define-markup-commands.scm (null): add null markup.
7676
7677 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7678
7679         * lily/item.cc: Add documentation of center-invisible
7680
7681 2005-08-24  Graham Percival  <gpermus@gmail.com>
7682
7683         * Documentation/user/advanced-notation.itely: add info about
7684         raising text.
7685
7686         * Documentation/user/programming-interface.itely: fix example
7687         involving raised text.
7688
7689 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7690
7691         * lily/beam.cc (print): fix X start/end points of isolated
7692         beamlets.
7693
7694         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7695
7696         * lily/multi-measure-rest.cc (set_text_rods): new function.
7697
7698         * lily/vertical-align-engraver.cc (process_music): call
7699         Align_interface::set_axis(). This forces #'elements to be ordered,
7700         preventing random vertical reordering of staves.
7701
7702         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7703         add avoid-slur property. 
7704
7705         * Documentation/user/basic-notation.itely (Measure repeats): add
7706         countPercentRepeats example.
7707
7708         * Documentation/user/advanced-notation.itely (Other text markup
7709         issues): remove remark about normal-font.  We have \normal-text
7710
7711         * input/regression/tie-chord.ly: add note about remaining bugs.
7712
7713         * lily/tie.cc (print): try Tie_column::set_directions () if
7714         control-points not yet defined.
7715
7716 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7717
7718         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7719         extent. This fixes braces falling out of the EPS bbox.
7720
7721         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7722         exactly to bbox.
7723
7724 2005-08-23  Graham Percival  <gpermus@gmail.com>
7725
7726         * {various} : change #up->#UP and #down->#DOWN.
7727
7728         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7729
7730         * Documentation/user/advanced-notation.itely: clarify
7731         what objects handles text on a multimeasure rest.
7732
7733 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7734
7735         * VERSION (PATCH_LEVEL): release 2.7.7
7736
7737 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7738
7739         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7740
7741         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7742
7743         * input/regression/*.ly: formatting clean-up. Default layout
7744         before music expression.
7745
7746         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
7747         romanze28-2 example.
7748
7749         * scm/ps-to-png.scm: remove dir-re function.
7750         (make-ps-images): generate page names, instead of globbing them.
7751         This brings down LilyPond memory usage for make web by a factor
7752         10. 
7753
7754         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
7755         don't use glob. With 3000 files, globbing
7756         Documentation/user/out-www/ can take too much time. 
7757         
7758         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
7759
7760         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
7761
7762         * input/regression/tie-manual.ly: new file
7763
7764         * input/regression/tie-chord.ly: update.
7765
7766         * flower/include/interval.hh (struct Interval_t): 
7767
7768         * lily/tie.cc (distance): new function 
7769         (height): new function.
7770         (init): new function
7771         (Tie_details): new struct.
7772
7773         * lily/skyline.cc (skyline_height): new function.
7774
7775         * lily/tie-column.cc (set_chord_outlines): new function.
7776         (new_directions): read tie-configuration
7777
7778         * lily/skyline.cc: fix ASCII art.
7779         
7780 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
7781
7782         * python/convertrules.py (string_or_scheme): Fix spelling error
7783
7784 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7785         
7786         * lily/tie-column.cc (set_directions): set directions only once.
7787         (add_configuration): new function.
7788
7789         * lily/tie.cc (set_control_points): new function
7790
7791         * lily/tie-column.cc (new_directions): new function.
7792
7793         * ly/music-functions-init.ly: set 'pitch property
7794         iso. trill-pitch. This makes \relative work with \pitchedTrill
7795
7796         * lily/tie.cc (get_configuration): new function. Don't generate
7797         control points, rather, generate configuration.
7798         remove head-pair property.
7799
7800         * lily/include/tie.hh (struct Tie_configuration): new struct.
7801
7802 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
7803
7804         * Documentation/topdocs/NEWS.tely: clarify.
7805
7806 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7807
7808         * lily/tie.cc: remove minimum-length
7809
7810         * scm/define-grob-properties.scm (all-user-grob-properties):
7811         remove staffline-clearance, y-offset 
7812
7813         * input/regression/tie-dots.ly (Module): remove.
7814
7815         * lily/tie.cc (get_control_points): rewrite. Put short ties in
7816         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
7817
7818         * input/regression/tie-single.ly: new file.
7819
7820 2005-08-21  Graham Percival  <gpermus@gmail.com>
7821
7822         * ly/bagpipe.ly: fix compile problem.
7823
7824 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7825
7826         * lily/midi-item.cc (name): new method.
7827
7828         * lily/staff-performer.cc (acknowledge_audio_element): use
7829         signature of baseclass.
7830
7831         * lily/engraver-group.cc (do_announces): move recursion call out
7832         of while loop. 
7833
7834         * lily/drum-note-performer.cc (class Drum_note_performer): use
7835         process_music everywhere.
7836
7837         * ly/performer-init.ly: add default children everywhere.
7838
7839         * lily/paper-book.cc (output): call paper-book-write-midis
7840         directly: always write MIDI, even if no \layout {} block. 
7841
7842 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7843
7844         * VERSION (PACKAGE_NAME): release 2.7.6
7845
7846         * lily/percent-repeat-engraver.cc (try_music): don't print warning
7847         about not being able to handle repeat.
7848
7849 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7850
7851         * Documentation/user/examples.itely (Piano templates):
7852         * lily/include/performer-group.hh: Remove last traces of
7853         Performer_group_performer.  Fixes make web.
7854
7855 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7856
7857         * Documentation/user/examples.itely (Piano templates): change
7858         Engraver_group_engraver -> Engraver_group
7859
7860         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
7861         scm_stand_in_procs is not weak_any.
7862
7863         * lily/volta-bracket.cc (print): don't use strcmp().
7864
7865         * lily/volta-engraver.cc (process_music): use
7866         Text_interface::is_markup() for setting the 'text property of the
7867         volta bracket.
7868
7869         * input/mutopia/claop.py (accents): update syntax to 2.6
7870
7871         * scm/define-context-properties.scm
7872         (all-user-translation-properties): add countPercentRepeats.
7873
7874         * Documentation/user/basic-notation.itely (Measure repeats): add
7875         isolated percent example.
7876
7877 2005-08-18  Graham Percival  <gpermus@gmail.com>
7878
7879         * input/ {various}: change direction #1, #-1 to
7880         #up/#down or \fooUp, \fooDown.
7881
7882         * Documentation/user/music-glossary.tely: #-1 to #down.
7883
7884         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
7885         to #up, #-1 to #down.
7886
7887 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7888
7889         * lily/include/engraver-group.hh: rename.
7890
7891         * lily/include/performer-group.hh: rename.
7892
7893 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
7894
7895         * input/test/script-abbreviations.ly: Removed some old LaTeX
7896         left overs.
7897
7898 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7899
7900         * python/convertrules.py (conv): inside-slur -> avoid-slur.
7901         Remove functions.  Remove if 1: constructs, reindent.
7902
7903         * scripts/convert-ly.py (add_version): Add functions from
7904         convertrules.py
7905
7906         * scm/script.scm (default-script-alist):
7907         s/priority/script-priority.  Fixes script stacking.  Backportme.
7908         (Fermata): Very low priority.
7909
7910 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7911
7912         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
7913
7914         * input/regression/slur-script.ly: remove padding tweaks. Add
7915         comment strings.
7916
7917         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
7918         time sigs and related stuff.
7919
7920         * scm/define-grob-properties.scm (all-user-grob-properties): add
7921         @code{} tags to property description.
7922
7923         * lily/include/line-group-group-engraver.hh (Module): remove file.
7924
7925         * python/convertrules.py (conv): add rule for
7926         Engraver_group_engraver -> Engraver_group.
7927
7928         * lily/include/performer-group-performer.hh: analogous.
7929
7930         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
7931
7932         * lily/context-def.cc (instantiate): check for
7933         Engraver_group_engraver and Performer_group_performer not
7934         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
7935  
7936 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7937
7938         * input/les-nereides.ly: Remove three fingering tweaks, update
7939         remaining one.
7940
7941         * input/regression/slur-script-inside.ly: Update, fix doc.
7942
7943         * scm/script.scm: Update to avoid-slur.
7944
7945         * scm/define-grob-properties.scm (avoid-slur): New property.
7946
7947         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
7948         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
7949         outside_slur_callback if avoid-slur != #'inside.
7950
7951         * scm/define-grobs.scm (Fingering, Textscript): No
7952         inside-slur/outside-slur preference.
7953         (DynamicLineSpanner): Always outside slur.
7954
7955         * input/regression/slur-script.ly: More tests.
7956
7957 2005-08-17  Graham Percival  <gpermus@gmail.com>
7958
7959         * Documentation/user/lilypond-book: fix notime entry.
7960
7961         * Documentation/user/advanced-notation.itely: add info on
7962         getting an I rehearsal mark.
7963
7964         * Documentation/user/putting.itely: reinstate "I", re-enforce
7965         the fact that \override numbers are the result of
7966         experimentation and personal taste.
7967
7968         * Documentation/user/invoking.itely: update convert-ly bugs.
7969
7970 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7971
7972         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
7973         to #t.
7974
7975         * lily/timing-translator.cc (initialize): don't initialize timing.
7976
7977         * input/regression/stem-spacing.ly (Module): remove file.
7978
7979         * input/regression/spacing-stick-out.ly: specify Score context for
7980         \override
7981
7982         * input/regression/clefs.ly: remove spurious {}s 
7983
7984 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
7985
7986         * Documentation/topdocs/NEWS.tely,
7987         input/regression/repeat-percent-count.ly: clarify a bit.
7988
7989 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7990
7991         * input/no-notation/display-lily-tests.ly: delete
7992         display-lily-init call.
7993
7994         * ly/music-functions-init.ly (displayLilyMusic): move
7995         display-lily-init call at top level, so that the user should not
7996         have to call it.
7997
7998         * scm/define-music-display-methods.scm (note-name->lily-string):
7999         retrieve note names directly from pitchnames using new function `rassoc'.
8000         (display-lily-init): note names list construction removed.
8001
8002 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8003
8004         * THANKS: spello.
8005
8006         * lily/lily-parser.cc (get_header): copy module, instead of
8007         returning it.
8008
8009         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8010         counters.
8011
8012         * Documentation/user/basic-notation.itely (Measure repeats): add
8013         links to Counter grobs.
8014
8015         * scm/define-grobs.scm (all-grob-descriptions): add
8016         DoublePercentRepeatCounter
8017         (all-grob-descriptions): add PercentRepeatCounter
8018
8019         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8020         also create counter grobs.
8021
8022         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8023         return grob without space-alist.
8024
8025         * input/proportional.ly: tune staff-padding.
8026
8027         * input/regression/repeat-percent-count.ly: new file. 
8028
8029 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8030
8031         * input/no-notation/display-lily-tests.ly: moved from
8032         input/regression/ to input/no-notation. Be sure to call
8033         `display-lily-init' before trying to use the display function.
8034
8035 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8036
8037         * scripts/lilypond-book.py (option_definitions): Don't localize
8038         the empty string. Fixes bug when --psfonts was used with
8039         non-English locale.
8040
8041 2005-08-15  Graham Percival  <gpermus@gmail.com>
8042
8043         * lily/tuplet-bracket.cc: simple build fix.
8044
8045         * Documentation/user/putting.itely: use "we" instead of "I".
8046
8047         * Documentation/user/basic-notation.itely: cautionary accidentals
8048         work with naturals, too.
8049
8050 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8051
8052         * lily/tuplet-bracket.cc (calc_position_and_height): add
8053         staff-padding support.
8054
8055         * input/proportional.ly: set staff-padding.
8056         
8057         * VERSION (PATCH_LEVEL): release 2.7.5
8058
8059         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8060         fixes. Remove tweaks.
8061
8062         * input/regression/tuplet-slope.ly: add a test case.
8063
8064         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8065         erroneous fix. Add spanner bounds to offset array with relative X
8066         positions.
8067
8068         * ly/engraver-init.ly: add Rest_engraver only once.
8069
8070         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8071         (*parser*) lookup if (*parser*) != #f.
8072
8073 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8074
8075         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8076         Cut-and paste update.
8077
8078         * input/regression/slur-script.ly: Add example of reverting
8079         inside-slur for fingering.
8080
8081         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8082         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8083
8084         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8085         outside_slur_callback if inside-slur == #f (as opposed to unset).
8086
8087 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8088
8089         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8090         encoding files are already removed.
8091
8092 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8093
8094         * Documentation/user/advanced-notation.itely (Instrument names):
8095         Document a workaround for instrument names that collide with
8096         system start braces/brackets.
8097
8098 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8099
8100         * lily/rest-collision.cc (do_shift): spello.
8101
8102         * input/proportional.ly: use #'used property. Set break-overshoot
8103         property.
8104
8105         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8106
8107         * lily/paper-column.cc: add #'used property
8108
8109         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8110         array for staves found.
8111
8112         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8113         array for stavesFound.
8114
8115         * lily/staff-spacing.cc (next_note_correction): add fixed and
8116         space to calling convention. This fixes spacing of accidentals
8117         after barlines.
8118
8119         * input/regression/spacing-accidental-stretch.ly: add barline -
8120         accidental case.
8121
8122         * scm/framework-ps.scm (page-header): add version number to
8123         creator
8124         (eps-header): idem.
8125
8126         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8127         
8128 2005-08-13  Graham Percival  <gpermus@gmail.com>
8129
8130         * Documentation/user/global.itely: add "fit as much as
8131         possible onto this page" example (Vertical spacing).
8132
8133 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8134
8135         * *: Nitpick run.
8136
8137         * buildscripts/fixcc.py: Fixes.
8138
8139 2005-08-12  Graham Percival  <gpermus@gmail.com>
8140
8141         * Documentation/user/advanced-notation.itely: add markup
8142         example to Text spanners.
8143
8144 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8145
8146         * Documentation/user/basic-notation.itely (Ties): Add example of
8147         tying a tremolo to a chord. Thanks to Steve Doonan. 
8148
8149         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8150         properties and move tieMelismaBusy to the list of written
8151         properties. 
8152
8153 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8154
8155         * po/TODO: suggest to use a dedicated tool like kbabel.
8156
8157         * po/fi.po: update using kbabel.
8158
8159 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8160
8161         * *: Remove obsolete files.  Nitpick run.
8162
8163         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8164
8165 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8166
8167         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8168         too.
8169
8170         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8171
8172         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8173         whitespace as symbol separator.
8174
8175         * lily/side-position-interface.cc: Add slur-padding.
8176
8177         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8178         quite a large fix, and it never worked in a stable release; so not
8179         really a regression.
8180
8181         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8182         Update cut and paste code from Slur_engraver.
8183
8184         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8185         Add.
8186
8187         * scm/define-grobs.scm (DynamicLineSpanner): Add
8188         dynamic-line-spanner-interface.
8189         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8190
8191 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8192
8193         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8194         to_boolean () so that non-set 'inside-slur means false.
8195
8196         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8197         slur has control-points.  Skip script without direction.  Always
8198         do_shift if script inside slur, even if slur not contained in
8199         script y-extent.  Increment k in loop.
8200
8201 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8202
8203         * scm/define-markup-commands.scm: Improved regexp to search for
8204         EPS bounding boxes and corrected call to ly:warning.
8205
8206 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8207
8208         * Documentation/user/programming-interface.itely (Displaying music
8209         expressions): doc for \displayLilyMusic. Also some precisions in
8210         "Markup construction in Scheme"
8211
8212 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8213
8214         * scm/define-markup-commands.scm (normal-text): Added 2 new
8215         markup commands, \normal-text and \medium (the latter thanks to
8216         Bruce Fairchild). 
8217
8218 2005-08-08  Graham Percival  <gpermus@gmail.com>
8219
8220         * Documentation/user/programming-interface.itely: fix @{ @}.
8221
8222         * scm/define-markup-commands.scm: add linewidth info to
8223         \justify and \wordwrap, add "upright is the opposite of italic".
8224
8225         * Documentation/user/advanced-notation.itely: shaped->shape,
8226         add (cons (markup "foo")) type of example to text markup,
8227         reword multi-measure rests section.
8228
8229         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8230         comment.  No actual code was touched.
8231
8232         * Documentation/user/invoking.itely: add more info about
8233         \include.  Thanks, Bruce!
8234
8235         * THANKS: add Bruce Fairchild, alphabetise.
8236
8237         * Documentation/user/global.itely: document \score{\header{}}
8238         behavior.
8239
8240         * Documentation/user/basic-notation.itely: reword multi-measure
8241         rest discussion in Rests.
8242
8243 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8244
8245         * Documentation/user/programming-interface.itely (Markup
8246         construction in Scheme): Corrected example and tried to clarify
8247         the implicit \line in the table.
8248
8249 2005-08-07  Graham Percival  <gpermus@gmail.com>
8250
8251         * Documentation/user/instrument-notation.itely: moved
8252         some bagpipe info back into the bagpipe section.  Somehow
8253         it ended up in the "other vocal issues" section?!  :o_O
8254
8255 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8256
8257         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8258         directories, not paths).
8259
8260 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8261
8262         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8263         plain emmentaler/aybabtu.  Backportme.
8264
8265         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8266         missing dir correction.
8267
8268 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8269
8270         * scm/define-markup-commands: fix reversed justify/wordwrap
8271         doc strings.
8272
8273 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8274
8275         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8276         lily/gregorian-ligature-engaver.cc,
8277         lily/include/ligature-engraver.hh,
8278         lily/include/coherent-ligature-engraver.hh,
8279         lily/include/gregorian-ligature-engraver.hh: make these classes
8280         truely abstract.  This should fix some internal oddities such as
8281         duplicate as well as dead translator/property declarations, and
8282         also some dead code.
8283
8284         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8285         bugfix: avoid message "junking empty ligature" on ligature
8286         brackets by collecting dummy grobs.
8287
8288 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8289
8290         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8291
8292         * input/proportional.ly (staffKind): bugfix.
8293         (staffKind): updates by Trevor Baca.
8294
8295         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8296         default layout. 
8297
8298         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8299         pair.
8300
8301         * lily/beam.cc (rest_collision_callback): call position_beam() if
8302         necessary.
8303
8304         * VERSION: release 2.7.4
8305
8306         * input/regression/spacing-uniform-stretching.ly: new file.
8307
8308         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8309
8310         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8311         contributor.
8312
8313         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8314
8315         * input/proportional.ly: new file.
8316
8317         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8318         columns is empty
8319
8320         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8321         bounds to currentCommandColumn for the last step.
8322         (start_translation_timestep): if tupletFullLength is set, set
8323         bound to Paper Column
8324
8325         * input/regression/tuplet-full-length.ly (indent): new file.
8326
8327         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8328         clique of loose columns, eg. a set of grace notes in strict
8329         notespacing.
8330
8331         * input/regression/spacing-strict-spacing-grace.ly: new file.
8332
8333         * lily/key-signature-interface.cc: change property name to
8334         alteration-alist
8335
8336         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8337         keyAccidentalOrder
8338
8339         * python/convertrules.py (conv): keyAccidentalOrder ->
8340         keyAlterationOrder
8341
8342         * lily/key-engraver.cc (create_key): always print a cancellation
8343         for going to C-major/A-minor, regardless of printKeyCancellation.
8344         (create_key): remove typecheck for visibility. This fixes key
8345         signature not being printed.
8346
8347         * lily/spacing-determine-loose-columns.cc: new file.
8348
8349         * input/regression/spacing-strict-notespacing.ly: new file.
8350
8351         * lily/spacing-spanner.cc (generate_springs): rename from
8352         do_measure. 
8353         (generate_pair_spacing): new function.
8354         (init, generate_pair_spacing): set between-cols for floating
8355         nonmusical columns.
8356
8357         * lily/spaceable-grob.cc (get_spring): new function. 
8358
8359         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8360         relative to the right edge of the prefatory matter.
8361
8362         * lily/beam.cc (print): read break-overshoot to determine where to
8363         stop/start broken beams.
8364
8365         * input/regression/spanner-break-overshoot.ly: new file.
8366
8367 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8368
8369         * ly/bagpipe.ly: updated.
8370
8371         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8372
8373 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8374
8375         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8376         support: now (de)crescs avoid slurs as well.
8377
8378         * Documentation/user/instrument-notation.itely (Bagpipe example):
8379         comment out non-functioning bagpipe example.
8380         (Bagpipe definitions): idem.
8381
8382         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8383         (Top): add proportionalNotationDuration example.
8384
8385         * input/regression/spacing-proportional.ly: new file.
8386
8387         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8388         synched to a beam.
8389
8390         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8391         fixes beams with a single stem (eg. beams across linebreaks.)
8392
8393         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8394
8395         * flower/rational.cc (operator +): prevent overflow. This fixes
8396         heavily nested tuplets.
8397
8398         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8399         have to protect even those unlikely to be corrupted data members.  
8400
8401 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8402
8403         * ly/bagpipe.ly: new file.
8404
8405         * THANKS: added Sven Axelsson.
8406
8407 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8408
8409         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8410         copy proportionalNotationDuration into currentMusicalColumn if
8411         set.
8412
8413         * lily/spacing-spanner.cc (musical_column_spacing): if
8414         uniform-stretching set, fixed space is 0.0
8415
8416         * input/regression/spacing-multi-tuplet.ly: show
8417         uniform-stretching property.
8418
8419         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8420
8421         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8422         (struct Spacing_options): new struct.
8423
8424         * lily/spacing-basic.cc: new file.
8425
8426         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8427         delta_t doesn't have to be smaller than shortest_playing_len
8428
8429 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8430
8431         * input/regression/markup-arrows.ly:  new file.
8432
8433         * lily/tuplet-bracket.cc: document new behavior.
8434
8435         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8436         with line breaks.
8437
8438         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8439
8440         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8441         default 
8442
8443         * lily/tuplet-bracket.cc: add edge-text property.
8444         add break-overshoot.
8445         (print): read break-overshoot.
8446         (print): read edge-text, add stencils.
8447
8448         * mf/feta-arrow.mf: new file.
8449
8450         * mf/feta-generic.mf: add feta-arrow.
8451
8452 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8453
8454         * Documentation/user/lilypond-book.itely (An example of a
8455         musicological document): Added flag -o to dvips for people who use
8456         the default setting in teTeX where output is sent to the printer. 
8457
8458         * Documentation/user/global.itely (Vertical spacing): Added
8459         reference to the Axis_group_engraver which documents the *Extent
8460         properties.
8461
8462 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8463
8464         * Documentation/user/basic-notation.itely (Tuplets): add note
8465         about nested tuplets. Remove BUG. 
8466
8467         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8468
8469         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8470         (print): manually call print() for subtuplets.
8471         (calc_position_and_height): add subtuplets to the
8472         support. Vertically shift outer tuplet 
8473
8474         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8475         remove-first for Lyrics, ChordNames and FiguredBass
8476
8477         * scm/define-grob-properties.scm (all-internal-grob-properties):
8478         use ly:grob-array? iso. grob-list?
8479         (all-internal-grob-properties): add tuplets grob-array.
8480
8481         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8482         new function
8483
8484 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8485
8486         * input/test/time-signature-staff.ly: new file.
8487
8488         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8489         spurious #<Music FingerEvent> errors. Backportme.
8490
8491 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8492
8493         * Documentation/user/programming-interface.itely (Markup
8494         construction in Scheme): Corrected markup syntax in the
8495         translation table.
8496
8497 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8498
8499         * Documentation/user/instrument-notation.itely: small update
8500         to bagpipe notation docs; thanks Sven!
8501
8502         * Documentation/user/basic-notation.itely: add link about trills.
8503
8504 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8505
8506         * Documentation/user/music-glossary: remove accidentally committed
8507         fink patch.
8508
8509 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8510
8511         * lily/lily-parser.cc (get_header): new function. Enable multiple
8512         \header definitions.
8513
8514         * lily/parser.yy (lilypond_header_body): use get_header.
8515
8516         * ly/init.ly:
8517         * scm/lily-library.scm (print-score-with-defaults): renamed
8518         $globalheader to $defaultheader
8519             
8520         * Documentation/user/global.itely (Creating titles): added short
8521         explanation that multiple headers are useable.
8522
8523
8524 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8525
8526         * lily/module-scheme.cc (LY_DEFINE): new file. 
8527
8528         * Documentation/user/advanced-notation.itely (Font selection): add
8529         doco for make-pango-font-tree.
8530
8531 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8532
8533         * Documentation/user/music-glossary: more languages
8534         for tenuto.
8535
8536         * Docuemntation/user/instrument-notation.itely: minor
8537         update for bagpipe example.
8538
8539 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8540
8541         * input/regression/+.ly (TODO): add some text.
8542
8543 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8544
8545         * Documentation/user/invoking.itely: \score begins with music.
8546
8547         * Documentation/user/ basic-notation.itely,
8548         instrument-notation.itely: minor changes.
8549
8550         * Documentation/user/music-glossary.itely: began tenuto entry.
8551
8552 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8553
8554         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8555
8556         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8557
8558 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8559
8560         * Documentation/user/examples.itely: remove bagpipe template.
8561
8562         * Documentation/user/instrument-notation.itely: add bagpipe
8563         section, maybe fix quotes in lyrics.  I hate text encoding.
8564         Clarify chord durations, more bagpipe stuff.
8565
8566 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8567  
8568         * lily/accidental-engraver.cc: formatting fixes.
8569
8570         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8571         grob-array.
8572
8573         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8574
8575         * lily/note-column.cc (arpeggio): new function.
8576
8577         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8578         account for spacing.
8579
8580 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8581
8582         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8583         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8584         mingw build.
8585         
8586 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8587
8588         * scm/lily.scm (lilypond-all): clear anonymous modules after
8589         processing files.
8590
8591 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8592
8593         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8594         SCM_I_CONSP
8595
8596         * VERSION: 2.7.3 released
8597
8598         * Documentation/user/invoking.itely (Invoking lilypond): add
8599         LILYPOND_GC_YIELD documentation.
8600
8601         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8602         scm_from_real / scm_make_real.
8603
8604         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8605         higher. This increases memory footprint, but provides overall
8606         speedup of 15 to 20%. 
8607
8608         * lily/include/translator.hh (class Translator): remove
8609         PRECOMPUTED_VIRTUAL everywhere.
8610
8611         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8612
8613         * lily/context.cc (now_mom): non-recursive now_mom() 
8614
8615         * lily/include/profile.hh: new file.
8616
8617         * lily/profile.cc: new file.
8618
8619         * lily/grob.cc (Grob::Grob): look properties up directly.
8620
8621         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8622         lookups.
8623
8624         * lily/include/box.hh (class Box): smob Box type.
8625
8626         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8627
8628         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8629         protect() and unprotect(). Use throughout.
8630
8631 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8632
8633         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8634
8635         * scm/define-music-display-methods.scm (markup->lily-string):
8636         markup elements can also be strings (without simple-markup
8637         appended)
8638
8639 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8640
8641         * lily/context.cc (where_defined): also assign value in
8642         where_defined().
8643
8644         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8645         (curve_coordinate): new function
8646
8647         * lily/simple-spacer.cc (add_columns): only add rods between
8648         column i and begin/end if keep-inside-line is set (this repleces
8649         allow-outside-line as default)
8650
8651 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8652
8653         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8654         tupletSpannerDuration if applicable.
8655
8656         * lily/font-size-engraver.cc (process_music): read fontSize only
8657         once per timestep.
8658
8659         * lily/engraver*cc: use throughout.
8660         
8661         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8662
8663         * lily/translator.cc (add_acknowledger): new file. Directly jump
8664         into an Engraver::acknowledge_xxx () method based on a grobs
8665         interface-list.
8666
8667         * lily/include/translator-dispatch-list.hh (class
8668         Engraver_dispatch_list): new struct, new file.
8669
8670         * scm/define-context-properties.scm
8671         (all-internal-translation-properties): remove acceptHashTable,
8672         acknowledgeHashTable
8673
8674         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8675
8676         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8677         change acknowledgeHashTable to C++ member. 
8678
8679         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8680
8681 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8682
8683         * scm/display-lily.scm: new file. Define a `display-lily-music'
8684         function, that displays the music expression given as an argument,
8685         using LilyPond notation.
8686
8687         * scm/define-music-display-methods.scm: new file. Implementation
8688         of display methods for each music type.
8689
8690         * ly/music-functions-init.ly (displayLilyMusic): new function for
8691         displaying music with LilyPond notation.
8692
8693         * input/regression/display-lily-tests.ly: new regression test file
8694         for `display-lily-music'.
8695
8696         * scm/markup.scm: remove obsolete debugging code (for printing
8697         markups with LilyPond notation).
8698
8699         * scm/define-music-types.scm (music-name-to-property-table):
8700         * scm/clef.scm (supported-clefs): export, in order to be accessible
8701         from the (scm display-lily) module.
8702
8703 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8704
8705         * Documentation/topdocs/NEWS.tely (Top): Typo.
8706
8707 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8708
8709         * Documentation/index.html.in, Documentation/texinfo.css,
8710           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8711           Documentation/bibliography/index.html.in,
8712           Documentation/bibliography/html-long.bst: revert css-width patch,
8713           it does not work with IE6.
8714
8715 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8716
8717         * Documentation/texinfo.css: revert 760px hack. 
8718
8719         * VERSION: release 2.7.2
8720
8721         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8722
8723         * Documentation/user/basic-notation.itely (Barnumber check): add
8724         section.
8725
8726         * scm/music-functions.scm (skip-to-last): new function. Show only
8727         last showLastLength part of the \score.
8728
8729         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8730
8731         * python/convertrules.py (conv): add ly:x-moment rule
8732
8733         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8734
8735         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8736
8737         * Documentation/user/instrument-notation.itely (Flexibility in
8738         alignment): options in subsections.
8739
8740         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8741         syllable text. Instead, assume that the previous lyric text is a
8742         melismated text.
8743
8744         * Documentation/index.html.in: revert 800x600 change.
8745
8746 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8747
8748         * lily/main.cc (main): Remove invalid handle kludge.
8749
8750         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
8751         (lambda): add gui define.
8752
8753 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8754
8755         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
8756
8757         * Documentation/user/instrument-notation.itely (Musica ficta
8758         accidentals): add section Musica ficta accidentals
8759
8760         * lily/accidental-engraver.cc (make_suggested_accidental): new
8761         function.
8762         (make_standard_accidental): move into new function.
8763         (create_accidental): new function.
8764
8765         * scm/define-grobs.scm (all-grob-descriptions): new Grob
8766         AccidentalSuggestion
8767
8768         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
8769
8770         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
8771         undefined.
8772
8773         * Documentation/user/global.itely (Page formatting): document
8774         horizontalshift.
8775
8776         * scm/page-layout.scm (default-page-music-height):
8777         horizontalshift: new variable, shift all systems by
8778         horizontalshift to the right, to make space for instrument names.
8779
8780         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
8781
8782         * lily/input-scheme.cc (LY_DEFINE): take format commands.
8783
8784 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8785
8786         * lily/note-column.cc (dir): idem.
8787
8788         * lily/spacing-spanner.cc (Module): idem.
8789
8790         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
8791
8792         * lily/include/paper-column.hh (class Paper_column): add
8793         non-static get_rank() member.
8794
8795         * VERSION: release 2.7.1
8796         
8797         * scm/framework-null.scm: new file, used for benchmarking.
8798
8799 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
8800
8801         * Documentation/topdocs/INSTALL.texi, configure.in: fix
8802         version dependencies for fontforge and gs.
8803
8804         * Documentation/index.html.in, Documentation/texinfo.css,
8805         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8806         Documentation/bibliography/index.html.in, 
8807         Documentation/bibliography/html-long.bst: optimize width of
8808         html for a 800x600 screen (width:760), increases printability
8809         when 'fit to page' is not set and readability in wide screens.
8810
8811         * stepmake/bin/add-html-footer.py: add missing </p>.
8812
8813 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8814
8815         * scm/define-markup-commands.scm (beam): use polygon in beam
8816         command.
8817
8818         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
8819         all acknowledged grobs, and do potentially expensive merge and
8820         write in one go.
8821
8822         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
8823
8824         * configure.in (reloc_b): add --enable-static-gxx to statically
8825         link to libstdc++
8826
8827         * lily/GNUmakefile (static-gxx-libs): new target
8828         static-gxx-libs. Create symlink to libstdc++.a
8829
8830         * lily/new-lyric-combine-music-iterator.cc: rename to
8831         Lyric_combine_music_iterator
8832
8833         * lily/lyric-combine-music-iterator.cc
8834         (Old_lyric_combine_music_iterator): rename to
8835         Old_lyric_combine_music_iterator
8836
8837         * lily/*-engraver.cc (various): remove double use of
8838         PRECOMPUTED_VIRTUAL function: only use
8839         start_translation_timestep() and stop_translation_timestep(), not
8840         both.
8841
8842         * lily/break-substitution.cc (fast_substitute_grob_array): do
8843         fast_substitute_grob_array for all unordered grob_arrays.
8844         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
8845         (substitute_grob_array): optimize.
8846
8847         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
8848
8849         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
8850
8851         * lily/parser.yy: revert $globalheader patch.
8852         
8853         * lily/include/translator.icc
8854         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
8855         Translator methods, without _static helper.
8856  
8857         * lily/grob-smob.cc (derived_mark): rename from
8858         do_derived_mark(). Return void.
8859
8860         * scm/define-context-properties.scm
8861         (all-internal-translation-properties): remove tweakCount/tweakRank.
8862
8863         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
8864         predefined break-visibilities.
8865
8866         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
8867         booleans for break-visibility.
8868
8869         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
8870
8871         * python/convertrules.py (conv): rule for Timing_translator. 
8872
8873         * lily/include/translator.icc: new file. 
8874
8875         * lily/paper-column-engraver.cc (process_music): new
8876         file. Separate Paper_column factory from Score_engraver.
8877
8878         * lily/vertically-spaced-context-engraver.cc: administer
8879         spaceable-staves property of System.
8880
8881         * lily/translator-group-ctors.cc: new file.
8882
8883         * lily/context-property.cc (make_grob_from_properties): construct
8884         the right Grob class programmatically, looking at the class entry
8885         for the meta property.
8886
8887         * lily/break-align-engraver.cc (stop_translation_timestep): call
8888         Break_align_interface::add_element() directly.
8889
8890         * lily/context.cc (measure_position): measure_position() is now a
8891         normal function.
8892
8893         * lily/include/translator.hh (class Translator): rename
8894         process_acknowledged_grobs() to process_acknowledged() and move to
8895         Translator.
8896
8897         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
8898         field for each grob description.
8899
8900         * lily/include/translator-group.hh (class Translator_group):
8901         change to base class. Separate class from Translator. This gets
8902         rid of virtual inheritance for Engravers/Performers.
8903
8904         * lily/staff-performer.cc (class Staff_performer): derive
8905         Staff_performer from Performer, not Performer_group_performer 
8906
8907         * Lily/translator-group.cc (precomputed_recurse_over_translators):
8908         new function.
8909         (precompute_method_bindings): new function. Precompute lists of
8910         Translators, so we only call methods (process_music,
8911         start_translation_timestep, etc.) for Translators needing
8912         it. Also: dispose of pointer-to-member-function calls.
8913
8914         * lily/engraver-group-engraver.cc: remove engraver_each,
8915         recurse_down_engravers ()
8916
8917         * lily/note-head.cc (internal_print): only call
8918         glyph-name-procedure if style != default. 
8919
8920 2005-07-16  Graham Percival  <gperlist@shaw.ca>
8921
8922         * ly/titling-init.ly: add printallheaders option.
8923
8924         * Documentation/user/global.itely: document printallheaders.
8925
8926 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8927
8928         * lily/system.cc (do_derived_mark): don't mark from object_alist_
8929         anymore, but do it centrally.  
8930
8931         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
8932         hammer hack.
8933
8934         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
8935
8936         * scm/output-lib.scm: remove hammer-print-function.
8937
8938         * lily/include/pointer-group-interface.hh (extract_grob_set): new
8939         macro. Declare a Link_array<Grob> and fill it from a grob.
8940         (extract_item_set): idem for item.
8941
8942         * lily/break-substitution.cc: add header.
8943         (fast_substitute_grob_array): rewrite for Grob_arrays.
8944         (substitute_grob_array): idem.
8945
8946         * lily/group-interface.cc (add_thing): remove file.
8947
8948         * flower/include/parray.hh (class Link_array): slice() is const.
8949
8950         * lily/include/grob-array.hh: new file.
8951
8952         * lily/grob-array.cc (spanner): new file.
8953
8954         * lily/beam-quanting.cc (fill): read details property from beam.
8955
8956         * lily/beam.cc: support details property.
8957
8958         * total speedups below: approx 10%.
8959
8960         * lily/include/beam.hh: new struct, softcode beam quanting parameters
8961
8962         * lily/include/grob.hh (class Grob): add interfaces_ member.
8963
8964         * lily/bezier.cc (init_polynomial_cache): new function: cache
8965         binom(3,j) t^j (1-t)^{3-j}
8966         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
8967
8968         * lily/*.cc: substitution throughout.
8969
8970         * lily/grob-property.cc (internal_get_object): new routine.
8971         (internal_set_object): idem. Store grob refrences in separate
8972         alist. This saves processing time, since properties aren't
8973         break-substituted, and the per grob namespace is smaller, both for
8974         grobs and non-grob properties.
8975
8976         * scm/define-grob-properties.scm (all-internal-grob-properties):
8977         remove center-element.
8978
8979         * lily/grob.cc: remove tweak-count, tweak-rank.
8980
8981 2005-07-15  Graham Percival  <gperlist@shaw.ca>
8982
8983         * Documentation/user/lilypond-book.itely: fixes example.
8984
8985 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8986
8987         * Documentation/user/global.itely (Creating titles):    
8988         * Documentation/user/examples.itely (All headers): change the
8989         place of \header in \score blocks (after music block) to make
8990         examples compile (cf. changes on parser.yy on 2005-07-10)
8991
8992 2005-07-13  Graham Percival  <gperlist@shaw.ca>
8993
8994         * python/convertrules.py: add exc -> ecc rule.
8995
8996         * scripts/convert-ly.py: add location of convertrules.py
8997         in a comment.
8998
8999         * Documentation/user/changing-defaults.itely: fix language.
9000
9001 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9002
9003         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9004
9005 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9006
9007         * scm/output-socket.scm (grob-bbox): don't use inf? 
9008
9009         * flower/include/rational.hh: add operator bool() 
9010
9011         * scm/define-music-types.scm (music-descriptions): remove
9012         internal-class-name properties.
9013
9014         * lily/include/event.hh: remove file.
9015
9016         * lily/include/music-constructor.hh: remove file.
9017
9018         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9019         in 'types property.
9020
9021         * lily/music.cc (duration_length_callback): new function.
9022
9023         * lily/event.cc: remove file.
9024
9025         * lily/music-constructor.cc: remove file.
9026
9027         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9028
9029         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9030         (get_context_key): idem.
9031
9032         * scm/lily.scm (lambda): new option object-keys (default to #f)
9033
9034         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9035
9036         * scm/output-gnome.scm: remove beam routine.
9037
9038         * scm/output-ps.scm (scm): idem.
9039
9040         * scm/output-svg.scm: remove beam.
9041
9042         * ps/music-drawing-routines.ps: remove draw_beam.
9043
9044         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9045
9046         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9047         add scm_from_locale_string compatibility glue. 
9048
9049 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9050
9051         * scripts/lilypond-book.py: Prevent occuring error when
9052         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9053         times and target file shoud be overwritten.  (Error message said
9054         'input file and output file is same'.)
9055
9056 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9057
9058         * input/regression/slur-extreme.ly,
9059         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9060         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9061         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9062         "excentricity" to "eccentricity".
9063
9064         * Documentation/user/converters.itely: fix URL for Noteedit and
9065         Rosegarden.
9066
9067         * THANKS: added Yoshinobu Ishizaki.
9068
9069 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9070
9071         * scm/define-markup-commands.scm (justify-field): add. 
9072
9073         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9074
9075 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9076
9077         * lily/lookup.cc (filled_box): express filled_box with
9078         round_filled_box
9079
9080         * scm/midi.scm (paper-book-write-midis): new function. Write all
9081         performances in numbered MIDI files.
9082
9083         * lily/performance-scheme.cc (LY_DEFINE): new file.
9084         (LY_DEFINE): new function ly:performance-write.
9085
9086         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9087         new function.
9088         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9089
9090         * scm/framework-*.scm: use port arguments throughout.
9091
9092         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9093
9094         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9095
9096         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9097
9098         * scm/framework-texstr.scm (output-framework): 
9099
9100         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9101
9102         * scm/output-lib.scm (tablature-stem-attachment-function):
9103         tablature stem attachment fix. 
9104
9105 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9106
9107         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9108
9109         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9110
9111         * scm/define-music-types.scm (music-descriptions): don't use
9112         Music_wrapper type.
9113
9114         * lily/paper-column.cc (print): print moment too.
9115
9116         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9117         remove compatibility cruft.
9118
9119         * lily/parser.yy (score_body): \score can only begin with Music. 
9120
9121         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9122         make-score. Take music argument only. Move parser interaction to
9123         Scheme.
9124
9125         * scm/lily-library.scm (scorify-music): new function.
9126
9127         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9128         (datadir): remove resource import.
9129         (print_environment): remove get_bbox()
9130         (cp_to_dir): remove pre 1.5.2 compat glue.
9131
9132 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9133
9134         * lily/include/simple-spacer.hh (Module): idem.
9135
9136         * lily/include/spring.hh (struct Spring): store inverse
9137         strength. This prevents division by zero.
9138
9139         * VERSION: release 2.7.0
9140         
9141         * lily/include/music.hh (class Music): remove Music::duration_log()
9142
9143         * lily/stem-engraver.cc (make_stem): take duration log from event.
9144
9145         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9146
9147 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9148
9149         * scm/lily.scm (ly:load): load autochange.scm
9150
9151         * Documentation/user/tutorial.itely (Running LilyPond for the
9152         first time): remove reference to DVI/TeX
9153
9154         * scm/define-markup-commands.scm (text): add \text markup command.
9155
9156         * configure.in (reloc_b): bump requirement to Python 2.2.
9157
9158         * lily/include/dots.hh (class Dots): make has_interface() static.
9159
9160         * python/convertrules.py (conv): add rule for ly:grob-default-font
9161
9162         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9163         alphabetical order.
9164
9165         * input/regression/trill-spanner-pitched.ly: new file.
9166
9167         * lily/font-interface-scheme.cc (LY_DEFINE): function
9168         ly:grob-default-font (changed from get-default-font).
9169
9170         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9171
9172         * lily/note-head.cc (internal_print): if style is not a symbol,
9173         set style to 'default. 
9174         (internal_print): no style suffix if glyph-name-procedure not
9175         set. Default to quarter head.
9176
9177         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9178
9179         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9180
9181         * ly/music-functions-init.ly: \pitchedTrill
9182
9183         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9184
9185         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9186
9187         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9188
9189         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9190
9191         * po/fr.po: update
9192
9193         * po/de.po: update.
9194
9195 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9196
9197         * Documentation/user/changing-defaults.itely: add link
9198         to grob-iterface.
9199
9200         * Documentation/user/advanced-notation.itely: add material
9201         to Setting automatic beam behaviour.  Thanks, Joe!
9202
9203         * Documentation/user/lilypond.itely: change encoding to utf-8.
9204
9205 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9206
9207         * Documentation/user/advanced-notation.itely (Setting automatic
9208         beam behavior): Correct the documentation of
9209         revert-auto-beam-setting (backportme)
9210
9211 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9212
9213         * lily/ly-module.cc (ly_make_anonymous_module): define
9214         %module-public-interface of module. 
9215
9216         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9217         without lexer.
9218
9219 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9220
9221         * input/regression/fret-diagrams.ly: stretch example.
9222
9223 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9224
9225         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9226         Fodor).
9227
9228 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9229
9230         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9231
9232         * Documentation/user/examples.itely, lilypond-book.itely:
9233         change \RequirePackage to \usepackage.
9234
9235         * Documentation/user/global.itely: document copyright and tagline.
9236
9237 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9238
9239         * Documentation/user/basic-notation.itely (Transpose): remove link
9240         to nonexistent UntransposableMusic.
9241
9242         * scm/output-svg.scm: remove old definitions.
9243
9244         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9245         invoking.
9246
9247         * python/lilylib.py (search_exe_path): new function.
9248
9249 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9250
9251         * python/lilylib.py (mkdir_p): remove setup_environment()
9252         (backportme)
9253
9254         * buildscripts/mutopia-index.py (headertext): trim text.
9255
9256         * Documentation/topdocs/NEWS.tely (Top): refresh.
9257
9258         * scm/define-markup-commands.scm (wordwrap-string): new function:
9259         split string in paras and words.
9260         (wordwrap-markups): new function.
9261         (wordwrap-stencils): new function. 
9262         (justify): use it.
9263         (wordwrap): use it.
9264         (wordwrap-string): use it
9265         (justify-string): use it.
9266
9267         * scm/lily-library.scm (regexp-split): new function.
9268
9269         * scm/define-markup-commands.scm: remove encoded-simple. 
9270         remove font-markup.
9271         (fontsize): remove old version  of fontsize.
9272         (wordwrap): new markup function. Wrap into paragraphs.
9273
9274         * VERSION: Branch lilypond_2_6
9275         (MINOR_VERSION): go to 2.7.0
9276
9277 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9278
9279         * po/zh_TW.po: update from translation project.
9280
9281 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9282
9283         * scm/midi.scm: compile fix.
9284
9285 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9286
9287         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9288         patch. Now, the tempfile module is loaded too, not only used.
9289
9290 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9291
9292         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9293         0.05 - 1.00 to 0.25 - 1.00
9294
9295         * scm/midi.scm: moved the default-instrument-equalizer procedure
9296         to just under the insturment-equalizer-alist it takes as an
9297         argument.
9298
9299 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9300
9301         * Documentation/user/advanced-notation.itely (Font selection):
9302         remove CMR note.
9303
9304         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9305
9306 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9307
9308         * THANKS: Add UTF-8 marker.
9309
9310         * Documentation/user/point-and-click.itely (http): Update: use
9311         lilypond-invoke-editor.  Fix: instruct to use user.js.
9312
9313 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9314
9315         * ly/titling-init.ly: implements printpagenumber, increases
9316         space between dedication and title (to avoid collisions with
9317         "g" and "q" in dedication), and nicer logic about copyright
9318         and instrument fields being printed on the first page.
9319         Thanks Vincent!
9320
9321         * Documentation/user/global.itely: document printpagenumber.
9322
9323 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9324
9325         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9326
9327 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9328
9329         * THANKS: update to 2.6
9330
9331         * VERSION: 2.6.0 released.
9332
9333 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9334
9335         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9336         rule, errorneously removed probably because of misleading comment.
9337
9338 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9339
9340         * python/lilylib.py (datadir): py2exe comments.
9341
9342         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9343
9344         * configure.in (reloc_b): make fontconfig REQUIRED.
9345
9346 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9347
9348         * po/fi.po: add latest translations.
9349
9350 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9351
9352         * ChangeLog: recode utf-8
9353
9354         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9355         logo.
9356
9357         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9358
9359         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9360
9361         * python/convertrules.py (do_conversion): don't print program_name
9362         from within a module
9363
9364         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9365
9366         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9367
9368 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9369
9370         * Documentation/user/lilypond-book.itely,
9371         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9372
9373         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9374         fixes baseline-skip.  Thanks Vincent!
9375
9376         * Documentation/user/advanced-notation.itely, global.itely:
9377         moved "Selecting font sizes" to global, since it deals with
9378         notation font size, not text fonts.
9379
9380 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9381
9382         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9383         to fonts.
9384
9385 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9386
9387         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9388         workaround since /dev/stdin doesn't work on Cygwin. Using a
9389         temporary file in the current directory since latex doesn't
9390         understand the path name to the default TMP in Cygwin (at least on
9391         win XP).
9392         
9393         * Documentation/user/global.itely (Creating titles): Correct
9394         misprint in example. Thanks to Rob Vlasaty.
9395
9396 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9397
9398         * VERSION (PATCH_LEVEL): release 2.5.32
9399
9400         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9401         variable in lily module
9402
9403         * scm/framework-ps.scm (output-classic-framework): error message
9404         regarding the classic framework.
9405
9406         * Documentation/user/henle-flat-gray.png (Module): new file.
9407
9408         * Documentation/user/baer-flat-gray.png (Module): new file.
9409
9410         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9411         whiteout for markups.
9412
9413         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9414         regex too. This fixes change clef appearance in PDF. 
9415
9416         * ttftool/include/*: remove.
9417
9418         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9419
9420         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9421
9422         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9423
9424         * ttftool/*: remove ttftool subdirectory.
9425
9426         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9427
9428         * lily/ttf.cc (print_header): new file. Convert to type42, using
9429         FreeType to parse the TTF. 
9430
9431         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9432         and post table may differ. Pass around post_nglyphs as well.
9433
9434 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9435
9436         * ly/music-functions-init.ly (musicMap): new music function
9437         musicMap. 
9438         
9439 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9440
9441         * make/mutopia-rules.make: anti-alias-factor = 2
9442
9443         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9444         page switch.
9445
9446         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9447         anti-alias-factor for lilypond-book runs.
9448
9449         * scm/ps-to-png.scm (scale-down-image): new function.
9450         (my-system): new function.
9451         (make-ps-images): blow up GS resolution by anti-alias-factor,
9452         scale down image by anti-alias-factor.  This improves appearance
9453         of bitmaps
9454         (make-ps-images): remove showpage. Fixes spurious empty png at
9455         end.
9456
9457         * scm/framework-ps.scm (write-preamble): downcase filename before
9458         string-matching. Should fix .TTF files (as opposed to ttf files)  
9459
9460         * Documentation/user/tutorial.itely (Running LilyPond for the
9461         first time): separate subsections for windows, macos and unix.  
9462
9463         * Documentation/user/invoking.itely (Updating files with
9464         convert-ly): add MacOS X note.
9465
9466 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9467
9468         * Documentation/user/introduction.itely (Engraving): don't include
9469         file optical-spacing, add directly.
9470
9471         * lily/paper-outputter.cc (file): open file in binary mode. This
9472         fixes OTF embedding on windows.
9473
9474 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9475
9476         * scm/framework-ps.scm (write-preamble): remove debugging output.
9477
9478         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9479
9480         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9481         outdir.
9482         (install-fc-cache): install font cache in installation directories.
9483
9484 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9485
9486         * scm/editor.scm (editor-command-template-alist): Use char iso
9487         column, except for Emacs.
9488         (get-editor-command): Substitute char too (Bertalan Fodor).
9489
9490 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9491
9492         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9493         quoted ~s.  This should fix PNG output on Windows; single quotes
9494         are regular characters on Windows.
9495
9496 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9497
9498         * Documentation/user/basic-notation.itely: include ChoirStaff
9499         in System start delimiters.
9500
9501         * Documentation/user/putting.itely: new doc section on
9502         fixing overlapping notation.
9503
9504 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9505
9506         * Documentation/user/global.itely (Paper size): \paper is in
9507         \book, not \score.
9508
9509         * make/mutopia-rules.make: -ddelete-intermediate-files
9510
9511         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9512
9513 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9514
9515         * ChangeLog: Recode utf-8.
9516
9517         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9518         datadir with .py modules.
9519
9520 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9521
9522         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9523
9524 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9525
9526         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9527         
9528         * scm/framework-ps.scm (write-preamble): remove status check.
9529
9530         * Documentation/user/invoking.itely (Updating files with
9531         convert-ly): remove -o option.
9532
9533         * VERSION (PACKAGE_NAME): release 2.5.31
9534
9535         * scm/framework-ps.scm (write-preamble): use ly:system.
9536         (write-preamble): verbosity.
9537
9538         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9539
9540         * python/convertrules.py: new file. Store conversion rules
9541         separately.
9542
9543 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9544
9545         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9546
9547 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9548
9549         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9550         \musicDisplay 
9551
9552         * Documentation/user/instrument-notation.itely (More stanzas): Add
9553         reference to StanzaNumber.
9554
9555 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9556
9557         * THANKS: separate section for website translators.
9558
9559 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9560
9561         * Documentation/topdocs/INSTALL.texi: update vim info;
9562         thanks Simon Bailey!
9563
9564         * Documentation/user/advanced-notation.itely: included
9565         color names.
9566
9567         * Documentation/user/advanced-notation.itely,
9568         Documentation/usr/notation-appendices.itely: moved
9569         color names into an appendix.
9570
9571 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9572         
9573         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9574
9575         * scm/lily.scm (lambda): initialize program options from here.
9576
9577         * scm/framework-*.scm: add header info.
9578
9579         * lily/main.cc (parse_argv): only set output format to pdf if no
9580         other format specified.
9581
9582         * scm/backend-library.scm (postprocess-output): process
9583         'delete-intermediate-files after running convert-to-*. This fixes
9584         PNG generation when 'delete-intermediate-files is set.
9585         
9586 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9587
9588         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9589         links on website. 
9590
9591 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9592
9593         * Documentation/topdocs/INSTALL.texi,
9594         Documentation/user/lilypond-book.itely: typos.
9595
9596 2005-06-12  Pal Benko  <benkop@freestart.hu>
9597
9598         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9599         added between program name and switch; -b changed to -f not
9600         to generate pdf
9601
9602 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9603
9604         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9605         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9606
9607         * input/sakura-sakura.ly: add \midi.
9608
9609         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9610         iso. python find. 
9611
9612         * ttftool/test.c (main): cosmetics.
9613
9614         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9615
9616         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9617         create a ttf2ps binary.
9618
9619         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9620
9621         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9622         true.
9623
9624 2005-06-11  Graham Percival <gperlist@shaw.ca>
9625
9626         * Documentation/user/lilypond-book.itely: add warning about
9627         the font warnings in dvips.
9628
9629 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9630
9631         * THANKS: typo
9632
9633         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9634
9635         * GNUmakefile.in: remove links for .map, .enc
9636         don't fail if out/ doesn't exist yet.
9637
9638 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9639
9640         * ttftool/util.c (surely_read): return nbytes
9641
9642         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9643
9644         * VERSION (PACKAGE_NAME): release 2.5.30
9645
9646         * flower/string-convert.cc (precision_string): >? fix.
9647
9648         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9649         (make-ps-images): add verbose -q too.
9650
9651         * lily/default-actions.cc (Module): new file. default
9652         {book,score}-print functions.
9653
9654         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9655         pass results via parseStringResult, lookup via ly:parser-lookup.  
9656
9657         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9658         constructors.
9659         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9660         (parse_string): idem.
9661
9662         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9663
9664         * lily/main.cc (main_with_guile): copy be_verbose_global into
9665         ly_set_option()
9666
9667 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9668
9669         * scm/backend-library.scm (postscript->pdf):
9670         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9671         verbose mode.  Search for several names of gs executable.
9672
9673 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9674
9675         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9676         directly. This fixes a massive memory leak, provided you use CVS
9677         GUILE.
9678
9679 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9680
9681         * ly/property-init.ly: Added tieDashed.
9682
9683         * THANKS: Added some bughunters for 2.5.
9684
9685 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9686
9687         * lily/program-option.cc: add debug-gc option.
9688
9689         * lily/include/lily-guile-macros.hh: don't protect exported module
9690         objects.
9691
9692         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9693
9694         * scm/backend-library.scm (postscript->pdf): use
9695         delete-intermediate-files iso. running-from-gui? 
9696
9697         * ttftool/util.c (surely_read): robustness. Allow read() to return
9698         less bytes than requested, as per posix standards.
9699
9700         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9701         program option.
9702
9703         * ttftool/include/ttftool.h ("C"): rename verbosity to
9704         ttf_verbosity. Add to public interface.
9705
9706         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9707
9708         * lily/program-option.cc: rename from scm-option.cc
9709
9710         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9711         (get_help_string): Print pretty help string.
9712
9713         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9714         to snippet preamble.
9715
9716         * lily/scm-option.cc: remove command-line-settings option. Fold
9717         all command-line options plus default settings in a generic
9718         interface. 
9719
9720         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9721         texts too.
9722
9723 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9724
9725         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9726         or EXT_ components non-empty.
9727
9728 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9729
9730         * scm/lily.scm (running-from-gui?): Export.
9731
9732         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9733         output in .ly source directory.
9734
9735 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9736
9737         * ttftool/util.c (surely_lseek): more verbosity.
9738
9739         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9740         compile.
9741
9742         * lily/parser.yy (Repeated_music): remove >? 
9743
9744         * scm/backend-library.scm (postscript->pdf): Support for
9745         -dgs-font-load=1
9746
9747         * scm/framework-ps.scm (write-preamble): make font loading
9748         switchable to GS via --define-default gs-font-load=1
9749
9750 2005-06-09  Graham Percival  <gperlist@shaw.ca>
9751
9752         * Documentation/user/global.itely: added \layout docs.
9753
9754 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9755
9756         * lily/lily-parser-scheme.cc: add unistd.h
9757
9758 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9759
9760         * scm/editor.scm: add char argument.
9761
9762         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
9763
9764         * ttftool/util.c (syserror): use errno for better error reporting.
9765
9766         * lily/source-file.cc (get_counts): new function. Calc column,
9767         line and char count in one go.
9768
9769         * lily/binary-source-file.cc (quote_input): rename to quote_input
9770
9771         * lily/input.cc (set): new function.
9772
9773 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9774
9775         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
9776         directory part of file name to search directory.
9777
9778         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
9779         search path and chdir to DIR if --outname=DIR used.
9780
9781         * lily/main.cc (prepend_env_path): Bugfix: Check directory
9782         existence before appending original path.
9783
9784 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9785
9786         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
9787         file" massage.
9788
9789         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
9790         texinfo.tex is always used.
9791         
9792 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9793
9794         * flower/include/axis.hh: rename from axes.hh
9795
9796         * lily/include/text-interface.hh (Module): rename from text-item.hh
9797
9798         * VERSION (PATCH_LEVEL): release 2.5.29
9799
9800         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
9801
9802         * scm/framework-ps.scm (font-file-as-ps-string): new function.
9803         (handle-macfont): new function. Call fondu for Native mac fonts.
9804
9805         * scm/define-markup-commands.scm (fill-line): handle text-widths =
9806         '() case.
9807
9808 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9809
9810         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
9811         multi-page.  Fix .eps regular expression.
9812
9813 2005-06-07  Graham Percival  <gperlist@shaw.ca>
9814
9815         * Documentation/user/putting.itely: add info on modifying templates.
9816
9817         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
9818         misc small changes.
9819
9820 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9821
9822         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
9823
9824         * scripts/lilypond-ps2png.scm
9825
9826         * VERSION (PACKAGE_NAME): release 2.5.28
9827
9828 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9829
9830         * lily/main.cc (prepend_env_path): Do not append /, that does not
9831         work.  Localedir lives in datadir, not in prefix.
9832
9833         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
9834         hack for windows.
9835
9836         * flower/include/file-cookie.hh: Compile fix.
9837
9838 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9839
9840         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
9841
9842         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
9843         system primitives.
9844         (gulp-port): using read-string!/partial. We don't want to read an
9845         entire PS file  (GUILE 1.6 limits strings to 16M) 
9846
9847         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
9848         properties. Add font-interface. 
9849
9850         * scm/define-grob-properties.scm (all-user-grob-properties):
9851         remove old bracket properties.
9852
9853         * scm/x11-color.scm: reformat. 
9854
9855         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
9856         LedgerLineSpanner if new StaffSymbol is found. 
9857
9858         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
9859         staff-symbol for finishing staff. 
9860
9861         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
9862
9863         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
9864         change black to currentColor everywhere. This fixes color support
9865         in SVG.
9866
9867 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
9868
9869         * input/regression/fret-diagrams.ly: new file to test fret diagram
9870         capability
9871
9872         * scm/output-tex.scm: remove white-dot and white-text
9873
9874         * scm/output-ps.scm: remove white-dot and white-text
9875
9876         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
9877         using ly:stencil-in-color instead
9878         (draw-dots) : remove call to white-dot
9879
9880 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9881
9882         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
9883         support.
9884
9885         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
9886
9887         * flower/include/file-cookie.hh: new file. lily_cookie extension 
9888
9889         * flower/file-cookie.cc: new file. lily_cookie extension.
9890         
9891 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9892
9893         * scm/editor.scm (editor-command-template-alist): Add syn
9894         editor (Jaap [de Vos]).
9895
9896 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
9897
9898         * scripts/lilypond-ps2png.scm:
9899         * scm/ps-to-png.scm: New file.
9900
9901         * scm/backend-library.scm (postscript->png): Use it.
9902
9903         * scripts/lilypond-ps-to-png.py: Remove file.
9904
9905         * python/lilylib.py (get_bbox, make_ps_images): Remove.
9906
9907 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9908
9909         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
9910
9911         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
9912         start on grace moment. Fixes autobeam-grace.ly.
9913
9914         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
9915         process anything unless we're at the end of a pending beam. Fixes
9916         syncopated 8ths beamed across a beat.
9917
9918 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
9919
9920         * scm/editor.scm (editor-command-template-alist): Start emacs if
9921         emacslient fails.
9922
9923         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
9924
9925         * flower/file-path.cc (is_file, is_dir): Export.
9926
9927         * lily/main.cc (prepend_env_path, set_env_file): Use them.
9928
9929 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
9930
9931         * lily/easy-notation.cc: Added include cctype to correct
9932         compilation error.
9933
9934 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9935
9936         * scm/backend-library.scm (postscript->pdf): set resolution to
9937         1200, so bitmap fonts aren't that ugly. 
9938
9939         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
9940
9941         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
9942         parent if we have a notehead. Fixes incorrect offsets when
9943         Paper_column is very wide in the X direction.
9944
9945         * input/regression/font-family-override.ly (Module): new file.
9946
9947         * scm/font.scm (make-pango-font-tree): new function.
9948
9949         * lily/beam.cc (before_line_breaking): remove warning about less
9950         than 2 visible stems. We still get a warning when there is only
9951         one stem.
9952
9953 2005-06-01  Werner Lemberg  <wl@gnu.org>
9954
9955         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
9956         correctly.
9957
9958 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9959
9960         * lily/slur-scoring.cc (generate_avoid_offsets): new
9961         function. Generate avoid offsets once per slur.
9962
9963         * lily/slur.cc (add_extra_encompass): add dependency to
9964         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
9965
9966         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
9967         too. Fixes inf error with added bass notes.
9968
9969         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
9970         argument anymore.
9971
9972         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
9973
9974         * input/tutorial/lbook-latex-test.tex: add line length test.
9975
9976         * scripts/lilypond-book.py (set_default_options): new
9977         function. Call this before dissecting snippets, so linewidth
9978         settings reach the snippets.
9979
9980 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9981
9982         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
9983
9984 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9985
9986         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
9987
9988 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9989
9990         * stepmake/aclocal.m4: More autopackage friendliness.
9991
9992 2005-05-31  Graham Percival  <gperlist@shaw.ca>
9993
9994         * Documentation/index.html.in: remove link to LSR.
9995
9996         * Documentation/user/global.itely: remove duplicate
9997         "dedication" \header{} section.
9998
9999 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10000
10001         * VERSION (PACKAGE_NAME): release 2.5.27.
10002
10003         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10004         too. Plugs memory leak.
10005
10006         * make/lilypond.fedora.spec.in (Group): remove
10007         lilypond-pdfpc-helper.
10008
10009         * scripts/GNUmakefile (SEXECUTABLES): remove
10010         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10011
10012         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10013         'typewriter family.
10014
10015         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10016         memory leak.
10017
10018         * lily/parser.yy (score_body): don't clone Score, that's done in
10019         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10020
10021         * lily/score-engraver.cc (derived_mark): new function.
10022         (initialize): unprotect Paper_score. This fixes a memory leak.
10023
10024         * lily/score-performer.cc (derived_mark): new function.
10025
10026         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10027
10028         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10029         spurious warning.
10030
10031         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10032         serif.
10033
10034 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10035
10036         * configure.in (reloc_b): Add --enable-relocation.
10037
10038 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10039
10040         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10041
10042         * input/regression/alignment-order.ly: add Staff example.
10043
10044 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10045
10046         * po/fr.po: update.
10047
10048 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10049
10050         * Documentation/index.html.in: add link to LSR.
10051
10052 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10053
10054         * scm/define-stencil-commands.scm (Module): new file. Register all
10055         allowed stencil expression heads in a central place.
10056
10057         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10058         ly:make-stencil
10059
10060         * lily/stencil-expression.cc (all_stencil_heads): registering
10061         stencil expressions.
10062
10063         * lily/stencil-interpret.cc: new file. Stencil expression
10064         interpreting.
10065
10066         * input/xiao-haizi-guai-guai.ly: move file back.
10067
10068 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10069
10070         * Documentation/user/advanced.itely, converters.itely,
10071         instrument-notation.itely, lilypond-book.itely: misc small
10072         changes.
10073
10074 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10075
10076         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10077
10078         * make/lilypond.fedora.spec.in: Fix source url.
10079
10080         * cygwin: Update from mingw patches.
10081
10082         * scm/editor.scm (editor-command-template-alist): Use jedit
10083         -reuseview (Bertalan), add uedit (Patrick Huberts).
10084
10085         * input/xiao-hai-zi-guai-guai.ly: Rename from
10086         xiao-haizi-guai-guai.ly.
10087
10088         * input/*: Reindent, do not use TAB.
10089
10090         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10091         white background.
10092
10093 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10094
10095         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10096         numerical overflow error.
10097
10098 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10099         
10100         * abc2ly.py: fix to syntax error in multi-part output.
10101
10102 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10103
10104         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10105         with disappearing span bars when alignAboveContext is active
10106
10107         * lily/property-iterator.cc (check_grob): use is-grob?
10108         object-property. Fixes crash-key-sig-font-size.ly. 
10109
10110 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10111
10112         * lily/bar-line.cc (print): don't round barlines; this produces
10113         odd aliasing effects in Acroread.
10114
10115         * lily/timing-engraver.cc (process_music): robustness fix.
10116
10117         * lily/context-def.cc (filter_engravers): bugfix.
10118
10119 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10120
10121         * lily/lilypond.rc.in: Add ly-icon.
10122
10123         * lily/GNUmakefile: 
10124         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10125         rules.
10126
10127 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10128
10129         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10130
10131         * ps/music-drawing-routines.ps: 
10132
10133         * scm/output-ps.scm: remove draw ez_ball.
10134
10135         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10136         EasyNotation context definition.
10137
10138         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10139         Text_interface and color for making easy note heads.
10140
10141         * lily/stencil.cc (with_color): new function.
10142
10143         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10144
10145         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10146         output routine. Zigzag now works in SVG too.
10147
10148         * scm/output-tex.scm (filledbox): idem.
10149
10150         * scm/output-svg.scm (filledbox): idem.
10151
10152         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10153
10154         * lily/lookup.cc (horizontal_line): use draw-line. 
10155
10156         * lily/system-start-delimiter.cc: remove old staff bracket code.
10157
10158         * mf/feta-haak.mf: further tweaks.
10159
10160         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10161
10162         * mf/feta-generic.mf: include feta-haak.
10163
10164         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10165
10166         * scm/framework-ps.scm (write-preamble): only load fonts if their
10167         filename is a string. 
10168
10169 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10170
10171         * scm/output-svg.scm (circle): support circle.
10172         (bracket): stub for bracket.
10173
10174         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10175         correct.
10176
10177 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10178
10179         * Documentation/user/lilypond.tely, advanced-notation.itely,
10180         basic-notation.itely, instrument-notation.itely, global.itely,
10181         introduction.itely, tutorial.itely: rearranging, editing,
10182         clean-up.
10183
10184         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10185         for compiling on FreeBSD.
10186
10187 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10188
10189         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10190         otf files.
10191
10192         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10193         bugfixes.
10194
10195         * VERSION: 2.5.26 released.
10196
10197         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10198
10199 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10200
10201         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10202         if printpagenumber is false.
10203
10204 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10205
10206         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10207         cache warning.
10208
10209         * lily/tie.cc (print): support dotted ties.
10210         
10211 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10212
10213         * scm/define-grobs.scm (all-grob-descriptions): switch off
10214         debugging
10215         (all-grob-descriptions): Arpeggio has Y-extent.
10216
10217         * scm/define-music-properties.scm (all-music-properties): document
10218         length-callback and start-callback as "read-only".
10219
10220         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10221         length-callback after creation. 
10222
10223         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10224         compressmusic -> compressMusic.
10225
10226         * ly/music-functions-init.ly (oldaddlyrics): idem.
10227
10228         * lily/parser.yy: NewLyricCombineMusic ->
10229         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10230
10231 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10232
10233         * ly/Welcome_to_LilyPond.ly: typo.
10234
10235 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10236
10237         * Documentation/user/lilypond.tely: move changing-defaults to be
10238         before global issues.
10239
10240         * Documentation/user/basic-notation.itely: move Transpose section
10241         here from advanced/Other.
10242
10243         * Documentation/user/changing-defaults.itely,
10244         advanced-notation.itely: move Fonts to advanced, edit.
10245
10246 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10247
10248         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10249         # before negative integers.
10250
10251 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10252
10253         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10254
10255         * Documentation/user/lilypond.tely: change Unified index to
10256         LilyPond index.
10257
10258         * Documentation/user/advanced-notation.itely,
10259         instrument-notation.itely: editing.
10260
10261 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10262
10263         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10264
10265         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10266
10267 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10268
10269         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10270         ly:port-move.  Needs to be stderr-specific on mingw.
10271         Run fixcc.
10272
10273 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10274
10275         * lily/general-scheme.cc (ly:port-move): Remove.
10276
10277         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10278         windows.
10279
10280         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10281         variables.  This eliminates the need for a gs.bat wrapper, which
10282         opens a console.
10283
10284         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10285         * scm/lily.scm (running-from-gui?): 
10286         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10287         artifact of not compiling with -mwindows.
10288
10289         * scm/editor.scm: Define PLATFORM.
10290
10291 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10292
10293         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10294         can start to cut & paste lilypond-book fragments.  
10295
10296         * scm/define-music-types.scm (music-descriptions): remove
10297         UntransposableMusic
10298
10299 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10300
10301         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10302
10303 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10304
10305         * Documentation/user/instrument-notation.itely: remove *Engraver.
10306
10307         * Documentation/user/advanced-notation.itely: edit, rearrange.
10308
10309 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10310
10311         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10312         findresource iso. findfont for CID CFF fonts.
10313
10314         * VERSION (PACKAGE_NAME): release 2.5.25
10315
10316         * ly/Welcome_to_LilyPond.ly: add  \version
10317
10318 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10319
10320         * Documentation/user/programming-interface.itely: move
10321         \displayMusic into its own section.
10322
10323         * Documentation/user/basic-notation.itely: finish editing.
10324
10325 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10326
10327         * flower/file-path.cc (find): don't throw away file_name.dir, but
10328         append to it. Fixes \include with directories.
10329
10330         * flower/include/file-path.hh (class File_path): don't derive from
10331         Array<String>.
10332
10333         * flower/include/file-name.hh (class File_name): remove to_str0()
10334
10335         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10336         Hara_kiri_engraver in separate file.
10337
10338         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10339         translation went wrong. Fixes vertically translated slurs.
10340
10341 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10342
10343         * Documentation/user/basic-notaton.itely: editing.
10344
10345 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10346
10347         * Documentation/user/macros.itexi, basic-notation.itely:
10348         add @commonprop (commonly used properties) macro.
10349
10350 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10351
10352         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10353
10354         * scripts/lilypond-book.py (invokes_lilypond): new function
10355         (main): only run fontextract if invokes_lilypond() is true.
10356
10357         * lily/function-documentation.cc (ly_add_function_documentation):
10358         duh, use !=
10359
10360         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10361
10362         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10363
10364         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10365
10366         * lily/function-documentation.cc (ly_add_function_documentation):
10367         use scm_hash_table_p() for checking.
10368
10369 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10370
10371         * Documentation/user/advanced-notation.itely (Text scripts):
10372         Change nonexisting @internalsref{Text markup} to @ref{Text
10373         markup}.  Change @internalsref{Text script} to
10374         @internalsref{TextScript}.
10375
10376         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10377
10378 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10379
10380         * Documentation/user/tutorial.itely, basic-notation.itely,
10381         changing-defaults.itely: remove duplicate cindex entries
10382         that appear on the same page.
10383
10384         * scm/define-grobs.scm: change default padding for TextSpanner.
10385
10386         * Documentation/topdocs/AUTHORS.texi: update email address.
10387
10388         * Documentation/user/global.itely: add info about \include.
10389
10390 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10391
10392         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10393         when running-from-gui.
10394
10395         * scm/editor.scm (get-editor): Add platform defaults.
10396
10397         * scm/backend-library.scm (postscript->pdf): Typo.
10398
10399 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10400
10401         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10402
10403         * lily/font-config.cc (init_fontconfig): add warning about cache.
10404
10405 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10406
10407         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10408
10409 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10410
10411         * lily/horizontal-bracket.cc (print): Take care of the direction
10412         property so brackets above the stave point downwards. 
10413
10414         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10415         for HorizontalBracket so it doesn't end up within the stave.
10416
10417 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10418
10419         * lily/GNUmakefile (default): Typo.
10420
10421         * scm/lily.scm (PLATFORM): Export.
10422
10423         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10424         load-font-via-GS, ttftool or fopencookie is broken on windows.
10425         
10426         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10427         -dSAFER, that is broken on windows.
10428
10429 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10430
10431         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10432         for FlexLexer.h
10433
10434         * scripts/lilypond-invoke-editor.scm: remove stray -
10435
10436 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10437
10438         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10439         Fixes deprecation warning.
10440
10441         * flower/include/string.icc (to_string): Only inline if
10442         -DSTRING_UTILS_INLINED.
10443
10444         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10445         name.  Remove windows comment.
10446
10447         * scm/editor.scm (slashify): New function.
10448         (get-editor-command): Use it.
10449         (get-command-template): Do not alter editor command if
10450         environment value includes `%(file)s' magic.
10451
10452         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10453         (dissect-uri): Use it.
10454         (unquote-uri): Bugfix.
10455
10456 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10457
10458         * scm/framework-ps.scm (write-preamble): add TTF rule.
10459
10460         * Documentation/topdocs/README.texi (Top): remove note about
10461         xdelta.
10462
10463         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10464         requirement.
10465
10466         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10467         function. Figure out where FlexLexer.h lives
10468
10469         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10470         
10471 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10472
10473         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10474         with Windows root in file name.
10475
10476         * scm/backend-library.scm (ly:system): Only redirect output (using
10477         system and shell, ugh) if /dev/null is writable.
10478
10479         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10480         windows icon.
10481
10482         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10483         on Mingw.
10484
10485         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10486         click.
10487
10488         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10489         use result of stat when available.
10490
10491         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10492         absolute file name and root.
10493
10494         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10495
10496         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10497
10498         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10499         slashes in file name.
10500
10501 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10502
10503         * Documentation/user/preface.itely (Preface): Run
10504         texinfo-all-menus-update.
10505
10506         * scm/editor.scm (get-editor-command): Bugfix: allow full
10507         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10508
10509         * Documentation/pictures/lilypond-48.xpm: New file.
10510
10511         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10512
10513         * ly/Welcome_to_LilyPond.ly: New file.
10514
10515         * lily/main.cc (main): Only identify if we have a terminal.
10516
10517         * scm/backend-library.scm (postscript->png)
10518         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10519         non-/bin/sh).
10520
10521 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10522
10523         * Documentation/topdocs/AUTHORS.texi: polish, update.
10524
10525 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10526
10527         * Documentation/user/preface.itely (Notes for version 2.6): new
10528         notes for 2.6
10529
10530         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10531         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10532         is not fully contained" warnings.
10533
10534         * lily/slur-scoring.cc (get_bound_info): remove warning.
10535
10536         * lily/staff-symbol-engraver.cc (process_music): start initial
10537         spanner in process_music(). This fixes overrides of StaffSymbol
10538         properties.
10539
10540         * scm/framework-pdf.scm (Module): remove.
10541
10542         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10543
10544         * lily/ambitus-engraver.cc: formatting cleanups.
10545
10546         * mf/feta-solfa.mf (Module): remove.
10547
10548         * ChangeLog: more details about contributions.
10549
10550 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10551
10552         * lily/align-interface.cc (align_elements_to_extents): warn if
10553         called too early. Fixes: disappearing-staff-lines.ly
10554
10555         * VERSION (PACKAGE_NAME): release 2.5.24
10556
10557 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10558
10559         * stepmake/aclocal.m4: Typo.
10560
10561         * flower/string.cc (substitute): Take two strings or two
10562         characters.  Update callers.
10563
10564 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10565
10566         * flower/file-name.cc (File_name): Slashify.
10567
10568         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10569
10570         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10571
10572         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10573
10574         * configure.in (gui_b): Use it.
10575
10576         * lily/lilypond.rc.in: New file.
10577
10578         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10579
10580 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10581
10582         * Documentation/user/advanced-notation.itely: edit of Text
10583         section; clarify text scripts vs. text markup.
10584
10585 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10586
10587         * lily/multi-measure-rest-engraver.cc
10588         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10589         separation items on start. Fixes mm rests in start of score.
10590
10591         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10592         don't access StaffSymbol if not there.
10593         Fixes: crash-staff-symbol-engraver.ly.
10594
10595         * lily/instrument-name-engraver.cc (class
10596         Instrument_name_engraver): data member first_. Create
10597         InstrumentName on start. 
10598
10599 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10600
10601         * Documentation/user/instrument-notation.itely: add guitar
10602         position.
10603
10604         * Documentation/user/introduction.itely,
10605         Documentation/user/lilypond.tely,
10606         Documentation/user/tutorial.itely: begin pruning
10607         unused (duplicated) cindex entries and misc cleanup.
10608
10609 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10610
10611         * input/test/volta-chord-names.ly: Bring the explanation up to
10612         date.
10613
10614 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10615
10616         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10617         Specify `@documentencoding utf-8' for html, ignore warnings.
10618
10619 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10620
10621         * THANKS: Added bughunters.
10622
10623 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10624
10625         * lily/main.cc: update help string for `lilypond -H'.
10626
10627         * po/fi.po: update.
10628         
10629 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10630
10631         * Documentation/user/advanced-notation.itely: minor fixes.
10632
10633 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10634
10635         * scm/editor.scm: New module.
10636
10637         * scm/lily.scm (gui-main): Use it.
10638
10639         * scm/framework-gnome.scm (spawn-editor): Use it.
10640
10641         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10642
10643 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10644
10645         * scm/framework-ps.scm (load-font-via-GS):  new function.
10646
10647         * lily/pango-font.cc (pango_item_string_stencil): add support for
10648         CID keyed font.
10649
10650         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10651
10652 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10653
10654         * Documentation/user/basic-notation.itely: add @ref.
10655
10656         * Documentation/user/advanced-notation.itely: add example
10657         of 5/8 beaming.
10658
10659 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10660
10661         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10662
10663         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10664         going through ps2pdf wrappers.
10665
10666 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10667
10668         * Documentation/user/instrument-notation.itely: petrucci note
10669         heads: updated docu
10670
10671         * input/regression/note-head-style.ly: updated regression test;
10672         indentation fixes
10673
10674         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10675         heads as default
10676
10677         * mf/parmesan-heads.mf: minor editing; use musicological names
10678         (rather than optical description) as note head names
10679
10680         * scm/output-lib.scm: complete petrucci heads
10681
10682 2005-05-09  Pal Benko  <benkop@freestart.hu>
10683
10684         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10685         heads, but bigger)
10686
10687 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10688
10689         * lily/main.cc (main_with_guile): Remove no files check.
10690
10691         * lily/main.cc (ly:usage): Export to Scheme.
10692
10693         * scm/lily.scm (no-files-handler): New function.
10694
10695         * scm/lily.scm (lilypond-main): Use it.
10696
10697         * configure.in (gui_b): Add mbrtowc checking.
10698         Resurrect [utf8/]wchar.h checking.
10699
10700 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10701
10702         * Documentation/user/advanced-notation.itely (Metronome marks):
10703         Add link to the program reference for MetronomeMark
10704
10705         * Documentation/user/lilypond-book.itely (An example of a
10706         musicological document): Correct the example using psfonts 
10707
10708 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10709
10710         * po/fi.po: update after a lesson how to update entries against
10711         source.
10712         
10713         * po/TODO: document the lesson.
10714
10715 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10716
10717         * configure.in (gui_b): remove wcrtomb checking.
10718
10719         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10720         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10721
10722 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10723
10724         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10725         keep Scheme expressions and strings unmodified when doing the
10726         conversion to postfix notation for slurs and beams. Should
10727         hopefully solve most related conversion problems. 
10728
10729         * Documentation/user/lilypond-book.itely : Clarify and correct how
10730         to call dvips with -h psfonts.
10731
10732 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10733
10734         * Documentation/user/instrument-notation.itely (Entering lyrics):
10735         Typo.  Fixes build.
10736
10737 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10738
10739         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10740
10741         * Documentation/user/lilypond.tely, lilypond-book.itely,
10742         tutorial.itely: change references to 2.5.x to 2.6.x.
10743
10744         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10745         vs \lyricmode.
10746
10747         * Documentation/user/invoking.itely: remove old info about
10748         lilypond-profile.
10749
10750         * Documentation/topdocs/INSTALL.texi: remove old info about
10751         lilypond-profile, add warning about needing international fonts
10752         to build docs.
10753
10754 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10755
10756         * lily/include/grob-info.hh (class Grob_info): make data member
10757         private. Changes throughout.
10758
10759         * input/regression/alignment-order.ly: new file. 
10760
10761         * lily/vertical-align-engraver.cc (acknowledge_grob): read
10762         alignAboveContext and alignBelowContext
10763
10764 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10765
10766         * lily/pfb.cc (LY_DEFINE): add cast.
10767
10768         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
10769         matches .otf
10770         (write-preamble): warn about unknown fonts.
10771
10772         * lily/pfb.cc (Module): new function ly:otf->cff
10773
10774         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
10775         (get_otf_table): new function.
10776
10777 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10778
10779         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
10780         iso. ps2png.
10781
10782 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
10783
10784         * po/fi.po: apply second round of update.
10785
10786 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10787
10788         * scm/x11-color.scm (make-x11-color-handler): don't use
10789         #\sp. Apparently doesn't work on all platforms. 
10790
10791 2005-05-06  Graham Percival  <gperlist@shaw.ca>
10792
10793         * Documentation/user/advanced-notation.itely, putting.itely,
10794         tutorial.itely, global.itely, introduction.itely: really minor fixes.
10795
10796 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10797
10798         * VERSION (PACKAGE_NAME): release 2.5.23
10799
10800 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10801
10802         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
10803         convert to utf-8.
10804
10805         * THANKS: Add translators for this release, convert to utf-8.
10806
10807         * mf/GNUmakefile (MFTRACE_FLAGS):
10808         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
10809         outdir as option (WAS: hardcoded).
10810
10811 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10812
10813         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
10814         finished_span_
10815
10816         * THANKS: add Hans Forbrich.
10817
10818         * Documentation/topdocs/NEWS.tely (Top): document new feature.
10819
10820         * Documentation/user/basic-notation.itely (Staff symbol): document
10821         start/stop staff. Reference to ossia.ly
10822
10823         * input/test/ossia.ly: new example using stop and startStaff.
10824
10825         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
10826         in other words, don't create "|" barline at start of the score.
10827         (start_translation_timestep): don't set whichBar for start of score.
10828
10829         * input/regression/staff-halfway.ly: use new functionality.
10830
10831         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
10832         start and stop staff based on events.
10833
10834         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
10835
10836         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
10837
10838 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10839
10840         * Documentation/user/programming-interface.itely (How markups work
10841         internally ): remove \encoding reference.
10842
10843 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
10844
10845         * scripts/convert-ly.py: Attempt to do a smarter update of 
10846         text markups from versions < 1.9.0 with arbitrary nesting.
10847
10848 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
10849
10850         * po/fi.po: convert to utf-8, and update.
10851
10852 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10853
10854         * make/lilypond.suse.spec.in: update from suse 2.4 package.
10855
10856         * lily/*.cc: more <? >? to min/max changes
10857
10858         * lily/include/interpretation-context-handle.hh: rename
10859         Interpretation_context_handle to Context_handle.
10860
10861 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
10862
10863         * input/regression/GNUmakefile (local_delete): use `find` together 
10864         with `xargs` to avoid too long argument-lists in cmd line.
10865
10866 2005-05-04  Graham Percival  <gperlist@shaw.ca>
10867
10868         * Documentation/user/introduction.itely: updates "About this manual".
10869
10870         * Documentation/user/advanced-notation.itely,
10871         invoking.itely: minor fixes.
10872
10873 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10874
10875         * COPYING: add font exception. Update FSF address. 
10876
10877         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
10878         should be taken without child context.
10879
10880         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
10881
10882         * scm/define-markup-commands.scm (triangle): new command, as
10883         robust replacement for unicode Delta/Triangle.
10884
10885 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10886
10887         * ps/music-drawing-routines.ps: add fillp argument.
10888
10889         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
10890
10891         * lily/font-config.cc (init_fontconfig): don't add cff/
10892
10893         * VERSION (PACKAGE_NAME): release 2.5.22
10894
10895         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
10896
10897         * lily/grace-engraver.cc (consider_change_grace_settings): use
10898         is_alias(). Fixes problem with CueVoice grace notes. 
10899
10900         * lily/simultaneous-music-iterator.cc (construct_children): call
10901         Music_iterator::quit() for iterators that start out invalid. This
10902         fixes indefinitely continuing contexts.
10903
10904         * buildscripts/substitute-encoding.py: new file
10905
10906         * Documentation/user/basic-notation.itely (Basic polyphony): fix
10907         missing @end 
10908
10909         * scripts/lilypond-book.py (write_if_updated): print file name.
10910
10911         * Documentation/user/basic-notation.itely (Explicitly
10912         instantiating voices): idem.
10913
10914         * Documentation/user/advanced-notation.itely (Text spanners):
10915         remove stray { } 
10916
10917         * lily/context.cc (default_child_context_name): the default child
10918         is now first in accepts_list_.
10919
10920         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
10921         \defaultchild to all relevant contexts.  This fixes:
10922         drums-pitch.ly.
10923
10924         (Probably also fixes similar problems with ancient
10925         transcriptions getting CueVoices instead of the desired voices.)
10926  
10927         * lily/context-def.cc (get_default_child): new function.
10928         (get_accepted): place default child in front of list.
10929
10930         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
10931
10932         * lily/include/context-def.hh (struct Context_def): add
10933         default_accept_
10934
10935 2005-05-03  Graham Percival  <gperlist@shaw.ca>
10936
10937         * scm/define-grobs.scm: remove "remove-first" line, since
10938         the absent property is set to #f anyway.
10939
10940         * Documentation/user/basic-notation.itely,
10941         advanced-notation.itely, instrument-notation.itely: minor
10942         fixes.
10943
10944         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
10945
10946         * Documentation/user/advanced-notation.itely,
10947         changing-defaults.itely: consolidate Text stuff in
10948         advanced notation.
10949
10950         * Documentation/user/global.itely: better docs for \header.
10951
10952         * Documentation/user/putting.itely: new chapter; placeholder
10953         for future expansion.
10954
10955         * Documentation/user/examples.itely: moved "suggestions for
10956         writing LP files" section into putting.itely.
10957
10958         * Documentation/user/lilypond.itely: added new chapter,
10959         fixed the short table of contents.
10960
10961 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10962
10963         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
10964         infinity for unfeasible beams.
10965
10966         * make/lilypond.fedora.spec.in (Group): idem.
10967
10968         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
10969
10970         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
10971
10972         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
10973         fonts directly.
10974
10975         * buildscripts/gen-emmentaler-scripts.py (i): idem.
10976
10977         * mf/GNUmakefile: remove all CFF rules.
10978
10979         * scm/framework-ps.scm (ps-embed-cff): reinstate.
10980
10981         * lily/open-type-font-scheme.cc (LY_DEFINE):
10982         new function ly:otf-font-table-data.
10983         (LY_DEFINE): new function otf-font?
10984
10985 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10986
10987         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
10988         ($(outdir)/Fontmap.lily): idem.
10989
10990         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
10991         for PFAEmmentaler-XXX.pfa. 
10992
10993         * Documentation/user/music-glossary.tely (accidental): NL
10994         translation of accidental.
10995
10996 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
10997
10998         * flower/include/international.hh: Bugfix: include "string.hh".
10999
11000         * lily/include/mingw-compatibility.hh: New file.
11001
11002         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11003
11004         * configure.in: Search for mingw wcrtomb library.
11005
11006 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11007
11008         * scripts/convert-ly.py: Bug fix
11009
11010         * Documentation/user/changing-defaults.itely (Common tweaks):
11011         Added example where the context has to be specified explicitly
11012         (MetronomeMark). 
11013
11014 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11015
11016         * scripts/lilypond-book.py (ly_options): set timing to #f for
11017         notime option.
11018
11019         * scripts/convert-ly.py (conv): typo.
11020
11021         * flower/*.cc: remove <? and >?
11022         
11023         * lily/*.cc: remove <? and >?
11024
11025         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11026         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11027         editor.
11028
11029 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11030
11031         * lily/part-combine-engraver.cc: add space to variable list.
11032
11033 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11034
11035         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11036         remove-first to false (matches docs)
11037
11038         * Documentation/user/advanced-notation.itely: corrected docs
11039         concerning remove-first.
11040
11041 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11042
11043         * lily/part-combine-engraver.cc: make sure that the relevant
11044         properties are included in the documentation.
11045
11046 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11047
11048         * Documentation/user/lilypond-book.itely: Bernard's docs
11049         for \betweenLilyPondSystem.
11050
11051 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11052
11053         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11054         remarks.
11055
11056 2005-04-28  Pal Benko  <benkop@freestart.hu>
11057
11058         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11059         only on vertical lines of flexa shape, and use a constant
11060         thickness value for horizontal lines (patch slightly modified by
11061         Jürgen Reuter)
11062
11063         * lily/include/mensural-ligature.hh: make 2 comments clearer
11064
11065 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11066
11067         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11068         to need_extra_horizontal_space; bugfix: use class scope to avoid
11069         global namespace pollution
11070
11071         * Documentation/user/instrument-notation.itely (ligatures): added
11072         comment on possible future syntax change and how to work around
11073
11074         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11075         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11076         intervals (fixes agnus dei example)
11077
11078         * Documentation/user/instrument-notation.itely (white mensural
11079         ligatures): selected a more illustrative example
11080
11081 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11082
11083         * Documentation/index.html.in: specify utf-8 charset in meta content.
11084
11085 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11086
11087         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11088         empty 2nd page for single page.
11089
11090         * scm/lily.scm: remove p&c definitions.
11091
11092         * po/zh_TW.po (Module): new translation.
11093
11094         * lily/lily-guile.cc (ly_chain_assoc): remove.
11095
11096         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11097         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11098
11099 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11100
11101         * lily/beaming-info.cc: remove infinity_i
11102
11103         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11104
11105 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11106
11107         * Documentation/user/basic-notation.itely,
11108         instrument-notation.itely, advanced-notation.itely,
11109         changing-defaults.itely: minor fixes.  Added docs
11110         for colors to advanced-notation.itely.
11111
11112         * Documentation/user/advanced-notation.itely: fixed compile
11113         problem and added Bernard's x11-color doc patch.
11114
11115 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11116
11117         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11118         alright this time round.
11119
11120 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11121
11122         * Documentation/topdocs/INSTALL.texi (Top): idem.
11123
11124         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11125
11126         * VERSION (MAJOR_VERSION): release 2.5.21
11127
11128         * scm/output-ps.scm (grob-cause): bugfix.
11129
11130 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11131
11132         * cygwin/*: Update.
11133
11134         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11135         stuff.
11136
11137         * scm/output-ps.scm (grob-cause): Bugfix.
11138
11139         * scm/lily.scm (ly:load): Remove x11-color.
11140
11141         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11142         quote executable, fixes getting version from program --with
11143         --options.
11144         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11145         $ac_exeect.
11146
11147         * Documentation/user/GNUmakefile: Only build music-glossary with
11148         rendered lilypond snippets during web.
11149
11150 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11151
11152         * po/de.po: update.
11153
11154         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11155
11156 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11157  
11158         * scripts/abc2ly:
11159         second title line append with punctuation dash character;
11160         encode abc2ly python strings in utf-8
11161        
11162 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11163
11164         * scripts/abc2ly fix chords (again)
11165  
11166 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11167
11168         * scm/x11-color.scm: new file
11169         All x11 color names can be accessed with:
11170         #(x11-color 'ColorName),
11171         #(x11-color "ColorName") or:
11172         #(x11-color "color name")
11173         If the x11 color name is not recognised then it defaults
11174         to black
11175
11176         * scm/lily.scm: amended to call scm/x11-color.scm
11177
11178 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11179
11180         * Documentation/user/invoking.itely (Reporting bugs): comment out
11181         reference to online PNG bug repository.
11182
11183 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11184
11185         * lily/translator-scheme.cc (ly:translator-property): Remove.
11186         Update callers.
11187
11188         * lily/context-scheme.cc (ly:context-now): Move from translator.
11189         Update callers.
11190
11191 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11192
11193         * input/regression/grid-lines.ly (skips): refine example.
11194
11195         * scm/define-context-properties.scm
11196         (all-user-translation-properties): doc autoBeamCheck
11197
11198         * input/regression/grid-lines.ly (Module): new file.
11199
11200         * lily/grid-point-engraver.cc (Module): new file.
11201
11202         * lily/grid-line.cc (Module): new file.
11203
11204         * lily/grid-line-span-engraver.cc (Module): new file.
11205
11206         * lily/grid-line-interface.cc (Module): new file.
11207
11208 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11209
11210         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11211         missing parameter, actualy cdr through list.  Actually return a
11212         list with ENTRY removed (was '()).
11213
11214         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11215         opened.
11216         (do_conversion): Fix printing of continuation comma.
11217
11218         * Documentation/user/advanced-notation.itely (Beam formatting):
11219         Remove refbugs about compound time and mixed duration.
11220
11221         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11222         modulo moments explicitely.
11223
11224         * lily/moment.cc (operator %): New function.
11225
11226         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11227
11228         * lily/translator-scheme.cc (ly:translator-now,
11229         ly:translator-property): New function.
11230
11231         * scm/auto-beam.scm (default-auto-beam-check): New function.
11232
11233         * lily/auto-beam-engraver.cc (test_moment): Use it.
11234
11235         * flower/rational.cc (operator %): Bugfix.
11236
11237 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11238
11239         * scripts/abc2ly: Bugfix
11240
11241 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11242
11243         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11244         %'s on EndFont comment.
11245
11246         * lily/ledger-line-spanner.cc: some more words of explanation.
11247
11248 2005-04-20  John Williams <williams@tni.com>  
11249         
11250         * scripts/lilypond-book.py: htmlquote bugfix.
11251         Allow snippets to be given distinct filenames.
11252         Allow the default alt text to be overridden.
11253
11254 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11255
11256         * ly/performer-init.ly: Bugfix
11257
11258         * THANKS: Added bughunters.
11259
11260 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11261
11262         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11263
11264         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11265         position (was: use modulo measure length).
11266
11267         * configure.in (no gui_b): Remove optional gtk+ requirement.
11268
11269 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11270
11271         * Documentation/user/basic-notation.itely (Pitches): add
11272         LedgerLineSpanner.
11273
11274         * lily/dynamic-engraver.cc (process_music): set right bound to
11275         script if present. Else, do not set.
11276         (acknowledge_grob): only set right bound of finished spanner to
11277         note column if no other bound is set.
11278
11279         * python/lilylib.py (make_ps_images): switch back to png16m.
11280         
11281 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11282
11283         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11284         writing up to date file.  Add dvips usage suggestion.
11285
11286         * scripts/convert-ly.py: Fix error message.
11287         Print usage if no files on command line.
11288         (usage): Add example usage.
11289
11290         * input/test/compound-time.ly: New file.
11291
11292         * input/test/circle.ly: New file.
11293
11294         * Documentation/topdocs/NEWS.tely: Use them.
11295
11296         * input/test/boxed-stencil.ly: Remove \score.
11297
11298         * buildscripts/mf-to-table.py (base): Add .log dependency.
11299
11300         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11301         pfa's.  Add .log dependency
11302
11303         * scm/define-markup-commands.scm (lower): New command.
11304
11305         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11306         make it default.
11307
11308 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11309
11310         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11311         also to finished cresc as right bound. This fixes:
11312         skip-string-decresc.ly
11313
11314         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11315         relative_coordinate if extent is empty.
11316
11317         * lily/stem.cc (width_callback): determine correct extent if flag
11318         is not there. This fixes slur-no-flag.ly
11319
11320         * lily/grace-engraver.cc (consider_change_grace_settings): new
11321         function.
11322         (initialize): also consider_change_grace_settings() on
11323         initialization. Fixes large grace notes at start of score.
11324
11325         * lily/break-align-interface.cc (do_alignment): don't translate if
11326         total_extent is empty.
11327
11328         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11329
11330 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11331
11332         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11333         with slash.
11334
11335 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11336
11337         * stepmake/aclocal.m4: Remove tfm_path.
11338
11339 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11340
11341         * scm/music-functions.scm (markup-expression->make-markup): fix
11342         bug with cons arguments of markup commands.
11343         (music->make-music): fix music expression property list building
11344
11345 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11346
11347         * aclocal.m4: Massage package names.
11348
11349         * SCons updates.
11350
11351 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11352
11353         * VERSION (PACKAGE_NAME): release 2.5.20
11354
11355         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11356         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11357
11358         * lily/percent-repeat-engraver.cc (try_music): add measure before
11359         next_moment to future processing moment. Fixes:
11360         percent-repeat-mm-rest.ly
11361         (process_music): don't add moment for 2nd time.
11362
11363         * input/regression/repeat-percent.ly: add mmrests as extra test.
11364
11365         * lily/axis-group-engraver.cc (acknowledge_grob): read
11366         keepAliveInterfaces to decide what to kill.
11367
11368         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11369         percent-repeat-interface to keepAliveInterfaces. This fixes
11370         percent-repeat-harakiri.
11371
11372 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11373
11374         * SCons updates.
11375
11376 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11377
11378         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11379
11380         * aclocal.m4: remove --enable-tfm-path configure option
11381
11382         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11383
11384         * scm/backend-library.scm (postscript->png): newline after
11385         finishing command.
11386
11387         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11388         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11389
11390         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11391
11392         * lily/score.cc (default_rendering): use Music_output too.
11393
11394         * input/test/chord-names-languages.ly (Module): rename file.
11395
11396         * lily/text-spanner.cc: add bound-padding.
11397
11398         * lily/paper-book.cc (systems): accept Paper_score
11399         iso. Paper_system vector. 
11400
11401         * input/regression/line-arrows.ly: new file.
11402
11403         * lily/paper-score.cc (process): run get_paper_systems() only once.
11404
11405         * lily/line-spanner.cc (line_stencil): add arrows.
11406
11407 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11408
11409         * lily/line-interface.cc (make_arrow): new function. 
11410         (arrows): idem.
11411
11412 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11413
11414         * input/test/chord-names-german.ly: update for italian/french
11415         chords.
11416         
11417         * Documentation/user/instrument-notation.itely (Printing chord
11418         names): update.
11419
11420 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11421
11422         * lily/include/paper-score.hh (class Paper_score): remove unused
11423         prototypes.
11424
11425         * lily/book.cc (process): add -COUNT to midi output.
11426
11427         * lily/score.cc (book_rendering): remove outname argument
11428         (book_rendering): return list of Music_outputs. 
11429
11430         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11431
11432         * lily/book.cc (process): loop over Music_outputs returned from
11433         Score::book_rendering().
11434
11435         * lily/*.cc (width_callback): remove spurious "unused" warnings
11436         for assert (axis==[XY]_AXIS); 
11437
11438         * lily/include/music-output.hh (class Music_output): smobify class.
11439
11440         * lily/include/paper-score.hh (class Paper_score): make members
11441         private.
11442
11443         * lily/performance.cc (process): return #f iso. #<undefined>. This
11444         prevents #<undefined> leaking into GUILE-userspace.
11445
11446 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11447
11448         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11449
11450 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11451
11452         * scm/chord-name.scm : support for italian and french
11453         chords names.
11454
11455         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11456         a space defined by chordPrefixSpacer when the root name is
11457         direclty followed by a prefix.
11458
11459         * ly/engraver-init.ly : chordPrefixSpacer       
11460         * scm/define-context-properties.scm : chordPrefixSpacer
11461         * ly/property-init.ly : italianChords, frenchChords 
11462
11463 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11464
11465         * mf/feta-din.mf: Remove.
11466
11467         * mf/GNUmakefile (fontdir): Bugfix.
11468
11469         * mf/SConstruct: Some updates.
11470
11471         * SConstruct: Require pkg-config.
11472         (test_program): Bugfix for double digit version compares, use
11473         integer (not string-) compare.
11474         Optionally require gs 8.14.
11475
11476         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11477
11478         * lily/*: s/ifdef HAVE_*/if have/.
11479
11480         * SConstruct (test_lib): New function.  Update pkg-config and some
11481         other requirements.
11482
11483         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11484         freetype, pangof2t.
11485
11486 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11487
11488         * po/lilypond.pot, ...: Update using bison-CVS.
11489
11490         * python/lilylib.py (make_ps_images): Fixo.
11491
11492 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11493
11494         * python/lilylib.py (make_ps_images): typo.
11495
11496         * configure.in (gui_b): make bison optional.
11497
11498         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11499
11500 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11501
11502         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11503         with one parameter can be defined in a LaTeX file when processed
11504         by lilypond-book this will be evaluated between the systems of
11505         a multi-system score. The parameter is the number of systems processed.
11506
11507 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11508
11509         * python/lilylib.py (make_ps_images): Escape newline.
11510
11511         * Documentation/user/music-glossary.tely: Run
11512         texinfo-all-menus-update.
11513
11514 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11515
11516         * scm/lily-library.scm (old-relative-not-used-message)
11517         (version-not-seen-message): Add input-file-name-location to message.
11518
11519         * lily/parser.yy (lilypond): Add token aliases.
11520
11521         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11522         not confuse with alteration.
11523         (alteration): Add.
11524
11525 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11526
11527         * python/lilylib.py (make_ps_images): use -dEPSCrop
11528
11529         * VERSION (PACKAGE_NAME): release 2.5.19 
11530
11531         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11532         only put xrefs in info documentation.
11533
11534         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11535         .pdf rule to tex-rules.make.
11536
11537         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11538         from -systems.* output.
11539
11540         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11541         directly, remove -$(PAGESIZE) target.
11542
11543         * input/test/embedded-postscript.ly: update.
11544
11545 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11546
11547         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11548
11549         * Documentation/user/changing-defaults.itely (Font selection):
11550         document font-name.
11551
11552         * input/regression/font-name.ly: show Pango fonts for
11553         font-name. Update example. 
11554
11555         * lily/pango-select.cc (properties_to_pango_description): don't
11556         convert symbol font-size to number, but use to lookup.
11557
11558         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11559
11560         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11561         (NAME . FILE-NAME) tuples for font descriptions. 
11562         (write-preamble): display BeginFont DSC comments.
11563
11564         * python/fontextract.py (write_extracted_fonts): new file. Extract
11565         font resources from a PS file.
11566
11567         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11568         (Compile_error.process_include): do_file returns chunks.
11569
11570         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11571
11572         * make/lysdoc-targets.make: .texi is .PRECIOUS
11573
11574         * scripts/lilypond-book.py (write_if_updated): new function.
11575
11576 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11577
11578         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11579
11580 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11581
11582         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11583
11584         * input/regression/markup-syntax.ly: remove \score.
11585
11586         * scm/define-markup-commands.scm (draw-circle): add fill argument
11587
11588         * scm/stencil.scm (make-circle-stencil): add fill argument
11589
11590         * ps/music-drawing-routines.ps: add fill argument.
11591
11592         * ly/performer-init.ly: add CueVoice to MIDI too.
11593
11594         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11595         EndEPSF.
11596
11597         * input/regression/markup-eps.ly: new file.
11598
11599         * scm/framework-ps.scm (write-preamble): change order: vars should
11600         be inited before procedures.
11601
11602         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11603         for EPS files.
11604
11605         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11606
11607 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11608
11609         * configure.in (gui_b): add check for ghostscript 8.15
11610
11611 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11612
11613         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11614         start of line. Fixes cresc-after-newline.ly
11615
11616         * lily/source-file.cc (file_line_column_string): use get_column().
11617
11618 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11619
11620         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11621
11622 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11623
11624         * lily/*: use message () iso progress_indication () for messages.
11625         Revise/uniformise user messages.
11626
11627         * flower/warn.cc (progress_indication): New function.
11628         (message): Use it.  Fixes newline problems.
11629
11630         * config.make.in (webdir): Sort out install dirs.
11631
11632         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11633
11634         * python/lilylib.py (command_name): Bugfix.
11635         (make_ps_images):
11636
11637 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11638
11639         * lily/main.cc: --help says what types of backends are availabe
11640
11641 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11642
11643         Fix ./VERSION dependency, and without need to reconfigure.
11644
11645         * lily/main.cc (setup_paths): Update.
11646
11647         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11648
11649         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11650
11651         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11652         Add \line for some simplistic cases.
11653
11654         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11655
11656 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11657
11658         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11659         to compile LY files (useful for adding eg. "-I" args)
11660         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11661         2Gnome command for gnome backend.
11662         (LilyPond-command-formatgnome): call the 2Gnome command. key
11663         binding: C-c C-g
11664
11665 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11666
11667         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11668         depend on all PNG images.
11669
11670 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11671
11672         * GNUmakefile.in: Bugfix: also link .map files.
11673
11674 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11675
11676         * scm/music-functions.scm (music->make-music): generate 
11677         a (make-music ...) sexpr from a music expression.
11678         (display-scheme-music): use guile pretty printer to display the
11679         make-music sexpr.
11680
11681 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11682
11683         * ly/engraver-init.ly: reindent.
11684         Add CueVoice.
11685
11686         * scm/music-functions.scm (music-pretty-string): handle moments
11687         too.
11688         (music-pretty-string): only print non-empty lists.
11689         (cue-substitute): create CueVoice context, which has smaller type.
11690
11691         * lily/moment-scheme.cc (LY_DEFINE): new methods
11692         ly:moment-grace-{numerator,denominator}
11693
11694         * lily/context-handle.cc: remove quit() method. 
11695
11696         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11697         (init_fontconfig): success is 0, not !0
11698
11699 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11700
11701         * mf/feta-nummer-code.mf (code): add plus glyph.
11702
11703         * lily/tie.cc (print): idem.
11704
11705         * lily/slur.cc (print): don't use thickness property for
11706         slur shape-thickness.
11707
11708         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11709         while adding stencils.
11710
11711         * scm/define-markup-commands.scm (with-color): with-color markup
11712         command.
11713         (whiteout): new markup command 
11714         (filled-box): new markup command
11715
11716 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11717
11718         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11719         test for PDF docs.
11720
11721         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11722         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11723         
11724         Notes for tetex-3.0 make web:
11725            psclean.map: s/uhv8a/uhvr8a/
11726            config.ps add:
11727                 p +psfonts_t1.map
11728                 p +psclean.map
11729                 p +typeface.map
11730
11731 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11732
11733         * scm/music-functions.scm (music-pretty-string): fix bug with
11734         string argument.
11735
11736 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11737
11738         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11739
11740 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11741
11742         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11743         only process options if they're there.
11744         (write_file_map): add version-seen? to snippet-map.ly
11745
11746 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11747
11748         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
11749         formatting cleanups.
11750
11751         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
11752         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
11753
11754 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11755
11756         * scm/framework-ps.scm (ps-font-command): don't hash, just use
11757         name directly.
11758
11759         * lily/main.cc (setup_paths): either add mf/out to search path or 
11760         fonts/{otf,type1,etc}
11761         
11762         * lily/font-config.cc (init_fontconfig): either add mf/out to
11763         FontConfig or fonts/{otf,type1,etc}
11764
11765         * GNUmakefile.in: don't put mf/ link in share/ dir.
11766
11767         * lily/staff-spacing.cc: move same-direction-correction to
11768         note-spacing-interface
11769
11770         * scm/lily.scm (lilypond-main): use variable argument count for
11771         exception handler.
11772
11773         * lily/font-config.cc (init_fontconfig): add operator pacification
11774         message.
11775
11776         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
11777
11778         * buildscripts/gen-emmentaler-scripts.py (i): generate
11779         PFAEmmentaler as well.
11780
11781         * scm/framework-ps.scm (munge-lily-font-name): new function
11782         (write-preamble): hack: insert PFA equivalent of CFF into
11783         .PS. This makes LilyPond output printable on normal PS printers
11784         again.
11785
11786         * buildscripts/gen-emmentaler-scripts.py (i): generate
11787         PFAEmmentaler.pfa aswell.
11788
11789 2005-04-06  John Williams <williams@tni.com>  
11790         
11791         * scripts/lilypond-book.py: refactor the compose_ly procedure.
11792         
11793 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11794
11795         * scm/page-layout.scm (default-page-make-stencil): always combine
11796         the header stencil, even if empty. This prevents the body text to
11797         reach up to the margins.
11798
11799         * po/rw.po (Module): new file, for Kinyarwanda.
11800
11801         * input/test/spacing-optical.ly (Module): new file.
11802
11803         * lily/staff-spacing.cc: add same-direction-correction
11804
11805 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11806
11807         * Documentation/user/introduction.itely (Engraving): Comment-out
11808         non-existent file.
11809
11810 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11811
11812         * scm/define-grob-properties.scm (all-user-grob-properties): add
11813         same-direction-correction
11814
11815         * VERSION: release 2.5.18
11816
11817 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
11818
11819         * lily/grob.cc (mark_smob): Check pscore->layout_ before
11820         dereferencing.  Fixes make web.
11821
11822         * lily/midi-stream.cc: Handle unwritable midi file.  Include
11823         errno.h.
11824
11825         * Documentation/user/: Fix links.
11826
11827 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11828
11829         * lily/text-interface.cc (Module): rename from text-item.cc
11830
11831         * input/regression/apply-output.ly (texidoc): function naming fix.
11832
11833         * lily/time-signature-performer.cc (derived_mark): new function.
11834
11835         * lily/lily-parser-scheme.cc:  print mapped file name for progress
11836
11837         * scripts/lilypond-book.py (find_linestarts): new function.
11838         (find_toplevel_snippets): keep track of line numbers.
11839
11840         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
11841         all key changes.
11842
11843         * ly/declarations-init.ly (partCombineListener): use
11844         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
11845
11846         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
11847
11848 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
11849
11850         * lily/text-item.cc: Fix link.
11851
11852         * Documentation/user/changing-defaults.itely (Changing defaults):
11853         Fix programs reference links.
11854
11855         * Documentation/user/music-glossary.tely: Convert to utf-8.
11856
11857 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11858
11859         * make/lilypond-vars.make: remove TEXMF from variables.
11860         remove DEB_BUILD pk font variables.
11861         remove GUILE_LOAD_PATH
11862         remove TeX memory vars.
11863
11864 2005-04-04  Werner Lemberg  <wl@gnu.org>
11865
11866         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
11867
11868 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11869
11870         * ps/lilyponddefs.ps: remove reencode-font
11871
11872         * lily/simple-spacer.cc (add_columns): also compare
11873         directly. Column rank doesn't distinguish between broken and
11874         unbroken columns. This fixes large spaces before time sig changes.
11875
11876         * Documentation/user/point-and-click.itely: document ly:set-option.
11877
11878         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
11879         point_and_click_global is set.
11880
11881         * lily/scm-option.cc (LY_DEFINE): add point-and-click
11882         ly:set-option argument.
11883
11884 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11885
11886         * GNUmakefile.in: Include symlinks in webball.
11887
11888         * Documentation/user/GNUmakefile (source-links): Add symlinks to
11889         source dir for split and non-split manuals.
11890
11891         * Documentation/user/*y: Fix @uref/@inputfile links for
11892         split/non-split HTML documents.
11893
11894         * Documentation/user/GNUmakefile (local-WWW): Do not generate
11895         .ps.gz.
11896         
11897 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11898
11899         * GNUmakefile.in: Add newline.
11900
11901 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
11902
11903         * tex/lilyponddefs.tex: use color instead of xcolor
11904         * scm/output-tex.scm: minor editing
11905
11906 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11907
11908         * scm/music-functions.scm (display-scheme-music): pretty printer
11909         for music expressions.
11910
11911 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11912
11913         * buildscripts/install-info-html.sh (index_file): Fix link.
11914
11915 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
11916
11917         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
11918
11919         * Documentation/index.html.in: Add size estimates with some big pages.
11920
11921         * Documentation/user/tutorial.itely (Running LilyPond for the
11922         first time): Add/replace some @rglos links.  TODO: add more
11923         @rglos links in tutorial, test non-intrusiveness (.css).
11924
11925         * stepmake/bin/add-html-footer.py (do_file): Remove info's
11926         annoying's indication of referencing external document.
11927
11928         * Documentation/user/GNUmakefile: Split version of glossary too.
11929         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
11930         links, not only for html.
11931
11932         * Documentation/user/introduction.itely: Fix some links for other
11933         than html, do not use `here' as link name.
11934
11935 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
11936
11937         * scm/documentation-generate.scm (string-append): Fix @usermanref,
11938         @glossaryref.
11939
11940 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11941
11942         * scm/page-layout.scm (default-page-make-stencil): only add header
11943         if existing and not empty. Fixes spurious programming error.
11944
11945         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
11946
11947 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
11948
11949         * scm/output-tex.scm: implement {re,}setcolor
11950         * tex/lilyponddefs.tex: use color package
11951
11952 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
11953
11954         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
11955         additions to website.
11956
11957         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
11958
11959         * Documentation/user/macros.itexi: Fix @usermanref html links in
11960         split documents: use @inforef.
11961
11962 2005-03-30  Graham Percival  <gperlist@shaw.ca>
11963
11964         * Documentation/user/programming-interface.itely: minor fix.
11965
11966         * Documentation/user/advanced-notation.itely: added info to
11967         Metronome markings.
11968
11969 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
11970
11971         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
11972         use box-stencil.  Remove y-padding argument.
11973         (make-stencil-circler): New function.
11974
11975         * buildscripts/lilypond-words.py (F): 
11976         * elisp/SConscript (a): 
11977         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
11978         * vim/SConscript (a): 
11979         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
11980
11981         * lily/general-scheme.cc: Build fix.
11982
11983         * scm/markup.scm:
11984         * input/regression/markup-scheme.ly: 
11985         * input/regression/markup-syntax.ly: Drop 'new-' from name.
11986
11987         * scm/stencil.scm (make-circle-stencil): New function.
11988
11989         * scm/define-markup-commands.scm (draw-circle): Use it.  New
11990         name (was cicle).  Update callers.
11991         (circle): New markup command, similar to box.
11992
11993         * scm/stencil.scm (circle-stencil): New function.
11994
11995 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
11996
11997         * configure.in: Detect libutf8/wchar.h variant.
11998
11999         * stepmake/aclocal.m4: Modify shared size test.
12000
12001 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12002
12003         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12004
12005 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12006
12007         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12008         
12009         * VERSION (PACKAGE_NAME):  release 2.5.17
12010
12011 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12012
12013         * scm/backend-library.scm (postscript->png): Fix comment and png
12014         message.
12015
12016         * GNUmakefile.in (link-tree): Fix locales.
12017
12018 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12019
12020         * lily/stencil-scheme.cc (LY_DEFINE): change to
12021         ly:stencil-aligned-to, non mutating.
12022
12023         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12024
12025         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12026
12027         * lily/quote-iterator.cc (derived_mark): call
12028         Music_wrapper_iterator::derived_mark() too.
12029
12030         * lily/grace-engraver.cc (derived_mark): change signature, add
12031         const.
12032
12033 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12034
12035         * SConstruct (symlink): 
12036         * GNUmakefile.in (link-tree): Add scripts to prefix.
12037
12038         * lily/general-scheme.cc (ly:effective-prefix): New function.
12039
12040         * scm/backend-library.scm (postscript->png): Use it.
12041
12042 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12043
12044         * lily/paper-score.cc (process): don't delete grobs after
12045         producing stencils. 
12046
12047         * scm/part-combiner.scm (determine-split-list): switch off
12048         debugging info.
12049
12050         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12051         if available.
12052
12053         * scm/define-context-properties.scm
12054         (all-user-translation-properties): add stringNumberOrientations.
12055
12056         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12057         so fingering and string-numbers are separately controlled.
12058
12059 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12060
12061         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12062         not use debugging.
12063
12064 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12065
12066         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12067
12068         * config.hh.in: add HAVE_FONTCONFIG.
12069
12070         * Documentation/user/instrument-notation.itely (String number
12071         indications): new node.
12072
12073         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12074
12075         * lily/new-fingering-engraver.cc (add_string): new function. 
12076         (acknowledge_grob): accept string-number-event as well.
12077
12078         * scm/define-markup-commands.scm (circle): new markup command.
12079
12080         * scm/output-lib.scm (print-circled-text-callback): new function.
12081
12082         * lily/GNUmakefile: move ifeq after include stepmake.make.
12083
12084 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12085
12086         * config.make.in (HAVE_LIBKPATHSEA_SO):
12087         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12088
12089         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12090         add KPATHSEA_LIBS.
12091
12092         * debian/watch: 
12093         * debian/control: Update.
12094
12095 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12096
12097         * input/test/title-markup.ly (spaceTest): remove.
12098
12099         * input/test/embedded-tex.ly (Module): remove.
12100
12101         * input/test/music-box.ly: use 'name property, not ly:music-name.
12102
12103         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12104
12105         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12106
12107 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12108
12109         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12110         about xdeltas.  Add information about CVS.
12111
12112         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12113         gracefully handle failed files.
12114
12115         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12116
12117         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12118         small fixes.
12119
12120         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12121         No unnecessarily specific i18n messages.  Remove stray `1'.
12122
12123 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12124
12125         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12126         documentencoding
12127
12128         * scm/documentation-lib.scm (texi-file-head): set utf-8
12129         documentencoding.
12130
12131         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12132         Delta, not the Symbol one. 
12133
12134         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12135         for the .map file.
12136
12137         * Documentation/topdocs/INSTALL.texi (Top): add running
12138         requirement as compilation requirement.
12139
12140 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12141
12142         * buildscripts/mutopia-index.py (headertext): add h1 header and
12143         utf-8 charset meta field.
12144
12145         * input/GNUmakefile: prune example list.
12146
12147         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12148         options.
12149
12150         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12151         extent for visible stems.
12152
12153         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12154
12155 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12156
12157         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12158
12159         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12160
12161 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12162
12163         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12164         pass inf/nan into slur scoring.
12165
12166         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12167         page.
12168
12169         * scripts/abc2ly.py (dump_voices): use alphabet().
12170
12171 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12172         
12173         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12174
12175 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12176         
12177         * flower/include/virtual-methods.hh: simplify. Patch by
12178
12179 2005-03-25  John Williams <williams@tni.com>  
12180
12181         * scripts/lilypond-book.py (main): add png for HTML too, guess
12182         only if necessary. 
12183
12184 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12185
12186         * Documentation/topdocs/INSTALL.texi: now recommends
12187         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12188
12189         * Documentation/user/basic-notation.itely,
12190         Documentation/user/tutoria.itely: warn about
12191         only one (phrasing) slur at once.
12192
12193 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12194
12195         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12196
12197 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12198
12199         * Documentation/user/basic-notation.itely: fixed info about
12200         ending a (de)cresc.
12201
12202         * Documentation/user/lilypond-book.itely: fixed
12203         lilypond-book filter example and warned about not doing
12204         --filter and --process at the same time.
12205
12206 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12207
12208         * lily/parser.yy (bass_number),
12209         Documentation/user/instrument-notation.itely (Figured bass): 
12210         Add the possibility to use text markup in figured bass. 
12211
12212 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12213
12214         * Documentation/user/global.itely: added info about naming
12215         identifiers and breakbefore.
12216
12217         * Documentation/user/invoking.itely: added info about batch
12218         processing files with convert-ly, removed references to TeX
12219         in the jail section.
12220
12221         * Documentation/user/examples.itely: possibly fixed piano
12222         dynamics.
12223
12224         * Documentation/user/advanced-notation.itely: added info
12225         about removing other types of Staff.
12226
12227         * Documentation/user/instrument-notation.itely: possibly
12228         fixed piano staff line switch.
12229
12230         * Documentation/user/changing-defaults.itely: added info
12231         about using normal font in titles.
12232
12233 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12234
12235         * VERSION (PATCH_LEVEL): release 2.5.16
12236
12237         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12238         explicitly.
12239
12240 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12241
12242         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12243         whitespace.
12244
12245         * python/lilylib.py (make_ps_images):
12246         * scm/backend-library.scm (postscript->pdf, postscript->png):
12247         Quote file name.  Use format rather than string-append juggling.
12248
12249 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12250
12251         * python/lilylib.py (make_ps_images): add x to -g argument. 
12252
12253         * lily/key-performer.cc (create_audio_elements): don't use
12254         scm_eval_string. Check for minor 3rd directly.
12255   
12256         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12257         (sarabandeCelloGlobal): key is D minor, not F major.
12258
12259 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12260
12261         Fix truncated --png output (Peter Danenberg).
12262         
12263         * python/lilylib.py (make_ps_images):
12264         * scripts/ps2png.py (copyright): Grok --papersize option.
12265
12266         * scm/backend-library.scm (postscript->png): Add parameter
12267         PAPERSIZE.  Update callers.
12268
12269         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12270         Fixes symbol placement.
12271
12272         * lily/spanner.cc: 
12273         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12274         <libc-extension.hh>).
12275
12276 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12277
12278         * Nitpick run.
12279
12280         * buildscripts/fixcc.py: Update.
12281
12282         Builddir run fixes.
12283
12284         * HACKING (datadir): Add VERSION.
12285
12286         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12287         higher up.
12288
12289 2005-03-15  Werner Lemberg  <wl@gnu.org>
12290
12291         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12292         diagonal stem doesn't become thinner.
12293
12294 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12295
12296         * buildscripts/fixcc.py: Fixes (Werner).
12297
12298 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12299
12300         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12301         Emmentaler/Aybabtu.
12302
12303         * GNUmakefile.in: fix lilypond-words path.
12304
12305         * po/tr.po: update to 2.3.21
12306
12307         * lily/new-fingering-engraver.cc (position_scripts): take priority
12308         from head position.
12309
12310         * input/regression/finger-chords-order.ly (texidoc): new file.
12311
12312 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12313
12314         * make/ly-rules.make: 
12315         * stepmake/aclocal.m4: 
12316         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12317
12318         * buildscripts/fixcc.py (rules): Leave space after operator.
12319
12320 2005-03-14  Werner Lemberg  <wl@gnu.org>
12321
12322         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12323         top of the glyph with smooth curve.
12324
12325 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12326
12327         * Documentation/user/global.itely (Page layout): remove
12328         printpagenumber.
12329
12330 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12331
12332         * input/regression/mensural-ligatures.ly: new file (with examples
12333         compiled by Pal Benko).
12334
12335         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12336         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12337         musicglyph access.  Many small beautifications in ancient
12338         examples.
12339
12340         * input/test/divisiones.ly: fixed indentation; small
12341         beautifications
12342
12343         * ly/engraver-init.ly: added FIXME comment
12344
12345         * scripts/lilypond-book.py,
12346         Documentation/user/lilypond-book.itely: added music fragment
12347         option "packed" to lilypond-book
12348
12349         * Documentation/user/instrument-notation.itely: Bugfix: added
12350         missing LedgerLineSpanner color setting in several places.  Added
12351         music fragment option "packed" to VaticanaContext example.
12352
12353 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12354
12355         * scm/define-grobs.scm (all-grob-descriptions): switch off
12356         Hyphen_spanner::set_spacing_rods 
12357
12358         * lily/lyric-hyphen.cc (print): add padding between syllable and
12359         hyphen.
12360         (print): shorten hyphen in tight situations (determine using
12361         minimum-length)
12362
12363         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12364         0.4pt.
12365
12366 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12367
12368         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12369
12370         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12371         header/footer markings for regression-test.
12372
12373         * scm/backend-library.scm (output-scopes, header-to-file): Move
12374         from framework-tex.scm.
12375
12376         * scm/framework-ps.scm (output-framework)
12377         (output-preview-framework):
12378         * scm/framework-eps.scm (output-classic-framework)
12379         (output-framework): Use it.  Fixes collated files.
12380
12381 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12382
12383         * input/sakura-sakura.ly: 
12384         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12385
12386         * buildscripts/guile-gnome.sh: Update.
12387
12388         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12389
12390         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12391
12392 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12393
12394         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12395         culprit: always exit the loop if we find a rod, even if it has
12396         distance < 0. 
12397
12398         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12399         algorithm.
12400
12401         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12402         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12403
12404         * scm/output-svg.scm (dashed-line): new  function body.
12405         
12406         * GNUmakefile.in: create .htaccess.
12407
12408 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12409
12410         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12411
12412 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12413
12414         * VERSION (PACKAGE_NAME): release 2.5.15
12415
12416         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12417
12418         * scm/framework-svg.scm (output-framework): put scaling in
12419         document header. Apply scaling only once.
12420         (output-framework): dump page size in px, not mm. 
12421
12422         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12423         from font-size.
12424
12425         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12426         ly:outputter-output-scheme, new function.
12427
12428         * scm/output-svg.scm (pango-description-to-svg-font): new function
12429
12430 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12431
12432         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12433         target.
12434
12435         * input/typography-demo.ly: new file.
12436
12437 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12438
12439         * Documentation/user/global.itely (File structure): Add markup blocks
12440         to toplevel expressions.
12441         (Multiple movements, Creating titles): Add markup blocks.
12442
12443         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12444         <libc-extension.hh>).
12445
12446         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12447
12448         * flower
12449         * lily
12450         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12451
12452 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12453
12454         * lily/accidental.cc: special bboxes for natural. 
12455
12456         * mf/feta-toevallig.mf: make stems heavier.
12457
12458         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12459         texts as well.
12460
12461         * mf/feta-klef.mf: revise. 
12462
12463         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12464
12465         * mf/feta-klef.mf: add rounded curve at top. 
12466         make thinnib a little heavier.
12467
12468 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12469
12470         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12471
12472         * buildscripts/fixcc.py: New file.
12473
12474         * input/regression/utf8.ly: Update Debian font description.
12475
12476 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12477
12478         * stepmake/aclocal.m4: Fix test.
12479
12480 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12481
12482         * Documentation/user/invoking.itely: added Sebastino Vigna's
12483         docs for the --jail option.
12484
12485 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12486
12487         * lily/stem.cc (print): only produce stemlets if there are no
12488         noteheads on this stem.
12489
12490         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12491         don't crash on stemlet (visible stem without heads).
12492
12493         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12494         unbroken situations. 
12495
12496         * scm/output-lib.scm (center-invisible): new function.
12497
12498         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12499         wishes to determine loose column space.
12500
12501         * lily/font-config.cc (init_fontconfig): add
12502         fonts/{otf,type1,cff}  to path.
12503
12504         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12505
12506         * mf/GNUmakefile (Module): install all fonts under otf/
12507
12508         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12509         replace /fonts/otf/ by /ps/ 
12510
12511         
12512 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12513
12514         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12515
12516         * lily/book.cc (process): Oops, add score_.header_.
12517
12518         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12519
12520         * lily/parser.yy: Handle toplevel and book texts as score.
12521
12522         * scm/page-layout.scm (default-page-make-stencil):
12523         Bugfix: (page-properties rename.
12524
12525         * scm/backend-library.scm (ly:system): Typo.
12526
12527 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12528
12529         * stepmake/stepmake/executable-targets.make (installexe): don't
12530         strip installed executables
12531
12532         * lily/font-select.cc (get_font_by_design_size): revert
12533         pango_description_string as well.
12534
12535         * lily/system.cc (set_loose_columns): put loose column just left
12536         of next column.
12537
12538         * lily/include/group-interface.hh (extract_grob_array): rename
12539         from Pointer_group_interface__extract_grobs
12540
12541         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12542
12543         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12544         function. Keep ledgered note heads at a minimum distance.
12545         Introduce minimum-length-fraction
12546         (print): introduce length-fraction property.
12547
12548 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12549
12550         * tex/GNUmakefile: remove latin1.enc rules.
12551
12552 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12553
12554         * scm/titling.scm: Typo.
12555
12556         * input/regression/score-text.ly: Really add.
12557
12558         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12559
12560 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12561
12562         * lily/open-type-font-scheme.cc:  new file.
12563
12564 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12565
12566         * scm/titling.scm (layout-extract-page-properties): Rename from
12567         page-properties.  Update callers.
12568
12569         * lily/lexer.ll (Lily_lexer):
12570         * lily/parser.yy: Junk lyric_markup state.
12571
12572         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12573
12574         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12575         Add texts parameter.
12576
12577 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12578
12579         * lily/lexer.ll (lyric_markup): New mode.
12580         (Lily_lexer::push_lyric_markup_state): New method.
12581         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12582
12583         * lily/parser.yy (book_body):
12584         (toplevel_expression): Grok \markup texts.
12585
12586         * lily/score-scheme.cc (ly:music-scorify): 
12587         * scm/lily-library.scm (collect-music-for-book): Take texts
12588         parameter.
12589
12590         * lily/score.cc (texts_): New member.
12591
12592         * lily/paper-book.cc (systems): Format score texts.
12593
12594         * score-text.ly: New file.
12595
12596         * ttftool/SConscript:
12597         * kpath-guile/SConscript: New file.
12598
12599         * lily/SConscript:
12600         * SConstruct: Update.
12601
12602 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12603
12604         * VERSION (PACKAGE_NAME): release 2.5.14
12605
12606 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12607
12608         * lily/main.cc: Add dummy xgettext markers.
12609
12610 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12611
12612         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12613         requirements
12614
12615         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12616         executable is < 40k
12617
12618         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12619         hack.
12620
12621 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12622
12623         * flower/libc-extension.cc:
12624         * flower/include/libc-extension.hh: [Open]BSD simply cast
12625         cookie/funopen declarations.
12626
12627         * stepmake/aclocal.m4: Check for libkpathsea.so.
12628
12629         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12630         dl_kpse_find_file.
12631
12632 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12633
12634         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12635         (open_library): alternative for static library.
12636
12637 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12638
12639         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12640
12641         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12642
12643         Drop run-time dependency on teTeX.
12644
12645         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12646
12647         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12648         KPATHSEA_LIBS in LIBS.
12649         (STEPMAKE_DLOPEN): New function.
12650
12651         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12652         not path.
12653
12654         * flower/file-path.cc (directories): Rename from paths, as this
12655         return an array of directories (a single path).
12656
12657 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12658
12659         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12660
12661         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12662         new ly:kpathsea-find-file
12663
12664         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12665
12666         * kpath-guile/GNUmakefile: new file
12667
12668         * buildscripts/gen-emmentaler-scripts.py (i): generate
12669         emmentaler-X.fontname as well.
12670
12671         * buildscripts/ps-embed-cff.py: new script
12672
12673         * scm/lily-library.scm: remove ps-embed-cff.
12674
12675         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12676         font loading. 
12677
12678         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12679         fontconfig as well.
12680
12681         * lily/font-config.cc (init_fontconfig): add cff/ too.
12682
12683         * ly/generate-embedded-cff.ly: capitalize.
12684
12685         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12686         so as to register the pango font.
12687
12688         * lily/font-config.cc (init_fontconfig): add
12689         prefix/{otf,type1,mf/out} to fontconfig path.
12690
12691         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12692         overrides all. 
12693
12694         * configure.in (gui_b): remove ec mftrace check
12695
12696         * config.hh.in: use lilypond-Major.Minor as data directory.
12697
12698         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12699
12700         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12701         name.
12702
12703 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12704
12705         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12706         error messages.
12707
12708         * flower/libc-extension.cc:
12709         * flower/include/libc-extension.hh: [Open]BSD fixes for
12710         cookie/funopen declarations.
12711
12712 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12713
12714         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12715         emmentaler.
12716
12717         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12718         lcrm10.
12719
12720         * scm/define-markup-commands.scm (fontsize): new markup
12721         command. Also set baseline-skip
12722
12723 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12724         
12725         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12726         use.
12727
12728 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12729
12730         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12731
12732         * lily/pdf.cc: remove PDF related files
12733
12734 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12735
12736         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12737         <hamamatsu@gmx.de>
12738
12739 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12740
12741         * Documentation/user/advanced-notation.itely: first draft
12742         of reorg done.
12743
12744         * Documentation/user/global.itely: fixed (sub)section
12745         bits of MIDI.
12746
12747 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12748
12749         * cygwin/mknetrel (extras): Bufix (Bertalan).
12750
12751         * Documentation/user/basic-notation.itely (Chords): @ref fix.
12752         * Documentation/user/instrument-notation.itely (Introducing chord
12753         names): Compile fix: must have unique name.
12754
12755 2005-03-02  Graham Percival  <gperlist@shaw.ca>
12756
12757         * Documentation/user/instrument-notation.itely: reorg.
12758
12759 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12760
12761         * scm/output-gnome.scm:
12762         * scm/output-svg.scm: Fix font scaling.
12763
12764 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12765
12766         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
12767         what link to use best.
12768
12769         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
12770         * Documentation/user/tutorial.itely (Automatic and manual beams):
12771         Fix @ref.
12772
12773         * lily/tweak-registration.cc (replace_grob_tweak): New function.
12774         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
12775         * scm/framework-gnome.scm (tweak): Use it.
12776
12777 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12778
12779         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
12780
12781         * scm/output-ps.scm (white-text): reinstate white-text
12782
12783 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12784
12785         * scm/output-ps.scm (offset-add): Remove.
12786
12787         * scm/lily-library.scm (offset-flip-y): New function.
12788         * scm/framework-gnome.scm (tweak): Use it.
12789
12790         * scm/output-gnome.scm (grob-cause): Add parameter.
12791
12792         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
12793         * scm/output-ps.scm (url-link): Move.
12794         (white-text): Warn user about brokenness.
12795
12796         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
12797         wrt ghostscript.
12798
12799 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12800
12801         * lily/slash-repeat-engraver.cc (try_music): always make slashes
12802         if body length smaller than measure length.
12803
12804         * scm/define-markup-commands.scm (with-url): oops. use Y extent
12805         for Y.
12806
12807         * ly/titling-init.ly (tagline): put default tagline in \paper
12808
12809 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12810
12811         * lily/kpath.cc: 
12812         * lily/pdf.cc (Pdf_file): Use more generic error messages.
12813
12814         * scm/lily-library.scm (version-not-seen-message): New function.
12815         * ly/init.ly: Use it.
12816
12817         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
12818         breaks as progess.
12819
12820         * scripts/lilypond-book.py (do_process_cmd): Do not lump
12821         whitespace with l10n message.
12822
12823         * scm/framework-tex.scm (convert-to-ps):
12824         (convert-to-dvi): Do not use overly specific l10n messages.
12825
12826         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
12827
12828         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
12829         merge stderr with stdout.  
12830
12831 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12832
12833         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
12834         Neeracher).
12835
12836 2005-02-29  Graham Percival  <gperlist@shaw.ca>
12837
12838         * Documentation/user/instrument-notation.teily: moved
12839         \arpeggio to Basic.
12840
12841         * Documentation/user/advanced-notation.itely: Articulation to
12842         Basic, a bunch of stuff from Basic moved to Advanced.
12843
12844         * Documentation/user/basic.itely: swapped various sections,
12845         reorganized Basic.
12846
12847 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12848
12849         * flower/memory-stream.cc: 
12850         * flower/libc-extension.cc: Remove obsolete #undefs.
12851
12852         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
12853         more carefully.
12854
12855 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12856
12857         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
12858         dependency.
12859
12860         * VERSION (PACKAGE_NAME): release 2.5.13
12861
12862         * GNUmakefile.in (web-ext): don't ship ps.gz
12863
12864         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
12865         stdout
12866
12867 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12868
12869         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
12870         without libintl.  Now it compiles too.
12871
12872 2005-02-28  Graham Percival  <gperlist@shaw.ca>
12873
12874         * Documentation/user/basic-notation.itely,
12875         instument-notation.itely, advanced-notation.itely:
12876         split up contents of notation.itely.
12877
12878         * Documentation/user/notation.itely: file removed.
12879
12880         * Documentation/user/invoking.itely, converters.itely:
12881         moved convert-ly info to invoking.itely.
12882
12883         * Documentation/user/global.itely, changing-defaults.itely,
12884         sound-output.itexi: moved global settings, file layout, and
12885         sound into global.itely.
12886
12887         * Documentation/user/sound-output.itexi: file removed.
12888
12889         * Documentation/user/lilypond.tely: removed links to
12890         notation.itely and sound.itely.
12891
12892 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12893
12894         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
12895
12896         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
12897  
12898         * THANKS: add sponsor.
12899
12900         * scm/define-markup-commands.scm (with-url): new markup command.
12901
12902         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
12903         tagline.
12904         
12905         * scm/output-tex.scm (url-link): stub.
12906
12907         * scm/output-ps.scm (url-link): new function.
12908
12909         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
12910         ly:set-point-and-click
12911
12912 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12913
12914         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
12915         based on pdf-viewer setting.
12916
12917         * scm/framework-ps.scm (write-preamble): Find and set preferred
12918         pdf-viewer.
12919
12920 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12921
12922         * Documentation/user/point-and-click.itely: update for PDF point &
12923         click.
12924
12925         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
12926         editors based on EDITOR setting.
12927
12928 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12929
12930         * scm/*: Oops, more grand 2005 replace bits.
12931
12932 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12933
12934         * ps/music-drawing-routines.ps: new routine: insert PDF mark
12935
12936         * scm/output-ps.scm (grob-cause): point & click support for
12937         PostScript
12938
12939 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12940
12941         * lily/input-scheme.cc (LY_DEFINE): rename to
12942         ly:input-file-line-column
12943
12944 2005-02-26  Graham Percival  <gperlist@shaw.ca>
12945
12946         * Documentation/user/examples.itely: small fix from Steve Doonan.
12947
12948         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
12949
12950         * THANKS: added Yuval Harel.
12951
12952         * Documentation/user/{various}: inserted two spaces after a period.
12953
12954         * Documentation/user/lilypond.tely: added framework for reorg.
12955
12956         * Documentation/user/basic-notation.itely, instrument-notation.itely,
12957         advanced-notation.itely, global.itely: new files, placeholder for
12958         future reorg.
12959
12960 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
12961
12962         * Documentation/user/notation.itely: revamped Polyphony section
12963         
12964 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12965
12966         * Documentation/user/lilypond-book.itely (Music fragment options):
12967         doc fontload.
12968
12969         * Documentation/user/changing-defaults.itely (Text encoding): add
12970         fontload option to utf8 include
12971
12972         * scripts/lilypond-book.py (compose_ly): add fontload option
12973
12974         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
12975         force-eps-font-include option.
12976
12977         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
12978         black triangle
12979
12980         * Documentation/user/invoking.itely (Editor support): remove
12981         lilypond-latex section.
12982
12983         * scripts/lilypond-latex.py (Module): remove script.
12984
12985         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
12986         overwrite .log. 
12987
12988         * lily/main.cc: remove -m, --no-layout
12989
12990         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
12991         to define. We don't want to override fprintf everywhere.
12992
12993 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
12994
12995         * cygwin/lilypond.hint: 
12996         * cygwin/README.in: Update dependencies.
12997
12998         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
12999         Bugfix: do not pollute CPPFLAGS, LIBS.
13000
13001         * cygwin/mknetrel (extras): Cross compile fixes.
13002
13003         * ttftool/util.c: 
13004         * ttftool/ttfps.c: 
13005         * ttftool/ps.c: #include libc-extension.hh
13006
13007         * flower/include/libc-extension.hh:
13008         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13009         wrapper using funopen.
13010         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13011         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13012
13013         * config.hh.in:
13014         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13015         (AC_CHECK_HEADERS): Add libio.h
13016
13017         * scripts/convert-ly.py: Uniformize, internationalize.
13018         (2.5.2): Remove fatal encoding rule.
13019         (2.5.13): Handle latin1 encoding gracefully.
13020
13021 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13022
13023         * HACKING: Fix line breaks.
13024
13025 2005-02-23  Werner Lemberg  <wl@gnu.org>
13026
13027         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13028         contains those two files.
13029
13030 2005-02-21  Werner Lemberg  <wl@gnu.org>
13031
13032         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13033         to improve overlap removal process.
13034
13035         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13036         left and right ending.  This ensures better overlapping.
13037         Update all callers.
13038         ("lineprall"): Don't use draw_gridline to get better overlapping.
13039
13040 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13041
13042         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13043
13044         * Documentation/topdocs/NEWS.tely (Top): oops.
13045
13046 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13047
13048         * HACKING: new file.
13049
13050         * input/regression/utf8.ly (portuguese): added a portuguese example
13051         to show latin1 accents.
13052
13053 2005-02-21  Pal Benko  <benkop@freestart.hu>
13054
13055         * lily/mensural-ligature-engraver.cc:
13056         * lily/mensural-ligature.cc:
13057         * lily/include/mensural-ligature.hh: new algorithm implemented
13058
13059         * scm/define-grob-properties.scm: join-left killed (add-join may
13060         be used); join-left-amount changed to join-right-amount
13061
13062 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13063
13064         * Documentation/user/notation.itely: small but urgent fix.
13065
13066 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13067
13068         * lily/duration-scheme.cc: bugfix: correct parameters to
13069         SCM_ASSERT_TYPE.
13070
13071         * THANKS: added Pal.
13072
13073         * Documentation/user/notation.itely: bugfix: unTeXified
13074         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13075         "timesig.*x/y" -> "timesig.*xy".
13076
13077 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13078         
13079         * VERSION (PACKAGE_NAME): release 2.5.12
13080
13081 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13082
13083         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13084
13085         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13086
13087         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13088
13089         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13090
13091 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13092
13093         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13094         latin1..utf-8.
13095
13096         * input/regression/stanza-number.ly:
13097         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13098
13099         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13100
13101 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13102
13103         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13104         NEWS. Refer to website for older news.  
13105
13106         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13107         .HTML. This should be done for specific servers only.
13108
13109         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13110         .ly image examples.
13111
13112         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13113         in layer 0 too.
13114
13115         * scm/define-context-properties.scm
13116         (all-user-translation-properties): add tieWaitForNote
13117
13118         * scm/define-grobs.scm (all-grob-descriptions): add
13119         Tie_column::before_line_breaking
13120
13121         * lily/tie.cc (get_column_rank): new function
13122
13123         * lily/tie-column.cc (before_line_breaking): new function.
13124         (werner_directions): take into account ties that start on
13125         different columns.  
13126
13127         * lily/score-engraver.cc (set_columns): move add_column() so we
13128         have column rank available.
13129
13130         * lily/tie.cc (get_column_rank): new function.
13131
13132         * input/regression/utf8.ly (japanese): add japanese lyrics.
13133
13134         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13135
13136         * THANKS: add Steve D
13137
13138         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13139         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13140
13141 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13142
13143         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13144         to show harmonic notes
13145         * scm/define-markup-commands.scm: in \markup-by-number
13146         "dots-dot" -> "dots.dot" to show dotted notes
13147
13148 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13149
13150         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13151
13152         * flower/memory-stream.cc (writer): new file.
13153
13154         * configure.in: add endian test.
13155
13156 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13157
13158         * Documentation/user/examples.itely: small
13159         simplification/beautification
13160
13161         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13162         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13163         notation manual.
13164
13165         * lily/mensural-ligature.cc: bugfix: another few victims of the
13166         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13167
13168         * ly/gregorian-init.ly: commit some experimental code for hi-level
13169         ligature input language lying around here for several months.
13170
13171         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13172         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13173
13174         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13175         "x-y-z"->"x.y.s-z" fixes.
13176
13177 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13178
13179         * scm/framework-pdf.scm (scm): new file
13180
13181         * lily/include/pdf.hh (class Pdf_file): new file.
13182
13183         * lily/pdf.cc (write_trailer): new file.
13184
13185 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13186
13187         * input/regression/color.ly: new file
13188
13189         * lily/stencil.cc (interpret_stencil_expression):
13190         when a color expression is encountered: save current color,
13191         process the rest of the expression, and restore previous color.
13192
13193         * lily/system.cc (get_line): check all grobs for color property and
13194         prepare the stencil scheme expressions for further processing.
13195         Fix layer-loop.
13196
13197         * scm/define-grob-properties.scm: introduce the color property.
13198
13199         * scm/output-lib.scm: color helper functions.
13200
13201         * scm/output-ps.scm: introduce setcolor/resetcolor.
13202
13203 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13204
13205         * ly/*.ly, input/regression/*.ly: Added missing \version
13206         statements in some files.
13207
13208 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13209
13210         * Documentation/user/notation.itely: minor editing.
13211
13212         * Documentation/user/converters.itely: updated convert-ly bugs.
13213
13214         * Documentation/user/lilypond-book.itely: add info about using
13215         feta characters in latex.
13216
13217 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13218
13219         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13220
13221 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13222
13223         * scm/define-grob-properties.scm (all-user-grob-properties):
13224         removed 'dashed property.
13225
13226 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13227
13228         * scm/lily.scm (define-safe-public): new macro for defining
13229         variables that can be used in --safe mode. Use it in *.scm
13230         instead of manually setting safe-objects in safe-lily.scm.
13231
13232 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13233         
13234         * lily/slur.cc: Slur-dash patch by Bertalan.
13235
13236         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13237
13238         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13239
13240 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13241
13242         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13243
13244 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13245
13246         * mf/GNUmakefile: teTeX-3.0 install fix.
13247
13248         * Cygwin patch from Bertalan.
13249
13250         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13251
13252 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13253
13254         * GNUmakefile.in: 
13255         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13256
13257         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13258         2.0.x compatibility.
13259
13260 2005-02-08  Werner Lemberg  <wl@gnu.org>
13261
13262         * mf/feta-din-code.mf: Format; clean up code.
13263         Replace `---' with `--' plus explicit path directions.
13264         (linethickness#, stafflinethickness#): Remove.
13265         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13266         ("dynamic s"): Improve shape.
13267         ("dynamic p"): Improve shape.
13268         Replace `draw' with better outline approximation.
13269         ("dynamic r"): Improve shape.
13270         Don't call `fill' and `draw' at the same time.
13271
13272 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13273
13274         * SConstruct (symlink):
13275         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13276         build fix: add enc symlink.
13277
13278         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13279
13280         Support for DESTDIR besides prefix=/foo
13281
13282         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13283
13284         * stepmake/stepmake/*.make:
13285         * */GNUmakefile:
13286         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13287
13288         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13289
13290         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13291         mawk in fontforge (date) test.
13292
13293 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13294
13295         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13296         font-family=roman. Add Luxi Sans as sans
13297
13298 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13299
13300         * Documentation/user/notation.itely: add warning about
13301         percent repeats and Voice contexts.
13302
13303         * Documentation/user/lilypond-book.itely: clarified the
13304         necessity of dvips -u arguments.
13305
13306 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13307
13308         * THANKS: Added a bunch of bug hunters.
13309
13310 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13311
13312         * scm/framework-ps.scm (output-preview-framework): bugfix.
13313
13314         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13315         o/ for chord modifier..
13316
13317         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13318
13319         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13320         Welsh Duggan). 
13321
13322 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13323
13324         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13325
13326         * ly/titling-init.ly: Do not also print intstrument in header on
13327         first page.  Do not print page number on first and only page.
13328
13329 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13330
13331         * input/regression/*.ly: remove old-relative everywhere
13332
13333         * lily/music-sequence.cc (simultaneous_relative_callback): do
13334         what-if analysis on copy, not on original. Fixes old-relative
13335         compatibility.
13336
13337         * scm/backend-library.scm (postscript->png): space before
13338         --verbose.
13339         
13340 2005-02-05  Werner Lemberg  <wl@gnu.org>
13341
13342         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13343         is defined.
13344
13345         * mf/feta-alphabet.mf: Define `staffsize#'.
13346         Include `feta-params.mf'.
13347         s/staffheight/design_size/.
13348
13349         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13350
13351         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13352
13353         * mf/feta-nummer-code.mf: Reformatted.
13354         (draw_six): Use outline intersection to avoid a self-intersecting
13355         path.
13356         ("Numeral comma"): Fix serious outline glitches.  This slightly
13357         changes the glyph shape.
13358         ("Numeral dash"): Use `draw_rounded_block'.
13359         ("Numeral dot"): Use `drawdot'.
13360         ("Numeral 1"): Assure identical tangent directions for the
13361         intersection points of paths.  The glyph shape improvement is only
13362         visible at very high magnifications.
13363         ("Numeral 2"): Use `solve' macro to make the lower right part of
13364         the glyph outline touch the x axis exactly.  This changes the
13365         glyph shape.
13366         Minor fixes for better overlap removal support.
13367         ("Numeral 4"): Make lefter corner `rounder'.
13368         ("Numeral 5"): Assure identical tangent directions for the
13369         intersection points of paths.  This improves the glyph shape at
13370         high magnifications.
13371         ("Numeral 7"): Use `solve' macro to make the upper right part of
13372         the glyph outline touch the metrics box exactly.  This changes the
13373         glyph shape.
13374         Avoid corner in the upper left part of the glyph (causing a minor
13375         shape change).
13376
13377         * mf/feta-ital-*.mf: Removed.  Unused.
13378
13379 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13380
13381         * VERSION (PATCH_LEVEL): release 2.5.11
13382
13383         * input/regression/fill-line-test.ly: new file.
13384
13385         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13386         emmentaler name, eg. emmentaler-23. 
13387
13388 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13389
13390         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13391         alignment with centered texts
13392
13393         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13394         list of paddings
13395
13396 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13397
13398         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13399
13400         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13401         of parents when translating rests. Fixes: c-chord-rest.ly 
13402
13403         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13404         dimension_callback_ member.
13405
13406         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13407         of extents.
13408
13409 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13410
13411         * all but lily/*: The grand 2004/2005 replace.
13412
13413 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13414
13415         * lily/*: add space after ,  
13416
13417         * scm/music-functions.scm (has-request-chord): don't use
13418         ly:music-name anywhere. Fixes <<\\>> notation. 
13419
13420         * scm/define-markup-commands.scm (box): use font-size for
13421         padding. Fixes boxed-rehearsal-marks.ly
13422
13423         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13424         identifier definition too, so foo = \lyrics { ...   } bar = #1
13425         doesn't complain about "bar" being LYRICS_STRING.
13426
13427         * lily/paper-def.cc (find_pango_font): new routine; Store
13428         pango_fonts in hash tab too. This is necessary for retrieving
13429         Pango_fonts::physical_font_tab() later on.
13430  
13431         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13432         crash if psname is null.
13433
13434         * lily/lily-guile.cc (ly_hash2alist): new function
13435
13436         * Documentation/user/changing-defaults.itely (Text encoding):
13437         rewrite. 
13438
13439         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13440         -> font_filename mapping.
13441
13442         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13443         ly_pango_font_physical_fonts
13444
13445         * scm/framework-ps.scm (supplies-or-needs): extract names from
13446         physical Pango_fonts.
13447
13448         * utf8.ly: new file.
13449
13450 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13451
13452         * Documentation/user/changing-defaults.itely (Page layout): add
13453         doco about systemSeparatorMarkup.
13454
13455         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13456         function.
13457         (default-page-make-stencil): insert system separators.
13458
13459         * scm/define-markup-commands.scm (hcenter): add
13460         (beam): add.
13461
13462 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13463
13464         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13465
13466 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13467
13468         * lily/main.cc: Spell backend consistently.  Sort options.
13469
13470 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13471
13472         * scripts/lilypond-book.py (Module): revert @include.
13473         
13474 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13475
13476         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13477         Bugfix: @include .tex (not .texi).  Small cleanups.
13478
13479         * stepmake/bin/add-html-footer.py (i18n): New function.
13480
13481 2005-01-31  Werner Lemberg  <wl@gnu.org>
13482
13483         * mf/feta-nummer.mf: Removed.  Unused.
13484
13485 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13486
13487         * lily/ : 2004 -> 2005 s&r
13488
13489         * scm/file-cache.scm (cached-file-contents): add file. Read each
13490         file only once.
13491
13492         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13493         now default.
13494
13495         * VERSION: release 2.5.10
13496         
13497         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13498
13499         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13500
13501         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13502         that both X and Y extents of bbox are non-nil.
13503
13504 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13505
13506         * scm/chord-name.scm (alteration->text-accidental-markup): change
13507         - to . 
13508
13509         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13510
13511         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13512
13513         * Documentation/user/invoking.itely (Invoking lilypond): add note
13514         about EPS backend.
13515
13516         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13517         files for inclusion in lilypond-book document.
13518
13519         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13520
13521         * input/tutorial/lbook-texi-test.texi: new file.
13522
13523         * scm/safe-lily.scm (safe-objects): add
13524         {begin,end}-of-line-(in)?visible as safe.
13525  
13526 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13527
13528         * Documentation/user/changing-defaults.itely: fixed example
13529         of (dynamics).
13530
13531 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13532
13533         * lily/main.cc: fix info about -o=FILE.
13534
13535 2005-01-29  Werner Lemberg  <wl@gnu.org>
13536
13537         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13538         construction to assure smooth transition from straight to curved
13539         lines.
13540
13541 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13542
13543         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13544         stencils.
13545
13546         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13547         translate to top of page. Fixes alignment problems of
13548         lilypond-generated EPS files.
13549
13550 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13551
13552         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13553         crescendo-end as well, since Decrescendo maybe ended with Stop
13554         Crescendo.). Fixes: partcombine-diminuendo.ly
13555
13556         * scm/script.scm (default-script-alist): swap portato symbols.
13557
13558         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13559
13560         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13561         ly:outputter-port. New function.
13562
13563         * scm/framework-ps.scm (output-classic-framework): dump a
13564         -systems.texi too
13565         (output-classic-framework): dump multiple systems on an "infinite"
13566         page EPS including fonts. 
13567
13568         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13569         .eps files for both texi and tex formats. Use PNG coming from
13570         lilypond.
13571         
13572 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13573
13574         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13575
13576         * scripts/lilypond-latex.py: fix info about -o=FILE.
13577
13578 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13579
13580         * ly/generate-embedded-cff.ly: write .cff.ps files.
13581
13582         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13583
13584         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13585         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13586
13587 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13588
13589         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13590
13591 2005-01-28  Werner Lemberg  <wl@gnu.org>
13592
13593         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13594         macros.
13595         (draw_bulb): Improved.
13596
13597         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13598         metapost bug.
13599         (draw_pedal_P): Use soft_end_penstroke.
13600         (draw_pedal_d): Use soft_start_penstroke.
13601
13602         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13603         path.
13604         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13605         doesn't change the glyph shape.
13606
13607         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13608         changing the shape) to avoid fontforge warnings.
13609
13610         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13611         soft_end_penstroke and fix glyph shape.
13612
13613 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13614
13615         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13616
13617 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13618
13619         * scm/define-markup-commands.scm (line): filter out empty stencils
13620         from line command.
13621
13622         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13623         amount.
13624
13625 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13626
13627         * Documentation/user/notation.itely: added info about what
13628         \voiceFoo does.  Also rewrote warning about marks at
13629         a line break.
13630
13631         * Documentation/user/changing-defaults.itely: added info
13632         about putting dynamics in parenthesis and brackets.
13633
13634 2005-01-27  Werner Lemberg  <wl@gnu.org>
13635
13636         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13637
13638 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13639
13640         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13641         portato-direction.ly
13642
13643         * lily/beam.cc (consider_auto_knees): add beam height to
13644         threshold. Fixes: knee-multiple-beam.ly
13645
13646         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13647         pedal line spanners. Fixes: instrument-center-pedal.ly
13648
13649         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13650         if encountering barline. Fixes: auto-beam-repeat.ly
13651
13652 2005-01-26  Werner Lemberg  <wl@gnu.org>
13653
13654         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13655         overlapping.
13656
13657         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13658         with inflections for the 1/2 sharp glyph.
13659
13660         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13661         connection between `t' and `r'.
13662         Unify bulb with the rest of `r' to avoid grazing outlines which
13663         confuses the overlap removal algorithm of fontforge.
13664
13665         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13666         inflections.
13667         (draw_cross): Fix shape to have uniform thickness in corners.
13668
13669         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13670         to avoid an uneven number of self-intersections; this confuses
13671         fontforge.
13672         Fix a slight bug in the shape at left bottom (which is visible only
13673         at high magnifications).
13674         `Center' the stem horizontally to avoid overlapping.
13675
13676 2005-01-24  Werner Lemberg  <wl@gnu.org>
13677
13678         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13679         to `asis'.
13680         (fet_begingroup): Save group name in string `feta_group'.
13681         (fet_endgroup): Updated.
13682         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13683
13684         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13685
13686         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13687         in metapost.
13688
13689 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13690
13691         * Documentation/user/notation.itely: really minor editing.
13692
13693 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13694
13695         * Documentation/user/examples.itely: minor editing.
13696
13697         * Documentation/user/changing-defaults.itely: minor editing.
13698
13699         * Documentation/user/notation.itely: clarified info on polyphony
13700         and \addlyrics.
13701
13702 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13703
13704         * scm/output-gnome.scm: 
13705         * scm/output-svg.scm:
13706         * scm/lily-library.scm (font-name-style): Update font name
13707         kludging for fontconfig use.
13708
13709 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13710
13711         * scm/define-markup-commands.scm: Document right-align and
13712         larger markup commands. Remove "TODO" from the topmost comment
13713         "each markup function should have a doc string." More consistent
13714         use of new-lines.
13715
13716 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13717
13718         * Documentation/user/changing-defaults: removed info about
13719         copyright symbol, since it's likely to change soon.
13720         Added info about betweensystemspace.
13721
13722         * Documentation/user/notation.itely: minor fixes.
13723
13724         * Documentation/user/lilypond.tely,
13725         Documentation/user/music-glossary.tely: changed copyright
13726         date to 2005 instead of 2004.
13727
13728         * input/test/volta-chord-names.ly: added old example back.
13729
13730 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13731
13732         * mf/feta-beugel.mf: use design size 20 (not 15).
13733
13734         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13735         change name to aybabtu completely
13736
13737 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13738
13739         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13740         design_size to fontname
13741
13742 2005-01-19  Werner Lemberg  <wl@gnu.org>
13743
13744         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13745         mf/feta-schrift.mf: s/p/pat/ if a path variable.
13746
13747         * mf/feta-autometric.mf (set_char_box): Add code which emits
13748         specials for mf2pt1 if run with metapost.
13749         (to_bp): New macro for mf2pt1.
13750
13751 2005-01-18  Graham Percival  <gperlist@shaw.ca>
13752
13753         * Documentation/user/changing-defaults: added info on
13754         creating a copyright symbol.
13755
13756 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13757
13758         * VERSION: release 2.5.9
13759         
13760 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
13761
13762         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
13763
13764         * Documentation/user/notation.itely: Document
13765         score-override-auto-beam-setting Fix documentation for
13766         revert-auto-beam-setting.
13767
13768 2005-01-18  Werner Lemberg  <wl@gnu.org>
13769
13770         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
13771         (procset): New function to define a procset resource.
13772         (ps-embed-pfa): New function to define a font resource.
13773         (setup): New function to define a `Setup' environment.
13774         (preamble): Use new functions.
13775
13776         * ps/lilypond.defs (init-lilypond-parameters): New function to
13777         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
13778
13779 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13780
13781         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
13782
13783 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
13784
13785         * scm/define-markup-commands.scm: Change number->markletter-string
13786         to take two arguments (vector number). Add number->mark-alphabet-vector
13787         and markalphabet markup command.
13788
13789         * scm/translation-functions.scm: Add format-mark-box-alphabet,
13790         format-mark-alphabet, format-mark-box-barnumbers and
13791         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
13792
13793 2005-01-17  Graham Percival  <gperlist@shaw.ca>
13794
13795         * Documentation/user/examples.itely: add SATB automatic piano
13796         reduction template.
13797
13798         * Documentation/user/notation.itely: added info about changing
13799         partcombine texts.  Also adds examples of alternate lyrics.
13800
13801         * Documentation/user/changing-defaults.itely: added warning
13802         about \RemoveEmptyStaffContext overriding previous changes.
13803
13804 2005-01-17  Werner Lemberg  <wl@gnu.org>
13805
13806         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
13807         feta-alphabet*.
13808
13809 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13810
13811         * python/lilylib.py (make_ps_images): don't do final showpage for
13812         multi-page documents.
13813         
13814         * VERSION (MY_PATCH_LEVEL): release 2.5.8
13815
13816 2005-01-16  Graham Percival  <gperlist@shaw.ca>
13817
13818         * Documentation/user/lilypond.tely: changed order of appendices;
13819         unified index should be last.
13820
13821         * Documentation/user/notation.itely: add example of key signatures
13822         and info about Staff.printKeyCancellation.
13823
13824 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13825
13826         * lily/include/repeated-music.hh (class Repeated_music): change
13827         into "namespace" class.
13828
13829         * lily/event.cc: remove Key_change_event.
13830
13831         * lily/include/transposed-music.hh (class Transposed_music): remove.
13832
13833         * lily/transposed-music.cc: remove
13834
13835         * lily/include/relative-music.hh: remove.
13836
13837         * lily/include/music-sequence.hh (struct Music_sequence): change
13838         into "namespace" class.
13839
13840         * lily/untransposable-music.cc (Module): remove
13841
13842         * lily/include/un-relativable-music.hh (Module): remove
13843
13844         * lily/include/untransposable-music.hh (Module): remove
13845
13846         * lily/include/music-list.hh (Module): remove file
13847
13848         * lily/un-relativable-music.cc: remove file.
13849
13850 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13851
13852         * lily/parser.yy: Compile fix.
13853
13854 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13855
13856         * lily/include/music.hh (class Music): unvirtualize transpose().
13857
13858         * lily/sequential-music.cc: remove file.
13859
13860         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
13861
13862         * lily/slur-scoring.cc (get_best_curve): only switch on
13863         DEBUG_SLUR_SCORING for non NDEBUG builds.
13864
13865         * lily/include/music.hh (class Music): replace Music::start_mom()
13866         by start-callback property
13867
13868         * lily/include/grace-music.hh: remove file. 
13869
13870         * lily/stem.cc (height): robustness fix.
13871
13872         * lily/time-scaled-music.cc: remove file.
13873
13874         * lily/include/music.hh (class Music): include SCM init argument.
13875         (class Music): replace Music::get_length() virtual by
13876         length-callback property everywhere.
13877
13878         * scripts/convert-ly.py (conv): add  # to \property scalar value.
13879
13880         * mf/GNUmakefile: don't install *list.ly
13881
13882 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13883
13884         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
13885
13886 2005-01-12  Werner Lemberg  <wl@gnu.org>
13887
13888         This patch addresses the following problems in the feta sources
13889         files which contribute to the fetaXX fonts.
13890
13891         . Many fixes for rasterization at low resolutions (consistent use of
13892           `vround' and `hround', integer shift values for paths, applying
13893           `eps' for mirrored paths, use of `define_whole_pixels' and
13894           friends, etc.) -- while this probably looks like a waste of time
13895           it has revealed deficiencies in some glyph shapes.  See comment at
13896           the end of feta-params.mf how vertical symmetry is achieved.
13897
13898         . The `---' operator has been replaced everywhere with `--'; this
13899           both improves and considerably reduces the font size after
13900           conversion with mf2pt1.
13901
13902         These change aren't explicitly mentioned below since virtually all
13903         glyphs are affected.
13904
13905         Other notable differences:
13906
13907         . Glyphs from feta-accordion.mf now have charboxes around the
13908           outline.
13909
13910         . Fixed incorrect charbox for `accDot'.
13911
13912         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
13913
13914         . Fixed position of the bow in the `upprall' glyph and its siblings.
13915
13916         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
13917           dependent on the staff line thickness to avoid touching the middle
13918           staff line at smaller sizes.
13919
13920         . Largely extended output for feta-testXX: Where useful, glyphs
13921         are shown both between and on staff lines.
13922
13923
13924         * mf/feta-params.mf (staff_space_rounded,
13925         stafflinethickness_rounded, linethickness_rounded,
13926         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
13927         Update all code which uses them where appropriate.
13928         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
13929         New variables used to control rasterization at low resolutions.  Set
13930         to zero if feta code is processed with metapost.
13931
13932         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
13933         (draw_rounded_block, draw_square_block): Updated to use `--' only.
13934         (flare_path): Updated.
13935         Make it work with `filldraw' (but only circular pens).
13936         (hfloor, vfloor, hceiling, vceiling): New macros.
13937
13938         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
13939         Use `draw' again in mf mode to have good pixel dropout control.
13940         Fix intersection points of horizontal lines with circle.
13941         ("accDot"): Fix parameters for set_char_box.
13942         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
13943         control.
13944
13945         * mf/feta-banier.mf: Updated.
13946
13947         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
13948         testing.
13949         (undraw_inside_ellipse): Remove `center' argument.  Update all
13950         callers.
13951         (draw_brevis): New macro, called by "Brevis notehead".
13952         (draw_whole_triangle_head): New macro, called by "Whole
13953         trianglehead".
13954         (draw_small_triangle_head): Use `filldraw'.
13955
13956         * mf/feta-eindelijk.mf: Remove useless global group.
13957         Updated.
13958
13959         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
13960         `filldraw'.
13961
13962         * mf/feta-pendaal.mf: Updated.
13963
13964         * mf/feta-puntje.mf: Updated.
13965
13966         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
13967         less points.
13968         ("Flageolet"): Use `draw' again in mf mode to have good pixel
13969         dropout control.
13970         ("Varied Coda"): Use `draw_block'.
13971         (draw_comma): Fix typo.
13972         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
13973         pixel dropout control.
13974
13975         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
13976         position of bow.
13977
13978         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
13979         sizes.
13980
13981         * mf/feta-toevallig.mf (remember_pic): New variable, used for
13982         testing.
13983         (draw_meta_sharp): Much simplified.
13984         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
13985
13986         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
13987
13988 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
13989
13990         * Documentation/user/notation.itely (Ancient rests): Fix typo
13991         (thanks Anthony)
13992
13993 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
13994
13995         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
13996
13997         * lily/main.cc (setup_paths): Add cff.
13998
13999         * mf/GNUmakefile (foe): Include actual target %.cff.
14000         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14001
14002 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14003
14004         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14005         suffix for main_input_b_.
14006
14007         * scm/music-functions.scm (toplevel-music-functions):
14008         precompute music lengths for music expressions.  
14009
14010 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14011
14012         * lily/include/input.hh (class Input): new `end_' slot for end of
14013         input. Renamed defined_str0_ to start_.
14014
14015         * lily/input.cc (Input): Add Input::Input (Input const &) and
14016         remove Input::Input (Source_file*, char const *). Use the new
14017         slots.
14018         (set_location): method used by bison to propagate input
14019         locations (YYLLOC_DEFAULT).
14020         (end_line_number, end_column_number, step_forward): new methods
14021         
14022         * lily/input-scheme.cc (ly:input-both-locations): new function,
14023         similar to ly:input-location, but also return the end line and
14024         column.
14025
14026         * lily/include/includable-lexer.hh: 
14027         * lily/includable-lexer.cc: 
14028         * lily/include/lily-lexer.hh (class Lily_lexer): 
14029         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14030         Includable_lexer to Lily_lexer, in order to update lexloc (the
14031         yylloc), a new slot of Lily_lexer.
14032         (here_input, LexerError): simplify by using the lexloc slot (aka
14033         yylloc)
14034
14035         * lily/lexer.ll: #define yylloc to use input locations (it may
14036         be useless here?). Fixed the #embedded_scm rule (step the location
14037         forward in order to skip the sharp sign before parsing the scheme
14038         expression)
14039
14040         * lily/include/lily-parser.hh (class Lily_parser): 
14041         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14042         here_input()
14043         (parser_error): overload for more precise locations of errors.
14044
14045         * lily/parser.yy (YYLTYPE): set location type to Input
14046         (YYLLOC_DEFAULT): use Input::set_location()
14047         (yylex): add the YYLTYPE* location parameter.
14048         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14049         Give an Input parameter to THIS->parser-error() for more accurate
14050         messages.
14051
14052 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14053
14054         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14055
14056         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14057         on BEAMQUANTING for non-NDEBUG builds.
14058
14059         * lily/stem.cc (head_count): performance: avoid String::String()
14060         inside oft called function.
14061
14062 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14063
14064         * Documentation/user/examles.itely: attempted fix for broken
14065         string quartet template.
14066
14067         * Documentation/user/notation.itely: remove unnecessary broken
14068         link.
14069
14070 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14071
14072         * VERSION (PACKAGE_NAME): release 2.5.7
14073
14074 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14075
14076         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14077         mf-nowin for teTeX-3.0.  Backportme.
14078
14079         * scm/output-svg.scm (utf8-string): New function.
14080
14081         * scm/output-gnome.scm (utf8-string): New function.
14082         (otf-name-mangling): Remove.
14083
14084         * lily/pango-font.cc (Pango_font): Use font string iso font
14085         filename for utf8-text.
14086
14087         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14088         name.
14089
14090 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14091
14092         * Documentation/user/notation.itely: add info about
14093         Staff.extraNatural = ##f in Pitches section.  Also
14094         fixed some minor issues in the Vocal music section.
14095
14096 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14097
14098         * scm/output-ps.scm (white-text): comment out Helvetica font,
14099         which is broken for my GS install.
14100
14101         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14102         which provides a tighter bbox.
14103
14104         * scm/define-grobs.scm (all-grob-descriptions): remove all
14105         extra-offsets from definitions.
14106
14107 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14108
14109         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14110         add tuning for 4-string bass and some common 4/5-string banjo
14111         tunings.  New function (four-string-banjo) turns a 5-string tuning
14112         into a 4-string tuning.  New function
14113         (fret-number-tablature-format-banjo) computes correct fret numbers
14114         on 5-string banjos.
14115
14116         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14117         Add beam correction to TabVoice.
14118
14119         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14120         using bold font; makes tabs more readable.
14121
14122 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14123
14124         * lily/font-select.cc (get_font_by_design_size): don't make
14125         Modified_font_metric; this causes trouble, since we don't know the
14126         font magnification from inside Pango_font::text_stencil()
14127
14128         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14129
14130         * Documentation/user/notation.itely (The Lyrics context): comment out
14131         broken {Small ensembles} link.
14132
14133         * scm/framework-svg.scm (output-framework): change calling convention.
14134
14135         * lily/object-key-dumper-scheme.cc: new file.
14136
14137         * lily/object-key-undumper-scheme.cc: new file.
14138
14139         * lily/tweak-registration-scheme.cc: new file.
14140
14141         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14142
14143         * Documentation/user/examples.itely (String quartet): uncomment
14144         broken example.
14145
14146         * lily/font-config.cc: new file.
14147
14148 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14149
14150         * scm/output-svg.scm: 
14151         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14152
14153         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14154
14155 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14156
14157         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14158         Add headers.
14159
14160         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14161
14162 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14163
14164         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14165
14166         * lily/include/main.hh: lose _b hungarian suffixes for global
14167         variables.
14168
14169         * lily/include/lily-guile-macros.hh: new file.
14170
14171         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14172
14173         * lily/general-scheme.cc: new file. 
14174
14175         * lily/font-select.cc (get_font_by_design_size): retrieve
14176         PangoFont for (designsize . "pango-descr") entries.
14177
14178         * lily/lily-parser-scheme.cc: new file.
14179
14180         * lily/output-def-scheme.cc: new file.
14181
14182         * lily/paper-book-scheme.cc: new file.
14183
14184         * lily/duration-scheme.cc (LY_DEFINE): new file.
14185
14186         * lily/pitch-scheme.cc:  new file.
14187
14188         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14189
14190 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14191
14192         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14193
14194 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14195
14196         * Documentation/user/notation.itely: minor editing.
14197
14198         * Documentation/user/changing-defaults: minor editing.
14199
14200         * Documentation/user/examples.itely: add template for
14201         string quartet part extraction; demonstrates tag.
14202
14203 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14204
14205         * Documentation/user/notation.itely: documents
14206         format-mark-box-letters and format-mark-box-numbers
14207
14208         * scm/define-context-properties.scm: change comment.
14209
14210 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14211
14212         * scm/framework-ps.scm (output-classic-framework): new function:
14213         dump systems as separate .eps files (without fonts) and write a
14214         single collecting .tex file.
14215
14216 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14217
14218         * Documentation/user/notation.itely (Setting simple songs):
14219         Correct several errors in the equivalent formulation of
14220         \addlyrics. 
14221         (The Lyrics context): Corrected link to the SATB example.
14222
14223 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14224
14225         * scm/lily.scm (completize-formats): new function
14226         (postprocess-output): new function
14227
14228         * lily/paper-book.cc (classic_output): change calling
14229         convention. Give basename as first argument. 
14230         remove Paper_book::post_processing().
14231
14232         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14233
14234 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14235
14236         * lily/paper-outputter.cc (LY_DEFINE): new function
14237         ly:outputter-close.
14238
14239         * lily/main.cc: change --format,-f to --backend,-b
14240
14241         * lily/include/main.hh: rename format to backend.
14242
14243         * scm/translation-functions.scm (format-mark-box-numbers): add.
14244         patch by Erlend Aasland
14245
14246 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14247
14248         * lily/pango-font.cc (text_stencil): dump string as
14249         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14250
14251 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14252
14253         * configure.in (gui_b): Remove handy developer-only
14254         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14255         CVS source installations (but break other non-default but correct
14256         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14257
14258         * SConstruct: 
14259         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14260         compatibility (backportme).
14261
14262         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14263
14264 2005-01-03  Werner Lemberg  <wl@gnu.org>
14265
14266         Prepare glyph shapes for mf2pt1 conversion.
14267
14268         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14269         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14270         `penstroke'.
14271         (accDot): Use `drawdot'.
14272         (accBayanbase): Replace `draw' with `draw_gridline'.
14273         (print_penpos): Moved to feta-macros.mf.
14274         (accOldEE): Replace `filldraw' with `penstroke'.
14275         Replace `draw' with `penstroke' and `drawdot'.
14276
14277         * mf/feta-banier.mf: Code clean-up.
14278         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14279         `fill'.
14280
14281         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14282
14283         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14284         paremeter to control drawing of labels.  Update all callers.
14285
14286         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14287         (new_bulb): Return a bulb as a single path.  To do that, it now
14288         takes some more parameters.  Updated all callers.
14289         (draw_gclef): Major clean-up.  `draw' has been replaced with
14290         `penstroke', unnecessary outlines have been removed.
14291         Remove (unused) gnome-canvas code.
14292
14293         * mf/feta-macros.mf (print_penpos): New macro (from
14294         feta-accordion.mf).
14295         Other minor fixes.
14296
14297         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14298         ("Pedal dot"): Use `drawdot'.
14299         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14300         all callers.
14301         Fix shape at top.
14302         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14303         all callers.
14304         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14305         all callers.
14306         Revert drawing direction.
14307
14308         * mf/feta-schrift.mf (draw_fermata): Use single path.
14309         (draw_short_fermata): Replace `filldraw' with `fill'.
14310         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14311         `draw_rounded_block' with a single path.
14312         ("Thumb"): Draw full circle instead of mirroring segments.
14313         (draw_accent): New macro.
14314         ("> accent", "espr"): Use it.
14315         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14316         ("open (unstopped)"): Draw full circle instead of mirroring
14317         segments.
14318         (draw_vee): Removed.
14319         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14320         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14321         path.
14322         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14323         partial pieces drawn with `fill' -- these do still overlap with the
14324         stem of the `t' but just once, not multiple times so that fontforge
14325         can handle it gracefully.
14326         Change other parts of the glyph so that fontforge's overlapping
14327         algorithm reliably works.
14328         (draw_heel): Replace `draw' with `fill'.
14329         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14330         ("Flageolet"): Replace `draw' with `penstroke'.
14331         ("Segno"): Replace `filldraw' with `penstroke'.
14332         Replace `draw' with `drawdot'.
14333         ("Coda"): Replace `fill' with `penstroke', using a single path.
14334         ("Varied Coda"): Use less overlapping paths.
14335         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14336         single path.
14337
14338         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14339         group to better control the `labels' command.
14340         Rename argument to `offset' and use it actually.  Update all
14341         callers.
14342         Replace `filldraw' with `fill'.
14343         ("mordent", "prallmordent", "upmordent", "downmordent",
14344         "lineprall"): Replace `draw' with `draw_gridline'.
14345         ("upprall", "downprall"): Replace `draw' with `fill'.
14346
14347         * mf/feta-timesig.mf: Formatting.
14348
14349         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14350         to...
14351         ("Flat"): Here.
14352         (draw_paren): Move code to draw labels to...
14353         ("Right Parenthesis"): Here.
14354
14355 2005-01-02  Graham Percival <gperlist@shaw.ca>
14356
14357         * Documentation/user/notation.itely: add example of \setTextDecresc
14358         and \setTextDim.
14359
14360 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14361
14362         * scm/define-markup-commands.scm :  fix glyph-strings of
14363         accidentals and \note-by-number
14364
14365 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14366
14367         * VERSION: 2.5.6 released.
14368         
14369         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14370
14371         * input/regression/new-markup-scheme.ly: oops. font-family=music
14372         -> font-encoding fetaMusic.  
14373
14374         * lily/main.cc: put default to PS.
14375
14376         * lily/tfm.cc: idem.
14377
14378         * lily/afm.cc: idem.
14379
14380         * lily/include/modified-font-metric.hh (struct
14381         Modified_font_metric): remove coding_scheme() method.
14382
14383         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14384
14385         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14386
14387         * input/les-nereides.ly: convert to utf8
14388
14389         * lily/modified-font-metric.cc (text_dimension): idem.
14390
14391         * lily/parser.yy (TODO): idem.
14392
14393         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14394
14395         * lily/lexer.ll: remove encoding
14396
14397         * scm/framework-ps.scm (output-variables): separately scale the
14398         page to mm 
14399
14400         * lily/pango-font.cc (Pango_font): fix scaling.
14401
14402         * lily/font-metric.cc (design_size): design_size returns a
14403         dimension now as well.
14404
14405 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14406
14407         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14408         brace generation. 
14409
14410         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14411
14412 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14413
14414         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14415         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14416
14417 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14418
14419         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14420         in first run as well.
14421
14422         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14423         dimension less points (ie. 12 = 12 point)
14424
14425         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14426
14427         * lily/all-font-metrics.cc (find_pango_font): set description_
14428
14429         * lily/pango-font.cc (text_stencil): export size as well.
14430         (text_stencil): fix scaling and extents box.
14431
14432 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14433
14434         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14435
14436         * Documentation/user/invoking.itely (Invoking lilypond): document
14437         texstr
14438
14439         * scripts/convert-ly.py (conv): add ancient rules.
14440
14441         * scm/clef.scm (c0-pitch-alist): replace - with .
14442
14443         * scripts/lilypond-book.py (process_snippets): add texstr support.
14444
14445         * scm/framework-texstr.scm (header): change extension to .textmetrics
14446
14447         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14448         -f tex.
14449
14450         * lily/text-metrics.cc: new file.
14451         (try_load_text_metrics): new function
14452
14453         * lily/include/text-metrics.hh: new file.
14454
14455 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14456
14457         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14458         ly_scheme_function to ly_lily_module_constant.
14459
14460         * lily/modified-font-metric.cc (text_dimension): try
14461         lookup_tex_text_dimension() first.
14462
14463         * lily/tfm.cc: new function ly:load-text-dimensions
14464
14465 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14466
14467         * scm/output-texstr.scm (text): use \lilygetmetrics
14468
14469         * scm/framework-texstr.scm (header): dump in new format.
14470
14471         * tex/lilypond-tex-metrics: new file.
14472         
14473 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14474
14475         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14476         mapping.
14477         (index_to_charcode): New method.
14478
14479         * scm/output-ps.scm (glyph-string): 
14480         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14481
14482 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14483
14484         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14485         implement fully, need FONT to get to charcode.
14486
14487         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14488
14489         * scm: Cleanups.
14490
14491         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14492         {Tunable context properties},
14493         {All layout objects},
14494         {Music definitions}.
14495
14496 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14497
14498         * VERSION: release 2.5.5
14499         
14500         * lily/main.cc: use TeX as default output format.
14501
14502         * flower/file-path.cc (find): try to open directly as well, so we
14503         find absolute path files. 
14504
14505         * lily/pango-select.cc: new file.
14506
14507         * scm/framework-ps.scm: remove all encoding code. 
14508         load pfb/pfa for PangoFont too.
14509         
14510         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14511
14512 2004-12-22  Werner Lemberg  <wl@gnu.org>
14513
14514         Prepare glyph shapes for mf2pt1 conversion.
14515
14516         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14517
14518         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14519         (define_triangle_shape): Use it to replace `draw' with `fill' and
14520         `unfill'.  Update all callers.
14521         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14522         (draw_cross): Ditto.
14523         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14524         Use penrazor for better conversion with mf2pt1.
14525         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14526         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14527         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14528         draw_la_head, draw_ti_head): Replace `filldraw' with
14529         `fill'.  Update all callers.
14530
14531 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14532
14533         * lily/paper-book.cc (output): revert: only allow a single output
14534         format.
14535
14536         * lily/include/pango-font.hh: new file.
14537
14538         * lily/pango-font.cc: new file.
14539
14540         * lily/font-metric.cc (text_stencil): new routine
14541
14542         * lily/all-font-metrics.cc (find_pango_font): new routine.
14543
14544         * lily/include/font-metric.hh (struct Font_metric): add
14545         text_stencil()
14546
14547         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14548
14549 2004-12-22  Werner Lemberg  <wl@gnu.org>
14550
14551         Prepare glyph shapes for mf2pt1 conversion.
14552
14553         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14554
14555         * mf/feta-toevallig.mf: Formatting.
14556         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14557         ("Natural"): Fix paths to allow better postprocessing.
14558         (draw_meta_flat): Use `z3l' as additional point in path to get
14559         better conversion with mf2pt1.
14560         Other minor cleanups.
14561         ("3/4 Flat"): Add auxiliary points and modify path to replace
14562         `draw' with `fill'.
14563         ("Double Sharp"): Mirror path segments instead of picture elements
14564         to get a single outline.
14565         Modify path to replace `filldraw' with `fill'.
14566
14567 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14568
14569         * input/test/unfold-all-repeats.ly: added file back.
14570
14571         * Documentation/user/notation.itely,
14572         Documentation/user/programming-interface.itely
14573         Documentation/user/changing-defaults.itely: fixed misc broken
14574         links to input/test/ files.
14575
14576 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14577
14578         * tex/texinfo.tex: Update.  We should not be distributing this,
14579         but since we do, use latest version.
14580
14581         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14582         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14583         macros for feta glyphs.
14584
14585 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14586
14587         * Documentation/user/changing-defaults.itely: fix index for set.
14588
14589         * Documentation/user/converters.itely: added convert-ly bugs list
14590         from CVS.
14591
14592 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14593
14594         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14595         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14596         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14597         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14598
14599         * mf/GNUmakefile (pfa_warning): Use less broken check.
14600
14601         * python/lilylib.py (setup_environment): Remove cruft from
14602         GS_FONTPATH.
14603
14604         * configure.in: Bump mftrace requirement to 1.1.1.
14605
14606 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14607
14608         * scm/output-svg.scm (beam): Use polygon.
14609
14610         * scm/lily-library.scm: Bugfix.
14611
14612         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14613
14614         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14615
14616 2004-12-19  Werner Lemberg  <wl@gnu.org>
14617
14618         Prepare glyph shapes for mf2pt1 conversion.
14619
14620         * mf/feta-eindelijk: Some formatting.
14621         (multi_rest_x, multi_beam_height): Removed.  Unused.
14622         ("Quarter rest"): Use `intersectiontimes' to create a single
14623         outline.
14624         (rest_crook): Removed.  Unused.
14625         (draw_rest_bulb): Return path (without filling).  Update callers.
14626         Simplified.
14627         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14628         "128th rest"): Simplify `pat'.
14629         Create single outline.
14630
14631 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14632
14633         * mf/GNUmakefile (ALL_GEN_FILES):
14634         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14635
14636         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14637         function.
14638
14639 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14640
14641         * scm/output-texstr.scm (placebox): add routine
14642
14643         * VERSION (PACKAGE_NAME): release 2.5.4
14644
14645         * scm/framework-texstr.scm (output-framework): new file.  
14646
14647         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14648         processing.
14649
14650         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14651
14652         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14653         rule.
14654
14655         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14656
14657         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14658
14659         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14660
14661 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14662
14663         * scm/framework-svg.scm (dump-page): Implement landscape.
14664
14665 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14666
14667         * lily/main.cc (setup_paths): Add svg to search path.
14668
14669         * scm/output-svg.scm:
14670         * scm/framework-svg.scm: Add pageSet.  Update.
14671         (dump-fonts): New function.
14672         (output-framework): Use it.
14673
14674         * mf/GNUmakefile: 
14675         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14676
14677 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14678
14679         * tex/lilyponddefs.tex: comment out new ifpdf code.
14680
14681 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14682
14683         * GNUmakefile.in: 
14684         * SConstruct (symlink): Replace afm by otf.
14685
14686         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14687         ly:pango-add-afm-decoder.
14688
14689         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14690
14691 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14692
14693         * scm/output-ps.scm (new-text): don't access t glyph for getting
14694         space dimension.
14695
14696         * ly/init.ly: warn about \version
14697
14698         * lily/lexer.ll: set version-seen?
14699
14700 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14701
14702         * scm/output-svg.scm (string->entities): Update.
14703
14704 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14705
14706         * lily/main.cc (setup_paths): replace afm by otf for path. 
14707
14708         * lily/pangofc-afm-decoder.cc: remove.
14709
14710         * lily/include/pangofc-afm-decoder.hh: remove.
14711
14712         * scm/framework-scm.scm (output-framework): new file.
14713
14714         * mf/GNUmakefile: remove SAUTER_FONTS.
14715         remove SVG/sodipodi hacks.
14716
14717         * scm/lily-library.scm (stderr): move stderr.
14718
14719         * mf/GNUmakefile: remove AFM support.
14720
14721         * buildscripts/mf-to-table.py (base): remove AFM support.
14722
14723         * lily/open-type-font.cc (design_size): use design_size
14724
14725 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14726
14727         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14728
14729 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14730
14731         * mf/GNUmakefile: Generate combined aybabtu info.
14732         * mf/aybabtu.pe.in (i): Load it.
14733
14734         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14735         are not symbols.
14736
14737         * lily/include/open-type-font.hh (count): New method.
14738
14739         * mf/aybabtu.pe.in: Typo.
14740
14741         * Documentation/user/out/lilypond-internals.nexi (Scheme
14742         functions): Typo.
14743
14744         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14745
14746 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14747
14748         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
14749         subfonts.
14750
14751         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
14752
14753         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
14754         (tex-font-command-raw): new function.
14755
14756         * lily/include/virtual-font-metric.hh (Module): remove file
14757
14758         * lily/virtual-font-metric.cc (Module): remove file.
14759         
14760
14761         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
14762         (get_indexed_char): read bbox from lily table if present.
14763
14764 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14765
14766         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
14767         aybabtu.subfonts
14768
14769         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
14770         global glyphname. Enables more than 64 glyphs in the OTF.
14771
14772 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
14773
14774         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
14775         braces.
14776
14777         * lily/open-type-font.cc (design_size): Use 12 as default for
14778         design size.
14779
14780         * mf/aybabtu.pe.in: New file.  Merge all our braces.
14781
14782         * mf/GNUmakefile: Generate aybabtu.
14783
14784         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
14785
14786 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14787
14788         * scm/lily-library.scm (char->unicode-index): Remove.
14789
14790         * scm/output-gnome.scm (text): Bugfix for plain string input.
14791         Updates.
14792
14793         * scm/output-svg.scm (svg-font): Add weight to font selection.
14794
14795 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
14796
14797         * Documentation/topdocs/INSTALL.texi (Top): Point to
14798         buildscripts/out/clean-fonts instead of
14799         buildscripts/clean-fonts.sh. 
14800
14801 2004-12-13  Graham Percival  <gperlist@shaw.ca>
14802
14803         * input/regression/figured-bass.ly: attempt to clarify text.
14804
14805         * Documentation/user/notation.tely: add cindex for tag, attempt to
14806         add figured bass example.
14807
14808         * Documentation/user/changing-defaults: basic editing.
14809
14810 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14811
14812         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
14813
14814         * lily/open-type-font.cc (LY_DEFINE): new function
14815         ly:font-sub-fonts
14816
14817         * lily/include/font-metric.hh (struct Font_metric): new method
14818         sub_fonts()
14819
14820         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
14821         . with - in add.stem.
14822         
14823 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14824
14825         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
14826         and fetaDynamic.
14827
14828         * lily/rest.cc (glyph_name): Change - to . .
14829
14830         * scm/output-gnome.scm (text): Hello world, again.
14831
14832         * scm/output-svg.scm (named-glyph): New function.  Hello world!
14833
14834         * lily/modified-font-metric.cc (index_to_charcode): New method.
14835
14836         * lily/include/font-metric.hh (index_to_charcode): New function.
14837
14838         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
14839         new function.
14840         (ly:font-glyph-to-index): Remove.
14841
14842 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14843
14844         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
14845
14846         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
14847
14848         * lily/open-type-font.cc (load_scheme_table): new function
14849
14850         * lily/dots.cc (print): replace - 
14851
14852         * lily/open-type-font.cc (attachment_point): new function.
14853         (load_table): read LILC table
14854
14855         * buildscripts/gen-bigcheese-scripts.py (Module): new
14856         file. Generate FF scripts.
14857
14858         * mf/feta-din10.mf: idem.
14859
14860         * mf/feta-nummer10.mf: remove mf files.
14861
14862         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
14863
14864 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14865
14866         * lily/lily-guile.cc: Use scm_from_locale_stringn.
14867
14868         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
14869         compatibility.
14870
14871 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14872
14873         * lily/open-type-font.cc (get_indexed_char): scale metrics by
14874         design-size and units_per_EM.
14875
14876         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
14877
14878 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14879
14880         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
14881         does not crash fontforge.
14882
14883         * scm/lily-library.scm (char->unicode-index): Hack to map onto
14884         PUA.
14885
14886 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14887
14888         * scm/framework-ps.scm (ps-embed-cff): new function.
14889
14890         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
14891
14892 2004-12-12  Werner Lemberg  <wl@gnu.org>
14893
14894         * mf/bigcheese.pe.in: Add PUA mapping.
14895         Don't create Type 42 but bare CFF font.
14896
14897 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14898
14899         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
14900         within canvas boundaries.
14901
14902         * mf/merge.pe.in: Set font names, version, license GPL.
14903
14904         * make/substitute.make: Add FONTFORGE.
14905
14906         * config.make.in (FONTFORGE): Add.
14907
14908         * configure.in (gui_b): Use PATH_PROG for fontforge.
14909
14910 2004-12-11  Graham Percival  <gperlist@shaw.ca>
14911
14912         * scm/define-markup-commands.scm: add baseline-skip to info
14913         about \column.
14914
14915 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
14916
14917         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
14918
14919         * scm/output-gnome.scm (named-glyph): Use it.
14920
14921         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
14922
14923         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
14924         (upper_string, lower_string, reverse_string): Remove.
14925
14926         * configure.in (fontforge): Reinstate version check.
14927
14928         * ly/engraver-init.ly: Fix clef glyph names.
14929
14930         * lily/time-signature.cc (special_time_signature): Fix fraction
14931         glyph names.
14932
14933 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14934
14935         * mf/merge.pe: new file.
14936
14937         * lily/freetype.cc: new file.
14938
14939         * lily/include/open-type-font.hh (class Open_type_font): new file.
14940
14941         * lily/include/freetype.hh: new file.
14942
14943         * lily/open-type-font.cc: new file.
14944
14945         * lily/all-font-metrics.cc (find_otf): new function.
14946
14947 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
14948
14949         * lily/time-signature.cc (special_time_signature): Fix.
14950
14951         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
14952         GTK2 before checking for pango.  Fixes -fgnome.
14953
14954         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
14955         Scheme name.
14956
14957         * scm/define-markup-commands.scm:
14958         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
14959
14960         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
14961
14962         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
14963         date versions.  Fixes configure.
14964         (STEPMAKE_CHECK_VERSION): Support optional actual program version
14965         argument.
14966
14967 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14968
14969         * buildscripts/mf-to-table.py (write_ps_encoding): write real
14970         names in .enc
14971
14972         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
14973
14974 2004-12-09  Graham Percival  <gperlist@shaw.ca>
14975
14976         * Documentation/user/changing-defaults.itely: add info about
14977         make-dynamic-script
14978
14979         * Documentation/user/notation.itely: add link in dynamics to
14980         section about make-dynamic-script.
14981
14982 2004-12-09  Christian hitz  <chhitz@gmx.net>
14983
14984         * lily/lily-guile.cc: change MACOS_X to __APPLE__
14985
14986 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14987
14988         * buildscripts/mf-to-table.py (parse_logfile): use . for
14989         concatting name and group.
14990         (parse_logfile): use M for Minus (negative.)
14991
14992         * lily/include/type-swallow-translator.hh
14993         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
14994
14995         * lily/*.cc: cosmetics around = sign.
14996
14997         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
14998         lyric spacing on the penultimate column.
14999
15000 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15001
15002         * configure.in:
15003         * lily/accidental-placement.cc:
15004         * lily/bar-line.cc:
15005         * lily/beam-concave.cc:
15006         * lily/beam-quanting.cc:
15007         * lily/beam.cc:
15008         * lily/bezier-bow.cc:
15009         * lily/bezier.cc:
15010         * lily/break-align-interface.cc:
15011         * lily/custos.cc:
15012         * lily/dimension-cache.cc:
15013         * lily/dot-column.cc:
15014         * lily/font-metric.cc:
15015         * lily/font-select.cc:
15016         * lily/gourlay-breaking.cc:
15017         * lily/grob-property.cc:
15018         * lily/grob.cc:
15019         * lily/lily-guile.cc:
15020         * lily/line-spanner.cc:
15021         * lily/lookup.cc:
15022         * lily/lyric-extender.cc:
15023         * lily/lyric-hyphen.cc:
15024         * lily/mensural-ligature.cc:
15025         * lily/midi-def.cc:
15026         * lily/misc.cc:
15027         * lily/note-collision.cc:
15028         * lily/note-column.cc:
15029         * lily/note-head.cc:
15030         * lily/paper-outputter.cc:
15031         * lily/percent-repeat-item.cc:
15032         * lily/rest-collision.cc:
15033         * lily/side-position-interface.cc:
15034         * lily/simple-spacer.cc:
15035         * lily/slur-configuration.cc:
15036         * lily/slur-scoring.cc:
15037         * lily/slur.cc:
15038         * lily/spaceable-grob.cc:
15039         * lily/spacing-spanner.cc:
15040         * lily/spanner.cc:
15041         * lily/staff-symbol-referencer.cc:
15042         * lily/stem.cc:
15043         * lily/stencil.cc:
15044         * lily/system-start-delimiter.cc:
15045         * lily/system.cc:
15046         * lily/text-item.cc:
15047         * lily/tie.cc:
15048         * lily/tuplet-bracket.cc:
15049         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15050         <cmath> beacause isinf/isnan is undefined in <cmath>
15051
15052 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15053
15054         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15055
15056 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15057
15058         * VERSION: release 2.5.3
15059         
15060 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15061
15062         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15063
15064 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15065
15066         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15067
15068         * lily/note-head.cc (internal_print): always try the "s" head if
15069         u/d not found.
15070
15071         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15072
15073 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15074
15075         * mf/parmesan-heads.mf (overdone_heads): typos.
15076
15077 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15078
15079         * lily/parser.yy (markup): in markups, { .. } without command
15080         before are also flattened, ie \line must be explicitely used.
15081
15082         * Documentation/user/changing-defaults.itely:
15083         * Documentation/user/notation.itely: 
15084         * input/wilhelmus.ly: 
15085         * input/regression/instrument-name-markup.ly: 
15086         * input/regression/markup-score.ly: 
15087         * input/regression/new-markup-scheme.ly: 
15088         * input/regression/new-markup-syntax.ly: 
15089         * input/test/coriolan-margin.ly: use \line in markups where
15090         appropriate
15091         
15092 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15093
15094         * scm/new-markup.scm (map-markup-command-list): helper function
15095         used in parser.yy to map markup commands on a markup list.
15096
15097         * lily/parser.yy: get rid off < > in markups by treating { } as
15098         real lists.
15099
15100         * lily/lexer.ll: remove < > from markup lexer mode.
15101
15102         * scripts/convert-ly.py (conv): add rule for converting 
15103         \markup < > to \markup { }
15104
15105         * ly/titling-init.ly: 
15106         * input/test/coriolan-margin.ly: 
15107         * input/regression/new-markup-syntax.ly: 
15108         * input/regression/new-markup-scheme.ly: 
15109         * input/regression/multi-measure-rest-text.ly: 
15110         * input/regression/markup-stack.ly: 
15111         * input/regression/markup-score.ly: 
15112         * input/regression/instrument-name-markup.ly: 
15113         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15114         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15115         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15116         * input/wilhelmus.ly: 
15117         * Documentation/user/notation.itely: 
15118         * Documentation/user/music-glossary.tely: 
15119         * Documentation/user/changing-defaults.itely: change < > to { } in
15120         markups
15121
15122 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15123
15124         * lily/accidental-placement.cc (position_accidentals): shortcut if
15125         no accidentals to place.
15126
15127 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15128
15129         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15130         typo s/ly:dimension ?/ly:dimension?/
15131
15132         * input/regression/lily-in-scheme.ly: 
15133         * input/regression/music-function.ly: 
15134         * ly/spanners-init.ly (assertBeamSlope): 
15135         * scm/music-functions.scm (def-grace-function): add the paper
15136         argument to music function definitions.
15137
15138 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15139
15140         * lily/moment.cc (LY_DEFINE):
15141         ly:moment-main-{denominator,numberator}, new function.
15142
15143         * lily/score-engraver.cc (typeset_all): assign to column on basis
15144         of axis-group-parent-X setting.
15145
15146         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15147         add_element() on basis of axis-group-parent-Y setting.
15148
15149         * lily/grob.cc: add axis-group-parent-{XY} properties.
15150
15151         * input/regression/spacing-stick-out.ly: new file.
15152
15153         * lily/simple-spacer.cc (add_columns): use binary search for
15154         setting column rods. Changes O(n^2) to O(n log(n)) for
15155         constructing spacing problem from columns.
15156         (add_columns): read allow-outside-line to make sure no texts stick
15157         out.
15158         (solve): Simple_spacer::is_active() only determines
15159         satisfies_constraints_ for non-ragged typesetting.
15160
15161         * lily/simultaneous-music.cc (to_relative_octave): only set
15162         old_relative_used if return pitch actually changed.
15163
15164         * scm/define-context-properties.scm
15165         (all-user-translation-properties): change to match implementation.
15166
15167         * python/lilylib.py: Replace re.match by re.search and adds "-c
15168         showpage" to the gs command line (Johannes Schindelin)
15169
15170         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15171         before processing. Prevents crash when inf is in the extent.
15172
15173         * scm/define-markup-commands.scm (note-by-number): add "s" to
15174         "noteheads-" glyphname.
15175  
15176         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15177         music function as well.
15178         
15179 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15180
15181         * VERSION: release 2.5.2
15182
15183         * Documentation/user/changing-defaults.itely (Creating titles):
15184         add breakbefore variable.
15185
15186         * lily/paper-book.cc (set_system_penalty): new function. Set
15187         penalty_ based on breakBefore setting
15188
15189         * lily/context-specced-music-iterator.cc (construct_children):
15190         interpret special context id $uniqueContextId 
15191
15192         * lily/context.cc (create_unique_context): new method. Move
15193         creation of unique (\new) contexts into interpreting phase. This
15194         makes
15195
15196           foo= \new Staff ..
15197           << \foo \foo >>
15198
15199         produce 2 staves.
15200         
15201
15202         * scm/define-music-properties.scm (all-music-properties): add
15203         quoted-voice-direction
15204
15205         * ly/music-functions-init.ly: killCues function.
15206
15207         * scm/music-functions.scm (cue-substitute): move creation of voice
15208         contexts further to the back. 
15209
15210 2004-11-25  Werner Lemberg  <wl@gnu.org>
15211
15212         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15213         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15214
15215 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15216
15217         * buildscripts/guile-gnome.sh: Fixed typo.
15218
15219 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15220
15221         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15222
15223         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15224
15225         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15226         to regular engraver. 
15227
15228 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15229
15230         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15231
15232 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15233
15234         * scm/define-markup-commands.scm (fill-line): Typo.
15235
15236         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15237         and newer.
15238
15239 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15240
15241         * ly/dynamic-scripts-init.ly: Fixed typo.
15242
15243 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15244
15245         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15246         note-head, to have different attachment points for up and down.
15247
15248         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15249
15250         * mf/feta-generic.mf (else): remove solfa.
15251
15252         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15253
15254         * scm/define-context-properties.scm
15255         (all-user-translation-properties): add shapeNoteStyles property.
15256
15257         * lily/shape-note-heads-engraver.cc (process_music): new file.
15258
15259         * lily/event.cc (transpose): call Event::transpose() for
15260         transposing the tonic.
15261
15262 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15263
15264         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15265         Unicode/OpenType and AFM.
15266
15267         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15268
15269 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15270
15271         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15272
15273         * lily/context.cc (Context): unprotect key from ctor.
15274
15275         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15276         is '()
15277         (stack-stencils): idem.
15278
15279         * Documentation/user/changing-defaults.itely (Creating titles):
15280         document new title layout options.
15281
15282         * lily/parser.yy (lilypond_header_body): copy previous
15283         $globalheader if present.
15284
15285         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15286         ly:module-copy
15287         
15288         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15289
15290         * scm/titling.scm: remove old titling functions
15291
15292         * lily/stencil.cc (translate): remove absolute dimension.
15293
15294         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15295         via markup.
15296
15297         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15298         field from user-supplied markup
15299
15300         * scm/define-markup-commands.scm (on-the-fly): new markup
15301         command. Enter SCM markup procedure directly in Scheme.
15302         (fromproperty): new markup command. Read markup from props argument.
15303
15304         * scm/titling.scm (marked-up-title): create title via
15305         user-specified markup. 
15306
15307         * scm/define-markup-commands.scm (column): remove empty stencils
15308         from column.
15309
15310         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15311         not have side-effect of creating variable stub.
15312
15313         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15314
15315 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15316
15317         * scm/encoding.scm (coding-alist): 
15318         * scm/font.scm (add-ec-fonts):
15319         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15320         Extended-TeX-Font-Encoding---Latin.
15321
15322         * lily/side-position-interface.cc (general_side_position): Add
15323         actual offset to error message (avoid constant error messages).
15324
15325         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15326         block.
15327
15328         * lily/font-select.cc (select_encoded_font)
15329         (get_font_by_mag_step, get_font_by_design_size): 
15330         * lily/modified-font-metric.cc (Modified_font_metric): 
15331         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15332
15333         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15334         (read-encoding-file): Bugfix: do not require space after bracket.
15335
15336         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15337         these do not exist.
15338
15339 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15340
15341         * Documentation/user/notation.itely: added info about typesetting
15342         boxed bar numbers.
15343
15344 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15345
15346         * flower/interval.cc (T_to_string): gcc4 fixes.
15347
15348         * scm/define-markup-commands.scm (fill-line): use
15349         stack-stencils. This fixes problems with putting already centered
15350         stencils in a line.
15351
15352         * VERSION: release 2.5.1
15353
15354         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15355
15356 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15357
15358         * input/example-[1-3].ly: simplify.
15359
15360         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15361
15362         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15363         show glyphs.
15364
15365         * scm/encoding.scm (decode-byte-string): new function.
15366
15367         * scripts/convert-ly.py (conv): add warning about
15368         set-global-staff-size.
15369
15370         * Doxyfile: add. 
15371
15372         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15373         (conv): warn for TextSpanner split.
15374         (conv): warn for textheight.
15375
15376 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15377
15378         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15379         building the documentation, info with images are installed.
15380         (final-install): Fix description.  Mention sourcing of login
15381         scripts (instead of running).
15382
15383 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15384
15385         * Debian lmodern support.  Note that LilyPond will issue warnings
15386         
15387             no such encoding: "FontSpecific"
15388
15389           The font selection mechanism wants to get the encoding from the
15390           font itself, but the idea of lmodern is that it is usable with
15391           different encodings, ie, Lily should get the encoding from the
15392           font tree, rather than the font itself.  This would require some
15393           more work.
15394         
15395         * configure.in: Test for and accept lmodern if EC fonts not found.
15396
15397         * scm/framework-tex.scm (font-load-command): TeX font name
15398         mangling for latin1 encoded cork-lm fonts.
15399         (convert-to-ps): Load lm.map if available.
15400
15401         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15402         available.
15403
15404         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15405
15406         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15407         available.
15408
15409         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15410         path for absolute file name, that is silly.
15411
15412         * lily/score-engraver.cc (initialize): 
15413
15414         * Documentation/user/GNUmakefile (local-install-info): Invoke
15415         install-info --remove first.
15416
15417         * #include cleanup (Andreas Scherer).
15418
15419 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15420
15421         * input/test/script-abbreviations.ly: fix typos.
15422
15423 2004-11-17  Werner Lemberg  <wl@gnu.org>
15424
15425         * python/lilylib.py (options_help_str): Support pretty-printing of
15426         newlines in fourth element of option description.
15427
15428         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15429         feature.
15430         Sort options.
15431
15432         * Documentation/user/lilypond-book.itely: Finish update.
15433
15434 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15435
15436         * Documentation/user/macros.itexi: Add comment about \command.
15437
15438         * Documentation/user/lilypond.tely:
15439         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15440         and lilypond-book nodes, so that `info lilypond' visits the manual
15441         at top level, and `info lilypond-book' visits the lilypond-book
15442         section.
15443
15444         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15445         and packager messages.
15446
15447         * lily/pangofc-afm-decoder.cc: Update test.
15448
15449 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15450
15451         * scm/lily-library.scm (char->unicode-index): New function.
15452
15453         * scm/output-gnome.scm: 
15454         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15455
15456         * Proper naming of file name throughout; s/filename/file[-_]name/.
15457
15458         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15459
15460         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15461
15462 2004-11-16  Werner Lemberg  <wl@gnu.org>
15463
15464         * scripts/lilypond-book.py: The Lord has commanded me to use only
15465         tabs for indentation.  Your humble servant obeys.
15466
15467 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15468
15469         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15470         including font, if LilyPond-feta font is only feta font in path.
15471
15472         * scm/output-gnome.scm (text): Revert to file name of font if font
15473         has no name.  Fixes ec font selection.
15474         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15475
15476         * scm/framework-svg.scm:
15477         * scm/output-svg.scm: New file.  TODO: figure out how to
15478         do character by index in font.
15479
15480         * scm/output-sodipodi.scm: Remove.
15481
15482         * scm/output-ps.scm (stem): Remove.
15483
15484 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15485
15486         * scm/output-gnome.scm (beam): New function.
15487         (slur): Round corners.
15488         (round-filled-box): Round corners.
15489
15490 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15491
15492         * scm/output-gnome.scm (beam): add function.
15493         (draw-line): new routine.
15494         (dashed-line): stub; call draw-line
15495         (polygon): new routine.
15496
15497 2004-11-15  Werner Lemberg  <wl@gnu.org>
15498
15499         * Documentation/user/lilypond-book.itely: Revise section on
15500         lilypond-book options.
15501         Other minor fixes.
15502
15503         * scripts/lilypond-book.py: Change indentation to 4.
15504         Minor formatting.
15505
15506 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15507
15508         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15509         grobs that have tweaks specced.
15510         
15511 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15512
15513         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15514
15515 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15516
15517         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15518         actual char #, not 0 based index.
15519
15520         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15521
15522         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15523         Warning: do make -C mf clean.
15524
15525         * lily/context-property.cc: Compile fix.
15526
15527         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15528         Grok ec-fonts, braces and dynamics.
15529
15530         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15531
15532 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15533
15534         * lily/include/tweak-registration.hh: new file.
15535
15536         * lily/tweak-registration.cc: new file.
15537
15538         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15539         saving tweaks.
15540
15541         * scm/output-gnome.scm (text): comment dribble.
15542
15543 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15544
15545         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15546
15547         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15548         path-def before using.  Fixes muchtomany slurs in wrong places
15549         bug.
15550
15551 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15552
15553         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15554
15555         * lily/include/object-key-undumper.hh (Module): new file.
15556
15557         * lily/object-key-undumper.cc (Module): New file. Deserialize
15558         keys. SCM bindings
15559
15560         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15561         Provide SCM bindings.
15562
15563         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15564         new file. Serialize object keys.
15565         
15566         * lily/object-key.cc (dump): new function.
15567         (as_scheme): new virtual function
15568         (undump): new function
15569         (undumpers): new table.
15570
15571         * lily/include/global-context.hh (Context): take \score key upon init.
15572
15573         * lily/object-key-dumper.cc (serialize_key): new file.
15574
15575         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15576
15577         * lily/lily-lexer.cc: remove \quote.
15578
15579         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15580
15581         * lily/context.cc (Context): take key argument in ctor.
15582         (create_context): new function
15583
15584         * lily/grob.cc (Grob): take key argument in ctor.  
15585
15586         * lily/lilypond-key.cc (do_compare): new file.
15587
15588         * lily/object-key.cc (Object_key): new file.
15589
15590         * lily/include/object-key.hh (class Object_key): new file.
15591
15592         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15593
15594 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15595
15596         * Documentation/user/lilypond-book.itely: add small warning about
15597         noindent default in lilypond-book.
15598
15599         * Documentation/user/converters.itely: add examples for convert-ly.
15600
15601         * Documentation/user/examples.itely: change version string in templates
15602         to 2.4.0.
15603
15604 2004-11-12  Karl Hammar  <karl@aspodata.se>
15605
15606         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15607         cmdline, use xargs instead (backportme)
15608
15609 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15610         
15611         * Documentation/user/: Numerous fixes in the user manual.
15612
15613 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15614
15615         * lily/parser.yy (re_rhythmed_music): search music expression for
15616         context-id, surround by \new Voice if not found. Fixes:
15617         addlyrics-second-staff.ly
15618
15619         * VERSION: 2.5.0 released.
15620         
15621 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15622
15623         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15624
15625         * Documentation/user/GNUmakefile: Separate rules for split and
15626         unsplit html documents.  Remove perl massaging.  (backportme)
15627
15628 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15629
15630         * Documentation/user/lilypond-book.itely: add short warning about
15631         \lilypond{} in LaTeX docs.
15632
15633 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15634
15635         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15636         found.  (backportme)
15637
15638         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15639         version requirement.  (backportme)
15640
15641         * configure.in: Be explicit about old versions of
15642         ec-fonts-mtraced.  (backportme)
15643
15644         * lily/context-selector.cc (set_tweaks): New function.
15645         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15646         web with -DTWEAK.
15647
15648         * Documentation/user/introduction.itely (Automated engraving):
15649         Remove fragment option.  Fixes web.
15650
15651         * lily/context-property.cc (make_item_from_properties):
15652         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15653         #ifdef.
15654
15655         * scm/define-context-properties.scm
15656         (all-internal-translation-properties): Add tweakRank and tweakCount.
15657
15658         * lily/grob.cc: 
15659         * scm/define-grob-properties.scm (all-internal-grob-properties):
15660         Add tweak-rank and tweak-count.
15661
15662 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15663
15664         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15665         New function.
15666         (text): Use them.
15667
15668         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15669         animated/opaque grob dragging tweaks.
15670
15671         * buildscripts/guile-gnome.sh: Update.
15672
15673 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15674
15675         * scm/define-grobs.scm (all-grob-descriptions): Added
15676         line-interface to the LigatureBracket object.
15677
15678 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15679
15680         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15681         dragging tweaks.
15682
15683         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15684
15685         * lily/context-selector.cc (store_context): New function.
15686
15687         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15688         (store_grob): New function.
15689         (identify_grob): Add Moment parameter.
15690
15691         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15692         exists.
15693
15694         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15695
15696 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15697
15698         * scm/framework-gnome.scm (item-event): Print grob id.
15699         (save-tweaks): New function.
15700         (tweak): New funtion.
15701         (item-event): Use it, bound to arrow keys.
15702
15703         * lily/context-property.cc (make_item_from_properties): Register grob.
15704         * lily/context.cc (add_context): Register context.
15705
15706         * lily/include/context-selector.hh:
15707         * lily/include/grob-selector.hh:
15708         * lily/context-selector.cc:
15709         * lily/grob-selector.cc: New file.
15710
15711 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15712
15713         * lily/slur.cc: add 'positions to interface
15714
15715         * lily/main.cc: reinstate PS as standard output format. 
15716
15717         * scm/framework-tex.scm (output-preview-framework): print systems
15718         up to first non title system.
15719
15720         * lily/grace-engraver.cc (start_translation_timestep): split
15721         scm_cadddr
15722         
15723 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15724
15725         * lily/quote-iterator.cc (Module): remove old quote-iterator
15726
15727         * scm/define-music-types.scm (music-descriptions): move
15728         NewQuoteMusic over QuoteMusic
15729
15730         * Documentation/user/notation.itely (Formatting cue notes): use
15731         \cueDuring.
15732
15733         * lily/new-quote-iterator.cc (quote_ok): new function.
15734
15735         * input/regression/quote-cue-during.ly: new file.
15736
15737         * input/regression/quote-grace.ly: new file.
15738
15739         * scm/define-context-properties.scm (Module): change definition of
15740         graceSettings
15741
15742         * lily/context-property.cc (Module): rename from
15743         translator-property.cc
15744
15745         * lily/context.cc (context_name_symbol): new function
15746
15747         * lily/grace-engraver.cc: new file. Set properties for grobs based
15748         on the grace-ness of now_moment().
15749
15750         * scm/music-functions.scm (add-grace-property): use list
15751         iso. vector for graceSettings
15752         remove set-{start,stop}-grace-properties. 
15753
15754         * lily/new-quote-iterator.cc (construct_children): set
15755         quote_outlet_ if no quoted-context-{id,type} specified.
15756
15757         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
15758
15759         * lily/parser.yy (command_element): remove \quote.
15760
15761         * ly/music-functions-init.ly (location): add quoteDuring music
15762         function. 
15763
15764         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
15765         optional semicolon. (backportme)
15766
15767 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15768
15769         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
15770         need to link to GUILE et al.
15771
15772 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15773
15774         * scm/define-music-properties.scm (all-music-properties): add
15775         quoted-context-type, quoted-context-id.
15776
15777         * scm/lily.scm (type-check-list): new function.
15778         
15779         * scm/lily-library.scm: new file. Generic library routines.
15780
15781         * lily/parser.yy (Generic_prefix_music): move typechecking out of
15782         parser.
15783
15784         * ly/music-functions-init.ly: add quoteDuring function.
15785
15786         * lily/include/music-iterator.hh (class Music_iterator): rename
15787         set_translator -> set_context
15788
15789         * lily/parser.yy (Generic_prefix_music_scm): add
15790         MUSIC_FUNCTION_SCM_SCM_MUSIC
15791
15792         * scm/lily.scm (sanitize-command-option): new function. (backportme)
15793
15794         * scm/framework-tex.scm (header): sanitize TeX paper size.
15795         (backportme)
15796
15797 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15798
15799         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
15800
15801         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
15802
15803         * scm/framework-tex.scm (font-load-command): Use T1 if no
15804         font-encoding set.  (backportme)
15805
15806         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
15807         exists before converting.  (backportme)
15808
15809         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
15810         exists before converting.  (backportme)
15811         (convert-to-ps): Remove .ps file if it exists before
15812         converting.  (backportme)
15813
15814         * lily/lexer.ll: Remove extra progress newline, use present tense.
15815
15816         * scm/paper.scm (paper-alist): public.
15817         * scm/framework-tex.scm (convert-to-ps):
15818         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
15819         command line.
15820
15821 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15822
15823         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
15824
15825         * lily/recording-group-engraver.cc (derived_mark): mark
15826         now_events_. (backportme)
15827
15828 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15829
15830         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
15831
15832         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
15833         invoking latex. (backportme.)
15834
15835         * lily/stem.cc (off_callback): center stems for all rest stems.
15836
15837 2004-11-05  Werner Lemberg  <wl@gnu.org>
15838
15839         * Documentation/user/lilypond.tely: Add more guidelines for writing
15840         lilypond texinfo documents.
15841
15842 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
15843
15844         * Documentation/index.html.in: remove <hr>.
15845
15846         * THANKS: change 2.3 to 2.4.
15847
15848 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
15849
15850         * scm/output-gnome.scm: More fontconfig comment.
15851
15852 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
15853
15854         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
15855         <package> directory in $(builddir)/share according with
15856         PACKAGE_NAME defined in the VERSION file.
15857
15858 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15859
15860         * lily/beam.cc (rest_collision_callback): use local beam
15861         multiplicity.
15862
15863         * input/regression/stem-stemlet.ly: new file.
15864
15865         * lily/stem.cc (add_head): store rests as well.
15866
15867         * scm/define-grob-properties.scm (all-user-grob-properties): add
15868         stemlet-length
15869
15870         * lily/stem.cc: store rests as well.
15871         
15872         * input/regression/new-slur.ly: mention forcing.
15873
15874 2004-11-04  Werner Lemberg  <wl@gnu.org>
15875
15876         * Documentation/user/*: A new round of layout fixes and document
15877         structure cleanup.
15878
15879 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
15880
15881         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
15882
15883 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
15884
15885         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
15886
15887 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
15888
15889         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
15890
15891         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
15892
15893         * lily/main.cc (main): Invoke identify.
15894
15895         * scm/lily.scm (postscript->pdf): Remove progress newline.
15896         Write progress to stderr.
15897
15898         * lily/paper-book.cc (output): Remove progress newline.
15899
15900         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
15901         gettext on user messages, and remove whitespace.
15902
15903         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
15904
15905         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
15906         argv[0] (Thomas Scharkowski).
15907
15908         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
15909         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
15910         for ec-fonts-mtraced.
15911
15912         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
15913         --srcdir build (Bertalan).
15914
15915         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
15916         headers and library too (Laura Conrad).
15917
15918         * Documentation/topdocs/INSTALL.texi (Top): Mention development
15919         package for guile too (Laura Conrad).
15920
15921         * lily/main.cc (usage): Typo.
15922
15923 2004-11-02  Werner Lemberg  <wl@gnu.org>
15924
15925         * Documentation/user/notation.ly: More fixes to improve appearance.
15926
15927         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
15928         better output for multicolumn tables.
15929
15930 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
15931
15932         * lily/main.cc (dir_info): Fixed typo in the printouts.
15933
15934 2004-11-01  Werner Lemberg  <wl@gnu.org>
15935
15936         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
15937         of output.
15938         Set `per_line' to 2; replace hard-coded value with it.
15939
15940         * Documentation/user/*: Many fixes to improve appearance of
15941         printed manual.
15942
15943 2004-11-01  Werner Lemberg  <wl@gnu.org>
15944
15945         * Documentation/user/changing-defaults.itely,
15946         Documentation/user/notation.ly,
15947         Documentation/user/programming-interface.itely: Use @/.
15948         Fix formatting of some lilypond snippets and tables.
15949
15950         * scripts/lilypond-book.py (compose_ly): Provide useful default
15951         for LINEWIDTH in `override'.
15952
15953 2004-10-31  Graham Percival  <gperlist@shaw.ca>
15954
15955         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
15956
15957 2004-10-31  Werner Lemberg  <wl@gnu.org>
15958
15959         Resetting @exampleindent to `5' gives ugly results with texinfo's
15960         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
15961         (if not quoting) to change @exampleindent only locally.
15962
15963         * scripts/lilypond-book.py (NOQUOTE): New variable.
15964         (output) [LATEX]: Remove AFTER and BEFORE.
15965         [TEXINFO]: Remove AFTER and BEFORE.
15966         Fix QUOTE and VERBATIM pattern.
15967         Add NOQUOTE pattern.
15968         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
15969         and BEFORE.
15970         [output_texinfo]: Use NOQUOTE.
15971
15972 2004-10-31  Graham Percival  <gperlist@shaw.ca>
15973
15974         * Documentation/user/changing-defaults.itely: clarify paper
15975         size commands with correct info.
15976
15977         * Documentation/user/lilypond-book.itely: add more docs for
15978         filename extensions.
15979
15980 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15981
15982         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
15983         (PATCH_LEVEL): start 2.5.0.
15984
15985 #Local variables:
15986 #coding: utf-8
15987 #End:
15988