]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* lily/spanner.cc (find_broken_piece):
[lilypond.git] / ChangeLog
1 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
2
3         * lily/spanner.cc (find_broken_piece): 
4         * lily/spacing-spanner.cc (get_columns): 
5         * lily/source-file.cc (get_line): 
6         * lily/simple-spacer.cc (get_column_description): 
7         * lily/keyword.cc (lookup): 
8         use the new binary search.
9
10         * flower/include/std-vector.hh: replace binary_search with
11         a more STL-like version
12
13 2006-09-05  Joe Neeman  <joeneeman@gmail.com>
14
15         * lily/page-turn-engraver.cc (penalty): minPageTurnLength ->
16         minimumPageTurnLength
17
18         * scm/define-context-properties.scm (all-user-translation-properties):
19         add minimumPageTurnLength and minimumRepeatLengthForPageTurn
20
21         * Documentation/user/page.itely: update page breaking documentation
22
23 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
24
25         * lily/tie-performer.cc: remove unused last_event_ property.
26         (class Tie_performer): add now_tied_heads_ property for
27         partially-tied heads.
28         (acknowledge_audio_element): when adding an Audio_note, put the
29         note in now_tied_heads_ if the audio note is partially tied.
30         (stop_translation_timestep): always include entries in
31         now_tied_heads_ in heads_to_tie_.
32
33         * lily/drum-note-performer.cc (process_music): look for tie-events
34         in the articulations; pass to Audio_note constructor.
35
36         * lily/note-performer.cc (process_music): look for tie-events in
37         the articulations; pass to Audio_note constructor.
38
39         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
40         constructor.
41
42         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
43         include initializer in constructor.
44
45 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
46
47         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
48         unless they are breakable. This fixes discrepancies between the forces
49         calculated here and the forces calculated in get_line_configuration.
50
51         * lily/grob.cc (pure_relative_y_coordinate): fix some
52         mis-estimation that was happening with piano staves.
53
54         * lily/constrained-breaking.cc (resize): don't choke if we get a
55         measure that won't fit on a line.
56         (combine_demerits): don't consider uniformity when ragged
57
58         * lily/page-spacing.cc (solve): why the f* were there two of these?
59         (calc_subproblem): properly handle the case where a system is taller
60         than the page.
61
62         * lily/system.cc (get_paper_system): ensure that all the permissions
63         and penalties are passed to the paper systems.
64
65         * lily/page-breaking.cc (create_system_list): support system-count.
66
67         * scm/define-grobs.scm (pure-print-callbacks): add
68         ly:script-interface::print
69
70         * lily/page-spacing.cc (min_page_count): fix calculation of min
71         pages if we are ragged and there are non-zero springs.
72
73         * scm/layout-page-layout.scm: if the pure-height estimates are under
74         the real height, allow space-systems to ignore padding if it is
75         needed in order to fit the systems on one page
76
77         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
78         ragged properties
79         (solve): fix performance problem. Make sure we always get at least
80         one solution
81
82         * lily/page-breaking.cc (make_pages): include write-page-breaks
83         and page-stencil
84
85         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
86
87         * scm/define-grobs.scm: add the new slur-callback
88         fix pure-relevant to not exclude grobs whose extent is already
89         calculated
90
91         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
92         page breaker
93
94         * lily/slur.cc (pure_height): new callback to estimate the height
95         of a slur
96
97 2006-09-02  Graham Percival  <gpermus@gmail.com>
98
99         * Documentation/user/invoking.itely: small update on
100         MacOS X notes; thanks Trevor!
101
102 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
103
104         * VERSION (MY_PATCH_LEVEL): release 2.9.17
105
106         * lily/lexer.ll: accept EOF in all states.
107
108         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
109
110         * lily/source-file.cc (Source_file): always 0-terminate character
111         array, to prevent Flex from barfing.
112
113         * lily/global-context.cc (get_output): robustness: don't crash if
114         no Score context found.
115
116         * lily/include/book.hh (class Book): idem.
117
118         * lily/include/context-def.hh (struct Context_def): idem.
119
120         * lily/include/score.hh (class Score): don't derive from Input.
121
122         * lily/book.cc (Book): add a copy ctor. 
123
124         * buildscripts/output-distance.py (FileLink.calc_distance): count
125         orphans in distance too.
126
127         * python/midi.c (midi_parse_track): robustness: don't read past
128         end of string.
129
130         * ly/performer-init.ly: add Control_track_performer, move
131         Tempo_performer and Time_signature_performer to Score.        
132
133         * lily/score-performer.cc (acknowledge_audio_elements): override
134         from base class: add to audio-columns
135
136         * lily/control-track-performer.cc (add_text): new file: generate
137         the control track.
138
139         * lily/performance.cc: move output_header_track to
140         Control_track_performer ()
141
142         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
143
144         * lily/include/midi-item.hh (class Midi_channel_item): insert
145         class into hierarchy, for items that can have a channel setting. Dehungarify.
146
147         * lily/include/performer.hh (class Performer): remove
148         play_element();  move functionality into announce/acknowledge.
149
150         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
151
152         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
153         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
154
155 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
156
157         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
158         ambituses.
159
160         * lily/all-font-metrics.cc: remove TFM support.
161
162         * lily/include/tfm.hh: remove TFM support, TFM reader.
163
164         * lily/include/binary-source-file.hh: remove Binary_source_file.
165
166 2006-08-27  Graham Percival  <gpermus@gmail.com>
167
168         * Documentation/topdocs/NEWS.itely: add @c marker for
169         stuff I've processed.
170
171         * Documentation/user/ various: info from NEWS.
172
173 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
174
175         * lily/paper-column-engraver.cc (finalize): Oops, this change
176         should have gone in on 2006-08-23
177
178 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
179
180         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
181         quotes to quote arguments. Fixes Windows problem.
182
183         * python/lilylib.py (progress): idem
184
185 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
186
187         * scripts/musicxml2ly.py: fix for importing
188         minor key signatures from MusicXML.  (Phillip Kirlin)
189
190 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
191
192         * python/musicxml.py: 
193         (Attributes.get_key_signature): now correctly retrieves mode from 
194         MusicXML. 
195
196 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
197
198         * lily/parser.yy (output_def_body): take ownership of identifier
199         back to C++.
200
201         * Documentation/user/advanced-notation.itely (Metronome marks):
202         update use of \tempo in \midi.
203
204         * VERSION: release 2.9.16
205         
206 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
207
208         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
209         web partially)
210
211 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
212
213         * input/regression/tie-chord-partial.ly: clarify example.
214
215         * scm/define-music-properties.scm (all-music-properties): remove
216         untied.
217
218         * ly/music-functions-init.ly: remove \untied.
219
220         * lily/tie-engraver.cc (struct Head_event_tuple): store both
221         stream events and music events.
222         (stop_translation_timestep): search acknowledged heads for
223         tie-event.
224
225         * input/regression/tie-chord-partial.ly: new file.
226
227         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
228         for \char markup command.
229
230         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
231
232         * scm/define-music-types.scm (music-descriptions): consistency:
233         Use solo-{one,two}-event iso. solo-[12]-event.
234
235         * lily/part-combine-engraver.cc (process_music):
236         Use solo-{one,two}-event iso. solo-[12]-event.
237
238         * ly/declarations-init.ly (partCombineListener): add Timing as
239         alias
240
241         * flower/std-string.cc (string_copy): use copy ()
242
243         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
244
245 2006-08-24  Graham Percival  <gpermus@gmail.com>
246
247         * Documentation/user/changing-defaults.itely, global.itely,
248         lilypond-book.itely, page.itely: minor changes from mailist.
249
250 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
251
252         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
253         snippet-map
254
255         * scm/define-context-properties.scm
256         (translator-property-description): robustness: detect type errors
257         in property definitions.
258
259         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
260         after getting it from SCM. 
261
262         * lily/smobs.cc (protect_smob): switch off fancy smob protection
263         for now. 
264
265         * lily/include/performer.hh (class Performer): strip get_tempo()
266         method.
267
268         * lily/midi-def.cc: strip file.
269
270         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
271
272         * lily/include/context-def.hh (struct Context_def): use
273         VIRTUAL_COPY_CONSTRUCTOR().
274
275         * lily/source-file.cc: smobification.
276
277         * lily/include/source-file.hh (class Source_file): smobify
278         Source_file. Trim redundant members.
279
280         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
281         clones after creation. This plugs a huge memory leak.
282
283         * python/convertrules.py (FatalConversionError.sub_tempo):
284         complete rule for \midi{ \tempo }
285
286         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
287
288         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
289
290 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
291
292         * input/regression/optimal-page-breaking-hstretch.ly: test for
293         ragged-last-bottom also
294
295         * lily/paper-column-engraver.cc (finalize): make the end of a score
296         breakable by default. This is to balance out a change in behaviour
297         of the page-turn-breaker which no longer makes the end of a score
298         breakable.
299
300         * lily/paper-book.cc (pages): set the systems_ once the pages are
301         broken
302
303         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
304         Page_breaking interface.
305
306         * lily/page-breaking.cc (class Page_breaking): make the interface
307         more consistent and provide abstractions for dealing with
308         Line_divisions.
309
310         * lily/optimal-page-breaking.cc (solve): use a more straightforward
311         algorithm. Use the new interface to Page_breaking.
312
313         * lily/page-spacing.cc: better support for ragged-bottom and
314         ragged-last-bottom
315
316 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
317
318         * python/convertrules.py (conv): warning on \tempo{}
319
320         * ly/performer-init.ly: set tempoWholesPerMinute.
321
322         * ly/midi-init.ly: remove \midi
323
324         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
325         MIDI tempo.
326
327         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
328         tempoUnitDuration for determining what to print.
329
330         * lily/lyric-extender.cc: typo.
331
332         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
333
334         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
335         function.
336
337         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
338
339         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
340         eps-pad-boxes is set.
341
342         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
343
344         * THANKS: update sponsors.
345
346         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
347
348         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
349
350         * input/regression/tie-chord-untied.ly: new file.
351
352         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
353
354         * scm/define-music-properties.scm (all-music-properties): add
355         'untied property.
356
357         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
358         than .ly.txt.
359         (headertext_nopics): sanitize no-examples text.
360
361         * scm/page.scm (make-page-stencil): don't rely on extents of
362         page-stencil. This fixes spurious space around .EPS files produced
363         with the EPS backend.
364
365 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
366
367         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
368
369         * lily/hara-kiri-engraver.cc (process_music): remember
370         keepAliveInterfaces after processing \set
371
372         * lily/lyric-extender.cc (print): support left/right-padding for
373         extenders.
374
375         * scm/documentation-generate.scm (string-append): revert lilypond/
376         path, doc why.
377
378 2006-08-20  Graham Percival  <gpermus@gmail.com>
379
380         * Documentation/user/lilypond.tely: clarification to
381         license presentation (not to actual license).
382
383         * Documentation/user/basic-notation.itely,
384         instrument-notation.itely: minor changes.
385
386         * input/ {regression, test}/+.ly: clarification to
387         text (you can click on examples).  Thanks, Mats!
388
389         * input/manual/bar-lines.ly: adds ||: repeats.
390
391 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
392
393         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
394
395         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
396
397         * Documentation/user/lilypond.tely: strip lilypond/ from info
398         links, rename to category LilyPond
399
400         * lily/pango-font.cc (description_string): new function.
401
402         * VERSION: release 2.9.15
403
404         * lily/spacing-engraver.cc (stop_translation_timestep): use
405         Dscho's fix for spacing spanner. 
406
407         * scm/define-music-types.scm (music-descriptions): use
408         apply-output-event for ApplyOutputEvent
409
410         * lily/output-property-engraver.cc (listen_apply_output): rename
411         from listen_layout_instruction.
412
413         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
414         function protect()
415
416 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
417
418         * scm/lily.scm (lilypond-all): option read-file-list: substitute
419         commandline args with contains, split by \n.
420
421         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
422         write snippet-names file, call with -dread-file-list. Fixes
423         command limitations on 64-bit systems.
424
425         * input/regression/stencil-color-rotation.ly: new file.
426
427         * lily/include/translator.hh (struct Acknowledge_information):
428         revert: don't use Protected_scm in global objects, as GUILE can't
429         handle gc_unprotect from automated destructors on MacOS X.
430  
431         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
432         color, not the original stencil. Fixes combinations of
433         color/transparency/rotation. Backportme.
434
435         * scripts/lilypond-book.py (main): add --formats=eps for
436         texinfo/latex.
437
438         * lily/spacing-engraver.cc (stop_translation_timestep): don't
439         crash if spacing_ is nonexistent.
440
441 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
442
443         * scripts/lilypond-book.py (output): Remove obsolete(!?)
444         \catcode`\@=12 in the LaTeX output.
445
446 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
447
448         * scm/define-music-types.scm (music-descriptions):
449         use sustain-event iso. sustain-pedal-event.
450
451 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
452
453         * scripts/convert-ly.py: honour the -n command-line switch
454
455 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
456
457         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
458         break specification.
459
460 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
461
462         * Documentation/user: convert-ly the user manual
463
464 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
465
466         * stepmake/aclocal.m4: version check patch (thanks MWD)
467
468         * ly/music-functions-init.ly: robustness. Don't crash if
469         currentBarNumber is not a number.
470
471         * VERSION (PATCH_LEVEL): bump.
472
473 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
474
475         * stepmake/aclocal.m4: better version check; handle fooX.Y
476         binaries too.
477
478         * ly/performer-init.ly: instrument name fixup.
479
480         * input/manual/chord-names-jazz.ly (banterProperties):
481         instrumentName update
482
483         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
484
485         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
486
487         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
488         function. Use hash tables to check membership.
489
490         * lily/general-scheme.cc (LY_DEFINE): new function.
491
492         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
493
494         * lily/include/translator.hh (struct Acknowledge_information): add
495         Protected_scm
496
497         * ly/music-functions-init.ly: change name to BreathingEvent
498
499         * input/regression/*.ly: apply it.
500
501         * python/convertrules.py (conv): better instrumentName conversion
502         rule.
503
504         * scm/define-music-types.scm (music-descriptions): add
505         line-break-event to LineBreakEvent music
506
507         * lily/music.cc (to_event): don't crash if music type not set.
508
509         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
510         spacing not set.
511
512         * lily/spacing-engraver.cc (stop_translation_timestep): set
513         spacing for proportional notation too.
514
515         * scm/translation-functions.scm (format-bass-figure): inspect
516         stream-event.
517
518         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
519
520 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
521
522         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
523
524         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
525
526         * scm/layout-page-layout.scm (make-page-from-systems): new function
527         (optimal-page-breaks): use the new page-breaking calling convention
528
529         * scm/define-context-properties.scm (all-user-translation-properties):
530         add revokePageTurns
531
532         * lily/paper-column-engraver.cc (stop_translation_timestep): add
533         revokePageTurns  functionality. If there is a special barline within
534         the breakable region, break there instead of at the end of the region.
535
536         * lily/paper-book.cc (pages): use the new page-breaking calling
537         convention
538
539 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
540
541         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
542
543         * scripts/lilypond-book.py: insert \sourcefileline command in
544         output, so lilypond error messages refer to the spot in the
545         original .lytex / .itely sourcefile.
546
547 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
548
549         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
550         space to next column for distance to fixed col.
551
552         * VERSION (PACKAGE_NAME): release 2.9.14
553
554         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
555         if no accidental.
556
557         * lily/accidental-engraver.cc (process_acknowledged): don't create
558         accidental for trill span event. This fixes spurious accidentals
559         on trills.
560
561 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
562
563         * scm/define-grob-properties.scm (all-user-grob-properties):
564         Clarify documentation of side-axis and direction. Thanks to Paul
565         for the inspiration.
566
567         * lily/bar-line.cc: Add documentation for "||:" also in the
568         interface documentation.
569
570 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
571
572         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
573
574         * lily/paper-column.cc (set_system): new function.
575
576         * lily/spacing-engraver.cc (stop_translation_timestep): store
577         SpacingSpanner refs in Paper_column.
578
579         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
580         compute loose clique spacing using GraceSpacing/SpacingSpanner.
581
582 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
583
584         * lily/beam-engraver.cc (listen_beam): add method for
585         Grace_beam_engraver too.
586
587 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
588
589         * python/convertrules.py: Fix indentation bug that broke
590         conversion of files older than 1.3.117.
591         Fix escape error in the description for 2.9.6.
592
593 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
594
595         * lily/*-engraver.cc: convert all try_music functions to listen_*
596         functions.
597
598         * lily/piano-pedal-engraver.cc: some additional cleanups: use
599         enums to represent pedal types, and calculate more data statically.
600
601         * scm/part-combiner.scm (recording-group-emulate): create a
602         softcoded substitute for recording-group-engraver.cc.
603
604         * lily/music.cc: make a common transpose function for events and
605         music
606
607         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
608         ManualMelismaEvent, and obsoletes Melisma_translator.
609
610 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
611
612         * input/test/instrument-name-align.ly: update version.
613
614 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
615
616         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
617         Doc the --pdf flag to lilypond-book.
618
619 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
620
621         * Documentation/topdocs/NEWS.tely (Top): add description.
622
623         * input/regression/tuplet-full-length-note.ly: add file.
624
625         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
626         always store axis group.
627
628 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
629
630         * input/regression/instrument-switch.ly: new file.
631
632         * lily/instrument-switch-engraver.cc (process_music): new file.
633
634         * ly/engraver-init.ly: add Instrument_switch_engraver
635
636         * ly/music-functions-init.ly: \instrumentSwitch
637
638         * scm/define-context-properties.scm
639         (all-user-translation-properties): add instrumentCueName
640
641         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
642
643 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
644
645         * ly/music-functions-init.ly: music function \transposition.
646
647         * lily/parser.yy (command_element): softcode \transposition.
648
649         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
650         (process_music): oops.
651
652         * lily/instrument-name-engraver.cc (start_spanner): new
653         function. Create spanner when property changes.
654         (stop_spanner): new function.
655
656         * python/convertrules.py (conv): add rule.
657
658         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
659         shortInstrumentName iso. instr.
660
661         * scm/output-ps.scm (dashed-line): add phase argument to
662         dashed-line.
663
664         * lily/bar-line.cc (dashed_bar_line): new function.
665         (compound_barline): support \bar "dashed". 
666
667         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
668         --output=DIR to DIR/BASE if it is a dir. 
669
670         * flower/file-name.cc (file_part): new function
671         (dir_part): new function
672
673         * lily/lily-parser-scheme.cc (LY_DEFINE): 
674
675         * DEDICATION: update
676
677 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
678
679         * lily/instrument-name-engraver.cc: formatting.
680
681         * python/convertrules.py (conv): bugfix for \epsfile.
682
683 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
684
685         * lily/grob.cc:
686         
687         * lily/gourlay-breaking.cc: Oops, these should have been included
688         in my last commit
689
690 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
691
692         * scripts/*.py (program_name): cleanup relocation snippets.
693
694         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
695
696 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
697
698         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
699         page-breakable by default
700
701         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
702         correctly calculated for a single-system page
703
704         * scm/lily-library.scm (interval-sane?): also check that the first number is no
705         bigger than the second number
706
707         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
708         acknowledge that we aren't satisfying constraints)
709
710         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
711         non-Items
712
713         * lily/grob.cc (pure_height): add minimum-Y-extent
714
715         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
716         ragged
717
718         * lily/constrained-breaking.cc: convert code to use new Matrix class
719         (get_best_solution): new function
720
721         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
722         is a page with no systems
723
724 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
725
726         * VERSION (PACKAGE_NAME): release 2.9.13
727
728         * scm/define-grobs.scm (all-grob-descriptions): remove stray
729         assignment.
730
731 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
732
733         * Documentation/topdocs/NEWS.tely (Top): doc new features.
734
735         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
736         function.
737
738         * scm/define-grob-properties.scm (all-user-grob-properties):
739         remove grace-space-factor.
740
741         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
742         grace-spacing-interface
743         (spacing-options-interface): add.
744
745         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
746
747         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
748
749         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
750         GraceSpacing object.
751
752         * lily/note-spacing.cc: fix prop list formatting
753
754         * lily/beaming-pattern.cc (de_grace): new function. Sensible
755         beaming for grace notes too.
756
757         * input/regression/spacing-grace.ly: update.
758
759         * lily/grace-spacing-engraver.cc: new file.
760
761         * lily/spacing-spanner.cc: add strict-grace-spacing.
762
763 2006-07-20  Graham Percival  <gpermus@gmail.com>
764
765         * lily/parser.yy: compile fix.
766
767 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
768
769         * scm/define-grobs.scm (all-grob-descriptions): typo.
770
771         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
772         .eps extension from includegraphics.
773
774         * scripts/lilypond-book.py (main): add support for --pdf. 
775
776         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
777         callback to compute common shortest duration.
778         (set_springs): typo.
779
780         * scm/define-grob-properties.scm (all-user-grob-properties): add
781         strict-grace-spacing.
782
783         * lily/spacing-determine-loose-columns.cc (is_loose_column):
784         support float_grace_columns_.
785
786         * lily/spacing-options.cc (init_from_grob): new file.
787
788         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
789
790         * input/regression/spacing-loose-grace.ly: new file.
791
792         * Documentation/topdocs/NEWS.tely (Top): document new feature.
793
794         * lily/tuplet-engraver.cc (struct Tuplet_description): read
795         tupletFullLengthNote too. Choose right bound depending on value.
796
797         * input/regression/tuplet-full-length-note.ly: new file.
798
799 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
800
801         * lily/*-performer.cc: Converted try_music to listen_*
802
803         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
804         as a stream-event internally. Introduce event_cause (), deprecate
805         music_cause ().
806
807         * scm/define-music-types.scm: Removed BusyPlayingEvent
808         
809 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
810
811         * Documentation/user/advanced-notation.itely (Font selection):
812         Document how to get a list of available fonts using 'lilypond
813         -dshow-available-fonts blabla'.
814
815 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
816
817         * GNUmakefile.in: filter lily-XXX.pdf files.
818
819         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
820
821         * scm/define-grob-properties.scm (all-internal-grob-properties):
822         remove delta-pitch. Use delta-position everywhere.
823
824         * scm/output-lib.scm (fall::print): use new order.
825
826         * scm/output-ps.scm (path): reorder arguments.
827
828         * scm/output-svg.scm (path): support for path primitive.
829
830         * input/regression/bend-after.ly: new file.
831
832         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
833         recipe for eps -> pdf conversion.
834
835 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
836
837         * lily/parser.yy, lily/lexer.ll: added some simplifications by
838         Angelo Contardi.
839
840 2006-07-19  Graham Percival  <gpermus@gmail.com>
841
842         * input/manual/screech-boink.ly: moved to here.
843
844         * input/screech-boink.ly: deleted.
845
846         * scm/define-grob-properties.scm: clarify doc string.
847
848 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
849
850         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
851
852         * scm/output-ps.scm (path): define path.
853
854         * scm/define-stencil-commands.scm
855         (ly:register-stencil-expression): add path.
856
857         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
858
859         * ly/engraver-init.ly: add Fall_engraver
860
861         * lily/parser.yy (music_function_event): allow musicfunction
862         without music arg as music_function_event.
863
864         * lily/grob-scheme.cc (LY_DEFINE):
865         ly:grob-robust-relative-extent. New function.
866
867         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
868
869         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
870
871         * scm/output-lib.scm (fall::print): new function
872
873         * lily/fall-engraver.cc (stop_fall): new file.
874
875         * ly/music-functions-init.ly: alphabetise.
876
877         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
878         base.
879
880 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
881
882         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
883
884         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
885         doc pdftex usage.
886
887         * lily/translator-group.cc (connect_to_context): non const error message.
888
889         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
890
891         * scm/paper.scm (internal-set-paper-size): define landscape to #f
892         if unset.
893
894         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
895
896         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
897
898         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
899         systems.pdftex too.
900
901         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
902
903         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
904
905         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
906
907         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
908
909         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
910
911         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
912
913 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
914
915         * scm/layout-page-layout.scm: Define module, tidy code, use more
916         functions iso. a single big one.
917
918         * scm/layout-page-dump.scm: move page dump functions used in two
919         pass spacing to this file. Define module.
920
921         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
922          (separate module)
923
924         * ly/paper-defaults.ly: use module layout-page-layout.
925
926 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
927
928         * lily/music.cc: Revised MusicEvent event class. It now contains
929         event data directly instead of encapsulating it in music. The
930         previously used class is renamed to OldMusicEvent.
931
932         * lily/stream-event.cc: Stream events are now probs.
933         
934         * lily/translator-group.cc, lily/translator.cc: Translators can
935         now listen directly to stream events, by using macros
936         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
937
938         * lily/arpeggio-engraver.cc: Converted to use new event system
939
940         * THANKS: Corrected spelling mistake.
941
942 2006-07-12  Graham Percival  <gpermus@gmail.com>
943
944         * Documentation/user/SConscript, make/lilypond-vars.make,
945         input/GNUmakefile: doc build looks in input/manual instead
946         of input/test/
947
948         * input/manual/ GNUmakefile, SConscript: build files for
949         input/manual/
950
951         * input/test/ various: some files moved to input/manual/ 
952
953         * Documentation/user/basic-notation.itely: small updates;
954         thanks Kieren and Charles!
955
956 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
957
958         * VERSION (PACKAGE_NAME): release 2.9.11
959
960         * Documentation/topdocs/NEWS.tely (Top): update prop value 
961
962         * Documentation/user/basic-notation.itely (Tuplets): new property
963         value.
964
965 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
966
967         * python/convertrules.py (conv): tweaks. 
968
969         * VERSION (PATCH_LEVEL): bump version.
970
971         * python/convertrules.py (conv): add rule for
972         tupletNumberFormatFunction.
973
974         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
975         tupletNumberFormatFunction.
976
977         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
978         text through 'text callback.
979
980         * lily/time-scaled-music-iterator.cc (construct_children): copy
981         tweaks generated events.
982
983         * scm/define-context-properties.scm
984         (all-user-translation-properties): remove tupletNumberFormatFunction
985
986         * lily/tuplet-engraver.cc (process_music): don't read
987         tupletNumberFormatFunction
988
989         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
990         function.
991
992 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
993
994         * lily/global-context-scheme.cc: Separated ly:run-translator into
995         smaller pieces.
996
997         * lily/score-engraver.cc, lily/score-performer.cc,
998         scm/define-context-properties.scm: Make paper/midi output
999         accessable as a context property.
1000
1001         * lily/score-translator.cc, lily/score-context.cc: Removed.
1002
1003 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1004
1005         * scm/ps-to-png.scm (Module): 
1006         * scm/framework-tex.scm (Module): 
1007         * scm/framework-ps.scm (Module): 
1008         * scm/backend-library.scm (Module): 
1009         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1010         "dDEVICEHEIGHTPOINTS".
1011
1012 2006-07-04  Graham Percival  <gpermus@gmail.com>
1013
1014         * Documentation/user/ various: general improvements to
1015         "working with lilypond files" section.
1016
1017 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1018
1019         * lily/sequential-iterator.cc: Change the default get_music_list
1020         to read elements-callback music property
1021
1022         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1023         processing of multimeasure rests. Softcoded
1024         sequential-music-iterator.
1025
1026         * lily/sequential-music-iterator.cc: Removed.
1027
1028 2006-06-28  Graham Percival  <gpermus@gmail.com>
1029
1030         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1031
1032 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1033
1034         * lily/parser.yy: Wrap non-post-events in EventChords before
1035         assigning them to identifiers.
1036
1037 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1038
1039         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1040         gives correct vertical placement of \bar ":" in all staff
1041         sizes. Thanks Martial!
1042
1043 2006-06-26  Graham Percival  <gpermus@gmail.com>
1044
1045         * Documentation/user/invoking.itely : minor update from mailist.
1046
1047 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1048
1049         * lily/ various: Introduce stream events of types Prepare,
1050         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1051         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1052
1053         * lily/global-context*.cc: Time is now -inf before iteration
1054         starts.
1055
1056         * lily/include/context.hh: Removed unique_, init_
1057
1058         * Documentation/topdocs/NEWS: Make the feathered beam example
1059         avoid triggering a bug.
1060
1061 2006-06-24  Graham Percival  <gpermus@gmail.com>
1062
1063         * Documentation/user/ various: small additions from mailist.
1064
1065 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1066
1067         * ly/performer-init.ly: Add some missing links in the context
1068         hierarchy for MIDI output. There are probably some more missing!
1069
1070 2006-06-21  Graham Percival  <gpermus@gmail.com>
1071
1072         * Documentation/user/ various: minor spelling fixes;
1073         thanks Dave Luttinen!
1074
1075         * Documentation/user/ various: small clarifications;
1076         thanks Anthony Youngman!
1077
1078 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1079
1080         * po/fr.po: add \n appropriately.
1081
1082         * lily/lexer.ll: remove ? from version-seen?  
1083
1084 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1085
1086         * po/fr.po; update translation, by Jean-Charles Malahieude and
1087         John Mandereau.
1088
1089 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1090
1091         * THANKS: add Markus Schneider.
1092
1093         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1094         Staff_symbol_engraver
1095
1096         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1097         replace staff_engraver
1098
1099         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1100         spanner.
1101
1102         * lily/staff-collecting-engraver.cc
1103         (acknowledge_end_staff_symbol): new function
1104
1105         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1106
1107         * lily/staff-collecting-engraver.cc
1108         (acknowledge_end_staff_symbol): new function.
1109
1110         * lily/main.cc: switch on relocation by default.
1111
1112 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1113
1114         * lily/spacing-spanner.cc (musical_column_spacing): set
1115         compound_fixed_note_space to 0.0. Document why.
1116
1117         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1118         range of inverse_hooke_
1119         (Simple_spacer): init completely.
1120         (fits): const
1121         (get_line_configuration): don't use cols.resize(); it introduces
1122         initialized data.
1123
1124         * scm/framework-ps.scm (dump-page): add setstrokeadjust. Backportme.
1125
1126         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1127
1128         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1129         try. Divide by beatlength.
1130
1131         * input/regression/beaming-ternary-metrum.ly: update doc.
1132         add beatLength hack.
1133
1134         * scm/music-functions.scm (make-time-signature-set): add
1135         standard-beat-grouping. 
1136
1137 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1138
1139         * input/regression/tie-whole.ly: new file.
1140
1141         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1142         cross center of note head in case of invisible stem. 
1143
1144 2006-06-16  Graham Percival  <gpermus@gmail.com>
1145
1146         * Documentation/user/ various: small fixes from mailist.
1147
1148 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1149
1150         * lily/breathing-sign.cc (offset_callback): idem.
1151
1152         * lily/align-interface.cc (align_to_fixed_distance): remove
1153         hungarian suffix.
1154
1155         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1156         x%2==0.
1157
1158 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1159
1160         * VERSION (PACKAGE_NAME): release 2.9.9
1161
1162         * ly/lilypond-book-preamble.ly: add \version
1163
1164 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1165
1166         * scripts/lilypond-book.py (PREAMBLE_LY): include
1167         lilypond-book-preamble.ly
1168
1169         * lily/stem.cc (get_beaming): return max of 0 and
1170         scm_ilength. Fixes slurring from/to beams.
1171
1172         * ly/lilypond-book-preamble.ly: new file.
1173
1174         * lily/slur.cc: add inspect-index feature.
1175
1176 2006-06-13  Graham Percival  <gpermus@gmail.com>
1177
1178         * Documentation/user/tutorial.itely: trivial fix.
1179
1180 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1181
1182         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1183         all non-event music in the parser via MAKE_SYNTAX.
1184
1185         * lily/parser-scheme.cc: Add ly:parser-error function
1186
1187         * scm/paper.scm: fix typo
1188
1189 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1190
1191         * THANKS: add RT.
1192
1193         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1194         is null.
1195
1196         * buildscripts/output-distance.py (test_compare_signatures):
1197         timing routines.
1198         (read_signature_file): use new signature format.
1199
1200         * scm/stencil.scm (write-system-signature): simpler signature
1201         format.
1202
1203         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1204         for beamed case. 
1205
1206         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1207         stem_end_position, but estimate instead. 
1208
1209         * lily/tuplet-bracket.cc (calc_positions): look at
1210         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1211         brackets narrower than beams. 
1212
1213         * lily/lexer.ll: set version-seen? even if version is
1214         INVALID. 
1215
1216         * lily/rest.cc (y_offset_callback): bugfix: decide position
1217         override based on scm_is_number(). Fixes \rest on center staff
1218         line. 
1219
1220         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1221         patterns for 16th triplets.
1222
1223 2006-06-10  Graham Percival  <gpermus@gmail.com>
1224
1225         * Documentation/user/ page.itely, global.itely: editing
1226         and reorg.
1227
1228         * Documentation/user/ various: findex -> funindex.
1229
1230 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1231
1232         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1233         insert extra tuplet events.
1234
1235 2006-06-10  Graham Percival  <gpermus@gmail.com>
1236
1237         * Documentation/user/programming-interfaces.itely: add
1238         info from NEWS.
1239
1240         * python/convertrules.py: add annotatefoo -> annotate-foo
1241         rules.
1242
1243         * Documentation/user/global.itely: start editing.
1244
1245         * Documentation/user/page.itely: major editing, new spacing
1246         docs.
1247
1248 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1249
1250         * scm/define-markup-commands.scm (wordwrap-markups): use
1251         output-def 'line-width if undefined.
1252
1253         * HACKING: trim outdated info.
1254
1255 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1256
1257         * scm/define-grobs.scm (all-grob-descriptions): Add
1258         line-spanner-interface to all grobs that already have
1259         text-spanner-interface or dynamic-text-spanner-interface
1260
1261         * scm/page.scm: Rename annotate{headers,systems,page}->
1262         annotate-*
1263
1264         * input/regression/page-spacing.ly,
1265         input/regression/page-layout-manual-position.ly: idem
1266
1267 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1268
1269         * lily/line-spanner.cc: cleanup property list.
1270
1271         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1272         generator expressions (2.3 compat). 
1273
1274 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1275
1276         * lily/vertical-align-engraver.cc: Make sure that the
1277         align{Above,Below}Context properties are included in the automatic
1278         documentation.
1279
1280 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1281
1282         * scm/paper-system.scm (paper-system-annotate): also annotate the
1283         estimated pure-Y-extent
1284
1285         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1286
1287         * lily/system.cc (break_into_pieces): set the estimated height
1288         of each child system
1289
1290         * lily/stem.cc (pure_height): new pure-Y-extent callback
1291
1292         * lily/staff-symbol-referencer.cc (callback): don't destroy
1293         the staff-position property
1294
1295         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1296         consider_suicide into two functions
1297
1298         * lily/constrained-breaking.cc (resize): use the new pure
1299         callbacks to estimate the height of a system
1300
1301         * lily/axis-group-interface.cc (pure_group_height): new
1302         side-effect-free VerticalAxisGroup height-callback
1303
1304         * lily/align-interface.cc (get_extents_aligned_translates):
1305         split align_elements_to_extents into two functions
1306         (get_pure_child_y_translation): new function
1307
1308         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1309
1310         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1311
1312         * lily/paper-score.cc: cache break_indices and columns
1313
1314         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1315         
1316 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1317
1318         * lily/font-config.cc (init_fontconfig): do the init if
1319         cache_file, but don't look at cache_file.
1320
1321         * input/regression/quote-tie.ly: new file.
1322
1323         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1324         to Head_event_tuple, so we deal gracefully with ties on
1325         cue-endings.
1326
1327         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1328         for FcChar8*
1329
1330 2006-06-08  Graham Percival  <gpermus@gmail.com>
1331
1332         * input/test/ smart-transpose.ly, reverse-music.ly:
1333         \applyMusic to music functions update, thanks Michael!
1334
1335 2006-06-07  Graham Percival  <gpermus@gmail.com>
1336
1337         * input/test/ add-staccato.ly, add-text-script.ly,
1338         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1339         music functions update, thanks to Michael Meixner.
1340
1341         * Documentation/user/music-glossary.tely: small fix
1342         from Francisco.
1343
1344         * Documentation/user/ various: minor additions from mailist.
1345
1346         * Documentation/user/lilypond.tely, basic-notation.itely:
1347         small test of @funindex.  (works here)
1348
1349         * input/test/font-table.ly: reduce size to partially
1350         de-ugly version in manual.
1351
1352         * Documentation/user/page.itely: new file (split former
1353         "global issues" into "page settings" and "non-musical
1354         output".
1355
1356         * Documentation/user/ various: fix @ref{}s to match
1357         new chapter names (above).
1358
1359 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1360
1361         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1362
1363 2006-06-06  Graham Percival  <gpermus@gmail.com>
1364
1365         * Documentation/user/advanced-notation.itely: add example
1366         for segno/coda on barline.
1367
1368         * tex/texinfo.tex: merge from upstream.
1369
1370 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1371
1372         * scripts/lilypond-book.py (process_snippets): Argument fix.
1373
1374         * SConstruct:
1375         * buildscripts/builder.py:
1376         * lily/SConscript: 
1377         * mf/SConscript: 
1378         * Documentation/user/SConscript:  More SCons fixes.
1379
1380 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1381
1382         * lily/font-config.cc (init_fontconfig): Only initialize if
1383         global cache_file is found.
1384
1385 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1386
1387         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1388         new \applyOutput.
1389
1390 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1391
1392         * VERSION (PACKAGE_NAME): release 2.9.8
1393
1394         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1395         function. Delay ledger modifying ledgered grobs to
1396         stop_translation_timestep(), to ensure that we're ledgering
1397         according to the new spanner.
1398         (acknowledge_staff_symbol): don't check for non-NULL
1399         staff_sym->get_bound()
1400
1401         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1402         creation.
1403
1404         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1405         pictures too.
1406
1407         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1408         directly from srcdir/stepmake/aclocal.m4
1409         
1410         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1411         disting MISC files.
1412
1413         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1414
1415 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1416
1417         * lily/simple-spacer.cc (get_line_configuration): add
1418         keep-inside-line rods
1419         (struct Column_desc): add constructor
1420         (struct Rod_desc): add constructor
1421         (get_line_forces): check for forced page breaks here too
1422
1423         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1424         support/elements cycles between InstrumentNames and AxisGroups
1425
1426 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1427
1428         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1429
1430         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1431         make-txt-files target.
1432
1433         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1434         make-txt-files target.
1435
1436         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1437
1438         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1439         top-build-dir.
1440
1441 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1442
1443         * Documentation/user/instrument-notation.itely,
1444         input/regression/breathing-sign-ancient.ly,
1445         input/test/divisiones.ly: Removed redundant property settings for
1446         vaticana contexts.
1447
1448         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1449         fix lyrics alignment problems.  They are implemented now as scheme
1450         functions that add the appropriate unicode char to the first lyric
1451         event rather than adding a separate lyric event.  Minor edit of
1452         comments.
1453
1454 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1455
1456         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1457         pollute src dir with built .txt files, but install directly from
1458         Documentation/topdocs/out/
1459
1460         * buildscripts/output-distance.py
1461         (ComparisonData.create_html_result_page): put version/directories
1462         in table header.
1463
1464         * Documentation/topdocs/NEWS.tely (Top): document spacing section
1465         feature.
1466
1467         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
1468         Patch by Karl Hammar
1469         
1470         * buildscripts/readlink.py: add  file.
1471         Patch by Karl Hammar
1472
1473 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1474
1475         * lily/tuplet-number.cc (print): prevent stencil from being
1476         garbage collected.
1477
1478 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1479
1480         * scm/stencil.scm (write-system-signature): explicitly 
1481         -well, superfluously- close output port.
1482
1483         * buildscripts/output-distance.py (main): oops. Add extra argument.
1484
1485 2006-06-05  Graham Percival  <gpermus@gmail.com>
1486
1487         * Documentation/user/music-glossary.tely: clarified example
1488         from Francisco Vila, thanks!
1489
1490 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1491
1492         * input/regression/spacing-section.ly: new file.
1493
1494         * lily/input.cc (programming_error): new function.
1495
1496         * lily/spacing-engraver.cc (try_music): new function. Accept
1497         spacing-section-event
1498
1499         * lily/spacing-spanner.cc (set_springs): take slices of all
1500         columns for spacing.
1501
1502         * lily/include/paper-column.hh (class Paper_column): add
1503         Paper_column::compare.
1504
1505         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
1506
1507         * scm/define-music-types.scm (music-descriptions): add
1508         SpacingSectionEvent
1509
1510         * lily/music-iterator.cc (report_event): use programming_error for
1511         sending non-event error.
1512
1513         * lily/input.cc (programming_error): new function
1514
1515         * buildscripts/output-distance.py (main): use compare-XXX for
1516         compare files.
1517         (main): --threshold option, default at 0.30
1518
1519         * output-distance.py (main): add --threshold option.
1520
1521 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1522
1523         * scm/paper-system.scm (paper-system-annotate): fix problem when
1524         annotating an empty system
1525
1526 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1527
1528         * GNUmakefile.in: reinstate old web tar/copying.
1529
1530 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1531
1532         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
1533         nothing changes. (Erik S) 
1534
1535         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
1536         count. (Erik S)
1537
1538 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1539
1540         * scm/define-markup-commands.scm (whiteout): do not force
1541         foreground color of argument markup to black.
1542
1543         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
1544         the left of the arrow, instead of below the arrow name, so that,
1545         when two little arrows are vertically stacked, their dimensions
1546         and name should not overlap. Add a color key parameter.
1547
1548         * scm/paper-system.scm (paper-system-annotate): Annotate
1549         next-space+next-padding instead of next-space. Annotate space
1550         between next-padding and next-space+padding, respectively, and
1551         following system extent and refpoint-Y-extent. Use colors.
1552
1553         * scm/page.scm (annotate-page): translate annotations slightly to
1554         the right.
1555
1556 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1557
1558         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
1559         fix for x-staff slurs. Thanks Joe!
1560
1561         * buildscripts/output-distance.py
1562         (SystemLink.output_expression_change_count): keep track of changed
1563         details, and dump in details html page.
1564  
1565         * input/regression/figured-bass-staff.ly: add note about setting
1566         properties in Staff context.
1567
1568         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
1569         add slurs and ties to support too.
1570
1571         * buildscripts/output-distance.py (main): set dest_dir
1572         argument. Add --max-count option.
1573
1574 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
1575
1576         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
1577         shortcuts for special unicode chars that are useful in chant
1578         notation.  Revised exisiting and added new comments.
1579
1580 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1581
1582         * make/mutopia-rules.make: remove duplicate recipe.
1583
1584 2006-06-02  Werner Lemberg  <wl@gnu.org>
1585
1586         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
1587         Add support for U+0132 (IJ) and U+0133 (ij).
1588
1589 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1590
1591         * buildscripts/output-distance.py (FileLink): new class. collect
1592         info systems from one .ly file. 
1593         (FileLink.link_files_for_html): further tweaks.
1594
1595 2006-06-02  Graham Percival  <gpermus@gmail.com>
1596
1597         * tex/texinfo.tex: partial fix for @funindex.
1598
1599         * Documentation/user/macros.tely: uncomment @funindex (doesn't
1600         break anything).
1601
1602 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1603
1604         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
1605
1606         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
1607         @example too. Backportme.
1608
1609 2006-06-02  Graham Percival  <gpermus@gmail.com>
1610
1611         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
1612         from Werner Lemberg.
1613
1614 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
1615
1616         * Documentation/user/music-glossary.tely: additional spanish
1617         updates and a lyrics fix in an example.
1618
1619 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
1620
1621         * scm/define-grob-properties.scm: Previous patch contained
1622         spurious line from another patch not yet committed.  Fixed.
1623
1624         * scm/define-grob-properties.scm: Add missing doc strings for
1625         ancient notation.
1626
1627 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1628
1629         * buildscripts/output-distance.py
1630         (ComparisonData.write_text_result_page): separate the scores, sort
1631         by geo_score.
1632
1633         * scm/framework-eps.scm (output-classic-framework): start at 1 for
1634         system signatures.
1635
1636         * buildscripts/output-distance.py (me_path): use argv[0] for
1637         sys.path extension
1638         (ComparisonData.img_cell): use colored borders.
1639
1640         * scm/stencil.scm (write-system-signature): escape newlines too.
1641         (write-system-signature): use (1,-1) interval for empty interval
1642
1643 2006-01-01  Graham Percival  <gpermus@gmail.com>
1644
1645         * Documentation/user/music-glossary.tely: Spanish updates
1646         from Francisco Vila.
1647
1648         * Documentation/user/lilypond-book.itely: addition from
1649         Vaclav Smilauer.
1650
1651         * Documentation/user/ various: edits, small additions
1652         from mailist, etc.
1653
1654 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1655
1656         * GNUmakefile.in (tree-lib-prefix-current):
1657         (tree-share-prefix-current): Use version number in tree, add
1658         `current' symlinks.
1659
1660 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1661
1662         * GNUmakefile.in: write VERSION, again.
1663
1664         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
1665         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
1666
1667         * stepmake/aclocal.m4: robuster version detection.
1668
1669         * buildscripts/output-distance.py
1670         (ComparisonData.create_html_result_page): copy only if file
1671         exists, fixup src paths.
1672
1673         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
1674
1675 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1676
1677         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
1678         Another datarootdir reto.
1679
1680         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
1681         available.  This should be moved to postinstall-lilypond-doc.
1682
1683 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1684
1685         * GNUmakefile.in: simplify local-WWW-post. 
1686         remove -type l from find.
1687
1688         * buildscripts/output-distance.py (ComparisonData.compare_trees):
1689         fixes. Don't follow symlinks.
1690         (ComparisonData.create_html_result_page): remove previous results.
1691         insert ../python in path.
1692
1693         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
1694
1695 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
1696
1697         * config.make.in (datadir): Add datarootdir to silence autoconf.
1698
1699         * stepmake/aclocal.m4: Update for autoconf-2.59d.
1700
1701 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
1702
1703         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
1704
1705         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
1706         slash beams too wide.
1707
1708 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1709
1710         * VERSION: release 2.9.7
1711         
1712 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1713
1714         * lily/relocate.cc (read_relocation_dir): Do not blindly
1715         dereference DIR.
1716
1717 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1718
1719         * lily/parser.yy: replace THIS by PARSER
1720
1721         * Documentation/index.html.in: add link to test-results.html page.
1722
1723         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
1724
1725         * scm/translation-functions.scm (format-bass-figure): translate
1726         digits over 10 to the left
1727
1728         * scm/define-markup-commands.scm (translate-scaled): new markup.
1729
1730         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
1731         7 glyph. 
1732
1733         * ly/engraver-init.ly: add Figured_bass_engraver
1734
1735         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
1736
1737         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
1738
1739         * lily/score-engraver.cc (announce_grob): only note START announces.
1740
1741         * lily/include/engraver-group.hh (Translator_group):
1742         acknowledge_hash_table_ is now drul.
1743
1744         * lily/engraver.cc (announce_end_grob): new method.
1745
1746         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
1747
1748         * lily/translator-dispatch-list.cc (create): take start_end argument.
1749
1750         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
1751         acknowledge_static_array_ to drul
1752
1753         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
1754
1755         * scm/define-grob-interfaces.scm
1756         (bass-figure-alignment-interface): add bass-figure-alignment-interface
1757
1758         * scm/define-grobs.scm (all-grob-descriptions): add
1759         BassFigureAlignmentPositioning
1760
1761         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
1762         number stays up to date. Backportme.
1763
1764 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
1765
1766         * Documentation/user/basic-notation.itely (Bar lines): Document
1767         the "||:" bar type. 
1768
1769 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1770
1771         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
1772
1773         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
1774         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
1775         build.
1776
1777         * Resurrect `scons lily' build.
1778
1779         * SConstruct (symlink_tree): Bugfix: link
1780         music-drawing-routines.ps to file iso directory.
1781
1782         * lily/SConscript: Remove kpath-guile from LIBS.
1783
1784         * SConstruct (libdir_package_version): Typo.
1785         (configure): Comment-out fontforge for lack of fontforge.pc .
1786         Also add libdir* to environment.
1787
1788 2006-05-30  Graham Percival  <gpermus@gmail.com>
1789
1790         * Documentation/user/ various: minor additions from mailist and
1791         editing.
1792
1793 2006-05-30  Paco <fravd@ya.com>
1794
1795         * Documentation/user/music-glossary.tely: numerous corrections and
1796         some new translations.
1797
1798 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
1799
1800         * BackportmeStart.
1801         
1802         * buildscripts/output-distance.py
1803         (ComparisonData.create_html_result_page): new routine: summarise
1804         results in HTML page with images. 
1805         (ComparisonData.create_text_result_page): create summary text files too.
1806
1807         * GNUmakefile.in (web-ext): package .signature files too. They
1808         compress well. 
1809
1810         * scm/stencil.scm (write-system-signature): typo.
1811
1812         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
1813
1814         * scm/stencil.scm (write-system-signature): better escaping.
1815         only write signature for music systems, not for markup systems.
1816
1817         * scm/framework-ps.scm (output-framework): dump-signatures support
1818         for plain output.
1819
1820         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
1821
1822         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
1823         for -dno-point-and-click
1824
1825         * lily/grob.cc (get_print_stencil): don't read
1826         point_and_click_global to determine whether to set grob-cause.
1827
1828 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
1829
1830         * buildscripts/output-distance.py (main): new function.
1831         (ComparisonData): new class.
1832
1833         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
1834         careful with generating new LedgerLineSpanners.
1835
1836         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
1837
1838         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
1839         context. This fixes double ledger lines in output. 
1840
1841         * lily/system.cc (get_paper_system): remove 3 layer limit.
1842
1843         * buildscripts/output-distance.py (SystemLink.distance): new
1844         file. Compare signatures.
1845
1846         * python/safeeval.py (SafeEval.visitUnarySub): new file.
1847
1848         * lily/grob-array.cc (remove_duplicates): rename from
1849         uniq(). Sort before calling uniq() so it actually works.
1850
1851 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1852
1853         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
1854         \version from lilypond file snippet.
1855         (Lilypond_file_snippet.ly): oops. typo.
1856         (find_toplevel_snippets): urgh. again.
1857
1858         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
1859         prevent duplicated broken items in output.
1860
1861         * scm/framework-eps.scm (output-classic-framework): only dump if
1862         dump-signatures is set.
1863
1864         * scm/lily.scm (define-scheme-options): add dump-signatures option.
1865
1866         * scm/stencil.scm (write-system-signature): new routine: write
1867         python parseable signature of a separate paper system.
1868         BackportmeEnd.
1869         
1870 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1871
1872         * lily/stanza-number-engraver.cc (process_music): use is_markup()
1873         iso is_string().
1874         include header.
1875
1876 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
1877
1878         * translator-group.cc: send music events to engravers in
1879         non-bottom contexts.
1880
1881         * tuplet-engraver.cc: process tuplet brackets in correct order.
1882
1883 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1884
1885         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
1886         arg 2 might point us to a new binary (patch by Karl Hammar)
1887         
1888 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1889
1890         * VERSION (PACKAGE_NAME): release 2.9.6
1891
1892         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
1893
1894         * Documentation/user/*.itely: 2nd
1895         attempt: replace funindex -> findex globally.
1896
1897 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1898
1899         * input/no-notation/display-lily-tests.ly: fix \applyOutput
1900         test. Add \break, \pageBreak, \pageTurn, etc, tests.
1901
1902         * scm/define-music-display-methods.scm: display methods for
1903         breaks. Fix \applyOutput.
1904
1905 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1906
1907         * Documentation/user/macros.itexi: comment out funindex expansion. 
1908
1909         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
1910         everywhere.
1911
1912         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
1913         Karl Hammar. Backportme.
1914  
1915         * Documentation/user/advanced-notation.itely (Balloon help): idem.
1916
1917         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
1918
1919         * Documentation/user/programming-interface.itely (Running a
1920         function on all layout objects): idem.
1921
1922         * Documentation/user/introduction.itely (Automated engraving):
1923         update \applyOutput syntax
1924
1925         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
1926         remove debugging hook.
1927
1928         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
1929         expansion. 
1930
1931         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
1932
1933         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
1934         TEXI2DVI_FLAGS to texi2dvi invocation. 
1935
1936 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
1937
1938         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
1939         works. More work is done by iterator now, and engraver has been
1940         very much simplified.
1941
1942         * lily/translator-group.cc: try_music is now invoked through a
1943         listener
1944
1945         * lily/*-iterator.cc: Massive cleanups. Junked
1946         try_music_in_children globally. Renamed try_music to report_event,
1947         and made that method descend to a bottom context automatically.
1948
1949         * lily/event-iterator.cc: New file.
1950
1951         * lily/output-property-iterator.cc,
1952         lily/old-lyric-combine-music-iterator.cc: Removed.
1953
1954         * python/convert-rules.py: Modified the syntax for \applyOutput.
1955
1956 2006-05-23  Graham Percival  <gpermus@gmail.com>
1957
1958         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
1959         creation.
1960
1961         * Documentation/user/ various: stuff that might have helped
1962         to fix the pdf creation, plus some minor doc additions.
1963
1964         * Documentation/user/changing-defaults.itely: remove @b from
1965         @b{ @internasref{foo}}; this breaks texi2dvi -E.
1966
1967 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1968
1969         * lily/beaming-pattern.cc (beamify): deal with negative start
1970         moments for beaming patterns.
1971
1972 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
1973
1974         * lily/beaming-info.cc (beamify): new function: read beatLength
1975         and beatGrouping from context. 
1976
1977         * input/regression/beam-beat-grouping.ly (Module): new file.
1978
1979         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
1980
1981         * lily/beam.cc (get_beam_segments): generate events for
1982         max_connect_ case too.
1983         (get_beam_segments): read Stem::max-beam-connect.
1984
1985         * input/regression/beam-single-stem.ly: new file.
1986
1987         * lily/stem.cc (set_beaming): use #f as signaling value for
1988         beamcount 0.
1989
1990         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
1991
1992         * lily/beam.cc (set_beaming): read clip-edges property.
1993         (calc_direction): don't suicide for single stem.
1994
1995         * lily/beaming-info.cc (best_splitpoint_index): take bool*
1996         argument, remove 1<<15 hack. Remove clip_edges() 
1997
1998         * lily/hairpin.cc (print): only do padding for nonmusical bounds
1999
2000 2006-05-21  Graham Percival  <gpermus@gmail.com>
2001
2002         * Documentation/user/basic-notation.itely: reorg.
2003
2004         * Documentation/user/ various: minor fixes.
2005
2006 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2007
2008         * lily/stencil-expression.cc (register_stencil_head): opps, append
2009         to cdr of static SCM object.
2010
2011 2006-05-19  Graham Percival  <gpermus@gmail.com>
2012
2013         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2014         update framework for command index.  DOC WRITERS: use @funindex
2015         instead of @cindex @code{}.
2016
2017         * Documentation/user/ various: replace @cindex @code{} => @funindex
2018
2019 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2020
2021         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2022         case positions is set manually. 
2023
2024 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2025         
2026         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2027         rules to Scheme.
2028
2029 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2030
2031         * Documentation/user/changing-defaults.itely (Contexts explained):
2032         use absolute dimension for @image.
2033
2034         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2035         out image for illustration too.
2036         ($(outdir)/%.png): add more png <-> eps rules. 
2037
2038 2006-05-17  Graham Percival  <gpermus@gmail.com>
2039
2040         * Documentation/user/ various: remove trailing whitespace, cosmetic
2041         change to reduce changes produced by diff.
2042
2043 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2044
2045         * lily/main.cc (do_chroot_jail): correctness tweak.
2046
2047         * python/lilylib.py (system): import subprocess in system () only.
2048
2049         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2050
2051         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2052         variable. Backportme.
2053
2054 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2055         
2056         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2057
2058 2006-05-17  Werner Lemberg  <wl@gnu.org>
2059
2060         * lily/lexer.ll (init_signature_has_table): Add
2061         `scm-scm-music-music'.
2062
2063         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2064         (Generic_prefix_music_scm): Add rule for it.
2065
2066         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2067         `quoted-transposition' property.
2068
2069         * ly/music-functions-init.ly (transposedCueDuring): New function.
2070
2071         * scm/define-music-properties.scm (all-music-properties): Updated.
2072
2073         * Documenation/topdocs/NEWS.itely: Document it.
2074
2075 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2076
2077         * python/lilylib.py (system): move import subprocess to system()
2078         definition. 
2079
2080         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2081
2082         * VERSION (PATCH_LEVEL): release 2.9.5
2083         
2084         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2085         build instructions. 
2086
2087         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2088
2089 2006-05-16  Graham Percival  <gpermus@gmail.com>
2090
2091         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2092
2093         * Documentation/user/ various: minor fixes.
2094
2095 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2096
2097         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2098
2099 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2100
2101         * Documentation/user/advanced-notation.itely (Instrument names):
2102         Modified obsolete instruction on how to move instrument names away
2103         from the staves. Hmm, at second thought the bug probably has been
2104         solved, so the full bug description should probably be removed.
2105
2106 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2107
2108         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2109         currentCommandColumn. 
2110
2111         * lily/hairpin.cc (print): also add padding for non-neighbor
2112         hairpin bounds.
2113
2114         * scm/define-context-properties.scm
2115         (all-user-translation-properties): add hairpinToBarline
2116
2117         * input/regression/hairpin-to-barline.ly: new file.
2118
2119         * lily/context.cc (internal_send_stream_event): thinko fix.
2120
2121         * lily/tie.cc (set_default_control_points): robustness fix.
2122
2123         * python/musicxml.py (Part.interpret): don't complain about
2124         incomplete measures.
2125
2126         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2127         new music if last_event_chord() returned None.
2128
2129         * python/musicxml.py (Part.interpret): skip back over chord notes.
2130
2131 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2132         
2133         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2134         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2135         lily/slash-repeat-engraver.cc,
2136         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2137         iterator sends PercentEvents
2138
2139         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2140         rework tuplets: send start/stop events to engraver
2141
2142         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2143         dispatchers event-source and events-below to Context
2144         
2145 2006-05-15  Graham Percival  <gpermus@gmail.com>
2146
2147         * Documentation/user/README.txt: update info for doc writers.
2148
2149         * Documentation/user/programming-interface.itely: integrate
2150         Nicolas' fixes for chapter rewrite.
2151
2152         * Documentation/user/ various: minor fixes.
2153
2154 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2155
2156         * lily/clef-engraver.cc: cleanup.
2157
2158         * Documentation/user/GNUmakefile: dist context-example.eps too.
2159
2160         * lily/key-engraver.cc (create_key): use
2161         explicitKeySignatureVisibility for cancellation too. 
2162
2163         * lily/font-config.cc (init_fontconfig): don't close file if
2164         f==NULL. 
2165
2166 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2167
2168         * Documentation/topdocs/NEWS.tely: niente and rotation news
2169
2170 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2171
2172         * lily/include/stencil.hh
2173         * lily/stencil.cc (rotate): new function. Makes it possible
2174         to rotate a stencil around a given offset.
2175
2176         * lily/grob.cc (get_print_stencil): add rotation support
2177
2178         * lily/stencil-interpret.cc (interpret_stencil_expression):
2179         add rotation support
2180
2181         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2182
2183         * scm/define-grob-properties.scm: add 'rotation property
2184
2185         * scm/define-markup-commands.scm: add rotate markup command
2186         
2187         * scm/output-ps.scm: add rotation support in PostScript backend
2188
2189         * scm/output-svg.scm: add rotation support in SVG backend
2190
2191 2006-05-13  Graham Percival  <gpermus@gmail.com>
2192
2193         * Documentation/user/music-glossary.itely: French correction.
2194
2195         * Documentation/user/programming-interface.itely: major
2196         new docs, some reorg, some info from Nicolas.
2197
2198         * Documentation/user/ various: small fixes.
2199
2200 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2201
2202         * Documentation/user/programming-interface.itely (Markup
2203         programmer interface): Remove duplicate text.
2204
2205 2006-05-12  Graham Percival  <gpermus@gmail.com>
2206
2207         * Documentation/user/context-example.eps: new file.
2208
2209         * Documentation/user/changing-defaults.itely: set up file to
2210         use eps image.
2211
2212         * Documentation/user/programming-interface.itely: changes
2213         from mailist.
2214
2215 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2216
2217         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2218
2219 2006-05-11  Graham Percival  <gpermus@gmail.com>
2220
2221         * Documentation/user/programming-interface.itely: first round of
2222         editing and merging emails from Nicolas.
2223
2224         * Documentation/user/scheme-tutorial: minor edit.
2225
2226 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2227
2228         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2229         XML attributes.
2230         (Xml_node.message): use it.
2231
2232         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2233         oops. Add duration argument.
2234
2235 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2236
2237         * lily/paper-column-engraver.cc (make_columns):
2238         * scm/define-grobs.scm: Revert my previous change and set the default
2239         in define-grobs.scm instead.
2240
2241 2006-05-09  Graham Percival  <gpermus@gmail.com>
2242         
2243         * Documentation/user/changing-defaults.itely: general editing,
2244         info about \set and \override.
2245
2246         * Documentation/user/tweaking.itely, advanced-notation.itely:
2247         fixes from Dave Luttinen, thanks!
2248
2249 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2250
2251         * lily/paper-column-engraver.cc (make_columns): By default, a column
2252         needs to be breakable.
2253
2254 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2255
2256         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2257         Attributes methods
2258         (musicxml_time_to_lily): idem
2259         (musicxml_key_to_lily): idem
2260         (instrument_drumtype_dict): dict for supported drumtypes.
2261         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2262         moments and pending mm rests
2263         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2264         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2265         (musicxml_voice_to_lily_voice): add mode change.
2266         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2267         speed and less memory usage (factor 5 to 10).
2268         (convert): write -defs.ly  and driver file separately so people
2269         can script their own part extraction.
2270
2271         * python/musicxml.py (minidom_demarshal_node): new function:
2272         separate minidom handling.
2273         (lxml_demarshal_node): new function: support lxml.etree too.
2274         (Xml_node.message): new function: verbose error message, with XML
2275         path to offending node.
2276         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2277         (Part_list.generate_id_instrument_dict): new method: collect
2278         instrument names, to be able to set drum_type.
2279         (Part.interpret): handle underfull measures
2280         (Part.interpret): assign instrument names.
2281
2282         * python/musicexp.py (Output_printer.close): new method
2283         (MusicWrapper.print_ly): new class: support other modes,
2284         eg. \drummode
2285         (BarCheck.print_ly): new class. Support bar checks, with comments
2286         and fancy barchecks. 
2287         (NoteEvent.__init__): also set drum_type for drum notes.
2288         (MultiMeasureRest.lisp_expression): dump mm rests.
2289
2290         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2291         line-break-permission if forbidBreak is not set.
2292
2293 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2294
2295         * scm/define-context-properties.scm:
2296         * scm/define-grob-properties.scm:
2297         * scm/define-grobs.scm:
2298         * scm/define-music-display-methods.scm:
2299         * scm/define-music-properties.scm:
2300         * scm/define-music-types.scm:
2301         * scm/music-functions.scm:
2302         * ly/declarations-init.ly:
2303         * lily/include/constrained-breaking.hh:
2304         * lily/system.cc:
2305         * lily/spaceable-grob.cc:
2306         * lily/simple-spacer.cc:
2307         * lily/paper-score.cc:
2308         * lily/paper-column.cc:
2309         * lily/paper-column-engraver.cc:
2310         * lily/item.cc:
2311         * lily/gourlay-breaking.cc:
2312         * lily/constrained-breaking.cc:
2313         * python/convertrules.py:
2314         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2315         "page-break-penalty" and "line-break-permission".
2316         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2317         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2318
2319         * lily/bar-engraver.cc:
2320         * lily/beam-engraver.cc:
2321         * lily/forbid-break-engraver.cc:
2322         * lily/ligature-engraver.cc:
2323         * lily/paper-column-engraver.cc:
2324         * lily/percent-repeat-engraver.cc:
2325         * lily/score-engraver.cc:
2326         * lily/score-engraver.hh:
2327         * lily/paper-column-engraver.hh:
2328         Inter-engraver communication regarding line breaks is done through context
2329         properties (Score.forbidBreak) instead of function calls.
2330
2331 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2332
2333         * VERSION (PACKAGE_NAME): release 2.9.4
2334
2335 2006-05-08  Graham Percival  <gpermus@gmail.com>
2336
2337         * Documentation/user/working.itely: proofreading from Dave
2338         Luttinen, thanks.
2339
2340         * Doucmentation/user/README.txt: updated with manual style info.
2341
2342         * Documentation/user/ various: trim linewidth to 78 chars.
2343
2344 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2345
2346         * scm/define-grob-properties.scm (all-internal-grob-properties):
2347         remove chord-tremolo property.
2348
2349         * lily/beam.cc (get_beam_segments): don't use stem position as
2350         base for broken ends.
2351
2352 2006-05-06  Graham Percival  <gpermus@gmail.com>
2353
2354         * Documentation/user/putting.itely: proofreading from Dave
2355         Luttinen, thanks!
2356
2357         * Documentation/user/ various: more reorg and clarifications.
2358
2359 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2360
2361         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2362
2363         * ly/music-functions-init.ly: new function featherDurations
2364
2365         * lily/beam.cc: read grow-direction for feathered beaming.
2366
2367         * Documentation/topdocs/NEWS.tely (Top): typo.
2368
2369 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2370
2371         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2372         tremolo beams.
2373
2374 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2375         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2376         used by music streams.
2377
2378         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2379         lily/stream-event.cc, lily/stream-event-scheme.cc,
2380         lily/listener.cc, lily/scheme-listener.cc,
2381         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2382         lily/include/stream-event.hh, lily/include/listener.hh,
2383         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2384         Created data structures for music streams.
2385         
2386 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2387
2388         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2389         construction of a beam. 
2390         (print): rewrite. 
2391
2392         * flower/include/std-vector.hh (default_compare): use only one comparison.
2393
2394         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2395         (note-by-number): further attachment fixes.
2396
2397         * scm/lily-library.scm (ordered-cons): new function.
2398         (interval-index): new function
2399
2400         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2401
2402         * lily/note-head.cc (get_stem_attachment): new function.
2403
2404         * scm/define-markup-commands.scm (note-by-number): read 'style
2405         property. 
2406
2407         * input/regression/markup-note.ly: show note-head style option.
2408
2409         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2410         triangle head.
2411
2412 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2413
2414         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2415
2416         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2417
2418         * lily/include/constrained-breaking.hh: GCC 4 fix.
2419
2420 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2421
2422         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2423         Replace it with functions get_line_forces and get_line_configuration.
2424         (class Simple_spacer): Make data private.
2425         Rewrite compression algorithm to be faster and simpler.
2426
2427         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2428         * lily/gourlay-breaking.cc (solve):
2429         * lily/constrained_breaking.cc (space_line):
2430         Change it to the new simple-spacer code.
2431
2432         * lily/paper-score.cc (get_paper_systems):
2433         (Paper_score):
2434         (process):
2435         Delay breaking the systems until they are requested.
2436         (find_break_indices):
2437         Use vsize for indices.
2438         (calc_breaking):
2439         Move the "Calculating line breaks" message here.
2440
2441         * lily/system.cc (pre_processing):
2442         Move the "Calculating line breaks" message away from here.
2443         (break_into_pieces):
2444         Allow multiple calls to this function in sequence (with touching-but-
2445         not-overlapping breakpoints).
2446
2447         * lily/constrained-breaking.cc:
2448         Replace most of the get_XXXX functions with get_line_details.
2449         Only calculate the force for each line. Calculate configurations only
2450         for the lines we will actually use.
2451         Replace cols_ with lines_.
2452
2453 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2454
2455         * mf/GNUmakefile (depth): remove FC_FIND.
2456
2457         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2458
2459         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
2460
2461         * scm/framework-ps.scm (write-preamble): new function.
2462         (write-preamble): load mac fonts via fondu, even if gs-font-load
2463         is set.
2464
2465 2006-05-03  Werner Lemberg  <wl@gnu.org>
2466
2467         * mf/GNUmakefile (FC_FIND): Fix typo.
2468
2469 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
2470
2471         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
2472
2473 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2474
2475         * stepmake/aclocal.m4: run python-config for crosscompiling
2476         flags. 
2477
2478         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
2479         -f png for HTML, TEXINFO formats. 
2480
2481         * input/tutorial/lbook-html-test.html: new file.
2482
2483         * lily/include/tie-formatting-problem.hh (class
2484         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
2485         [column, direction]. This fixes laissez vibrer ties.
2486  
2487         * flower/include/tuple.hh (struct Tuple2): new file.
2488
2489         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
2490         $(FCMATCH), only if $(NCSB_DIR) not set. 
2491
2492         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
2493
2494         * config.make.in (DOCUMENTATION): set FCMATCH.  
2495
2496         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
2497
2498 2006-05-03  Graham Percival  <gpermus@gmail.com>
2499
2500         * Documentation/user/ various: final round of reorg.
2501
2502         * Documentation/user/instrument-notation.itely: some more
2503         fixes from Eduardo, thanks!
2504
2505 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2506
2507         * VERSION (PACKAGE_NAME): release 2.9.3
2508
2509         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
2510
2511         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
2512
2513 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
2514
2515         * scm/define-grob-properties.scm (all-user-grob-properties):
2516         Correct typo, thanks to Eduardo.
2517
2518 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2519
2520         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
2521
2522         * buildscripts/lilypond-words.py (F): indent fix.
2523
2524         * input/regression/tie-arpeggio-collision.ly: new file.
2525
2526         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
2527         function: store outlines per column rank.
2528
2529         * lily/include/tie-configuration.hh (class Tie_configuration): add
2530         column_ranks_ to specification and configuration, to distinguish
2531         between ties for different heads in arpegiated chords.
2532
2533         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
2534
2535         * *.py: more 4 space indents.
2536
2537         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
2538
2539 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
2540
2541         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
2542
2543 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2544
2545         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
2546
2547         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
2548
2549         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
2550
2551 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2552
2553         * python/convertrules.py (conv): indent 4 for python files.
2554
2555 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
2556
2557         * Documentation/user/changing-defaults.itely (Creating contexts):
2558         Clarify \new semantics.
2559
2560 2006-04-28  Graham Percival  <gpermus@gmail.com>
2561
2562         * Documentation/user/ various: major new sections in the
2563         Learning manual, slight reorg elsewhere.
2564
2565 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2566
2567         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
2568
2569         * scm/framework-ps.scm (output-framework): remove PageMedia
2570
2571 2006-04-27  Graham Percival  <gpermus@gmail.com>
2572
2573         * Documentation/user/ tweaks.itely, working.itely: new
2574         files, being more advanced "learning manual" chapters.
2575
2576         * Documentation/user/ tutorial, putting, lilypond: reorg.
2577
2578 2006-04-26  Graham Percival  <gpermus@gmail.com>
2579
2580         * input/regression/lyric-combine-polyphonic.ly: fixed test
2581         (no more "can't find context `one'" error).
2582
2583 2006-04-25  Joe Neeman <joeneeman@gmail.com>
2584
2585         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
2586
2587         * input/regression/stem-tremolo.ly: add 2 more whole note examples
2588         
2589 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2590
2591         * lily/relocate.cc (read_relocation_dir): new function.
2592
2593 2006-04-26  Graham Percival  <gpermus@gmail.com>
2594
2595         * Documentation/user/instrument-notation.itely: a few more fixes
2596         from Eduardo, thanks!
2597
2598         * Documentation/user/README.txt: new file; contains info on
2599         style that used to be in lilypond.tely.
2600
2601         * Documentation/user/ various: first round of doc reorg.
2602
2603         * Documentation/user/baer-flat-bw.png: remove alpha bit from
2604         graphic; this probably causes problems on some pdf
2605         viewers, notably Adobe Acrobat.
2606
2607 2006-04-24  Graham Percival  <gpermus@gmail.com>
2608
2609         * Documentation/user/instrument-notation.itely: many alterations
2610         to Vocal music, from Eduardo Viera.
2611
2612 2006-04-23  Graham Percival  <gpermus@gmail.com>
2613
2614         * Documentation/user/instrument-notation.itely: fix \new
2615         instead of \context problem.
2616
2617 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2618
2619         * lily/relocate.cc (expand_environment_variables): new function.
2620         (read_line): id.
2621         (read_relocation_file): id.
2622
2623         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
2624
2625 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
2626
2627         * ly/engraver-init.ly: remove old comments from TabVoice
2628
2629 2006-04-20  Graham Percival  <gpermus@gmail.com>
2630
2631         * Documentation/user/instrument-notation.itely: added Erlend's
2632         latest doc patch, thanks!
2633
2634 2006-04-19  Erlend Aasland <erlenda@gmail.com>
2635
2636         * lily/include/slur.hh:
2637         * lily/slur.cc:
2638         * lily/phrasing-slur-engraver.cc:
2639         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
2640         acknowledge_extra_object () from Phrasing_slur_engraver:: and
2641         Slur_engraver:: and putting it in
2642         Slur::auxiliary_acknowledge_extra_object ().
2643
2644         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
2645
2646         * lily/note-collision.cc: fix a comment
2647
2648 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2649
2650         * stepmake/bin/add-html-footer.py: fix footer position in
2651         generated html files: before </body> and </html> tags.
2652
2653 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2654
2655         * scripts/GNUmakefile: revert last "fix", which rather broke make.
2656         Earlier successive `make' commands finally compiled ok.
2657
2658         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
2659
2660 2006-04-18  Erlend Aasland <erlenda@gmail.com>
2661
2662         * lily/include/stem-tremolo.hh:
2663         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
2664         callers.
2665
2666         * lily/lookup.cc:
2667         * lily/include/lookup.hh: add rotated_box ()
2668
2669 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2670
2671         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
2672         been generated. Fixes "can't get `--help'" bug after make clean.
2673
2674         * THANKS: alphabetize contributors.
2675
2676 2006-04-17  Graham Percival  <gpermus@gmail.com>
2677
2678         * Documentation/user/instrument-notation.itely: added Erlend's
2679         tabs and banjo doc patch.  Thanks!
2680
2681 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
2682
2683         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
2684
2685         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
2686
2687         * scm/output-lib.scm: add some more predefined string tunings.
2688
2689         * Documentation/user/instrument-notation.itely: and doc them.
2690
2691 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
2692
2693         * ly/engraver.ly: Remove obsolete comments.
2694
2695         * ly/gregorian-init.ly: Define default layout block.
2696
2697         * input/puer-fragment.ly: Updated and extended.
2698
2699 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2700
2701         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
2702         pdf conversion behaviour.
2703
2704         * flower/file-name.cc (dir_name)
2705         (get_working_directory): Move from relocate.cc.
2706
2707         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
2708         
2709         * lily/relocate.cc: Encapsulate sys/stat.h in
2710         HAVE_STAT_H.
2711
2712 2006-04-14  Graham Percival  <gpermus@gmail.com>
2713
2714         * Documentation/user/ various: small updates from Cameron
2715         and Juergen, thanks!
2716
2717         * Documentation/user/ various: small updates of my own.
2718
2719         * THANKS: 2.7 -> 2.8.
2720
2721 2006-04-11  Graham Percival  <gpermus@gmail.com>
2722
2723         * scm/define-context-properties.scm: typo.
2724
2725         * Documentation/user/ : many more small updates.
2726
2727 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
2728
2729         * scm/define-music-types.scm: disposed "docme".
2730
2731 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
2732
2733         * lily/hairpin.cc: make niente circles a bit smaller.
2734
2735 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
2736
2737         * mf/GNUmakefile: remove redundant mftrace check. Also remove
2738         get-pfa and get-*-fonts targets.
2739
2740 2006-04-10  Graham Percival  <gpermus@gmail.com>
2741
2742         * THANKS, Documentation/user/ basic-notation, advanced-notation,
2743         music-glossary, programming-interface: more minor fixes
2744         from mailist.
2745
2746         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
2747
2748         * scm/define-context-properties.scm: another old \property update.
2749         This time tested for compiling!
2750
2751 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
2752
2753         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
2754
2755 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2756
2757         * scm/define-context-properties.scm (all-user-translation-properties): 
2758         * Documentation/user/global.itely (Page formatting): Compile fix.
2759
2760 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
2761
2762         * Documentation/user/advanced-notation.itely (Polymetric
2763         notation): Update the example to use the "+" symbol and add link
2764         to input/test/compound-time.ly.
2765
2766 2006-04-08  Graham Percival  <gpermus@gmail.com>
2767
2768         * scm/define-grob-properties.scm: clarify docs for #'direction.
2769
2770         * scm/define-context-properties.scm: update old \property override.
2771
2772         * Documentation/user/ advanced-notation, global, lilypond-book:
2773         more minor doc updates.
2774
2775 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2776
2777         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
2778
2779         * scm/backend-library.scm (search-gs): oops.
2780
2781 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2782
2783         * scripts/lilypond-book.py (output): use base, not filename for href.
2784
2785         * scm/backend-library.scm: only look for gs.
2786
2787         * scripts/lilypond-book.py (output): fix printfilename.
2788
2789         * lily/parser.yy (music_function_musicless_prefix): fold together
2790         definitions of signature (SCM*) (Music|post_event|chord_body_element)
2791
2792         * lily/slur.cc (print): only set font-size if not set yet.
2793
2794         * lily/slur-configuration.cc (add_score): improved layout of debug
2795         scoring output.
2796
2797 2006-04-05  David Feuer  <David.Feuer@gmail.com>
2798
2799         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
2800         (draw_circle): Hopefully fixed regression.
2801         Improved documentation for several procedures.
2802         
2803 2006-03-04  Werner Lemberg  <wl@gnu.org>
2804
2805         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
2806
2807 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2808
2809         * scripts/musicxml2ly.py (bindir): add dynamic
2810         relocation. 
2811
2812 2006-04-04  Graham Percival  <gpermus@gmail.com>
2813
2814         * Documentation/user/ basic-notation, advanced-notation, putting,
2815         instrument-notation, invoking, lilypond, THANKS: another ream of small
2816         fixes from the Doc Helpers.
2817
2818 2006-04-03  David Feuer  <David.Feuer@gmail.com>
2819
2820         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
2821
2822         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
2823
2824         * Cleaned up interfaces between PostScript and Scheme, and moved
2825         computations from PostScript to Scheme:
2826
2827         * music-drawing-routines.ps
2828         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
2829         with stroke_and_fill throughout.
2830         (euclidean_length, print_letter, draw_box): Deleted unused
2831         procedures.  If someone needs draw_box, implement it using
2832         draw_round_box; don't duplicate code.
2833         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
2834         Refactored/cleaned up interfaces.
2835         (mark_URI): Moved.
2836
2837         * output-ps.scm: reordered arguments to PostScript functions to
2838         match new interfaces
2839         (glyph-string): Rewrote glyph-string.
2840         (grob-cause): Replaced string-append with format.
2841         (repeat-slash): Rewrote to do computation here.
2842         (round-filled-box): Rewrote to do computation here.
2843
2844 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
2845
2846         * stepmake/stepmake/generic-targets.make: add cvs-clean target
2847
2848         * stepmake/stepmake/toplevel- targets.make: print help info about
2849         cvs-clean
2850
2851 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
2852
2853         * input/regression/hairpin-circled.ly: new file
2854
2855 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
2856
2857         * lily/hairpin.cc (print): add support for circled tip
2858
2859         * scm/define-grob-properties.scm: add circled-tip parameter
2860
2861         * scm/define-grobs.scm: init circled-tip to false
2862         
2863 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2864
2865         * scm/music-functions.scm (quote-substitute): set
2866         iterators-ctor. 
2867
2868 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2869
2870         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
2871         BSTINPUTS. 
2872
2873         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
2874
2875         * scm/output-ps.scm (glyph-string): revert cid selectfont.
2876
2877 2006-03-31  David Feuer  <david.feuer@gmail.com>
2878         
2879         * scm/framework-ps.scm:
2880         
2881         * scm/output-ps.scm: glyph-string now produces smaller, more
2882         readable, and probably faster PostScript.  Several findfont
2883         scalefont setfont instances changed to selectfont
2884         Hacked-up string-appends changed to formats.
2885
2886         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
2887         
2888 2006-03-30  Graham Percival  <gpermus@gmail.com>
2889
2890         * scm/lily-library.scm: make "no version" warning message more polite.
2891
2892         * lily/music.cc: add double quotes to failed octave check.
2893
2894         * Documentation/user/ advanced-notation, changing-defaults,
2895         instrument-notation, invoking, music-glossary: whole bunch of minor
2896         fixes from mailist.
2897
2898 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2899
2900         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
2901         $(buildscriptdir) iso. depth.
2902
2903         * VERSION (PACKAGE_NAME): release 2.9.1
2904
2905 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2906
2907         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
2908
2909         * VERSION (PATCH_LEVEL): bump version number.
2910
2911         * flower/include/guile-compatibility.hh (scm_from_uint32): add
2912         scm_from_uint32 ()
2913
2914         * lily/pango-font.cc (pango_item_string_stencil): use
2915         scm_from_uint32 ()
2916
2917         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
2918         $(outdir)/emmentaler-%.svg): remove canary.
2919
2920         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
2921         glyphnames if we have a ttf font.
2922
2923 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
2924
2925         * Documentation/user/advanced-notation.itely (Font selection):
2926         Corrected reference to the font-family-override.ly example.
2927
2928 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
2929         
2930         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
2931         stem-tremolo object in the stem (or else the stem might not be
2932         long enough).
2933
2934 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2935
2936         * lily/ttf.cc (print_trailer): only print existing glyphs.
2937
2938 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
2939
2940         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
2941         position the tremolo based on the position of the notehead.
2942
2943         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
2944         notes and update the texidoc line with the new positioning rules.
2945         
2946 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2947
2948         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
2949
2950         * scripts/lilypond-book.py (Module): set default for linewidth if
2951         preamble not found.
2952
2953 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2954
2955         * VERSION (PACKAGE_NAME): release 2.9.0.
2956
2957         * input/regression/stem-tremolo-position.ly: new file.
2958
2959         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
2960
2961 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
2962
2963         * lily/stem-tremolo.cc (print): position
2964         the tremolo depending only on the end of the stem
2965         and not on the notehead
2966         (raw_stencil): center, on the middle staff line, the
2967         flag that is closest to the end of the stem (previously
2968         the bottom flag)
2969         (calc_width): add this callback to shorten a tremolo when
2970         it is beamed or it is stemup with a flag
2971         (style): add this callback to make a tremolo rectangular when
2972         it is beamed or it is stemup with a flag
2973         (rotated_box): this is like Lookup::beam but makes a rotated
2974         rectangle instead of a parallelogram
2975
2976         * lily/stem.cc (calc_stem_info): make sure the stem
2977         is long enough to fit the tremolo
2978         (calc-length): reduce the length of tremolo stems since the
2979         tremolo code is now capable of better positioning
2980
2981         * scm/define-grobs.scm: make calc_width the default beam-width
2982         callback for stem-tremolo and add the style callback
2983                 
2984 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2985
2986         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
2987         case. 
2988
2989 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2990
2991         * lily/ttf.cc (make_index_to_charcode_map): restore old
2992         cmap. 
2993
2994 2006-03-28  Werner Lemberg  <wl@gnu.org>
2995
2996         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
2997
2998 2006-03-28  Graham Percival  <gpermus@gmail.com>
2999
3000         * THANKS: update for 2.9, add section for Documentation helpers.
3001
3002         * Documentation/topdocs/NEWS.tely: compile fix.
3003
3004         * Documentation/user/ basic-notation, global, advanced-notation,
3005         examples.itely: minor fixes from mailist.
3006
3007 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3008
3009         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3010         note heads. 
3011
3012         * lily/ttf.cc (print_trailer): use it.
3013
3014         * lily/pango-font.cc (get_unicode_name): new function.
3015
3016         * lily/ttf.cc (make_index_to_charcode_map): move function from
3017         open-type-font.cc
3018         (print_trailer): substitute uniXXXX name if applicable. 
3019
3020         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3021         (pango_item_string_stencil): use it to generate uniXXXX names.
3022
3023         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3024         note heads, for uniform widths in shape note output.
3025         (overdone_heads): hmm. remove them again.
3026
3027         * scripts/lilypond-book.py (output): add links to filenames.
3028
3029         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3030
3031         * lily/note-collision.cc (get_clash_groups): only consider when
3032         Note_column::dir <> CENTER. 
3033
3034         * scripts/lilypond-book.py (get_option_parser): init output_name
3035         to ''. 
3036
3037 2006-03-24  Graham Percival  <gpermus@gmail.com>
3038
3039         * Documentation/topdocs/NEWS.tely: add @end itemize
3040
3041         * Documentation/user/ global, advanced-notation: minor
3042         stuff from mailist.
3043
3044 2006-03-23  Graham Percival  <gpermus@gmail.com>
3045
3046         * Documentation/user/ lilypond.tely, music-glossary,
3047         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3048
3049 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3050
3051         * mf/GNUmakefile: don't install .enc files.
3052
3053         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3054
3055         * VERSION (PATCH_LEVEL): bump to 2.9.0
3056
3057 2006-03-22  Graham Percival  <gpermus@gmail.com>
3058
3059         * Documentation/user/advanced-notation.itely: minor fixes
3060         from mailist.
3061
3062 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3063
3064         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3065
3066         * branch lilypond_2_8
3067
3068 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3069
3070         * scripts/lilypond-book.py (samefile): new function, for windoze
3071         compatibility.
3072
3073 2006-03-21  Graham Percival  <gpermus@gmail.com>
3074
3075         * ly/engraver-init.ly: add info about StaffGroup.
3076
3077 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3078
3079         * input/regression/stem-direction-context.ly: idem.
3080
3081         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3082
3083         * THANKS: add Mats.
3084
3085         * input/regression/page-layout-twopass.ly: comment out \markup so
3086         tweak-file is left.
3087
3088         * lily/instrument-name-engraver.cc (finalize): add to instrument
3089         name global System. This also fixes chopped instrument names, but
3090         doesn't crash when there are slurs/beams.
3091
3092         * lily/slur-configuration.cc (add_score): disallow negative slur
3093         scores.
3094         
3095 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3096
3097         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3098
3099         * lily/instrument-name-engraver.cc (process_music): kludge: add
3100         InstrumentName spanner to axis group of left bound. Fixes chopped
3101         off instrument names in EPS images.
3102
3103         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3104
3105         * scripts/abc2ly.py (option_parser): update to 2.7.40
3106
3107 2006-03-20  Graham Percival  <gpermus@gmail.com>
3108
3109         * THANKS: move small doc contributors to SUGGESTIONS.
3110
3111         * Documentation/user/ basic-notation, advanced-notation,
3112         global: small changes from mailist.
3113
3114 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3115
3116         * Documentation/user/advanced-notation.itely (Text marks): update
3117         for new rehearsalMarkAlignSymbol convention.
3118
3119         * VERSION (PATCH_LEVEL): bump version.
3120
3121         * input/test/instrument-name-align.ly: new file.
3122
3123         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3124
3125         * input/test/instrument-name-align.ly: new file. Document how to
3126         align instrument names.
3127
3128         * lily/mark-engraver.cc: remove properties.
3129
3130         * scm/define-context-properties.scm
3131         (all-user-translation-properties): remove align symbol properties
3132         for barnumber/reh. mark.
3133
3134         * lily/break-align-interface.cc (self_align_callback): new
3135         interface, new function. Look at complete alignment. This handles
3136         tunable break alignments in case break-align-symbols are missing.
3137
3138         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3139
3140         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3141
3142         * python/convertrules.py (conv): mark/bar number alignment rule.
3143
3144         * lily/break-align-interface.cc (calc_positioning_done): also
3145         store offset from last visible break-alignment to its
3146         neighbor. This makes alignment on non-visible objects more reliable.
3147
3148         * po/lilypond.pot (Module): ran po-replace.
3149
3150         * input/regression/tie-single-manual.ly (Module): new file.
3151
3152         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3153         look at has_manual_position_.
3154         (from_ties): set has_manual_position_ if tie has staff-position set.
3155
3156         * lily/tuplet-bracket.cc (calc_positions): idem.
3157
3158         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3159         doesn't span time.
3160
3161 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3162
3163         * scm/define-markup-commands.scm (smallCaps): new markup command
3164         for turning a text to small caps using smaller font size and upper
3165         casing.
3166
3167 2006-03-17  Graham Percival  <gpermus@gmail.com>
3168
3169         * Documentation/user/ examples, instrument-notation,
3170         advnaced-notation: minor fixes from mailist.
3171
3172 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3173
3174         * Documentation/user/tutorial.itely (First steps): change example
3175         to verbatim.  
3176
3177 2006-03-17  Graham Percival  <gpermus@gmail.com>
3178
3179         * Documentation/user/ examples, advanced: minor changes from mailist.
3180
3181         * THANKS: add Geoff Horton, for documentation stuff.
3182
3183 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3184
3185         * python/lilylib.py (system): revert have_select kludge.
3186
3187         * Documentation/user/tutorial.itely (Commenting input files):
3188         update version numbers in doc. 
3189
3190         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3191         bound-padding to multi-measure-interface
3192
3193 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3194
3195         * input/test/engraver-example.ily: update version number.
3196
3197         * VERSION (PACKAGE_NAME): release 2.7.39
3198
3199         * lily/note-spacing.cc (get_spacing): heighten threshold where
3200         accidentals/arpeggios influence previous spacing fully.
3201
3202         * lily/rest.cc (y_offset_callback): only use direction if
3203         staff-position wasn't set before.
3204
3205         * lily/bar-number-engraver.cc: add support for
3206         barNumberAlignSymbol. 
3207         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3208
3209         * lily/pointer-group-interface.cc (set_ordered): new function. 
3210         (add_unordered_grob): new function.
3211
3212         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3213         to ordered, unless the opposite has been proved.  This fixes
3214         random reordering of large object groups across linebreaks,
3215         eg. beams.
3216
3217         * lily/main.cc (do_chroot_jail): printf format fix.
3218
3219         * lily/tie-formatting-problem.cc (generate_configuration):
3220         multiply y-shift for dot with direction.
3221  
3222         * scm/define-markup-commands.scm (note-by-number): put (magstep
3223         size) in y-attach too.
3224
3225         * Documentation/topdocs/NEWS.tely (Top): show override.
3226
3227         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3228         direction for stems.
3229         
3230 2006-03-15  Graham Percival  <gpermus@gmail.com>
3231
3232         * Documentation/user/ changing-defaults, global: minor
3233         fixes from mailist.
3234
3235 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3236
3237         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3238
3239         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3240         breakable items after uniformly stretched notes.
3241
3242         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3243         outline with outer edge of note heads. This prevents infinity
3244         problems with tied whole notes.
3245
3246         * scripts/lilypond-book.py (do_file): use os.popen
3247
3248         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3249
3250 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3251
3252         * Documentation/user/invoking.itely: Add ragged-right to bug report
3253         guidelines.
3254
3255 2006-03-14  Graham Percival  <gpermus@gmail.com>
3256
3257         * Documentation/user/global.itely: small fix from mailist.
3258
3259 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3260
3261         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3262         file descriptor returned by tempfile.mkstemp() when writing
3263         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3264         on mingw.
3265
3266 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3267
3268         * po/fi.po: newline bugfix.
3269
3270 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3271
3272         * scm/paper.scm (paper-alist): Rounding fixes.
3273
3274 2006-03-13  Graham Percival  <gpermus@gmail.com>
3275
3276         * Documentation/user/ changing-defaults, instrument-notation,
3277         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3278
3279 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3280
3281         * po/fi.po: update.
3282
3283 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3284
3285         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3286         mailto: to http:// 
3287
3288         * python/lilylib.py (print_environment): move ps_page_count to
3289         lilypond-book.py
3290
3291 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3292
3293         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3294
3295         * scm/framework-ps.scm (embed-document): new function. Use to
3296         embed PFA files.
3297
3298         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3299
3300 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3301
3302         * Documentation/user/instrument-notation.itely (Setting simple
3303         songs): Added \book{...} around the full example, so the separate
3304         markups are included in the printed example. 
3305
3306 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3307
3308         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3309         tmphandle.
3310
3311         * python/lilylib.py (system): rewrite system() using
3312         subprocess. Remove >& redirection trickery.
3313
3314 2006-03-11  Graham Percival  <gpermus@gmail.com>
3315
3316         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3317         notation-appendices.itely: minor fixes from mailist.
3318
3319 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3320
3321         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3322         unsplit man also needs images.
3323
3324         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3325
3326         * VERSION (PACKAGE_NAME): 2.7.38 released.
3327
3328 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3329
3330         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3331         log in output dir.
3332
3333 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3334
3335         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3336         respects the Score.skipTypesetting property.
3337         
3338 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3339
3340         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3341         Prolog. No %%EOF after CFF file.
3342
3343 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3344         
3345         * lily/constrained-breaking.cc (get_max_systems): used to return a
3346         much too big value
3347         (combine_demerits): use pointers to reduce copying data
3348         (calc_subproblem): idem
3349         (get_page_penalty): add page turn penalties
3350         
3351 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3352
3353         * Documentation/user/invoking.itely (Invoking lilypond): better
3354         explanation of -e usage.
3355
3356         * lily/main.cc (main_with_guile): don't append to
3357         init_scheme_code_string
3358
3359         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3360
3361         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3362
3363         * scripts/convert-ly.py (do_options): don't print help for
3364         --show-rules rule.
3365
3366         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3367         @code and @example. Update from texinfo.tex from CVS.
3368
3369 2006-03-08  Graham Percival  <gpermus@gmail.com>
3370
3371         * Documentation/user/scheme-tutorial.itely: clarifies distances
3372         measured in staff-spaces.
3373
3374 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3375
3376         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3377         consider[k] is true.
3378
3379         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3380
3381         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3382         consider columns that have originals.  Unifies spacing for mm
3383         rests around line breaks.
3384
3385         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3386         (set_text_rods): idem.
3387         (calculate_spacing_rods): new function: share code between
3388         set_text_rods and set_spacing_rods.
3389         (set_text_rods): take extents of bounds into account.  
3390
3391 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3392
3393         * Documentation/user/basic-notation.itely (Writing music in
3394         parallel): don't use relative.
3395
3396 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3397
3398         * ly/music-functions-init.ly (Module): add shiftDurations
3399
3400         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3401
3402         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3403
3404         * ly/engraver-init.ly: init vocalName to nil.
3405
3406 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3407
3408         * scm/music-functions.scm (music->make-music): bugfix,
3409         KeyChangeEvents are now handled correctly.
3410
3411         * scripts/lilypond-book.py: Add --debug option.
3412
3413 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3414
3415         * python/lilylib.py: add tempfile.
3416
3417 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3418
3419         * VERSION (PACKAGE_NAME): release 2.7.37
3420
3421         * python/lilylib.py (ps_page_count): remove make_ps_images().
3422         (ps_page_count): remove mkdir_p
3423         (system): remove cleanup_temp.
3424         (exit): remove lilypond_version_(check)
3425         (error_log): remove pseudo_filter_p
3426         remove read_pipe
3427         remove cp_to_dir
3428         remove identify
3429
3430         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3431         use __main__
3432
3433         * lily/accidental-engraver.cc (make_standard_accidental): only add
3434         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3435
3436         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3437         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3438         Make incompatibilities.
3439
3440         * scm/output-ps.scm (grob-cause): replace backslashes by /
3441         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3442
3443 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3444
3445         * cygwin/GNUmakefile: Install fixes.
3446
3447         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3448
3449         * lily/note-head.cc (head::get_balltype): Compile fix.
3450
3451         * flower/file-name.cc (dos_to_posix): Flower string fix.
3452
3453 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3454
3455         * python/lilylib.py: pychecker cleanups.
3456
3457         * scripts/lilypond-book.py
3458         (Lilypond_snippet.output_print_filename): pychecker cleanups
3459
3460         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
3461
3462         * python/lilylib.py (underscore): remove identify() , warranty()
3463
3464         * ps/music-drawing-routines.ps: change Border routine for GSView
3465         compatibility.
3466
3467         * lily/stem.cc (height): use quantize-positions.  This triggers
3468         set_stem_lengths, so scripts on beamed stems are handled correctly.
3469
3470         * lily/side-position-interface.cc (aligned_side): check if edges
3471         of script are inside staff. Fixes accent of edge of the staff.
3472
3473         * input/regression/staccato-pos.ly: more examples.
3474
3475         * stepmake/aclocal.m4 (depth): fix bashism.
3476
3477         * lily/lyric-combine-music-iterator.cc: move from
3478         new-lyric-combine-iterator.cc
3479         (process): add pending_grace_lyric_ member to delay lyrics on
3480         grace notes.
3481
3482         * lily/system-start-text.cc (print): suicide if we don't have any
3483         elements. Fixes hara kiri'd instrument names.
3484
3485         * scripts/mup2ly.py (Module): remove.
3486
3487 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3488
3489         * Documentation/user/global.itely (A single music expression):
3490         close @lilypond properly
3491
3492         * lily/volta-bracket.cc (modify_edge_height): change from
3493         after_line_breaking_callback. Suicide last bracket if appropriate.
3494  
3495         * python/lilylib.py: strip getopt support
3496
3497         * scripts/etf2ly.py (do_options): use optparse
3498
3499         * scripts/midi2ly.py: optparse, strip lilylib copy. 
3500
3501         * scripts/abc2ly.py (voices): use optparse.
3502
3503         * stepmake/stepmake/generic-vars.make: new function absdir.
3504
3505         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
3506
3507         * scripts/lilypond-book.py (find_file): use global_options for
3508         include path
3509
3510         * scm/ps-to-png.scm (ps-page-count): prevent null characters
3511         entering C code.
3512
3513 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3514
3515         * python/lilylib.py (get_global_option): ughness for extracting
3516         global options from lilylib.
3517         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
3518
3519         * scripts/lilypond-book.py (get_option_parser): use optparse for
3520         option handling.  Put options in global_options variable.
3521
3522 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
3523
3524         * Documentation/index.html.in: clarify.
3525
3526 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3527
3528         * scm/layout-page-layout.scm (write-page-breaks): add a
3529         music-system-heights property to the page layout output.
3530
3531         * scm/page.scm (make-page-stencil): take footer into account when
3532         computing the 'space-left page property
3533         (annotate-space-left): take footer into account when annonating
3534         space left.
3535
3536 2006-02-28  Graham Percival  <gpermus@gmail.com>
3537
3538         * Documentation/user/ advanced-notation, global: more (final)
3539         docs for music expressions, removed special fermatas.
3540
3541 2006-02-27  Graham Percival  <gpermus@gmail.com>
3542
3543         * Documentation/user/ basic-notation, global: minor changes
3544         from mailist.
3545
3546 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3547
3548         * scm/framework-ps.scm:         
3549         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
3550         layer for inf? and nan? from framework-ps to lily-library.
3551
3552 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3553
3554         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
3555         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
3556
3557         * buildscripts/substitute-encoding.py (Module): remove file.
3558
3559         * mf/GNUmakefile: more PFA strippage.
3560
3561         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
3562
3563         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
3564         generation
3565
3566         * scm/framework-ps.scm: remove font name munging.
3567
3568         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
3569
3570 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3571
3572         * scm/markup.scm (define-markup-command): change
3573         def-markup-command to define-markup-command
3574
3575         * scm/music-functions.scm (define-music-function): change
3576         def-music-function to define-music-function.
3577
3578         * python/convertrules.py (conv): rules for def-music-function
3579         and def-markup-commands
3580
3581         * Documentation/user/programming-interface.itely,
3582         input/no-notation/display-lily-tests.ly,
3583         input/regression/lily-in-scheme.ly,
3584         input/regression/markup-user.ly,
3585         input/regression/music-function.ly, input/regression/tie-chord.ly,
3586         scm/fret-diagrams.scm, ly/music-functions-init.ly,
3587         ly/gregorian-init.ly: use new macro names (define-music-function,
3588         define-markup-command).
3589
3590 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3591
3592         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
3593         (output): add comments to lp-book latex output.
3594
3595         * GNUmakefile.in (footifymail): use gmane address for webpage bug
3596         address.
3597
3598 2006-02-23  Graham Percival  <gpermus@gmail.com>
3599
3600         * Documentation/user/ tutorial, global: minor changes.
3601
3602 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3603
3604         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
3605         blocks (for make 3.80)
3606
3607         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
3608         \notemode so that user should not have to explicitely type it.
3609
3610         * scm/define-music-display-methods.scm: various
3611         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
3612         constructs)
3613
3614         * input/no-notation/display-lily-tests.ly: new tests for
3615         \applyOutput and \applyContext
3616
3617 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3618
3619         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
3620         changed it slightly so that the number of systems returned by
3621         solve () will be the same as the last value passed to resize
3622         (). I've also added more documentation, removed casts, fixed style
3623         problems and put in some recovery if constraints aren't satisfied."
3624
3625 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
3626
3627         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
3628         for emacs < 22 compatibility.
3629         (count-rexp): Use it.
3630         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
3631         substring juggling (Milan Zamazal).
3632
3633 2006-02-23  Graham Percival  <gpermus@gmail.com>
3634
3635         * Documentation/user/ basic-notation, advanced-notation,
3636         global.itely, invoking.itely, tutorial,itely:
3637         minor fixes from mailist.
3638
3639         * scm/define-markup-commands.scm: improve docs of \filled-box.
3640
3641 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
3642
3643         * Documentation/index.html.in: changes concern the previous release.
3644
3645         * input/regression/+.ly: cultivate typographical terminology.
3646
3647 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3648
3649         * scm/define-grob-interfaces.scm (parentheses-interface): add
3650         padding to parentheses-interface.
3651
3652         * Documentation/user/GNUmakefile: remove $(CROSS) support from
3653         Documentation/user/GNUmakefile. Use --disable-documentation for that.
3654
3655         * VERSION (PATCH_LEVEL): release 2.7.36
3656
3657         * lily/slur.cc: add avoid-slur (ugh.)
3658         
3659         * lily/slur-configuration.cc (fit_factor): oops, skip point if
3660         intersection gets smaller. This fixes slurs over extreme points.
3661
3662         * lily/melody-engraver.cc (stop_translation_timestep): ignore
3663         stems with neutral-direction set.
3664
3665         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
3666
3667         * lily/open-type-font.cc (load_table): format error.
3668
3669         * lily/change-iterator.cc (process): format fix.
3670
3671         * flower/include/international.hh (_f): idem.
3672
3673         * flower/include/std-string.hh: add format printf attribute.
3674
3675         * scm/define-grobs.scm (all-grob-descriptions): height of all
3676         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
3677
3678         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
3679         ambitus lines.
3680
3681         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
3682
3683 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
3684
3685         * input/regression/: upgraded syntax for some files.
3686
3687         * THANKS: Add bughunters.
3688
3689 2006-02-22  Graham Percival  <gpermus@gmail.com>
3690
3691         * Documentation/user/ invoking.itely, advanced-notation.itely,
3692         global.itely: long-awaited "let's make chapter 10 not suck"
3693         update.  Rearrange chapter 10; now called "global issues",
3694         addresses file structure, etc.  Some info from other files
3695         moved into global.itely.
3696
3697 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3698
3699         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
3700         catch trill-span-event notes.
3701
3702         * Documentation/user/examples.itely (Ancient notation templates): typo.
3703         (Jazz combo): typo.
3704
3705         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
3706
3707         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
3708
3709         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
3710
3711         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
3712
3713         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
3714         froum Laissez_vibrer_engraver.
3715
3716         * ly/declarations-init.ly (repeatTie): add \repeatTie
3717
3718         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
3719
3720         * scm/define-grob-properties.scm (all-user-grob-properties): add
3721         head-direction property.
3722
3723         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
3724         from_lv_ties. Take head direction argument.
3725
3726         * lily/semi-tie-column.cc: rename from
3727         laissez-vibrer-tie-column.cc. Rename class too.
3728
3729         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
3730         class too.
3731
3732         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
3733
3734         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
3735         0 case.
3736         (find_breaks): idem.
3737
3738 2006-02-21  Graham Percival  <gpermus@gmail.com>
3739
3740         * Documentation/user/advanced-notation.itely: fixed make-moment]
3741         example.
3742
3743         * Documentation/user/basic-notation.itely: more clarification to
3744         transpose.
3745
3746 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3747
3748         * lily/include/constrained-breaking.hh (class
3749         Constrained_breaking): new file.
3750
3751         * lily/constrained-breaking.cc (resize): new file.
3752
3753         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
3754
3755         * Documentation/user/advanced-notation.itely (Clusters): insert
3756         end ignore too.
3757
3758         * lily/tie-column.cc (calc_positioning_done): support for
3759         tie-score debugging
3760
3761         * lily/tie-formatting-problem.cc
3762         (generate_extremal_tie_variations): factor out.
3763         (score_ties_configuration): annotate all tie 
3764         (print_ties_configuration): new routine.
3765         (generate_configuration): nudge extremal ties outside of the head
3766         Y extents.
3767         (score_ties_configuration): oops. convert to staff-space before
3768         determining position symmetry.
3769
3770 2006-02-20  Graham Percival  <gpermus@gmail.com>
3771
3772         * Documentation/user/*-notation.itely: misc minor editing,
3773         shifting doc sections around.
3774
3775         * Documentation/user/*-notation-itely, global.itely,
3776         changing-defaults.itely: added new stuff from NEWS.
3777
3778 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
3779
3780         * po/fi.po: update.
3781
3782 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3783
3784         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
3785         lilypond --verbose for lp-book.
3786
3787         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3788         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
3789
3790         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
3791         $(buildscript-dir) iso. absolute depth.
3792
3793         * buildscripts/genicon.py (dir): thinko.
3794
3795         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
3796
3797 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
3798
3799         * scm/output-lib.scm: swap darkcyan/darkyellow
3800
3801         * THANKS: Add bughunters.
3802
3803 2006-02-19  Graham Percival  <gpermus@gmail.com>
3804
3805         * Documentation/user/programming-interfaces.itely: fixed example.
3806
3807         * Documentation/user/instrument-notation.itely: fix @{ @}.
3808
3809         * scm/script.scm: add avoid-slur for \open.
3810
3811 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3812
3813         * lily/tie-formatting-problem.cc (score_configuration): use
3814         sliding score for min-length. 
3815
3816         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
3817         spaghetti for icons.
3818
3819         * buildscripts/genicon.py (program_name): new file.
3820
3821         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
3822         in outline too.  
3823         (generate_configuration): for small ties, also look for collisions
3824         at Y + DIR*h + DELTA_Y.
3825         (get_variations): consider variation for dot positions too.
3826
3827         * lily/side-position-interface.cc (aligned_side): take abs for
3828         quantized rounded position. Fixes tenuto below staff.
3829
3830         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
3831         markers when necessary.
3832
3833         * lily/program-option.cc (internal_set_option): add
3834         strict_infinity_checking option.
3835
3836         * scm/output-lib.scm (cyan): swap yellow and cyan.
3837
3838 2006-02-19  Graham Percival  <gpermus@gmail.com>
3839
3840         * darwin.patch: trivial linenumber update.
3841
3842         * Documentation/user/ {various}: `\context foo = named' changed
3843         to `\new foo = "name"' in docs.
3844
3845 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3846
3847         * scm/stencil.scm (annotate-y-interval): use it.
3848
3849         * scm/lily-library.scm (interval-sane?): new function.
3850
3851         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
3852         tfm_checksum stuff.
3853
3854         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
3855         common refpoint.
3856
3857         * flower/include/std-vector.hh (iterof): add iterof macro.
3858
3859         * lily/enclosing-bracket.cc (width): new function.
3860
3861         * lily/align-interface.cc (align_elements_to_extents): reinstate
3862         warning.
3863
3864 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
3865
3866         * Documentation/index.html.in: fix spelling: thankyous.
3867
3868 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3869
3870         * lily/lyric-hyphen.cc: typo.
3871
3872 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3873
3874         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
3875         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
3876         builds don't work. 
3877
3878         * VERSION: release 2.7.35
3879
3880         * lily/beam.cc (get_default_dir): oops. Take abs () for
3881         extremes[DOWN].
3882         (get_default_dir): use extreme position criterion only in absence
3883         of forced stem directions.
3884
3885         * VERSION (PATCH_LEVEL): bump VERSION.
3886
3887         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
3888         dependencies. Necessary for -jX builds.  
3889
3890 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
3891
3892         * lily/relocate.cc (setup_paths): Yet another const fix.
3893
3894 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3895
3896         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
3897
3898         * lily/relocate.cc (setup_paths): oops.
3899
3900 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
3901
3902         * Documentation/index.html.in: order links: html before PDF.
3903
3904 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3905
3906         * lily/tie-column-format.cc (Module): remove.
3907
3908         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
3909
3910         * lily/text-spanner.cc (print): idem.
3911
3912         * lily/dynamic-text-spanner.cc (print): only print line if longer
3913         than dash-period.
3914
3915         * lily/auto-change-iterator.cc (change_to): formatting.
3916
3917         * lily/beam.cc (get_default_dir): take extreme note head as input
3918         for stem direction.
3919
3920         * lily/tie.cc (get_default_dir): only look directions for visible
3921         stems. 
3922
3923         * lily/side-position-interface.cc (aligned_side): oops. Don't
3924         mutiply with direction. This fixes quantized (staccato, tenuto)
3925         scripts below notes.
3926
3927         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
3928         direction. Fixes c-lyrics-center-align.ly
3929
3930 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3931
3932         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
3933         constructor.
3934
3935         * lily/std-string.cc:
3936         * lily/include/std-vector.hh (split_string): Move and rename from
3937         lily/include/misc.hh, lily/misc.cc.  Update callers.
3938
3939 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3940
3941         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
3942
3943 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3944
3945         * flower/test-file.cc: New file.
3946
3947         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
3948         libraries.
3949
3950         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
3951
3952 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3953
3954         * flower/include/file-storage.hh: remove file.
3955
3956         * lily/include/midi-item.hh (class Midi_track): idem.
3957
3958         * lily/include/source.hh (class Sources): idem.
3959
3960         * lily/include/performance.hh (class Performance): use vector
3961         iso. Cons<>
3962
3963         * flower/include/cons.hh (class Cons): remove file.
3964
3965         * flower/include/flower-proto.hh: remove template cruft.
3966
3967         * lily/include/font-metric.hh: use size_t not vsize for indices.
3968
3969         * flower/include/flower-proto.hh (Module): remove std-vector.hh
3970         from proto.
3971
3972         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
3973
3974         * lily/include/paper-book.hh (class Paper_book):
3975         make get_system_specs() public.
3976
3977         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
3978         the force=10000 case if we don't have a current-best. 
3979
3980         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
3981         vsize 
3982
3983         * flower/include/flower-proto.hh: remove outdated templates.
3984
3985         * scm/page.scm: use annotate-spacing
3986
3987 2006-02-15  Graham Percival  <gpermus@gmail.com>
3988
3989         * scm/translation-functions.scm: circle patch from Erlend, thanks!
3990
3991         * THANKS: moved Erlend Aasland to contributors.
3992
3993 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3994
3995         * config.hh.in: remove HAVE_PANGO_16
3996
3997         * lily/tuplet-bracket.cc (calc_positions): multiply with
3998         staff-space for beam case. This fixes tuplets+beams on scaled
3999         staves.
4000
4001         * config.hh.in: remove all Kpathsea related defines.
4002
4003         * lily/dot-column.cc (side_position): reach stem via dots->
4004         head->stem. Inspect all stems for dot collisions. 
4005
4006         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4007         stem handling.
4008
4009         * lily/bar-number-engraver.cc (process_music): document function
4010         of whichBar.
4011
4012         * lily/score.cc (default_rendering): add pscore, not systems
4013         themselves.
4014
4015         * lily/paper-book.cc (get_system_specs): separate generation of
4016         titles and systems.
4017
4018         * flower/include/std-vector.hh: don't include config.hh
4019
4020 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4021
4022         * flower/include/std-vector.hh: Better wrapper compatibility with
4023         std::vector.
4024
4025         * flower/include/flower-proto.hh: Remove cheap forward declaration
4026         attempts.
4027
4028         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4029
4030 2006-02-14  Graham Percival  <gpermus@gmail.com>
4031
4032         * Documentation/user/invoking.itely: add warning about command line.
4033
4034 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4035
4036         * lily/include/lily-proto.hh: add Prob, rm Page.
4037
4038         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4039
4040         * VERSION: release 2.7.34
4041
4042         * lily/relocate.cc (framework_relocation): show canary if
4043         GHOSTSCRIPT_VERSION undefined.
4044
4045         * GNUmakefile.in: remove $(VERSION) symlink.
4046
4047         * lily/relocate.cc (setup_paths): add + 
4048
4049 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4050
4051         * Documentation/index.html.in: specify sizes for all big HTML pages.
4052
4053 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4054
4055         * config.hh.in: remove @FRAMEWORKDIR@
4056
4057         * lily/system-start-text.cc (get_stencil): new file: separate out
4058         system-start-delimiter text support.
4059
4060         * input/**ly: replace \context with \new where appropriate.
4061         
4062         * THANKS: add Don.
4063
4064         * lily/slur-scoring.cc (get_base_attachments): use
4065         robust_relative_extent. This fixes problems with empty paper-columns. 
4066
4067 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4068
4069         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4070
4071         * scm/define-music-properties.scm (all-music-properties):
4072         create-new property.
4073
4074         * lily/context-specced-music-iterator.cc (construct_children):
4075         inspect 'create-new property iso. magical $uniqueContextId context
4076         id.
4077
4078         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4079
4080         * lily/context-key-manager.cc (Module): new file. Encapsulate
4081         object key generation.
4082
4083         * lily/include/context-key-manager.hh (Module): new file.
4084
4085 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4086
4087         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4088         names vertically
4089
4090         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4091         options.
4092         (reloc_b): excise --enable-framework-dir
4093
4094         * lily/relocate.cc (framework_relocation): use getenv
4095         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4096
4097 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4098
4099         * flower/include/std-string.hh: 
4100         * flower/include/std-vector.hh: Finish std:: conversion; move
4101         flower extensions from std:: namespace.  Update users.
4102
4103         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4104         their expansion to vector<*>.  Update users.
4105
4106 2006-02-10  Graham Percival  <gpermus@gmail.com>
4107
4108         * Documentation/user/invoking.itely: add example to File structure.
4109
4110         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4111         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4112
4113 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4114
4115         * ly/paper-defaults.ly: typo.
4116
4117         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4118         set_parent() for parentheses. This will make it show up in bbox
4119         calculations.
4120
4121         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4122         ly:grob-common* functions.
4123
4124         * lily/grob-scheme.cc (LY_DEFINE):
4125         ly:grob-common-refpoint-of-array: new function 
4126         ly:grob-common-refpoint: new function 
4127         ly:grob-relative-coordinate: new function 
4128
4129         * lily/instrument-name-engraver.cc (process_music): use
4130         Text_interface::is_markup(). This fixes \markup on instrument names.  
4131
4132         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4133         for ties and slurs.
4134
4135         * lily/slur.cc (print): idem.
4136
4137         * lily/tie.cc: add line-thickness for ties. 
4138
4139 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4140
4141         * scm/output-svg.scm: Document diversion from GNU coding standards
4142         as a workaround for a bug in Microsoft Internet Explorer.
4143
4144 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4145
4146         * lily/instrument-name-engraver.cc (process_music): use
4147         is_markup() iso. is_string()
4148
4149         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4150
4151         * lily/percent-repeat-engraver.cc (process_music): only look at
4152         main_part_ for % repeats.
4153
4154         * lily/stem-tremolo.cc (get_beam_translation): new function.
4155         (calc_slope): new function.
4156         (height): don't use real slope.
4157
4158 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4159
4160         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4161         new connect-to-neighbor, control-points and staff-padding
4162         properties to make ligature brackets showing up again.
4163
4164 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4165
4166         * VERSION: release 2.7.33
4167
4168         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4169         too many.
4170
4171         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4172         remove applyOutput example.
4173         (Objects connected to the input): document \tweak, \parenthesize
4174
4175         * lily/relocate.cc (prefix_relocation): allow "current"
4176         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4177         changing VERSION in a lily tree less painful.
4178
4179         * input/regression/parenthesize.ly: new file. 
4180
4181         * scm/output-lib.scm (parenthesize-element): new function.
4182
4183         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4184
4185         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4186
4187         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4188         cause: accidentals are caused by note heads, not note events. 
4189
4190 2006-02-08  Graham Percival  <gpermus@gmail.com>
4191
4192         * darwin.patch: small patch from Erlend, thanks!
4193
4194         * Documentation/user/basic-notation.itely: add stem-neutral example.
4195
4196         * Documentation/user/putting.itely: clarifications.
4197
4198 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4199
4200         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4201         note, add more guidelines to what should go into NEWS.
4202
4203         * input/sakura-sakura.ly: document how to override font.
4204
4205         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4206
4207 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4208
4209         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4210
4211 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4212
4213         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4214         convertrules.  Add explicit grouping, needed for python2.2.
4215
4216 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4217
4218         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4219
4220 2006-02-07  Graham Percival  <gpermus@gmail.com>
4221
4222         * Documentation/user/global.itely: fix line-width in (text) docs.
4223
4224         * Documentation/user/lilypond-book.itely: same.
4225
4226 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4227
4228         * VERSION (PACKAGE_NAME): release 2.7.32
4229
4230         * Documentation/topdocs/NEWS.tely (Top): document new variable
4231         naming.
4232
4233         * flower/include/array.icc (Message): remove file.
4234
4235         * flower/include/std-vector.hh: make sure vsize and VPOS are
4236         defined for binary_search_bounds().
4237
4238         * flower/std-string.cc (std): add to_string(long unsigned).
4239
4240         * configure.in (gui_b): excise std_string option.
4241         (gui_b): excise std_vector option.
4242
4243         * flower/string.cc (Module): excise flower array & string
4244
4245         * flower/include/std-string.hh: excise flower string.
4246
4247         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4248
4249         * python/convertrules.py (lilypond_version_re_str): require
4250         only numbers and dots in \version string.
4251
4252 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4253
4254         * lily/system-start-delimiter.cc (print): allow style = text too.
4255
4256         * lily/system-start-delimiter-engraver.cc
4257         (acknowledge_system_start_text): new function, also add add to
4258         support of system-start-text (instrument names). This fixes
4259         instrument names on piano staves.
4260
4261         * lily/instrument-name-engraver.cc: rewrite. Use
4262         system-start-delimiter approach. This save memory and cpu.
4263
4264         * scm/define-grobs.scm (all-grob-descriptions): remove
4265         instrument-name from break-alignment.
4266
4267         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4268
4269 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4270
4271         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4272         jobserver going.
4273
4274         * configure.in (std_vector): On by default.
4275
4276         * lily/include/font-metric.hh:
4277         * lily/include/tfm-reader.hh: 
4278         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4279         Update users.
4280
4281         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4282
4283 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4284
4285         * VERSION (PACKAGE_NAME): 2.7.31
4286
4287         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4288         EPS edge at 0, but take minimum with left-overshoot. This fixes
4289         cut off system start delims. 
4290
4291         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4292         hack: add to axis group if not added yet. This fixes hara kiri'd
4293         piano staves.
4294
4295         * lily/hara-kiri-group-spanner.cc
4296         (force_hara_kiri_in_y_parent_callback): fix signatures.
4297
4298         * lily/hairpin.cc (print): check next hairpin to see whether or
4299         not to be continuing.
4300
4301 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4302
4303         * Remove trailing whitespace from makefiles.
4304         
4305         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4306         for earlier gcc.
4307
4308         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4309
4310         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4311
4312         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4313
4314         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4315
4316         * configure.in: Use it.
4317
4318 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4319
4320         * scm/music-functions.scm (pitch-of-note): new function.
4321
4322         * ly/music-functions-init.ly: add \octave and \addquote
4323
4324         * lily/parser.yy (music_function_chord_body): softcode \octave.
4325         (lilypond_header): softcode \addquote
4326
4327 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4328
4329         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4330         array.hh, parray.hh at all.  Getting ready to flip the
4331         configure default.
4332
4333         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4334
4335         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4336         a bit.
4337
4338         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4339
4340 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4341
4342         * flower/include/array.hh: typo. 
4343
4344 2006-02-02  Graham Percival  <gpermus@gmail.com>
4345
4346         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4347
4348 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4349
4350         * flower/include/pqueue.hh: Derive from std::vector.
4351
4352         * flower/include/parray.hh: Conform to std::vector interface.
4353         Update users.
4354
4355 2006-02-02  Graham Percival  <gpermus@gmail.com>
4356
4357         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4358
4359 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4360
4361         * flower/file-path.cc (is_file): remove if 0 section.
4362
4363         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4364         selecting afii61352.
4365
4366 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4367
4368         * flower/include/std-vector.hh (boundary): Oops, reverse.
4369
4370         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4371         remove superfluous `d'.
4372
4373         * flower/include/std-vector.hh (boundary, top): Detach from class.
4374         Remove empty vector shell.
4375
4376         * flower/include/array.hh (reverse, swap): Detach from class.
4377         Update users.
4378         
4379         * flower/include/std-vector.hh
4380         * flower/include/array.hh (concat): Globally change to insert ().
4381
4382         
4383         * flower/include/std-vector.hh
4384         * flower/include/parray.hh
4385         * flower/include/array.hh (elem, elem_ref): Globally replace by
4386         at ().
4387
4388 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4389
4390         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4391
4392         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4393         anticipate on identifier substitutions.
4394
4395 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4396
4397         * flower/include/std-vector.hh (insert): Remove, replace by
4398         std::vector interface.  Update callers.
4399
4400         * flower/include/array.icc (insert): Change signature to
4401         match std::vector interface.
4402         
4403         * flower/include/array.icc (vector_sort): Bugfix.
4404
4405 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4406
4407         * lily/parser.yy (output_def_head_with_mode_switch): new
4408         production. Result: dashes and underscores may be used in the
4409         \paper block.
4410
4411         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4412
4413         * python/convertrules.py (conv): oops. One slash too much.
4414
4415 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4416
4417         * flower/include/std-vector.hh (sort): Remove, replace by
4418         ::vector_sort.  Update callers.
4419
4420         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4421         (sort): Bugfix.
4422
4423         * flower/test-std.cc (vector_sort): New test.
4424
4425 2006-02-01  Graham Percival  <gpermus@gmail.com>
4426
4427         * Documentation/user/putting.itely: fixes from Erik.
4428
4429 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4430
4431         * flower/test-std.cc: Add simple unit test for vector migration.
4432
4433         * stepmake/stepmake/test*: Unit test support.
4434
4435         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4436         update callers.
4437
4438         * flower/include/array.hh (begin, end): Add.
4439         (del, get): Remove.
4440
4441 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4442
4443         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4444         std::string not String. 
4445
4446         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4447         iso UINT_MAX.
4448
4449         * lily/prob.cc (Prob): copy type_ too.
4450
4451         * lily/lily-guile.cc (mangle_cxx_identifier): new
4452         function. Class_bla::foo_bar_[px] ->
4453         ly:class-bla::foo-bar[?!]. Changes throughout
4454
4455 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4456
4457         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4458
4459         * lily/beam.cc (calc_direction): take dir from visible stem in
4460         degenerate case.
4461
4462 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4463
4464         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
4465         Fix -1, >=0 boundary checks for unsigned vsize.
4466
4467         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
4468         loop for unsigned vsize.
4469
4470         * configure.in (--enable-std-vector): New option.
4471         (--enable-std-string): On by default.
4472
4473         * flower/include/std-vector.hh: New file.  Enable switch to
4474         std::vector, update client code.
4475
4476 2006-01-30  Graham Percival  <gpermus@gmail.com>
4477
4478         * scm/document-translation.scm: clarify "this context is also
4479         known as".  Thanks, Werner!
4480
4481         * Documentation/user/putting.itely: small fixes from Don Blaheta.
4482
4483         * Documentation/user/invoking.itely: small fix from Don.
4484
4485 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4486
4487         * scm/lily.scm (define-scheme-options): rename option
4488         preview-include-book-title to book-title-preview
4489         (define-scheme-options): move force-eps-font-include (from paper
4490         block) to eps-font-include -d option.
4491
4492         * VERSION (PATCH_LEVEL): release 2.7.30
4493
4494         * input/bach-schenker.ly (staffPiano): new file.
4495
4496         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
4497
4498         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
4499         credits to Nicolas.
4500
4501         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
4502
4503         * ps/lilyponddefs.ps: remove start-system, stop-system,
4504         start-page fluff. This saves putting { } code on the stack, fixing
4505         stack overflows when including EPS files.
4506
4507 2006-01-29  Graham Percival  <gpermus@gmail.com>
4508
4509         * Documentation/user/putting.itely: minor fixes (comments on -devel).
4510
4511 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4512
4513         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
4514
4515 2006-01-28  Graham Percival  <gpermus@gmail.com>
4516
4517         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
4518
4519 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4520
4521         * input/mutopia/claop.py: Update.
4522
4523 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4524
4525         * input/regression/completion-heads.ly (texidoc): fix.
4526
4527         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
4528
4529         * lily/tie-formatting-problem.cc
4530         (set_ties_config_standard_directions): use abs iso fabs for ints.
4531
4532         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
4533
4534         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
4535         little less than noteheight, to prevent overlaps in chords.
4536
4537         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
4538         head, and fudge stem-attachment.
4539
4540         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
4541
4542         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
4543
4544 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
4545
4546         * lily/main.cc (main): Debugging aid: catch exceptions.
4547
4548         * flower/std-string.cc (to_string): Robustification.  Fixes midi
4549         output with std::string.
4550
4551 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4552
4553         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
4554
4555 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4556
4557         * Fix -DSTRING_UTILS_INLINED.
4558
4559 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4560
4561         * VERSION (PATCH_LEVEL): release 2.7.29
4562
4563         * lily/relocate.cc (setup_paths): mingw uses std string too.
4564
4565         * lily/*.cc: various fixes for substr(ARG).
4566
4567         * lily/sustain-pedal.cc (print): 
4568
4569         * flower/file-name.cc (slashify): use std strings.
4570
4571         * flower/string-convert.cc: remove publib.h
4572
4573         * scm/define-markup-commands.scm (verbatim-file): new markup
4574         command \verbatim-file
4575
4576         * Documentation/topdocs/NEWS.tely: fixup URLs
4577
4578         * input/regression/alignment-vertical-manual-setting.ly (Module):
4579         new file.
4580
4581         * lily/align-interface.cc (align_elements_to_extents): overwrite
4582         translations with numbers in alignment-offsets from left bound
4583
4584         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
4585         (page-translate-systems): new function: take into account Y-offset.
4586
4587         * Documentation/topdocs/NEWS.tely (Top): document new features.
4588
4589         * input/regression/page-layout-manual-position.ly (Module): new
4590         file.
4591
4592 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4593
4594         * flower/file-path.cc (path::parse_path): Oops.
4595
4596         * Finish std::string interface.  For now, use std:: marker
4597         throughout for easy s/r.
4598
4599 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4600
4601         * Documentation/user/putting.itely (Score is a single musical
4602         expression): typo.
4603         (Score is a single musical expression): more typos.
4604
4605         * scm/page.scm (annotate-space-left): thinko.
4606         (annotate-page): more thinkos.
4607
4608 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4609
4610         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
4611         for different \score blocks separately.
4612         (post-process-pages): put write-page-layout into paper block.
4613
4614         * lily/output-def.cc (get_parser): new file.
4615
4616         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
4617         file.
4618
4619         * lily/include/output-def.hh (class Output_def): add parser_ member.
4620
4621         * input/regression/page-layout-twopass.ly (Module): new file.
4622
4623         * scm/lily.scm: remove cpp hack.
4624
4625         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
4626
4627 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4628
4629         * GNUmakefile.in (c-clean): New target.
4630
4631         * flower/include/std-string.hh: String/std::string compatibility:
4632         Use NPOS for `not found' (iso -1), use ssize for length () and pos
4633         type.
4634
4635         * flower/rational.cc: 
4636         * flower/include/rational.hh: 
4637
4638         * flower/offset.cc: 
4639         * flower/include/offset.hh: 
4640
4641         * flower/interval.cc: 
4642         * flower/include/interval.hh: 
4643
4644         * flower/string-convert.cc: 
4645         * flower/include/string-convert.hh: Use std::string [interface].
4646         Update callers.
4647
4648 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
4649
4650         * Documentation/index.html.in: clean up.
4651
4652 2006-01-25  Graham Percival  <gpermus@gmail.com>
4653
4654         * Documentation/user/putting.itely: another new untested doc section.
4655
4656 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4657
4658         * scm/layout-page-layout.scm (write-page-breaks): write
4659         \spacingTweaks #ALIST. Handle grace timing.
4660
4661         * scm/: more imports.
4662
4663         * scm/page.scm (make-page): add footer/header.
4664         (annotate-space-left): revise: only take page argument.
4665         (layout->page-init): new function.
4666
4667         * scm/layout-page-layout.scm (write-page-breaks): preliminary
4668         version of the system/spacing/linebreak hack writing to the output
4669
4670         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
4671         ly:make-prob.
4672
4673         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
4674         ly:spanner-bound
4675
4676 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4677
4678         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
4679
4680         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
4681
4682         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
4683         handling to page.scm
4684
4685         * lily/prob-scheme.cc (LY_DEFINE): new file.
4686         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
4687
4688         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
4689         prob functions.
4690
4691         * lily/music.cc (derived_mark): derive Music from Prob.
4692
4693         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
4694
4695         * lily/prob.cc (Module): Implement Prob (Property Object), object
4696         with shared and r/w property alists.  
4697
4698         * lily/include/prob.hh (Module): new file. Declare Prob.
4699
4700         * flower/string.cc: remove is_empty().
4701
4702         * flower/include/string.hh (class String): remove String:: qualifier.
4703
4704         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
4705         substitute appropriate functions.
4706
4707         * flower/include/string.hh (class String): remove to_str0 and
4708         is_empty(). S&R everywhere.
4709
4710 2006-01-23  Graham Percival  <gpermus@gmail.com>
4711
4712         * Documentation/user/basic-notation.itely: add hairpin
4713         after-linebreak tweak to commonprop.
4714
4715         * Documentation/user/putting.itely: added two new sections.
4716
4717 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4718
4719         * flower/international.cc: 
4720         * flower/include/international.hh: 
4721
4722         * flower/getopt-long.cc: 
4723         * flower/include/getopt-long.hh: Use std::string [interface].
4724         Update callers.
4725
4726         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
4727
4728         * stepmake/stepmake/executable-rules.make: Add dependency on
4729         module libraries.
4730
4731 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
4732
4733         * flower/file-path.cc: 
4734         * flower/include/file-path.hh: Use std::string [interface].
4735         Update callers.
4736
4737         * flower/direction.cc: 
4738         * flower/axis.cc: Unused.  Remove.
4739
4740         * configure.in (--enable-std-string): New option.
4741
4742         * flower/std-string.cc: 
4743         * flower/include/std-string.hh: New file.
4744
4745         * flower/file-name.cc[STD_STRING]:
4746         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
4747
4748 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4749
4750         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
4751
4752         * scm/define-markup-commands.scm (with-dimensions):
4753         with-dimensions markup command.
4754
4755         * input/test/font-table.ly: use it.
4756
4757         * lily/open-type-font.cc (glyph_list): new function.
4758
4759         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
4760
4761         * lily/ttf.cc: remove ly:font-glyph-list scheme function
4762
4763 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4764
4765         * ly/music-functions-init.ly (parallelMusic): new music function
4766         for parallel music entry.
4767
4768         * scm/define-music-properties.scm (all-music-properties): new
4769         'void music property
4770
4771         * scm/music-functions.scm (ly:music-message): make public, to be
4772         used in music function definitions
4773
4774         * scm/lily-library.scm (collect-music-for-book): discard music
4775         when the 'void property is set.
4776
4777 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4778
4779         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
4780
4781         * mf/GNUmakefile: idem.
4782
4783         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
4784
4785         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
4786
4787         * Documentation/user/notation-appendices.itely (The Feta font):
4788         use it.
4789
4790         * input/test/font-table.ly: new file. Generate font table within lily.
4791
4792         * Documentation/user/notation-appendices.itely (The Feta font):
4793         use new font-table.ly file. 
4794
4795         * stepmake/stepmake/install-out-targets.make
4796         (local-install-outfiles): only create directory if
4797         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
4798
4799 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4800
4801         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
4802
4803         * VERSION (PACKAGE_NAME): release 2.7.28
4804
4805         * scm/framework-ps.scm (write-preamble): use it to pick exactly
4806         the right font from a Mac dfont.
4807         (write-preamble): don't forget directory, only look at files.
4808
4809         This fixes problems with TTF files in dfonts that don't match
4810         their PostScript names.
4811          
4812         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
4813         PS name from TTF font.
4814
4815         * input/regression/tie-manual.ly: document new feature.
4816
4817         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
4818
4819         * VERSION (MY_PATCH_LEVEL): bump to .28
4820
4821         * Documentation/user/basic-notation.itely (Ties): add tie examples
4822         refs.
4823
4824         * lily/tie-formatting-problem.cc (score_ties_configuration):
4825         symmetry penalties for outer ties.
4826
4827 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4828
4829         * lily/tie-formatting-problem.cc (generate_configuration) 
4830         (set_manual_tie_configuration): skip non-pair manual
4831         tie-configuration, so you can set individual ties as
4832
4833           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
4834
4835         * input/regression/tie-chord.ly: use generateTiePattern to
4836         simplify file.
4837
4838         * lily/tie-formatting-problem.cc (peak_around): new function.
4839         (score_configuration): use sliding criterion for staff line collisions. 
4840         (score_configuration): idem for dot collisions.
4841         (generate_configuration): use separate stem_gap for gap to stem.
4842
4843         * lily/include/tie-formatting-problem.hh (struct Tie_details):
4844         separate penalty factors for x and y distance.
4845         (struct Tie_details): separate penalties for tip and center line collisions.
4846
4847 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
4848
4849         * lily/tie-formatting-problem.cc (generate_configuration): make
4850         large ties avoid stafflines in the horizontal section.
4851         (score_configuration): use softcoded penalties
4852         (score_aptitude): idem.
4853
4854         * lily/tie-helper.cc (from_grob): softcode tie details
4855
4856         * lily/staff-symbol-referencer.cc (on_staff_line): new function
4857
4858         * lily/staff-symbol-referencer.cc (on_line): rename from
4859         on_staffline 
4860
4861 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4862
4863         * ly/music-functions-init.ly: remove duplicate tag.
4864
4865         * lily/include/*.hh: GCC 4.1 fixes.
4866
4867 006-01-16  Erlend Aasland  <erlenda@gmail.com>
4868
4869         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
4870
4871         * scm/define-music-types.scm: fix bug in desc. string
4872         for OverrideProperty
4873
4874 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
4875
4876         * scripts/lilypond-book.py: bugfix
4877
4878         * scm/define-music-types.scm: fix typos.
4879
4880 2006-01-14  Graham Percival  <gpermus@gmail.com>
4881
4882         * Documentation/user/ basic-notation.itely, global.itely,
4883         advanced-notation.itely, instrument-notation.itely: small
4884         additions (bugs and commonly tweaked properties).
4885
4886 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4887
4888         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
4889         detection of mingw build.
4890         (MINGW_BUILD): opps.
4891
4892 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4893
4894         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
4895         i686-mingw32.
4896
4897 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4898
4899         * scm/music-functions.scm (skip->rest): add skip->rest
4900
4901 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4902
4903         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
4904         explicitly.
4905
4906         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
4907         config dirs. Aids debugging. 
4908         (display_config): also display config files.
4909
4910 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4911
4912         * VERSION: release 2.7.27
4913
4914         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
4915         for determining bar size.
4916
4917         * lily/staff-symbol.cc (print): place lines at distance line-positions
4918
4919         * scm/define-grob-properties.scm (all-user-grob-properties): add
4920         line-positions.
4921
4922         * lily/staff-symbol.cc (height): new function.
4923
4924         * input/regression/staff-line-positions.ly:  new file.
4925
4926 2006-01-06  Graham Percival  <gpermus@gmail.com>
4927
4928         * input/test/add-staccato.ly: remove reference to old file.
4929
4930 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4931
4932         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
4933         lilypond binary too.
4934
4935 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4936
4937         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
4938
4939 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4940
4941         * scripts/midi2ly.py: Bugfix: Declare datadir.
4942
4943         * make/ly-rules.make:
4944         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
4945         that seems to be gone). Fixes make web.
4946
4947         * The grand 2005-2006 replace.
4948
4949         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
4950
4951 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4952
4953         * make/lilypond-vars.make: set LILYPOND_BINARY variable
4954         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
4955         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
4956         like -dgs-font-load.
4957
4958         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
4959         remove absolute path to lilypond binary.
4960         
4961 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
4962
4963         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
4964
4965 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4966
4967         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
4968
4969         * mf/GNUmakefile: remove broken dvips map symlink.
4970
4971 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4972
4973         * lily/main.cc: 
4974         * configure.in: Cosmetic fixes.
4975
4976 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
4977
4978         * Documentation/user/music-glossary.tely (Pitch names): Added
4979         Spanish pitch names and durations, thanks to Ernesto Gancedo
4980
4981 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4982
4983         * scm/lily.scm (define-scheme-options): use quasi-quote for option
4984         init. Fixes verbose printing of .scm files.
4985
4986         * stepmake/aclocal.m4: add spaces before - options.
4987         
4988 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4989
4990         * lily/relocate.cc (setup_paths): Bugfix: do not store result
4991         of path search in local block variable.
4992
4993 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4994
4995         * configure.in (NCSB_DIR): --enable-ncsb-dir
4996         (LINK_GXX_STATICALLY): denko.
4997
4998         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
4999
5000         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5001         use locate to find c059033l.pfb. 
5002         
5003 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5004
5005         * lily/tie-formatting-problem.cc
5006         (problem::generate_base_chord_configuration): Use my_round (was
5007         round).
5008
5009         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5010         do not invoke mbrtowc.
5011
5012         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5013
5014 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5015
5016         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5017
5018 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5019
5020         * Documentation/user/invoking.itely (svg): revise.
5021
5022 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5023
5024         * lily/lexer.ll: use sourcefilename iso. renameinput.
5025
5026 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5027
5028         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5029         <PostScriptName>.ttf instead of c059XXXttf.
5030
5031         * lily/program-option.cc (LY_DEFINE): special support for
5032         --verbose, so it works before option init too.
5033  
5034         * mf/GNUmakefile (local-install): oops.
5035
5036         * lily/lyric-hyphen.cc (print): oops.
5037
5038         * buildscripts/pfx2ttf.fontforge: new file.
5039         
5040         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5041         ($(outdir)/%.ttf): new rule. 
5042
5043         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5044         to LyricHyphen.
5045
5046         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5047         font-size
5048
5049 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5050
5051         * VERSION: release 2.7.26
5052         
5053         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5054
5055 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5056
5057         * lily/font-config.cc (init_fontconfig): verbosity.
5058
5059         * THANKS: add Muziekacademie Lede. 
5060
5061         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5062         (print_score_setup): new function
5063         (convert): read part definition to output staves properly.
5064
5065         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5066         Music_xml notes.
5067
5068         * python/musicexp.py (Output_printer.__init__): use _ in data
5069         members.
5070         (Output_printer.unformatted_output): new function: no formatting,
5071         but count braces.
5072         (Duration.get_length): remove isinstance() checks for
5073         Output_printer everywhere.
5074
5075         * input/regression/lyrics-bar.ly (texidoc): add
5076         Separating_line_group_engraver.
5077
5078 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5079
5080         * lily/relocate.cc (framework_relocation): New function,
5081         factored from set_relocation ().
5082         (prefix_relocation): Rename from set_relocation ().
5083         (setup_paths): Use it.
5084
5085 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5086
5087         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5088         numbers. Patch by Erlend Aasland.
5089
5090 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5091
5092         * lily/font-config.cc (init_fontconfig): print warning if cache
5093         file is not existant.
5094
5095         * lily/main.cc: don't use #ifdef but #if
5096
5097 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5098
5099         * lily/grob-property.cc (internal_set_property): don't abort on
5100         calculation-in-progress.
5101
5102         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5103
5104         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5105         connect-to-neighbor property not connect-to-other
5106
5107         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5108         (LY_DEFINE): oops. don't forget protection.
5109
5110         * flower/parse-afm.cc (Module): strip AFM handling completely.
5111
5112         * lily/stencil-expression.cc: idem.
5113
5114         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5115
5116         * lily/function-documentation.cc (ly_add_function_documentation):
5117         use static member iso. Protected_scm
5118
5119         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5120
5121         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5122
5123 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5124
5125         * lily/relocate.cc (set_env_dir): New function.
5126         (set_relocation): Use it to fix setting PANGO_PREFIX.
5127
5128 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5129
5130         * input/regression/stem-direction-context.ly: remove rest.
5131
5132         * lily/melody-engraver.cc (process_music): restart for bar lines.
5133         (acknowledge_slur): restart for slurs.
5134
5135 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5136
5137         * Documentation/user/invoking.itely: describe how to view SVG 
5138         output using Inkscape which replace embedded fonts with OTF fonts.
5139
5140 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5141
5142         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5143
5144 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5145
5146         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5147         comment.
5148
5149 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5150
5151         * VERSION (PACKAGE_NAME): release 2.7.25
5152
5153         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5154
5155         * input/regression/stem-direction-context.ly: new file.
5156
5157         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5158
5159         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5160         on rest.
5161
5162         * ly/engraver-init.ly: add Melody_engraver
5163
5164         * lily/beam.cc (calc_direction): use default-direction
5165         iso. get_default_direction()
5166
5167         * scm/define-grob-properties.scm (all-user-grob-properties): add
5168         default-direction property.
5169
5170         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5171
5172         * lily/stem.cc (calc_default_direction): remove
5173         Stem::get_default_direction, use default-direction with callback
5174         instead.
5175
5176         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5177
5178         * lily/melody-engraver.cc: new file. Acknowledge stems for
5179         interpolated stem directions. 
5180
5181         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5182
5183         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5184
5185         * lily/slur-configuration.cc (fit_factor): more robust check for
5186         point in curve X-extent.
5187
5188         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5189         (outside_slur_callback): check for 'outside avoidance.
5190
5191         * lily/slur-configuration.cc (score_extra_encompass): don't use
5192         bound->column() == avoid->column() for checking extents, as this
5193         doesn't work for accidentals. 
5194
5195         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5196         DynamicText hardcoding.
5197
5198         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5199         crash if bound stem is NULL
5200
5201         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5202         pedals.
5203
5204 2005-12-22  Graham Percival  <gpermus@gmail.com>
5205
5206         * scm/define-markup-commands.scm: typo.  @code{\raise}
5207         => @code{\\raise}.
5208
5209         * darwin.patch: now used again, includes a
5210         required patch from fink.
5211
5212 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5213
5214         * po/TODO: mention gtranslator along with kbabel.
5215         * po/fi.po: update translations.
5216
5217 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5218
5219         * lily/relocate.cc (setup_paths): Bugfix.
5220
5221 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5222
5223         * lily/slur-configuration.cc (score_extra_encompass): don't use
5224         "avoid" choice for avoid-slur.
5225
5226         * stepmake/bin/install.py (dest): don't create existing dir.
5227
5228 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5229
5230         * stepmake/bin/install.py: Remove file before copying.
5231
5232         * config.make.in: 
5233         * stepmake/aclocal.m4: Do not substitute INSTALL.
5234
5235 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5236
5237         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5238         depend on link-tree.
5239
5240         * lily/relocate.cc (setup_paths): only check path for non-absolute
5241         dir without directory part.
5242
5243         * flower/file-name.cc (is_absolute):  new method.
5244         (is_absolute): check root_ too.
5245
5246 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5247
5248         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5249         relocation code.  Oops, don't comment out too much.
5250
5251         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5252         iso itself.
5253
5254         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5255         compile.
5256
5257 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5258
5259         * .cvsignore: Add install-sh.
5260
5261         * autogen.sh (srcdir): Typo.
5262
5263 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5264
5265         * autogen.sh (srcdir): urg. Touch install-sh.
5266
5267         * stepmake/bin/install-sh (Module): remove.
5268
5269         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5270
5271         * lily/include/relocate.hh: new file.
5272
5273         * lily/relocate.cc: new file. Contain relocation logic.
5274
5275         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5276         (main): read LILYPOND_VERBOSE as the first thing.
5277
5278         * stepmake/aclocal.m4: remove INSTALL variable.
5279
5280         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5281         separate target for making font symlinks.
5282         (documentation-dir): use $(if $(findstring )) for switching off
5283         Documentation.
5284
5285         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5286         something if DOCUMENTATION is no.
5287
5288 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5289
5290         * VERSION: release 2.7.24
5291
5292         * lily/script-column-engraver.cc (stop_translation_timestep):
5293         delay adding to script-column.
5294
5295         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5296
5297         * python/convertrules.py (conv): rule for number-visibility
5298
5299         * lily/slur-configuration.cc (score_extra_encompass): different
5300         distance measure for avoid and inside avoidance.
5301         (score_extra_encompass): use 1/(distance+eps) as penalty.
5302
5303         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5304         encompass objects for generating slur curves.
5305
5306         * lily/slur.cc: use details iso. slur-details property.
5307
5308         * input/regression/slur-tuplet.ly: new file.
5309
5310         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5311
5312         * flower/include/offset.hh (class Offset): new operator /=
5313
5314         * lily/tuplet-number.cc (print): new file, new interface.
5315
5316         * scm/define-grob-properties.scm (all-user-grob-properties):
5317         remove number-visibility property.
5318
5319         * lily/tuplet-bracket.cc (calc_control_points): new function
5320         (calc_connect_to_neighbors): new function.
5321         (print): remove text handling for tuplet numberdef.
5322
5323         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5324         TupletNumbers too. 
5325
5326         * lily/lily-guile.cc (robust_scm2booldrul): new function
5327
5328         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5329
5330         * lily/tuplet-bracket.cc (calc_position_and_height): use
5331         staff-padding to control whether tuplet brackets are over staves.
5332
5333         * lily/grob.cc (suicide): clear dim_caches_.
5334
5335         * lily/dimension-cache.cc (clear): new function.
5336
5337         * lily/grob.cc (extent): swap order of min-extent and extent
5338         calculations. This fixes hara kiri staves. 
5339
5340 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5341
5342         * lily/main.cc: Nitpick: relocation is not based on path, but on
5343         directory (location).
5344
5345 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5346
5347         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5348
5349         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5350
5351         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5352
5353         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5354
5355         * stepmake/stepmake/generic-vars.make (Module): idem.
5356
5357         * stepmake/stepmake/executable-targets.make (default): use it.
5358
5359         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5360
5361         * make/GNUmakefile: don't install make rules.
5362
5363         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5364         slashes.
5365         (prepend_env_path): more verbosity.
5366
5367 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5368
5369         * GNUmakefile.in: add dir argument for find command.
5370
5371         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5372         fixes weird line numbers for point & click.
5373
5374         * lily/source-file.cc (get_counts): init line/column/char counts.
5375
5376 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5377
5378         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5379
5380 2005-12-16  Graham Percival  <gpermus@gmail.com>
5381
5382         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5383         minor fixes from Fredric.  Thanks!
5384
5385 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5386
5387         * ly/music-functions-init.ly: add \bar and \clef music function 
5388
5389         * lily/lily-lexer.cc: idem.
5390
5391         * lily/parser.yy (FIXME): remove BAR and CLEF.
5392
5393 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5394
5395         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5396
5397         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5398         function arguments too
5399
5400         * lily/main.cc (set_relocation): new function.
5401
5402         * scripts/musicxml2ly.py (convert): add \version
5403
5404         * lily/tie.cc: remove get_default_attachments()
5405
5406         * VERSION (PACKAGE_NAME): release 2.7.23
5407         
5408         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5409         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5410
5411         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5412
5413         * lily/tie-formatting-problem.cc (score_ties): new function
5414         (get_variations): new function. Try flipping dirs for collisions.
5415         (generate_optimal_chord_configuration): new function. 1-opt search
5416         for better configuration.
5417
5418         * lily/tie-configuration.cc: new file.
5419
5420         * lily/tie.cc: junk Tie::get_configuration()
5421
5422         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5423         (score_ties_configuration): new function.
5424         (generate_ties_configuration): new function.
5425         (generate_base_chord_configuration): new function.
5426         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5427         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5428
5429         * input/regression/tie-dot.ly: new file.
5430
5431         * lily/tie-formatting-problem.cc (score_configuration): score
5432         tie/dot collisions.
5433
5434         * lily/tie-helper.cc (get_transformed_bezier): new function
5435
5436         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5437
5438         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5439         -undefined suppress iso. -framework Python 
5440
5441         * scm/define-grobs.scm (all-grob-descriptions): set
5442         springs-and-rods (thanks Joe Neeman!)
5443
5444 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5445
5446         * input/no-notation/display-lily-tests.ly (test): 
5447         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5448         changed from \tag #'(a b) to \tag #'a \tag #'b
5449
5450 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5451
5452         * Documentation/topdocs/NEWS.tely: strip out-www.
5453
5454         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5455
5456         * config.make.in (AR): add AR and RANLIB
5457
5458         * flower/libc-extension.cc: include cassert
5459
5460         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
5461         darwin check.
5462
5463 2005-12-11  Graham Percival  <gpermus@gmail.com>
5464
5465         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
5466
5467         * stepmake/stepmake/python-modules-vars.make: define
5468         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
5469
5470         * THANKS: added Johannes Schindelin.
5471
5472 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5473
5474         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
5475
5476         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5477         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
5478
5479         * lily/parser.yy: reorganize file layout.
5480
5481         * ly/music-functions-init.ly: add tweak music function.
5482
5483         * lily/grob-info.cc (ultimate_music_cause): new function:
5484         recursively lookup causes. 
5485
5486         * lily/parser.yy (chord_body_element): allow music functions for
5487         post-events, allow music functions for chord elements. 
5488  
5489         * lily/font-config-scheme.cc (display_fontset): add cast.
5490
5491         * python/convertrules.py (FatalConversionError.sub_syms): \tag
5492         #'(a b) -> \tag #'a \tag #'b rule.
5493
5494         * python/musicexp.py (Output_printer.dump_version): new function
5495
5496 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5497
5498         * lily/parser.yy (FIXME): remove \tag
5499         (FIXME): remove tag_music() function.
5500
5501         * lily/lily-lexer.cc: remove \tag
5502
5503         * ly/music-functions-init.ly: define music-function "tag"
5504
5505         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
5506
5507 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5508
5509         * VERSION (PATCH_LEVEL): release 2.7.22
5510
5511         * input/regression/lyric-hyphen-retain.ly: renew.
5512
5513         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
5514         grob
5515
5516         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
5517         iso. minimum-length property for rods.
5518
5519         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
5520         LyricSpace item to keep lyrics spaced apart.
5521
5522         * ly/engraver-init.ly: remove Separating_line_group_engraver
5523
5524         * Documentation/user/music-glossary.tely: do setfilename before
5525         music-glossary.
5526
5527 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
5528
5529         * Documentation/user/lilypond-book.itely: use `,´ after xref:
5530         See xref documentation, for example.
5531
5532 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5533
5534         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
5535         pending_skip iso. ly_voice[-1]
5536         (main): add if __main__ for debugging.
5537
5538         * python/musicxml.py (Accidental.__init__): new class.
5539
5540         * scripts/musicxml2ly.py (progress): new function
5541         (musicxml_key_to_lily): don't barf on modeless keys.
5542         (create_skip_music): new function.
5543         (musicxml_spanner_to_lily_event): new function. Handle beams too.
5544         (musicxml_note_to_lily_main_event): new function.
5545
5546         * python/musicexp.py (Music.__init__): add comment field.
5547         (NestedMusic.append): new routine.
5548         (SequentialMusic.print_ly): print comment.
5549         (ArpeggioEvent.ly_expression): new class
5550         (BeamEvent.ly_expression): new class
5551         (NoteEvent.__init__): support for cautionary/forced accs.
5552
5553         * lily/lookup.cc (slur): normal order for array loop.
5554
5555         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
5556         to 0.0.
5557
5558         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
5559         collapsed.
5560
5561 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
5562
5563         * scm/music-functions.scm: Make phrasing slurs follow voice direction
5564
5565         * scripts/lilypond-book.py: Introduce option
5566             --preserve-line-breaks, for usage with srcltx
5567
5568 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5569
5570         * scm/output-lib.scm (print-circled-text-callback): draw circle
5571         around text using make-circle-markup.
5572
5573         * Documentation/user/*: strip out-www from file names.
5574
5575 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
5576
5577         * Documentation/user/lilypond.tely (direntry): remove empty lines;
5578         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
5579
5580 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5581
5582         * Documentation/user/GNUmakefile: idem.
5583
5584         * Documentation/user/macros.itexi: strip out-www
5585
5586         * python/rational.py: python 2.3 compat.
5587
5588         * VERSION (PATCH_LEVEL): release 2.7.21
5589
5590         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
5591         option formatting, lilypond style.
5592
5593         * python/musicexp.py: grab from Ikebana: a library for composing
5594         ly music expressions. 
5595         (Output_printer): class for advanced .ly printing.
5596         (eg. tupletting) 
5597
5598         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
5599         convert to pythonesque structure.
5600
5601         * python/rational.py: PD rational number class.
5602
5603         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
5604
5605 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
5606
5607         * lily/part-combine-iterator.cc: Minor bugfix
5608         
5609         * THANKS: Update bughunters
5610
5611 2005-12-02  Werner Lemberg  <wl@gnu.org>
5612
5613         * mf/README: Document process for proper mf2pt1 conversion.
5614
5615         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
5616         overlapping.
5617
5618         * mf/feta-harmonica.mf: Removed.  Unused.
5619
5620 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5621
5622         * scripts/lilypond-book.py (do_file): fix thinkos.
5623
5624 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5625
5626         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
5627         ($(outdir)/parser.cc): 
5628         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
5629
5630 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
5631
5632         * ly/titling-init.ly (tagline): it should be a space between
5633         "Music engraving by LilyPond" and the version number.
5634
5635 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5636
5637         * VERSION (PACKAGE_NAME): release 2.7.20
5638
5639 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5640
5641         * scm/define-markup-commands.scm (pad-to-box): new markup command.
5642
5643         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
5644         1.0.
5645         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
5646
5647 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5648
5649         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
5650
5651         * kpath-guile/: remove directory
5652
5653         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
5654         file. Encapsulate kpathsea using commandline tools.
5655
5656         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
5657         kpathsea) module.
5658
5659 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
5660
5661         * Documentation/user/advanced-notation.itely (Setting automatic
5662         beam behavior): Correct a few typos. Thanks to David Bobroff.
5663
5664         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
5665         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
5666
5667 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5668
5669         * scripts/*.py: gmane address for bugs.
5670
5671 2005-11-28 Pal Benko <benkop@freestart.hu>
5672         
5673         * make/ly-rules.make: add -f switch to mv
5674
5675         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
5676
5677         * lily/bar-line.cc: interpret it
5678
5679 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5680
5681         * configure.in (--disable-documentation): New switch.
5682
5683         * GNUmakefile.in: Use it.
5684
5685         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
5686
5687 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5688
5689         * scripts/lilypond-book.py (do_file): search chunks for
5690         \\begin{document}
5691
5692         * GNUmakefile.in: add copy step in between so we can lose the
5693         out-www directories.
5694
5695 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5696
5697         * lily/pango-font.cc (pango_item_string_stencil): put
5698         geometry.width into glyph-string too.
5699
5700 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5701
5702         * scm/define-music-display-methods.scm (RevertProperty):
5703         (OverrideProperty): Use grob-property-path property, a list of
5704         symbols, instead of grob-property, which used to be a single
5705         symbol.
5706         (BassFigureEvent): a figure can be a plain number, not necessarily a
5707         markup.
5708
5709 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5710
5711         * VERSION: release 2.7.19
5712         
5713         * lily/figured-bass-engraver.cc (process_music): check
5714         figuredBassCenterContinuations first.
5715
5716         * scm/translation-functions.scm (format-bass-figure): make double
5717         sharp larger. 
5718
5719         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
5720         determine X-parent.
5721
5722         * lily/system-start-delimiter-engraver.cc: move from
5723         Nested_system_start_delimiter_engraver, rename
5724         Nested_system_start_delimiter_engraver ->
5725         System_start_delimiter_engraver.
5726
5727         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
5728         bracket type from hierarchy.
5729
5730 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5731
5732         * lily/rest.cc (y_offset_callback): read staff-position.
5733
5734         * scm/define-grob-properties.scm (all-user-grob-properties): don't
5735         mark after-line-breaking-callback as internal.
5736
5737         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
5738
5739 2005-11-25  Werner Lemberg  <wl@gnu.org>
5740
5741         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
5742
5743 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5744
5745         * stepmake/bin/add-html-footer.py (do_file): add google
5746
5747         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
5748         staff if first_start_ is true.
5749
5750 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5751
5752         * scripts/midi2ly.py (split_track): add __repr__ members.
5753         (track_first_item): only return Item if not None. This fixes a
5754         problem when dumping a track that starts with an empty channel.
5755
5756         * python/midi.c: doc module.
5757
5758 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
5759
5760         * Documentation/user/global.itely (Creating MIDI files): Fix
5761         compilation problem.
5762
5763 2005-11-22  Graham Percival  <gpermus@gmail.com>
5764
5765         * Documentation/user/basic-notation.itely: clarify dynamic
5766         padding text.
5767
5768         * Documentation/user/advanced-notation.itely: add unicode
5769         escape control example, whatever that is.  :)
5770
5771         * Documentation/user/global.itely: added "removing dynamics
5772         from MIDI" code.
5773
5774 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5775
5776         * VERSION (PATCH_LEVEL): release 2.7.18
5777
5778         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
5779         System_start_delimiter_engraver by
5780         Nested_system_start_delimiter_engraver.
5781
5782         * lily/nested-system-start-delimiter-engraver.cc (struct
5783         Bracket_nesting_node): new class.
5784         (struct Bracket_nesting_group): new class
5785         (struct Bracket_nesting_staff): new class.
5786         (process_music): create hierarchy of grobs. This allows separate
5787         tuning of different SSDs. 
5788
5789         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
5790         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
5791
5792 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5793
5794         * lily/side-position-interface.cc (aligned_side): multiply
5795         staff_radius by 2.
5796
5797         * lily/script-engraver.cc (make_script_from_event): allow setting
5798         values to '()
5799
5800 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5801
5802         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
5803
5804         * scm/define-grobs.scm (all-grob-descriptions): new grob
5805         NestedSystemStartDelimiter.
5806
5807         * input/regression/system-start-heavy-bar.ly: new file.
5808
5809         * lily/nested-system-start-delimiter-engraver.cc: new file.
5810
5811         * lily/nested-system-start-delimiter.cc: new file.
5812
5813         * input/regression/system-start-nesting.ly: new file.
5814
5815         * scm/define-grobs.scm (all-grob-descriptions): use X side
5816         positioning for positioning braces for nested contexts.
5817
5818         * lily/system-start-delimiter.cc (print): don't divide extent by
5819         staff_space.
5820         (print): use style iso. glyph.
5821         (staff_bracket): translate glyph inside routine already.
5822
5823 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
5824
5825         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
5826         names.
5827
5828 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5829
5830         * scm/define-context-properties.scm
5831         (all-user-translation-properties): rename figuredBassFormatter
5832         from newFiguredBassFormatter.
5833
5834         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
5835
5836         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
5837
5838         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
5839
5840         * lily/beam.cc (calc_beaming): new function.
5841         (calc_shorten): new function.
5842
5843         * THANKS: add Edward Neeman.
5844
5845         * input/regression/accidental-clef-change.ly: new file.
5846
5847         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
5848
5849         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
5850
5851         * lily/clef-engraver.cc (inspect_clef_properties): reset
5852         localKeySignature for clef changes.
5853
5854 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
5855
5856         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
5857         add dummy definition that works in Linux and add information in
5858         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
5859
5860         * Documentation/user/changing-defaults.itely (Modifying context
5861         plug-ins): Add index for \with.
5862
5863         * Documentation/user/music-glossary.tely (dal segno): Updated
5864         example to version >=2.6.
5865
5866 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
5867
5868         * Documentation/user/instrument-notation.itely (Printing chord
5869         names): Reorder \chordmode and \repeat in one example.
5870
5871 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5872
5873         * VERSION: release 2.7.17
5874         
5875         * Documentation/topdocs/NEWS.tely (Top): add note about
5876         refactoring.
5877
5878         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
5879         new function. Search region of 3 positions for best tie.
5880         (score_configuration): new function.
5881         (score_aptitude): new function.
5882         (generate_configuration): new function.
5883         (get_configuration): new function.
5884         (Tie_formatting_problem): new function
5885
5886         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
5887
5888         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
5889
5890         * THANKS: add Eduardo Vieira & Ralph Little
5891
5892         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
5893         narrower.
5894
5895         * lily/include/tie-formatting-problem.hh (class
5896         Tie_formatting_problem): add Tie_details to
5897         Tie_formatting_problem. Update calling conventions.
5898
5899         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
5900         config.make.
5901
5902         * Documentation/user/lilypond.tely: remove musedata2ly entry.
5903
5904 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
5905
5906         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
5907         scm/define-context-properties.scm: Maintenance bugfix: make
5908         ligature brackets work again by removing obsolete ligature
5909         primitive callback push/pop.
5910
5911         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
5912         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
5913         value.
5914
5915 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5916
5917         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
5918         used and do not call it a path.
5919         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
5920
5921 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5922
5923         * lily/include/tie-formatting-problem.hh (class
5924         Tie_formatting_problem): new file.
5925
5926         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
5927
5928         * Documentation/misc/ChangeLog-2.3:  new file.
5929
5930         * lily/audio-staff.cc (output): degarianize.
5931
5932 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5933
5934         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
5935         Unset PYTHONOPTIMIZE.  Fixes install if set.
5936
5937 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5938
5939         * python/convertrules.py (conv): add warning about drums. 
5940
5941         * make/stepmake.make: include toplevel-version.make after config.make.
5942
5943         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
5944         also allow python2.4
5945
5946         * config.make.in (configure-srcdir): remove GXX GCC vars.
5947
5948         * stepmake/aclocal.m4: don't do non-srcdir build with
5949         symlinks. Use inclusion, so the src directory name can be changed.
5950
5951 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5952
5953         * make/mutopia-vars.make:
5954         * make/ly-vars.make: Use src-wildcard iso wildcard for source
5955         files.
5956
5957 2005-11-13  Werner Lemberg  <wl@gnu.org>
5958
5959         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
5960         but the affected path.  This ensures that the (overlapping) outlines
5961         have the same direction, which is a necessary prerequisite for
5962         FontForge's algorithm to remove overlaps.
5963         Formatting.
5964
5965         * mf/feta-haak.mf: Formatting.
5966         (draw_bracket): Slightly modify outline to avoid an unnecessary
5967         corner.
5968         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
5969         them from the affected paths.
5970
5971 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5972
5973         * mf/README: remove xpm / accordion notes.
5974
5975         * lily/tie-column-format.cc (set_chord_outline): add dots into
5976         skyline extents. This fixes tie formatting if the left head has dots.
5977
5978         * lily/tie.cc (get_configuration): only shift tie by a whole staff
5979         space inside the staff.
5980         (get_configuration): shift another position if necessary in case
5981         of left head tie  
5982
5983 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5984
5985         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
5986         buildscript-dir iso. $(depth)/buildscripts.
5987
5988         * tex/GNUmakefile (local-uninstall): remove
5989         music-drawing-routines.ps juggling.
5990
5991         * stepmake/stepmake/install-targets.make (local-install-files):
5992         prepend src-dir to install targets.
5993
5994         * lily/system-start-delimiter-engraver.cc
5995         (acknowledge_system_start_delimiter): use
5996         add_offset_callback(). This fixes translation of nested
5997         staffgroups.
5998
5999         * lily/grob-closure.cc (add_offset_callback): only encaps in
6000         simple_closure if it's a procedure.
6001         
6002         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6003         from bar-line.
6004
6005         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6006         remove-empty where pertinent.
6007
6008 2005-11-12  Graham Percival  <gpermus@gmail.com>
6009
6010         * Documentation/user/instrument-notation.itely: added
6011         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6012
6013 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6014
6015         * lily/GNUmakefile
6016         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6017         make picture in builddir, not srcdir.
6018
6019 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6020
6021         * VERSION: release 2.7.16
6022         
6023         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6024         shell arguments. 
6025
6026 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6027
6028         * Documentation/user/examples.itely (Piano templates): Minor
6029         modification to the Piano centered lyrics example.
6030
6031 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6032
6033         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6034         $BROWSER.
6035
6036         * Documentation/user/point-and-click.itely: simplify p&c
6037         instruction: don't configure firefox. Put lilypond-invoke-editor
6038         in front of the browser.
6039
6040         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6041         (run-browser): new function.
6042
6043         * lily/parser.yy (Lily_lexer): recognize Book
6044
6045         * lily/book.cc (clone): new function
6046
6047         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6048
6049 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6050
6051         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6052         Maintenance bugfix: reduce number of font related warnings by
6053         updating naming conventions for glyph-name.
6054
6055 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6056
6057         * scm/define-grobs.scm (all-grob-descriptions): add
6058         rhythmic-grob-interface to TabNoteHead.
6059
6060         * scm/layout-beam.scm (check-quant-callbacks): remove
6061         set_stem_lengths()
6062
6063 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6064
6065         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6066         alignment of centered divisiones.
6067
6068         * scm/scripts.scm (articulations): Maintenance bugfix:
6069         follow-into-staff -> quantize-position.
6070
6071         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6072         plica head in porrectus deminutus.
6073
6074 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6075
6076         * make/lilypond.fedora.spec.in (Group): add %clean section.
6077
6078         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6079         less then 1/5th of total length.  
6080         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6081
6082         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6083         events into EventChord. This fixes textspanners on mm rests. Fixes
6084         spanner-rest.ly
6085
6086         * lily/side-position-interface.cc (get_axis): read side-axis
6087         (set_axis): set side-axis.
6088
6089         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6090         properties everywhere.
6091
6092         * lily/spacing-spanner.cc (breakable_column_spacing): add
6093         average-spacing-wishes. Take maximum if not set.
6094         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6095
6096         * scm/define-grobs.scm (all-grob-descriptions): add
6097         average-spacing-wishes.
6098
6099         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6100         offset callbacks. This fixes alignment for Fingering objects.
6101
6102         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6103         space for key - timesig combination. 
6104
6105         * input/regression/script-stem-tremolo.ly (Module): new file.
6106
6107         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6108         to key sig.
6109
6110         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6111         Fixes: c-tremolo-script.ly.
6112         
6113         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6114
6115         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6116         
6117         * scm/define-grobs.scm (all-grob-descriptions): remove
6118         self-X-offset. Fixes alignment of octavate-8.
6119
6120         * scripts/lilypond-book.py (datadir): look in
6121         LILYPONDPREFIX/share/lilypond/current/
6122
6123         * GNUmakefile.in: symlink current to <VERSION>. 
6124
6125 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6126
6127         * lily/main.cc: eps listed as a backend.
6128
6129 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6130
6131         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6132
6133 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6134
6135         * lily/include/score.hh (class Score): remove texts_ member.
6136
6137         * lily/beam.cc (set_stem_lengths): force direction callback.
6138         (print): read quantized-positions, so we can force
6139         Beam::set_stem_lengths to occur.
6140         (rest_collision_callback): use common X parent. 
6141
6142 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6143
6144         * flower/file-path.cc (find): Bugfix: Return name of file found.
6145
6146         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6147         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6148         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6149
6150 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6151
6152         * flower/offset.cc: idem.
6153
6154         * mf/*.mf: update email address.
6155
6156         * lily/font-config-scheme.cc:  new file.
6157
6158         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6159
6160         * lily/*:  cs.uu.nl -> xs4all.nl
6161
6162         * VERSION (PATCH_LEVEL): release 2.7.15
6163
6164         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6165         spec files.
6166
6167         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6168
6169 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6170
6171         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6172
6173         * lily/staff-performer.cc (process_music): add audio
6174         elements. This makes MIDI instrument changes work once again.
6175
6176         * lily/main.cc (LY_DEFINE): add gmane address.
6177
6178         * lily/beam.cc: remove calc_positions()
6179
6180         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6181         original_ in private scope.
6182         (class Grob): drop pscore_ pointer, change to output_def pointer.
6183         (class Grob): cleanup class definition.
6184
6185         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6186
6187 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6188
6189         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6190         absolute.  Better diagnostics.
6191
6192         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6193         This makes lilypond run from the build directory using argv0
6194         relocation (without any --prefix or LILYPONDPREFIX setting).
6195
6196 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6197
6198         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6199
6200         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6201         with simple-closure.
6202
6203         * lily/self-aligment-interface.cc (set_align_self): new function
6204         (set_center_parent): new function.
6205
6206         * lily/side-position-interface.cc (set_axis): new function.
6207
6208         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6209         generic code. 
6210
6211         * scm/define-grob-properties.scm (all-user-grob-properties):
6212         remove [XY]-offset-callbacks add [YX]-offset
6213         
6214 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6215
6216         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6217         entry for time signatures after breathing signs. Bug report by
6218         Scott Russell.
6219
6220 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6221
6222         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6223         not absolute, make it absolute using PATH.
6224
6225 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6226
6227         * python/midi.c (initmidi): Fix type for mingw.
6228
6229 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6230
6231         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6232
6233         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6234         cross compiling.
6235
6236         * stepmake/aclocal.m4: Support python cross compiling.
6237
6238         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6239         Add mingw section.
6240
6241 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6242
6243         * scm/output-lib.scm (chain-grob-member-functions): replace
6244         chained-callback.cc
6245
6246         * lily/chained-callback.cc (Module): remove file.
6247
6248         * lily/rest-collision.cc (force_shift_callback_rest): change to
6249         chained callback.
6250
6251         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6252
6253         * lily/grob.cc (y_parent_positioning): remove axis argument from
6254         parent_positioning callbacks.
6255         (Grob): junk init code
6256         (get_offset): use generic property callbacks for
6257         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6258         (axis_parent_positioning): new function
6259         (axis_offset_symbol): new function
6260         (chain_offset_callback): new function
6261         (add_offset_callback): new function
6262
6263         * lily/beam.cc (rest_collision_callback): change signature; this
6264         is now a chained callback.
6265
6266         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6267         callback administration.
6268
6269         * lily/simple-closure.cc: new file. Smob type that allows "grob
6270         member functions",
6271
6272             (ly:make-simple-closure FUNC A B)
6273
6274         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6275         in various ways.
6276
6277         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6278         callbacks.
6279
6280         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6281
6282         * lily/rest.cc (polyphonic_offset_callback): remove.
6283
6284         * lily/script-engraver.cc (try_music): remove bool* argument.
6285
6286         * scm/script.scm (default-script-alist): set quantize-position
6287         appropriately.
6288
6289         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6290
6291         * lily/side-position-interface.cc (aligned_side): move staff
6292         position quantization from
6293         Side_position_interface::quantised_position().
6294         (quantised_position): remove
6295         
6296 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6297
6298         * input/regression/beam-quant-standard.ly: reindent, set
6299         debug-beam-quanting to #t.
6300
6301         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6302         10000 if this is a "hard" concave beam.
6303
6304         * lily/beam.cc (calc_least_squares_positions): change from
6305         calc_least_squares_dy
6306         (set_stem_lengths): this is now a chained callback.
6307
6308         * lily/context-property.cc (execute_general_pushpop_property):
6309         bugfix override with procedure should have effect.
6310
6311         * scm/define-grob-properties.scm (all-internal-grob-properties):
6312         remove position-callbacks.
6313
6314         * scm/define-grobs.scm (all-grob-descriptions): use
6315         ly:make-callback-chain for positions property.
6316
6317         * scm/layout-beam.scm (check-quant-callbacks): return list of
6318         chained callbacks.
6319
6320         * scm/lily.scm (type-p-name-alist): add callback-chain
6321
6322         * lily/lily-guile.cc (type_check_assignment): type check failure
6323         is warning not message.
6324
6325         * lily/grob-property.cc (try_callback): walk callback chain if
6326         appropriate.
6327
6328         * lily/chained-callback.cc: new file. new smob type.
6329
6330         * lily/lily-guile.cc (procedure_arity): new function.
6331
6332 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6333
6334         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6335
6336 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6337  
6338         * Documentation/user/instrument-notation.itely (Figured bass):
6339         describe new features
6340
6341 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6342
6343         * lily/beam.cc (calc_least_squares_dy): use property callback.
6344
6345         * lily/beam-concave.cc (calc_concaveness): use property callback.
6346
6347         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6348
6349 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6350
6351         * HACKING: Update.
6352
6353 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6354
6355         * scm/layout-page-layout.scm (page-headfoot): annotate
6356         pagetopspace too.
6357
6358         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6359
6360         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6361         doesn't take y-space.
6362
6363         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6364
6365 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6366
6367         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6368         src-wildcard, remove $(wildcard).
6369
6370         * po/GNUmakefile (PO_FILES): 
6371         * ps/GNUmakefile (PS_FILES): 
6372         * tex/GNUmakefile (TEX_FILES): 
6373         * cygwin/GNUmakefile (POSTINSTALLS):
6374         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6375         some wildcard calls.
6376
6377 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6378
6379         * THANKS: add Thomas Bushnell.
6380
6381 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6382
6383         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6384         (lilypond-main): Redirect to gui-main if 'gui is set.
6385
6386         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6387         for alternative installations kludging s/share/lib/g
6388         LILYPONDPREFIX. 
6389
6390         * SConstruct (libdir_package_version): Define.
6391
6392         * python/SConscript: 
6393         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6394         module in libdir.  
6395
6396 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6397
6398         * lily/main.cc: clarify --safe.
6399
6400 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6401
6402         * VERSION: release 2.7.14
6403         
6404         * Documentation/user/*.itely: remove minimumVerticalExtent.
6405
6406         * scm/define-grobs.scm (all-grob-descriptions): remove
6407         RemoveEmptyVerticalGroup
6408
6409         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6410
6411         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6412         compile on MOSX
6413
6414         * python/convertrules.py (conv): add rules.
6415
6416         * lily/grob.cc: remove is_empty()
6417
6418         * lily/grob-property.cc: remove add_to_list_property().
6419
6420         * scripts/convert-ly.py (datadir): add prefix switching hack to
6421         .py too.
6422
6423         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6424         space-function tweak.
6425
6426         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6427
6428         * scm/define-grob-properties.scm (all-user-grob-properties):
6429         remove callback property.
6430
6431         * lily/include/grob.hh (class Grob): remove property_callbacks_
6432         member. Properties of procedure type are assumed to be callbacks.
6433
6434         * lily/ligature-engraver.cc (override_stencil_callback):
6435         rewrite. Use noteHeadLigaturePrimitive as source.
6436
6437         * scm/define-grob-properties.scm (all-internal-grob-properties):
6438         remove ligature-primitive-callback
6439
6440         * lily/include/dimension-cache.hh (class Dimension_cache): make
6441         class, with Grob as friend.
6442
6443         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6444         has_extent_callback()
6445
6446         * scm/translation-functions.scm (format-new-bass-figure): read
6447         figuredBassPlusDirection
6448
6449         * scm/define-context-properties.scm
6450         (all-user-translation-properties): add figuredBassPlusDirection.
6451
6452         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6453
6454         * lily/align-interface.cc (set_ordered): new function.
6455
6456         * lily/grob.cc (flush_extent_cache): rewrite.
6457
6458         * lily/dimension-cache.cc (Dimension_cache): cache extent as
6459         Interval pointer directly.
6460
6461         * lily/main.cc (setup_paths): insert extra / .
6462         (setup_paths): junk cff entry.
6463
6464         * lily/font-config.cc (init_fontconfig): only add type1 / otf
6465         directories.
6466
6467         * lily/axis-group-engraver.cc (finalize): remove
6468         extraVerticalExtent, minimumVerticalExtent verticalExtent.
6469
6470         * lily/grob.cc (Grob): don't set extent from ctor.
6471         (extent): use property callbacks. 
6472
6473         * lily/axis-group-interface.cc: remove set_axes() function.
6474
6475         * lily/grob-property.cc (del_property): new function.
6476
6477 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6478
6479         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
6480         
6481 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6482
6483         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
6484
6485 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6486
6487         * mf/SConscript: Updates.
6488
6489         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
6490
6491         * stepmake/stepmake/*:
6492         * */GNUmakefile:
6493         * config.make.in:
6494         * GNUmakefile.in:
6495         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
6496         from any directory in build-dir.  Cleanups.
6497
6498         * make/srcdir.make.in: Remove.
6499
6500         * lily/main.cc (setup_paths): Fix and document build-dir hack.
6501
6502         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
6503         main).
6504
6505         * lily/SConscript: Remove ttftools.
6506
6507         * SConstruct: Resurrect.
6508
6509 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6510
6511         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
6512         Y coordinate. 
6513
6514         * lily/paper-book.cc (add_score_title): put Paper_score title into
6515         systems_ list.
6516
6517         * scm/translation-functions.scm (format-new-bass-figure): also
6518         allow plus in combination with _
6519
6520 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6521
6522         * VERSION: 2.7.13 released.
6523
6524         * lily/note-collision.cc (check_meshing_chords): don't wipe
6525         stencil, merely set transparent.
6526
6527         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
6528         (Top): document #'callbacks.
6529         (Top): document nested \override.
6530
6531         * input/regression/figured-bass.ly: update for slash and pluses.
6532
6533         * input/regression/figured-bass-continuation-forbid.ly (Module):
6534         new file.
6535
6536         * scm/translation-functions.scm (format-new-bass-figure): use
6537         slashed-digit if diminished is set.
6538         (format-new-bass-figure): add + if 'augmented is set.
6539
6540         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
6541
6542         * input/test/piano-staff-distance.ly: remove file.
6543
6544         * Documentation/user/advanced-notation.itely (Formatting cue
6545         notes): use length-fraction for making stems/beams smaller.
6546
6547         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
6548         modifications.
6549
6550         * lily/new-figured-bass-engraver.cc: new property
6551         centerFiguredBassContinuations
6552
6553         * Documentation/user/changing-defaults.itely (Difficult tweaks):
6554         use callbacks.
6555
6556         * lily/context-property.cc (execute_general_pushpop_property):
6557         robustness checks.
6558
6559         * input/regression/override-nest.ly: new file.
6560
6561         * python/convertrules.py (FatalConversionError.subber): conversion
6562         rule for #'callbacks
6563
6564         * input/regression/override-nest.ly: new function.
6565
6566         * lily/parser.yy (music_property_def): allow \override #'a #'b =
6567         #c too. 
6568
6569         * lily/context-property.cc (lookup_nested_property): new function.
6570         (evict_from_alist): new function.
6571         (general_pushpop_property): new function.
6572         (execute_general_pushpop_property): rewrite. Support nested
6573         properties too.
6574
6575 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6576
6577         * lily/beam.cc: use length-fraction too.
6578
6579         * scm/define-grob-properties.scm (all-user-grob-properties):
6580         remove property flag-width-function
6581         (all-user-grob-properties): remove space-function.
6582
6583         * scm/layout-beam.scm: remove flag-width-function.
6584
6585         * lily/beam.cc: remove flag-width-function
6586
6587         * scm/layout-beam.scm: remove beam dir functions.
6588
6589         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
6590
6591         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
6592         for easier grace tweaks.
6593
6594         * lily/beam.cc: remove dir-function.
6595
6596         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
6597
6598         * lily/grob.cc: remove spacing-procedure.
6599
6600         * lily/note-head.cc (calc_stem_attachment): new function.
6601         (internal_print): use callback to get glyph-name.
6602
6603         * lily/grob-property.cc (get_interfaces): new function.
6604
6605         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
6606
6607         * lily/stem.cc (calc_stem_end_position): new function.
6608         (calc_length): new function.
6609         document details for stem.
6610         remove Stem::get_direction()
6611
6612         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
6613
6614         * lily/grob-property.cc (set_callback): new function.
6615
6616         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
6617
6618         * lily/item-scheme.cc: new file.
6619
6620         * lily/bar-line.cc (before_line_breaking): remove function.
6621         remove bar-size-procedure, break-glyph-function
6622
6623         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
6624
6625         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
6626
6627         * lily/system-start-delimiter.cc (print): suicide from
6628         here. Remove after_line_breaking_callback.
6629
6630         * lily/script-interface.cc (calc_direction): use callback for direction.
6631
6632         * lily/side-position-interface.cc (aligned_side): don't use
6633         Side_position_interface::get_direction directly. Use callback. 
6634
6635         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
6636         calculate stencil.
6637         (get_print_stencil): rename from get_stencil: create stencil with
6638         transparency, color and cause. 
6639
6640         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
6641
6642         * python/convertrules.py (conv): insert temporary warning rule.
6643
6644         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
6645
6646         * lily/grob-property.cc (try_callback): remove marker if applicable.
6647
6648         * lily/grob.cc: elucidate doc about after/before-line-breaking
6649
6650         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
6651
6652         * lily/stem.cc (height): idem.
6653
6654         * lily/stem-tremolo.cc: idem.
6655
6656         * lily/slur.cc (height): don't use get_uncached_stencil()
6657
6658         * lily/rest.cc (y_offset_callback): use offset callback
6659         iso. after-line-breaking callback.
6660
6661         * lily/grob.cc: change after/before-line-breaking-callback to
6662         after/before-line-breaking dummy properties.
6663
6664         * lily/include/grob.hh: remove Grob_status.
6665
6666         * scm/define-context-properties.scm
6667         (all-user-translation-properties): remove verticalAlignmentChildCallback
6668
6669         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
6670         (calc_direction): use callback
6671         (calc_positions): use callback.
6672
6673         * lily/tie.cc (calc_direction): use callback. Only call parent
6674         positioning for more than one tie.
6675
6676         * lily/tie-column.cc (calc_positioning_done): use callback
6677
6678         * lily/slur-scoring.cc (calc_control_points): use callback
6679
6680         * lily/slur.cc (calc_direction): use callback.
6681
6682         * lily/note-collision.cc (force_shift_callback): remove.
6683
6684         * lily/dot-column.cc (force_shift_callback): remove. Use
6685         other_axis_parent_positioning.
6686
6687         * lily/grob.cc (other_axis_parent_positioning): new function.
6688         (same_axis_parent_positioning): new function
6689
6690         * lily/align-interface.cc (alignment_callback): remove function.
6691
6692         * lily/note-collision.cc (calc_positioning_done): use callback.
6693
6694         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
6695         (calc_direction): idem.
6696         remove print function.
6697
6698         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
6699
6700         * lily/dot-column.cc (calc_positioning_done): use callback.
6701
6702         * lily/break-align-interface.cc (calc_positioning_done): use callback.
6703
6704         * lily/beam.cc (calc_direction): use pseudo-property for beam
6705         direction callback.
6706         (calc_positions): use callback 
6707
6708         * lily/align-interface.cc (calc_positioning_done): use
6709         callback. Fold fixed  distance and normal alignment in one function.
6710
6711         * lily/stem.cc (calc_stem_end_position): use callback.
6712         (calc_positioning_done): idem.
6713         (calc_direction): idem.
6714         (calc_stem_end_position): idem
6715         (calc_stem_info): idem.
6716
6717         * lily/grob-property.cc (get_property_data): new function: 
6718         (try_callback): new function.
6719
6720         * scm/define-grob-properties.scm (all-user-grob-properties): doc
6721         callbacks property.
6722
6723         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
6724
6725 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6726
6727         * lily/tie.cc (get_position): robustness fix. Don't crash if a
6728         tie
6729         has no heads.
6730         
6731         * lily/include/*.hh (Module): compile fixes.
6732
6733 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
6734
6735         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
6736         as an argument for char-syntax: use (char-syntax (or nil 0)) 
6737         instead of (char-syntax nil), thanks to Milan Zamazal.
6738
6739 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6740
6741         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
6742         dist.
6743
6744         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
6745         themselves.
6746
6747 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6748
6749         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
6750         add class_name() method.
6751
6752         * lily/music-scheme.cc: remove ly:music-name.
6753
6754 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6755
6756         * cygwin/postinstall-lilypond.sh: Remove cruft.
6757
6758         * cygwin/postremove-lilypond.sh: Remove.
6759
6760         * cygwin/GNUmakefile (default): Remove postremove rules.
6761
6762 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6763
6764         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
6765         even header too.
6766         
6767         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
6768         MacOS 9 users.
6769
6770         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
6771         consider break index for broken spanner.
6772
6773         * scm/define-markup-commands.scm (wordwrap-string): remove \r
6774         characters from string before splitting.
6775
6776 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6777
6778         * scm/framework-ps.scm (output-preview-framework): use
6779         is-book-title to determine whether to chop off the booktitle.
6780
6781         * lily/paper-book.cc (systems): init from book-title-properties
6782         (add_score_title): init score-title-properties.
6783
6784         * ly/paper-defaults.ly: add {score,book}-title-properties.
6785
6786         * scm/document-backend.scm (lookup-interface): error message if
6787         using unknown interface.
6788
6789         * lily/volta-bracket.cc (after_line_breaking): new function. Set
6790         edge-height.
6791
6792         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
6793         make_bracket.
6794         (make_bracket): new function.
6795
6796         * scm/lily.scm (define-scheme-options): add paper-size option.
6797
6798         * ly/declarations-init.ly (laissezVibrer): get paper size from
6799         -dpaper-size
6800
6801         * scm/translation-functions.scm: use \fontsize for changing the
6802         fontsize.
6803
6804         * scm/define-grobs.scm (all-grob-descriptions): set
6805         between-length-limit to 1.0
6806
6807         * lily/tie-helper.cc: add between_length_limit_ detail property.
6808
6809         * mf/feta-bolletjes.mf: typos.
6810
6811         * lily/note-head.cc (internal_print): don't shadow idx
6812         parameter. This fixes wrong attachment for do shape heads.
6813
6814 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6815
6816         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
6817
6818         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
6819
6820         * scm/layout-slur.scm: rename from slur.scm
6821
6822         * scm/layout-page-layout.scm: rename from page-layout.scm
6823
6824         * scm/layout-beam.scm: rename from beam.scm
6825
6826         * scm/define-grob-interfaces.scm (bass-figure-interface): add
6827         bass-figure-interface
6828
6829         * lily/new-figured-bass-engraver.cc (process_music): add
6830         implicitBassFigures property.
6831         
6832         * scm/define-markup-commands.scm (pad-x): new markup.
6833
6834         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
6835         minimumVerticalExtent on FiguredBass context.
6836
6837         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
6838         case the continuation crosses a line break.
6839
6840 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6841
6842         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
6843         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
6844         absolute file name bug.  
6845
6846 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6847
6848         * VERSION (PACKAGE_NAME): release 2.7.12
6849
6850         * input/regression/figured-bass-continuation-center.ly: new file.
6851
6852         * input/regression/beam-outside-beamlets.ly: new file.
6853
6854         * lily/beam.cc (set_beaming): don't clip edges.
6855         (connect_beams): don't clip edges.
6856
6857         * lily/beaming-info.cc (clip_edges): new function.
6858
6859         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
6860
6861         * Documentation/user/instrument-notation.itely (Figured bass):
6862         demonstrate extenders, update seealso links.
6863
6864         * scm/titling.scm (marked-up-headfoot): change tagline
6865         handling. tagline = ##f will blank the tagline as well.
6866
6867 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6868
6869         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
6870
6871         * lily/new-figured-bass-engraver.cc (struct
6872         New_figured_bass_engraver): add new_music_found_ member.
6873
6874         * lily/lilypond-version.cc (Lilypond_version): deal with
6875         incorrectly formatted version strings. 
6876
6877         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
6878         New_figured_bass_engraver by default.
6879
6880         * lily/ttf.cc (print_trailer): only define glyph names when
6881         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
6882
6883 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6884
6885         * lily/horizontal-bracket.cc (make_bracket): new function.
6886
6887         * scm/define-grobs.scm (all-grob-descriptions): new grobs
6888         NewBassFigure, BassFigureBracket, BassFigureContinuation,
6889         BassFigureLine, BassFigureAlignment
6890
6891         * lily/new-figured-bass-engraver.cc (process_music): new file.
6892
6893         * lily/figured-bass-continuation.cc: new file.
6894
6895         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
6896         new file.
6897
6898 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
6899
6900         * scripts/lilypond-book.py: Bug fix, put the quote around the
6901         actual score for LaTeX documents.
6902
6903         * scm/define-grobs.scm (all-grob-descriptions): Change
6904         collapse-height of the SystemStartBracket grob to 5.0, 
6905         so the bracket disappears for single stave score lines (similarly
6906         to SystemStartBraces). 
6907
6908         * Documentation/user/advanced-notation.itely (Polymetric
6909         notation): Clarify the use of compressMusic.
6910
6911         * Documentation/user/basic-notation.itely (Grace notes): Clarify
6912         that the grace spacer note in other staves need the same duration
6913         and document the stroke-style property.
6914
6915 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6916
6917         * Documentation/user/global.itely (Vertical spacing): document
6918         alignment-extra-space and fixed-alignment-extra-space.
6919
6920         * Documentation/topdocs/NEWS.tely (Top): add entry.
6921
6922         * input/regression/alignment-vertical-spacing.ly: new file.
6923
6924         * python/convertrules.py (conv): add rule.
6925
6926         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
6927
6928         * lily/align-interface.cc (stretch_after_break): new
6929         function. Read fixed-alignment-extra-space property.
6930         (align_elements_to_extents): read alignment-extra-space property.
6931
6932         * lily/lily-guile.cc (robust_scm2dir): new function.
6933
6934         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
6935         (annotate-space-left): new function. Annotate space left on page. 
6936         (annotate-y-interval): new function.
6937         (paper-system-annotate-last): new function. Annotate bottom-space.
6938
6939         * mf/feta-beugel.mf (y): 
6940
6941 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6942
6943         * VERSION (PACKAGE_NAME):  release 2.7.11
6944
6945         * scm/lily-library.scm (interval-translate): new function
6946         (interval-center): new function. 
6947
6948         * scm/page-layout.scm (paper-system-annotate): new function. Add
6949         arrows for dimensions.
6950  
6951         * scm/stencil.scm (dimension-arrows): new function.
6952
6953         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
6954
6955         * input/regression/page-spacing.ly: add annotatespacing
6956
6957         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
6958         (LY_DEFINE): new function ly:paper-system-set-property!
6959
6960         * Documentation/user/global.itely (Paper size): explain how to add
6961         sizes.
6962
6963         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
6964         correspond to GS's definition.
6965
6966         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
6967         tuplet bracket.
6968         (print): only connect to next bracket if the next one is alive.
6969         (print): set padding to 0.0 if the bound is a breakable
6970         column. This makes tupletFullLength brackets reach up to the staff
6971         line if it doesn't connect to the next line.
6972
6973 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6974
6975         * lily/bar-number-engraver.cc: correct docs.
6976
6977         * scm/output-lib.scm (first-bar-number-invisible): rename from
6978         default-bar-number-visibility
6979
6980 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6981
6982         * scm/define-music-properties.scm (all-music-properties): remove
6983         predicate property.
6984
6985 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
6986
6987         * po/fi.po: refresh.
6988
6989 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6990
6991         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
6992         superfluous s1.
6993         (disappear): bugfix.
6994
6995         * lily/stem-tremolo.cc (raw_stencil): read slope property.
6996
6997         * lily/include/paper-system.hh (class Paper_system): remove
6998         staff_extents_ member.
6999
7000         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7001
7002         * lily/include/paper-system.hh (class Paper_system): remove
7003         number_ variable. Remove is_title_. Remove break_before_penalty_
7004
7005         * lily/paper-book.cc (systems): use 'number property iso. number_
7006         member.
7007
7008         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7009         remove ly:paper-system-number.
7010
7011         * scm/lily-library.scm (paper-system-title?): new function.
7012
7013         * lily/book.cc (process): bugfix: flip ?: cases. 
7014
7015         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7016         add outputProperty.
7017
7018         * ly/music-functions-init.ly: add outputProperty music function.
7019
7020         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7021
7022         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7023         and next-padding.
7024         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7025
7026         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7027
7028         * lily/paper-system.cc (internal_get_property): new function.
7029
7030         * Documentation/user/global.itely (Vertical spacing): refer to
7031         page-spacing.ly
7032
7033         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7034         pagetopspace
7035
7036         * input/regression/page-spacing.ly: new file.
7037
7038         * input/regression/page-top-space.ly: new file.
7039
7040         * lily/spacing-spanner.cc: cmath -> math.h
7041
7042         * lily/paper-system.cc (read_left_bound): new function. Read
7043         line-break-system-details from left bound to determine extents.
7044  
7045         * Documentation/user/programming-interface.itely (Using LilyPond
7046         syntax inside Scheme): change applyxxx -> applyXxx.
7047
7048         * ly/music-functions-init.ly: add outputProperty music function.
7049
7050         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7051
7052         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7053
7054         * python/convertrules.py (conv): rule
7055
7056         * ly/music-functions-init.ly: applyxxx -> applyXxx
7057
7058         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7059         TabVoice to Voice.
7060
7061 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7062
7063         * flower/include/real.hh: include <math.h> iso. <cmath>
7064
7065         * flower/include/offset.hh: include real.hh
7066
7067 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7068
7069         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7070         fix example, now that 'interfaces is no longer directly available.
7071
7072         * lily/book.cc (process): don't crash if paper == NULL.
7073
7074         * po/fr.po: update.
7075
7076 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7077
7078         * scm/define-music-types.scm (music-descriptions): set length and
7079         start-callback for QuoteMusic
7080
7081 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7082
7083         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7084         arguments. Fixes compilation error with gcc 3.3.
7085
7086 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7087
7088         * VERSION: release 2.7.10
7089
7090         * stepmake/stepmake/python-module-rules.make
7091         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7092
7093         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7094         real.hh
7095
7096 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7097
7098         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7099         -Werror. Otherwise GCC barfs over various optimizations.
7100
7101         * scm/define-grob-properties.scm (all-internal-grob-properties):
7102         add note-head property
7103
7104         * Documentation/user/instrument-notation.itely (Laissez vibrer
7105         ties): new node.
7106
7107         * input/regression/laissez-vibrer-ties.ly: new file.
7108
7109         * lily/laissez-vibrer-engraver.cc: new file.    
7110
7111         * lily/include/tie-column-format.hh: new file.
7112
7113         * lily/tie-column-format.cc: new file. 
7114
7115         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7116
7117         * lily/laissez-vibrer-tie.cc: new file.
7118
7119         * lily/include/laissez-vibrer-tie.hh: new file.
7120
7121         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7122
7123         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7124
7125         * scm/define-grobs.scm (all-grob-descriptions): add
7126         LaissezVibrerTie, LaissezVibrerTieColumn
7127
7128         * lily/tie-column.cc (set_tie_config_directions): new function
7129         (final_shape_adjustment): new function.
7130         (shift_small_ties): new function.
7131
7132         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7133
7134         * lily/include/tie.hh (struct Tie_details): add x_gap_
7135         (struct Tie_configuration): add head_position_
7136
7137         * lily/tie-column.cc (set_chord_outline): new function.
7138
7139         * mf/cmr.enc.in:  remove file.
7140
7141 2005-09-11  Graham Percival  <gpermus@gmail.com>
7142
7143         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7144
7145 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7146
7147         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7148         reduce aliasing effects.
7149
7150         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7151         box in skyline.
7152
7153 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7154
7155         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7156
7157         * flower/include/real.hh: std::fabs too.
7158
7159 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7160
7161         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7162
7163         * lily, flower: Include C++ iso C headers.  Import namespace std
7164         throughout.
7165
7166         * lily/side-position-interface.cc: 
7167         * lily/scm-hash.cc: 
7168         * lily/note-head.cc: 
7169         * lily/include/includable-lexer.hh: 
7170         * flower/include/string-data.icc: Remove using std::*.
7171
7172         * lily, flower: Include C++ iso C headers.  Import namespace std
7173         throughout.
7174
7175         * lily/side-position-interface.cc: 
7176         * lily/scm-hash.cc: 
7177         * lily/note-head.cc: 
7178         * lily/include/includable-lexer.hh: 
7179         * flower/include/string-data.icc: Remove using std::*.
7180
7181         * Documentation/user/instrument-notation.itely (Entering lyrics):
7182         Multiple latin-1->utf-8 conversion fix.
7183
7184         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7185
7186 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7187
7188         * lily/tie.cc (get_configuration): also avoid dots for non-space
7189         situations.
7190
7191 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7192
7193         * Documentation/user/instrument-notation.itely: Bugfix.
7194
7195 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7196
7197         * tex/GNUmakefile: don't install texinfo.tex
7198
7199         * tex/ : cleanup: remove unused files.
7200
7201         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7202
7203         * flower/include/real.hh: using std::{isnan,isinf}
7204         
7205         * VERSION (PATCH_LEVEL): release 2.7.9
7206
7207 2005-09-05  Graham Percival  <gpermus@gmail.com>
7208
7209         * Documentation/user/ instrument-notation.itely,
7210         advanced-notation.itely: minor tweaks.
7211
7212         * input/test/script-chart.ly: add item padding.
7213
7214 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7215
7216         * flower/offset.cc: use math.h iso. <cmath>
7217
7218         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7219         of IE users.
7220
7221         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7222         (widen-left-stencil-edges): new function. Fix alignment problems
7223         with LaTeX includegraphics.
7224
7225         * lily/text-interface.cc (interpret_markup): use abort().
7226
7227 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7228
7229         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7230
7231         * lily/tie.cc (get_configuration): update bezier shape as we
7232         change Y positions.
7233         (get_configuration): don't move large ties if we're outside of the
7234         staff.
7235
7236 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7237
7238         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7239         
7240 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7241
7242         * .cvsignore: Add auto-generated configure files and then some.
7243
7244 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7245
7246         * scm/define-grobs.scm (DynamicLineSpanner): Add
7247         X-extent-callback.  Fixes hairpin-slur collision.
7248
7249 2005-08-31  Graham Percival  <gpermus@gmail.com>
7250
7251         * Documentation/user/advanced-notation.itely,
7252         basic-notation.itely: minor changes.
7253
7254 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7255
7256         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7257         \linebreak between each .eps file if \betweenLilyPondSystem is
7258         undefined. 
7259
7260         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7261         music): Document the \linebreak
7262
7263         * Documentation/user/lilypond-book.itely,
7264         input/tutorial/lbook-latex-test.tex,
7265         Documentation/user/examples.itely: Remove \usepackage{graphics}
7266
7267 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7268
7269         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7270
7271         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7272         compat bugfix.
7273
7274         * scripts/lilypond-book.py (PREAMBLE_LY): define
7275         inside-lilypond-book
7276         (modify_preamble): new function. Insert \RequirePackage{graphics}
7277         when no {graphics found in preamble.  
7278
7279 2005-08030  Graham Percival  <gpermus@gmail.com>
7280
7281         * Documentation/user/basic-notation.itely, global.itely,
7282         tutorial.itely: misc small changes.
7283
7284 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7285
7286         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7287         VERSION.
7288
7289 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7290
7291         * lily/tie-column.cc (new_directions): put Tie down on center
7292         staff line. 
7293
7294         * lily/script-interface.cc (before_line_breaking): use
7295         Grob::programming_error
7296
7297         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7298
7299         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7300         of splitext.
7301
7302 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7303
7304         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7305
7306 2005-08-29  Werner Lemberg  <wl@gnu.org>
7307
7308         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7309         the `*.scale.pfa' files to avoid warnings.
7310
7311 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7312
7313         * lily/tempo-performer.cc (process_music): idem.
7314
7315         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7316
7317 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7318
7319         * Documentation/user/advanced-notation.itely (Text markup): not a
7320         fragment.
7321
7322         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7323
7324         * lily/staff-performer.cc (initialize): add tempo/name to
7325         audio_staff_
7326
7327
7328 2005-08-26  Graham Percival  <gpermus@gmail.com>
7329
7330         * Documentation/user/advanced.itely: add text-only example.
7331
7332         * Documentation/user/invoking.itely: add index entries for
7333         convert-ly.
7334
7335         * Documentation/user/ tutorial.itely, basic-notation.itely:
7336         small fixes suggested by Steve D.  Thanks!
7337
7338 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7339
7340         * input/regression/markup-bidi-pango.ly: new file.
7341
7342         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7343         standard. Remove #ifdef. Remove memleak.
7344         (text_stencil): use text_dir to decide how to composite items.
7345         (text_stencil): determine uniform text direction for the entire
7346         string.
7347
7348         * scripts/lilypond-book.py (output_name): remove
7349         latex_filter_cmd. Non-portable to non-Unix systems. 
7350         (get_latex_textwidth): use File.write and os.unlink() instead.
7351
7352         * THANKS: add Vicente & Trevor.
7353
7354         * lily/grob.cc (discretionary_processing): look up origin for
7355         programming_error too. 
7356
7357         * input/regression/tie-broken.ly: new file.
7358
7359         * lily/tie-column.cc (set_chord_outlines): set outline for line
7360         break case too.
7361         
7362 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7363
7364         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7365         unscaled transform, just translate stencils.
7366
7367         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7368         MIDI.
7369
7370         * scm/define-markup-commands.scm (wordwrap-string): use
7371         text-direction
7372         (wordwrap-stencils): idem.
7373         (line): idem.
7374         (fill-line): idem.
7375         (wordwrap-stencils): translate last line to right for
7376         text-direction = LEFT.
7377
7378         * scm/define-grob-properties.scm (all-user-grob-properties): add
7379         text-direction.
7380
7381 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7382
7383         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7384         when copying a Lily_parser object.
7385
7386 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7387
7388         * scm/define-markup-commands.scm (null): add null markup.
7389
7390 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7391
7392         * lily/item.cc: Add documentation of center-invisible
7393
7394 2005-08-24  Graham Percival  <gpermus@gmail.com>
7395
7396         * Documentation/user/advanced-notation.itely: add info about
7397         raising text.
7398
7399         * Documentation/user/programming-interface.itely: fix example
7400         involving raised text.
7401
7402 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7403
7404         * lily/beam.cc (print): fix X start/end points of isolated
7405         beamlets.
7406
7407         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7408
7409         * lily/multi-measure-rest.cc (set_text_rods): new function.
7410
7411         * lily/vertical-align-engraver.cc (process_music): call
7412         Align_interface::set_axis(). This forces #'elements to be ordered,
7413         preventing random vertical reordering of staves.
7414
7415         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7416         add avoid-slur property. 
7417
7418         * Documentation/user/basic-notation.itely (Measure repeats): add
7419         countPercentRepeats example.
7420
7421         * Documentation/user/advanced-notation.itely (Other text markup
7422         issues): remove remark about normal-font.  We have \normal-text
7423
7424         * input/regression/tie-chord.ly: add note about remaining bugs.
7425
7426         * lily/tie.cc (print): try Tie_column::set_directions () if
7427         control-points not yet defined.
7428
7429 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7430
7431         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7432         extent. This fixes braces falling out of the EPS bbox.
7433
7434         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7435         exactly to bbox.
7436
7437 2005-08-23  Graham Percival  <gpermus@gmail.com>
7438
7439         * {various} : change #up->#UP and #down->#DOWN.
7440
7441         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7442
7443         * Documentation/user/advanced-notation.itely: clarify
7444         what objects handles text on a multimeasure rest.
7445
7446 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7447
7448         * VERSION (PATCH_LEVEL): release 2.7.7
7449
7450 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7451
7452         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7453
7454         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7455
7456         * input/regression/*.ly: formatting clean-up. Default layout
7457         before music expression.
7458
7459         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
7460         romanze28-2 example.
7461
7462         * scm/ps-to-png.scm: remove dir-re function.
7463         (make-ps-images): generate page names, instead of globbing them.
7464         This brings down LilyPond memory usage for make web by a factor
7465         10. 
7466
7467         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
7468         don't use glob. With 3000 files, globbing
7469         Documentation/user/out-www/ can take too much time. 
7470         
7471         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
7472
7473         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
7474
7475         * input/regression/tie-manual.ly: new file
7476
7477         * input/regression/tie-chord.ly: update.
7478
7479         * flower/include/interval.hh (struct Interval_t): 
7480
7481         * lily/tie.cc (distance): new function 
7482         (height): new function.
7483         (init): new function
7484         (Tie_details): new struct.
7485
7486         * lily/skyline.cc (skyline_height): new function.
7487
7488         * lily/tie-column.cc (set_chord_outlines): new function.
7489         (new_directions): read tie-configuration
7490
7491         * lily/skyline.cc: fix ASCII art.
7492         
7493 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
7494
7495         * python/convertrules.py (string_or_scheme): Fix spelling error
7496
7497 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7498         
7499         * lily/tie-column.cc (set_directions): set directions only once.
7500         (add_configuration): new function.
7501
7502         * lily/tie.cc (set_control_points): new function
7503
7504         * lily/tie-column.cc (new_directions): new function.
7505
7506         * ly/music-functions-init.ly: set 'pitch property
7507         iso. trill-pitch. This makes \relative work with \pitchedTrill
7508
7509         * lily/tie.cc (get_configuration): new function. Don't generate
7510         control points, rather, generate configuration.
7511         remove head-pair property.
7512
7513         * lily/include/tie.hh (struct Tie_configuration): new struct.
7514
7515 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
7516
7517         * Documentation/topdocs/NEWS.tely: clarify.
7518
7519 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7520
7521         * lily/tie.cc: remove minimum-length
7522
7523         * scm/define-grob-properties.scm (all-user-grob-properties):
7524         remove staffline-clearance, y-offset 
7525
7526         * input/regression/tie-dots.ly (Module): remove.
7527
7528         * lily/tie.cc (get_control_points): rewrite. Put short ties in
7529         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
7530
7531         * input/regression/tie-single.ly: new file.
7532
7533 2005-08-21  Graham Percival  <gpermus@gmail.com>
7534
7535         * ly/bagpipe.ly: fix compile problem.
7536
7537 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7538
7539         * lily/midi-item.cc (name): new method.
7540
7541         * lily/staff-performer.cc (acknowledge_audio_element): use
7542         signature of baseclass.
7543
7544         * lily/engraver-group.cc (do_announces): move recursion call out
7545         of while loop. 
7546
7547         * lily/drum-note-performer.cc (class Drum_note_performer): use
7548         process_music everywhere.
7549
7550         * ly/performer-init.ly: add default children everywhere.
7551
7552         * lily/paper-book.cc (output): call paper-book-write-midis
7553         directly: always write MIDI, even if no \layout {} block. 
7554
7555 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7556
7557         * VERSION (PACKAGE_NAME): release 2.7.6
7558
7559         * lily/percent-repeat-engraver.cc (try_music): don't print warning
7560         about not being able to handle repeat.
7561
7562 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7563
7564         * Documentation/user/examples.itely (Piano templates):
7565         * lily/include/performer-group.hh: Remove last traces of
7566         Performer_group_performer.  Fixes make web.
7567
7568 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7569
7570         * Documentation/user/examples.itely (Piano templates): change
7571         Engraver_group_engraver -> Engraver_group
7572
7573         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
7574         scm_stand_in_procs is not weak_any.
7575
7576         * lily/volta-bracket.cc (print): don't use strcmp().
7577
7578         * lily/volta-engraver.cc (process_music): use
7579         Text_interface::is_markup() for setting the 'text property of the
7580         volta bracket.
7581
7582         * input/mutopia/claop.py (accents): update syntax to 2.6
7583
7584         * scm/define-context-properties.scm
7585         (all-user-translation-properties): add countPercentRepeats.
7586
7587         * Documentation/user/basic-notation.itely (Measure repeats): add
7588         isolated percent example.
7589
7590 2005-08-18  Graham Percival  <gpermus@gmail.com>
7591
7592         * input/ {various}: change direction #1, #-1 to
7593         #up/#down or \fooUp, \fooDown.
7594
7595         * Documentation/user/music-glossary.tely: #-1 to #down.
7596
7597         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
7598         to #up, #-1 to #down.
7599
7600 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7601
7602         * lily/include/engraver-group.hh: rename.
7603
7604         * lily/include/performer-group.hh: rename.
7605
7606 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
7607
7608         * input/test/script-abbreviations.ly: Removed some old LaTeX
7609         left overs.
7610
7611 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7612
7613         * python/convertrules.py (conv): inside-slur -> avoid-slur.
7614         Remove functions.  Remove if 1: constructs, reindent.
7615
7616         * scripts/convert-ly.py (add_version): Add functions from
7617         convertrules.py
7618
7619         * scm/script.scm (default-script-alist):
7620         s/priority/script-priority.  Fixes script stacking.  Backportme.
7621         (Fermata): Very low priority.
7622
7623 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7624
7625         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
7626
7627         * input/regression/slur-script.ly: remove padding tweaks. Add
7628         comment strings.
7629
7630         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
7631         time sigs and related stuff.
7632
7633         * scm/define-grob-properties.scm (all-user-grob-properties): add
7634         @code{} tags to property description.
7635
7636         * lily/include/line-group-group-engraver.hh (Module): remove file.
7637
7638         * python/convertrules.py (conv): add rule for
7639         Engraver_group_engraver -> Engraver_group.
7640
7641         * lily/include/performer-group-performer.hh: analogous.
7642
7643         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
7644
7645         * lily/context-def.cc (instantiate): check for
7646         Engraver_group_engraver and Performer_group_performer not
7647         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
7648  
7649 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7650
7651         * input/les-nereides.ly: Remove three fingering tweaks, update
7652         remaining one.
7653
7654         * input/regression/slur-script-inside.ly: Update, fix doc.
7655
7656         * scm/script.scm: Update to avoid-slur.
7657
7658         * scm/define-grob-properties.scm (avoid-slur): New property.
7659
7660         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
7661         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
7662         outside_slur_callback if avoid-slur != #'inside.
7663
7664         * scm/define-grobs.scm (Fingering, Textscript): No
7665         inside-slur/outside-slur preference.
7666         (DynamicLineSpanner): Always outside slur.
7667
7668         * input/regression/slur-script.ly: More tests.
7669
7670 2005-08-17  Graham Percival  <gpermus@gmail.com>
7671
7672         * Documentation/user/lilypond-book: fix notime entry.
7673
7674         * Documentation/user/advanced-notation.itely: add info on
7675         getting an I rehearsal mark.
7676
7677         * Documentation/user/putting.itely: reinstate "I", re-enforce
7678         the fact that \override numbers are the result of
7679         experimentation and personal taste.
7680
7681         * Documentation/user/invoking.itely: update convert-ly bugs.
7682
7683 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7684
7685         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
7686         to #t.
7687
7688         * lily/timing-translator.cc (initialize): don't initialize timing.
7689
7690         * input/regression/stem-spacing.ly (Module): remove file.
7691
7692         * input/regression/spacing-stick-out.ly: specify Score context for
7693         \override
7694
7695         * input/regression/clefs.ly: remove spurious {}s 
7696
7697 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
7698
7699         * Documentation/topdocs/NEWS.tely,
7700         input/regression/repeat-percent-count.ly: clarify a bit.
7701
7702 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7703
7704         * input/no-notation/display-lily-tests.ly: delete
7705         display-lily-init call.
7706
7707         * ly/music-functions-init.ly (displayLilyMusic): move
7708         display-lily-init call at top level, so that the user should not
7709         have to call it.
7710
7711         * scm/define-music-display-methods.scm (note-name->lily-string):
7712         retrieve note names directly from pitchnames using new function `rassoc'.
7713         (display-lily-init): note names list construction removed.
7714
7715 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7716
7717         * THANKS: spello.
7718
7719         * lily/lily-parser.cc (get_header): copy module, instead of
7720         returning it.
7721
7722         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
7723         counters.
7724
7725         * Documentation/user/basic-notation.itely (Measure repeats): add
7726         links to Counter grobs.
7727
7728         * scm/define-grobs.scm (all-grob-descriptions): add
7729         DoublePercentRepeatCounter
7730         (all-grob-descriptions): add PercentRepeatCounter
7731
7732         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
7733         also create counter grobs.
7734
7735         * lily/separation-item.cc (extremal_break_aligned_grob): don't
7736         return grob without space-alist.
7737
7738         * input/proportional.ly: tune staff-padding.
7739
7740         * input/regression/repeat-percent-count.ly: new file. 
7741
7742 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7743
7744         * input/no-notation/display-lily-tests.ly: moved from
7745         input/regression/ to input/no-notation. Be sure to call
7746         `display-lily-init' before trying to use the display function.
7747
7748 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
7749
7750         * scripts/lilypond-book.py (option_definitions): Don't localize
7751         the empty string. Fixes bug when --psfonts was used with
7752         non-English locale.
7753
7754 2005-08-15  Graham Percival  <gpermus@gmail.com>
7755
7756         * lily/tuplet-bracket.cc: simple build fix.
7757
7758         * Documentation/user/putting.itely: use "we" instead of "I".
7759
7760         * Documentation/user/basic-notation.itely: cautionary accidentals
7761         work with naturals, too.
7762
7763 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7764
7765         * lily/tuplet-bracket.cc (calc_position_and_height): add
7766         staff-padding support.
7767
7768         * input/proportional.ly: set staff-padding.
7769         
7770         * VERSION (PATCH_LEVEL): release 2.7.5
7771
7772         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
7773         fixes. Remove tweaks.
7774
7775         * input/regression/tuplet-slope.ly: add a test case.
7776
7777         * lily/tuplet-bracket.cc (calc_position_and_height): revert
7778         erroneous fix. Add spanner bounds to offset array with relative X
7779         positions.
7780
7781         * ly/engraver-init.ly: add Rest_engraver only once.
7782
7783         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
7784         (*parser*) lookup if (*parser*) != #f.
7785
7786 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
7787
7788         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
7789         Cut-and paste update.
7790
7791         * input/regression/slur-script.ly: Add example of reverting
7792         inside-slur for fingering.
7793
7794         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
7795         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
7796
7797         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
7798         outside_slur_callback if inside-slur == #f (as opposed to unset).
7799
7800 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7801
7802         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
7803         encoding files are already removed.
7804
7805 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
7806
7807         * Documentation/user/advanced-notation.itely (Instrument names):
7808         Document a workaround for instrument names that collide with
7809         system start braces/brackets.
7810
7811 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7812
7813         * lily/rest-collision.cc (do_shift): spello.
7814
7815         * input/proportional.ly: use #'used property. Set break-overshoot
7816         property.
7817
7818         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
7819
7820         * lily/paper-column.cc: add #'used property
7821
7822         * lily/mark-engraver.cc (stop_translation_timestep): set grob
7823         array for staves found.
7824
7825         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
7826         array for stavesFound.
7827
7828         * lily/staff-spacing.cc (next_note_correction): add fixed and
7829         space to calling convention. This fixes spacing of accidentals
7830         after barlines.
7831
7832         * input/regression/spacing-accidental-stretch.ly: add barline -
7833         accidental case.
7834
7835         * scm/framework-ps.scm (page-header): add version number to
7836         creator
7837         (eps-header): idem.
7838
7839         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
7840         
7841 2005-08-13  Graham Percival  <gpermus@gmail.com>
7842
7843         * Documentation/user/global.itely: add "fit as much as
7844         possible onto this page" example (Vertical spacing).
7845
7846 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7847
7848         * *: Nitpick run.
7849
7850         * buildscripts/fixcc.py: Fixes.
7851
7852 2005-08-12  Graham Percival  <gpermus@gmail.com>
7853
7854         * Documentation/user/advanced-notation.itely: add markup
7855         example to Text spanners.
7856
7857 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
7858
7859         * Documentation/user/basic-notation.itely (Ties): Add example of
7860         tying a tremolo to a chord. Thanks to Steve Doonan. 
7861
7862         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
7863         properties and move tieMelismaBusy to the list of written
7864         properties. 
7865
7866 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
7867
7868         * po/TODO: suggest to use a dedicated tool like kbabel.
7869
7870         * po/fi.po: update using kbabel.
7871
7872 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7873
7874         * *: Remove obsolete files.  Nitpick run.
7875
7876         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
7877
7878 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7879
7880         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
7881         too.
7882
7883         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
7884
7885         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
7886         whitespace as symbol separator.
7887
7888         * lily/side-position-interface.cc: Add slur-padding.
7889
7890         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
7891         quite a large fix, and it never worked in a stable release; so not
7892         really a regression.
7893
7894         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
7895         Update cut and paste code from Slur_engraver.
7896
7897         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7898         Add.
7899
7900         * scm/define-grobs.scm (DynamicLineSpanner): Add
7901         dynamic-line-spanner-interface.
7902         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
7903
7904 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7905
7906         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
7907         to_boolean () so that non-set 'inside-slur means false.
7908
7909         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
7910         slur has control-points.  Skip script without direction.  Always
7911         do_shift if script inside slur, even if slur not contained in
7912         script y-extent.  Increment k in loop.
7913
7914 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
7915
7916         * scm/define-markup-commands.scm: Improved regexp to search for
7917         EPS bounding boxes and corrected call to ly:warning.
7918
7919 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7920
7921         * Documentation/user/programming-interface.itely (Displaying music
7922         expressions): doc for \displayLilyMusic. Also some precisions in
7923         "Markup construction in Scheme"
7924
7925 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
7926
7927         * scm/define-markup-commands.scm (normal-text): Added 2 new
7928         markup commands, \normal-text and \medium (the latter thanks to
7929         Bruce Fairchild). 
7930
7931 2005-08-08  Graham Percival  <gpermus@gmail.com>
7932
7933         * Documentation/user/programming-interface.itely: fix @{ @}.
7934
7935         * scm/define-markup-commands.scm: add linewidth info to
7936         \justify and \wordwrap, add "upright is the opposite of italic".
7937
7938         * Documentation/user/advanced-notation.itely: shaped->shape,
7939         add (cons (markup "foo")) type of example to text markup,
7940         reword multi-measure rests section.
7941
7942         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
7943         comment.  No actual code was touched.
7944
7945         * Documentation/user/invoking.itely: add more info about
7946         \include.  Thanks, Bruce!
7947
7948         * THANKS: add Bruce Fairchild, alphabetise.
7949
7950         * Documentation/user/global.itely: document \score{\header{}}
7951         behavior.
7952
7953         * Documentation/user/basic-notation.itely: reword multi-measure
7954         rest discussion in Rests.
7955
7956 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
7957
7958         * Documentation/user/programming-interface.itely (Markup
7959         construction in Scheme): Corrected example and tried to clarify
7960         the implicit \line in the table.
7961
7962 2005-08-07  Graham Percival  <gpermus@gmail.com>
7963
7964         * Documentation/user/instrument-notation.itely: moved
7965         some bagpipe info back into the bagpipe section.  Somehow
7966         it ended up in the "other vocal issues" section?!  :o_O
7967
7968 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7969
7970         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
7971         directories, not paths).
7972
7973 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7974
7975         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
7976         plain emmentaler/aybabtu.  Backportme.
7977
7978         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
7979         missing dir correction.
7980
7981 2005-08-05  Graham Percival  <gperlist@shaw.ca>
7982
7983         * scm/define-markup-commands: fix reversed justify/wordwrap
7984         doc strings.
7985
7986 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
7987
7988         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
7989         lily/gregorian-ligature-engaver.cc,
7990         lily/include/ligature-engraver.hh,
7991         lily/include/coherent-ligature-engraver.hh,
7992         lily/include/gregorian-ligature-engraver.hh: make these classes
7993         truely abstract.  This should fix some internal oddities such as
7994         duplicate as well as dead translator/property declarations, and
7995         also some dead code.
7996
7997         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
7998         bugfix: avoid message "junking empty ligature" on ligature
7999         brackets by collecting dummy grobs.
8000
8001 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8002
8003         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8004
8005         * input/proportional.ly (staffKind): bugfix.
8006         (staffKind): updates by Trevor Baca.
8007
8008         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8009         default layout. 
8010
8011         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8012         pair.
8013
8014         * lily/beam.cc (rest_collision_callback): call position_beam() if
8015         necessary.
8016
8017         * VERSION: release 2.7.4
8018
8019         * input/regression/spacing-uniform-stretching.ly: new file.
8020
8021         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8022
8023         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8024         contributor.
8025
8026         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8027
8028         * input/proportional.ly: new file.
8029
8030         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8031         columns is empty
8032
8033         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8034         bounds to currentCommandColumn for the last step.
8035         (start_translation_timestep): if tupletFullLength is set, set
8036         bound to Paper Column
8037
8038         * input/regression/tuplet-full-length.ly (indent): new file.
8039
8040         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8041         clique of loose columns, eg. a set of grace notes in strict
8042         notespacing.
8043
8044         * input/regression/spacing-strict-spacing-grace.ly: new file.
8045
8046         * lily/key-signature-interface.cc: change property name to
8047         alteration-alist
8048
8049         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8050         keyAccidentalOrder
8051
8052         * python/convertrules.py (conv): keyAccidentalOrder ->
8053         keyAlterationOrder
8054
8055         * lily/key-engraver.cc (create_key): always print a cancellation
8056         for going to C-major/A-minor, regardless of printKeyCancellation.
8057         (create_key): remove typecheck for visibility. This fixes key
8058         signature not being printed.
8059
8060         * lily/spacing-determine-loose-columns.cc: new file.
8061
8062         * input/regression/spacing-strict-notespacing.ly: new file.
8063
8064         * lily/spacing-spanner.cc (generate_springs): rename from
8065         do_measure. 
8066         (generate_pair_spacing): new function.
8067         (init, generate_pair_spacing): set between-cols for floating
8068         nonmusical columns.
8069
8070         * lily/spaceable-grob.cc (get_spring): new function. 
8071
8072         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8073         relative to the right edge of the prefatory matter.
8074
8075         * lily/beam.cc (print): read break-overshoot to determine where to
8076         stop/start broken beams.
8077
8078         * input/regression/spanner-break-overshoot.ly: new file.
8079
8080 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8081
8082         * ly/bagpipe.ly: updated.
8083
8084         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8085
8086 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8087
8088         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8089         support: now (de)crescs avoid slurs as well.
8090
8091         * Documentation/user/instrument-notation.itely (Bagpipe example):
8092         comment out non-functioning bagpipe example.
8093         (Bagpipe definitions): idem.
8094
8095         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8096         (Top): add proportionalNotationDuration example.
8097
8098         * input/regression/spacing-proportional.ly: new file.
8099
8100         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8101         synched to a beam.
8102
8103         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8104         fixes beams with a single stem (eg. beams across linebreaks.)
8105
8106         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8107
8108         * flower/rational.cc (operator +): prevent overflow. This fixes
8109         heavily nested tuplets.
8110
8111         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8112         have to protect even those unlikely to be corrupted data members.  
8113
8114 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8115
8116         * ly/bagpipe.ly: new file.
8117
8118         * THANKS: added Sven Axelsson.
8119
8120 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8121
8122         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8123         copy proportionalNotationDuration into currentMusicalColumn if
8124         set.
8125
8126         * lily/spacing-spanner.cc (musical_column_spacing): if
8127         uniform-stretching set, fixed space is 0.0
8128
8129         * input/regression/spacing-multi-tuplet.ly: show
8130         uniform-stretching property.
8131
8132         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8133
8134         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8135         (struct Spacing_options): new struct.
8136
8137         * lily/spacing-basic.cc: new file.
8138
8139         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8140         delta_t doesn't have to be smaller than shortest_playing_len
8141
8142 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8143
8144         * input/regression/markup-arrows.ly:  new file.
8145
8146         * lily/tuplet-bracket.cc: document new behavior.
8147
8148         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8149         with line breaks.
8150
8151         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8152
8153         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8154         default 
8155
8156         * lily/tuplet-bracket.cc: add edge-text property.
8157         add break-overshoot.
8158         (print): read break-overshoot.
8159         (print): read edge-text, add stencils.
8160
8161         * mf/feta-arrow.mf: new file.
8162
8163         * mf/feta-generic.mf: add feta-arrow.
8164
8165 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8166
8167         * Documentation/user/lilypond-book.itely (An example of a
8168         musicological document): Added flag -o to dvips for people who use
8169         the default setting in teTeX where output is sent to the printer. 
8170
8171         * Documentation/user/global.itely (Vertical spacing): Added
8172         reference to the Axis_group_engraver which documents the *Extent
8173         properties.
8174
8175 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8176
8177         * Documentation/user/basic-notation.itely (Tuplets): add note
8178         about nested tuplets. Remove BUG. 
8179
8180         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8181
8182         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8183         (print): manually call print() for subtuplets.
8184         (calc_position_and_height): add subtuplets to the
8185         support. Vertically shift outer tuplet 
8186
8187         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8188         remove-first for Lyrics, ChordNames and FiguredBass
8189
8190         * scm/define-grob-properties.scm (all-internal-grob-properties):
8191         use ly:grob-array? iso. grob-list?
8192         (all-internal-grob-properties): add tuplets grob-array.
8193
8194         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8195         new function
8196
8197 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8198
8199         * input/test/time-signature-staff.ly: new file.
8200
8201         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8202         spurious #<Music FingerEvent> errors. Backportme.
8203
8204 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8205
8206         * Documentation/user/programming-interface.itely (Markup
8207         construction in Scheme): Corrected markup syntax in the
8208         translation table.
8209
8210 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8211
8212         * Documentation/user/instrument-notation.itely: small update
8213         to bagpipe notation docs; thanks Sven!
8214
8215         * Documentation/user/basic-notation.itely: add link about trills.
8216
8217 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8218
8219         * Documentation/user/music-glossary: remove accidentally committed
8220         fink patch.
8221
8222 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8223
8224         * lily/lily-parser.cc (get_header): new function. Enable multiple
8225         \header definitions.
8226
8227         * lily/parser.yy (lilypond_header_body): use get_header.
8228
8229         * ly/init.ly:
8230         * scm/lily-library.scm (print-score-with-defaults): renamed
8231         $globalheader to $defaultheader
8232             
8233         * Documentation/user/global.itely (Creating titles): added short
8234         explanation that multiple headers are useable.
8235
8236
8237 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8238
8239         * lily/module-scheme.cc (LY_DEFINE): new file. 
8240
8241         * Documentation/user/advanced-notation.itely (Font selection): add
8242         doco for make-pango-font-tree.
8243
8244 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8245
8246         * Documentation/user/music-glossary: more languages
8247         for tenuto.
8248
8249         * Docuemntation/user/instrument-notation.itely: minor
8250         update for bagpipe example.
8251
8252 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8253
8254         * input/regression/+.ly (TODO): add some text.
8255
8256 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8257
8258         * Documentation/user/invoking.itely: \score begins with music.
8259
8260         * Documentation/user/ basic-notation.itely,
8261         instrument-notation.itely: minor changes.
8262
8263         * Documentation/user/music-glossary.itely: began tenuto entry.
8264
8265 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8266
8267         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8268
8269         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8270
8271 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8272
8273         * Documentation/user/examples.itely: remove bagpipe template.
8274
8275         * Documentation/user/instrument-notation.itely: add bagpipe
8276         section, maybe fix quotes in lyrics.  I hate text encoding.
8277         Clarify chord durations, more bagpipe stuff.
8278
8279 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8280  
8281         * lily/accidental-engraver.cc: formatting fixes.
8282
8283         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8284         grob-array.
8285
8286         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8287
8288         * lily/note-column.cc (arpeggio): new function.
8289
8290         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8291         account for spacing.
8292
8293 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8294
8295         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8296         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8297         mingw build.
8298         
8299 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8300
8301         * scm/lily.scm (lilypond-all): clear anonymous modules after
8302         processing files.
8303
8304 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8305
8306         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8307         SCM_I_CONSP
8308
8309         * VERSION: 2.7.3 released
8310
8311         * Documentation/user/invoking.itely (Invoking lilypond): add
8312         LILYPOND_GC_YIELD documentation.
8313
8314         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8315         scm_from_real / scm_make_real.
8316
8317         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8318         higher. This increases memory footprint, but provides overall
8319         speedup of 15 to 20%. 
8320
8321         * lily/include/translator.hh (class Translator): remove
8322         PRECOMPUTED_VIRTUAL everywhere.
8323
8324         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8325
8326         * lily/context.cc (now_mom): non-recursive now_mom() 
8327
8328         * lily/include/profile.hh: new file.
8329
8330         * lily/profile.cc: new file.
8331
8332         * lily/grob.cc (Grob::Grob): look properties up directly.
8333
8334         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8335         lookups.
8336
8337         * lily/include/box.hh (class Box): smob Box type.
8338
8339         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8340
8341         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8342         protect() and unprotect(). Use throughout.
8343
8344 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8345
8346         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8347
8348         * scm/define-music-display-methods.scm (markup->lily-string):
8349         markup elements can also be strings (without simple-markup
8350         appended)
8351
8352 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8353
8354         * lily/context.cc (where_defined): also assign value in
8355         where_defined().
8356
8357         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8358         (curve_coordinate): new function
8359
8360         * lily/simple-spacer.cc (add_columns): only add rods between
8361         column i and begin/end if keep-inside-line is set (this repleces
8362         allow-outside-line as default)
8363
8364 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8365
8366         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8367         tupletSpannerDuration if applicable.
8368
8369         * lily/font-size-engraver.cc (process_music): read fontSize only
8370         once per timestep.
8371
8372         * lily/engraver*cc: use throughout.
8373         
8374         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8375
8376         * lily/translator.cc (add_acknowledger): new file. Directly jump
8377         into an Engraver::acknowledge_xxx () method based on a grobs
8378         interface-list.
8379
8380         * lily/include/translator-dispatch-list.hh (class
8381         Engraver_dispatch_list): new struct, new file.
8382
8383         * scm/define-context-properties.scm
8384         (all-internal-translation-properties): remove acceptHashTable,
8385         acknowledgeHashTable
8386
8387         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8388
8389         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8390         change acknowledgeHashTable to C++ member. 
8391
8392         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8393
8394 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8395
8396         * scm/display-lily.scm: new file. Define a `display-lily-music'
8397         function, that displays the music expression given as an argument,
8398         using LilyPond notation.
8399
8400         * scm/define-music-display-methods.scm: new file. Implementation
8401         of display methods for each music type.
8402
8403         * ly/music-functions-init.ly (displayLilyMusic): new function for
8404         displaying music with LilyPond notation.
8405
8406         * input/regression/display-lily-tests.ly: new regression test file
8407         for `display-lily-music'.
8408
8409         * scm/markup.scm: remove obsolete debugging code (for printing
8410         markups with LilyPond notation).
8411
8412         * scm/define-music-types.scm (music-name-to-property-table):
8413         * scm/clef.scm (supported-clefs): export, in order to be accessible
8414         from the (scm display-lily) module.
8415
8416 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8417
8418         * Documentation/topdocs/NEWS.tely (Top): Typo.
8419
8420 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8421
8422         * Documentation/index.html.in, Documentation/texinfo.css,
8423           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8424           Documentation/bibliography/index.html.in,
8425           Documentation/bibliography/html-long.bst: revert css-width patch,
8426           it does not work with IE6.
8427
8428 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8429
8430         * Documentation/texinfo.css: revert 760px hack. 
8431
8432         * VERSION: release 2.7.2
8433
8434         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8435
8436         * Documentation/user/basic-notation.itely (Barnumber check): add
8437         section.
8438
8439         * scm/music-functions.scm (skip-to-last): new function. Show only
8440         last showLastLength part of the \score.
8441
8442         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8443
8444         * python/convertrules.py (conv): add ly:x-moment rule
8445
8446         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8447
8448         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8449
8450         * Documentation/user/instrument-notation.itely (Flexibility in
8451         alignment): options in subsections.
8452
8453         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8454         syllable text. Instead, assume that the previous lyric text is a
8455         melismated text.
8456
8457         * Documentation/index.html.in: revert 800x600 change.
8458
8459 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8460
8461         * lily/main.cc (main): Remove invalid handle kludge.
8462
8463         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
8464         (lambda): add gui define.
8465
8466 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8467
8468         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
8469
8470         * Documentation/user/instrument-notation.itely (Musica ficta
8471         accidentals): add section Musica ficta accidentals
8472
8473         * lily/accidental-engraver.cc (make_suggested_accidental): new
8474         function.
8475         (make_standard_accidental): move into new function.
8476         (create_accidental): new function.
8477
8478         * scm/define-grobs.scm (all-grob-descriptions): new Grob
8479         AccidentalSuggestion
8480
8481         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
8482
8483         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
8484         undefined.
8485
8486         * Documentation/user/global.itely (Page formatting): document
8487         horizontalshift.
8488
8489         * scm/page-layout.scm (default-page-music-height):
8490         horizontalshift: new variable, shift all systems by
8491         horizontalshift to the right, to make space for instrument names.
8492
8493         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
8494
8495         * lily/input-scheme.cc (LY_DEFINE): take format commands.
8496
8497 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8498
8499         * lily/note-column.cc (dir): idem.
8500
8501         * lily/spacing-spanner.cc (Module): idem.
8502
8503         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
8504
8505         * lily/include/paper-column.hh (class Paper_column): add
8506         non-static get_rank() member.
8507
8508         * VERSION: release 2.7.1
8509         
8510         * scm/framework-null.scm: new file, used for benchmarking.
8511
8512 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
8513
8514         * Documentation/topdocs/INSTALL.texi, configure.in: fix
8515         version dependencies for fontforge and gs.
8516
8517         * Documentation/index.html.in, Documentation/texinfo.css,
8518         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8519         Documentation/bibliography/index.html.in, 
8520         Documentation/bibliography/html-long.bst: optimize width of
8521         html for a 800x600 screen (width:760), increases printability
8522         when 'fit to page' is not set and readability in wide screens.
8523
8524         * stepmake/bin/add-html-footer.py: add missing </p>.
8525
8526 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8527
8528         * scm/define-markup-commands.scm (beam): use polygon in beam
8529         command.
8530
8531         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
8532         all acknowledged grobs, and do potentially expensive merge and
8533         write in one go.
8534
8535         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
8536
8537         * configure.in (reloc_b): add --enable-static-gxx to statically
8538         link to libstdc++
8539
8540         * lily/GNUmakefile (static-gxx-libs): new target
8541         static-gxx-libs. Create symlink to libstdc++.a
8542
8543         * lily/new-lyric-combine-music-iterator.cc: rename to
8544         Lyric_combine_music_iterator
8545
8546         * lily/lyric-combine-music-iterator.cc
8547         (Old_lyric_combine_music_iterator): rename to
8548         Old_lyric_combine_music_iterator
8549
8550         * lily/*-engraver.cc (various): remove double use of
8551         PRECOMPUTED_VIRTUAL function: only use
8552         start_translation_timestep() and stop_translation_timestep(), not
8553         both.
8554
8555         * lily/break-substitution.cc (fast_substitute_grob_array): do
8556         fast_substitute_grob_array for all unordered grob_arrays.
8557         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
8558         (substitute_grob_array): optimize.
8559
8560         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
8561
8562         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
8563
8564         * lily/parser.yy: revert $globalheader patch.
8565         
8566         * lily/include/translator.icc
8567         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
8568         Translator methods, without _static helper.
8569  
8570         * lily/grob-smob.cc (derived_mark): rename from
8571         do_derived_mark(). Return void.
8572
8573         * scm/define-context-properties.scm
8574         (all-internal-translation-properties): remove tweakCount/tweakRank.
8575
8576         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
8577         predefined break-visibilities.
8578
8579         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
8580         booleans for break-visibility.
8581
8582         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
8583
8584         * python/convertrules.py (conv): rule for Timing_translator. 
8585
8586         * lily/include/translator.icc: new file. 
8587
8588         * lily/paper-column-engraver.cc (process_music): new
8589         file. Separate Paper_column factory from Score_engraver.
8590
8591         * lily/vertically-spaced-context-engraver.cc: administer
8592         spaceable-staves property of System.
8593
8594         * lily/translator-group-ctors.cc: new file.
8595
8596         * lily/context-property.cc (make_grob_from_properties): construct
8597         the right Grob class programmatically, looking at the class entry
8598         for the meta property.
8599
8600         * lily/break-align-engraver.cc (stop_translation_timestep): call
8601         Break_align_interface::add_element() directly.
8602
8603         * lily/context.cc (measure_position): measure_position() is now a
8604         normal function.
8605
8606         * lily/include/translator.hh (class Translator): rename
8607         process_acknowledged_grobs() to process_acknowledged() and move to
8608         Translator.
8609
8610         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
8611         field for each grob description.
8612
8613         * lily/include/translator-group.hh (class Translator_group):
8614         change to base class. Separate class from Translator. This gets
8615         rid of virtual inheritance for Engravers/Performers.
8616
8617         * lily/staff-performer.cc (class Staff_performer): derive
8618         Staff_performer from Performer, not Performer_group_performer 
8619
8620         * Lily/translator-group.cc (precomputed_recurse_over_translators):
8621         new function.
8622         (precompute_method_bindings): new function. Precompute lists of
8623         Translators, so we only call methods (process_music,
8624         start_translation_timestep, etc.) for Translators needing
8625         it. Also: dispose of pointer-to-member-function calls.
8626
8627         * lily/engraver-group-engraver.cc: remove engraver_each,
8628         recurse_down_engravers ()
8629
8630         * lily/note-head.cc (internal_print): only call
8631         glyph-name-procedure if style != default. 
8632
8633 2005-07-16  Graham Percival  <gperlist@shaw.ca>
8634
8635         * ly/titling-init.ly: add printallheaders option.
8636
8637         * Documentation/user/global.itely: document printallheaders.
8638
8639 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8640
8641         * lily/system.cc (do_derived_mark): don't mark from object_alist_
8642         anymore, but do it centrally.  
8643
8644         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
8645         hammer hack.
8646
8647         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
8648
8649         * scm/output-lib.scm: remove hammer-print-function.
8650
8651         * lily/include/pointer-group-interface.hh (extract_grob_set): new
8652         macro. Declare a Link_array<Grob> and fill it from a grob.
8653         (extract_item_set): idem for item.
8654
8655         * lily/break-substitution.cc: add header.
8656         (fast_substitute_grob_array): rewrite for Grob_arrays.
8657         (substitute_grob_array): idem.
8658
8659         * lily/group-interface.cc (add_thing): remove file.
8660
8661         * flower/include/parray.hh (class Link_array): slice() is const.
8662
8663         * lily/include/grob-array.hh: new file.
8664
8665         * lily/grob-array.cc (spanner): new file.
8666
8667         * lily/beam-quanting.cc (fill): read details property from beam.
8668
8669         * lily/beam.cc: support details property.
8670
8671         * total speedups below: approx 10%.
8672
8673         * lily/include/beam.hh: new struct, softcode beam quanting parameters
8674
8675         * lily/include/grob.hh (class Grob): add interfaces_ member.
8676
8677         * lily/bezier.cc (init_polynomial_cache): new function: cache
8678         binom(3,j) t^j (1-t)^{3-j}
8679         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
8680
8681         * lily/*.cc: substitution throughout.
8682
8683         * lily/grob-property.cc (internal_get_object): new routine.
8684         (internal_set_object): idem. Store grob refrences in separate
8685         alist. This saves processing time, since properties aren't
8686         break-substituted, and the per grob namespace is smaller, both for
8687         grobs and non-grob properties.
8688
8689         * scm/define-grob-properties.scm (all-internal-grob-properties):
8690         remove center-element.
8691
8692         * lily/grob.cc: remove tweak-count, tweak-rank.
8693
8694 2005-07-15  Graham Percival  <gperlist@shaw.ca>
8695
8696         * Documentation/user/lilypond-book.itely: fixes example.
8697
8698 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8699
8700         * Documentation/user/global.itely (Creating titles):    
8701         * Documentation/user/examples.itely (All headers): change the
8702         place of \header in \score blocks (after music block) to make
8703         examples compile (cf. changes on parser.yy on 2005-07-10)
8704
8705 2005-07-13  Graham Percival  <gperlist@shaw.ca>
8706
8707         * python/convertrules.py: add exc -> ecc rule.
8708
8709         * scripts/convert-ly.py: add location of convertrules.py
8710         in a comment.
8711
8712         * Documentation/user/changing-defaults.itely: fix language.
8713
8714 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8715
8716         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
8717
8718 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8719
8720         * scm/output-socket.scm (grob-bbox): don't use inf? 
8721
8722         * flower/include/rational.hh: add operator bool() 
8723
8724         * scm/define-music-types.scm (music-descriptions): remove
8725         internal-class-name properties.
8726
8727         * lily/include/event.hh: remove file.
8728
8729         * lily/include/music-constructor.hh: remove file.
8730
8731         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
8732         in 'types property.
8733
8734         * lily/music.cc (duration_length_callback): new function.
8735
8736         * lily/event.cc: remove file.
8737
8738         * lily/music-constructor.cc: remove file.
8739
8740         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
8741
8742         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
8743         (get_context_key): idem.
8744
8745         * scm/lily.scm (lambda): new option object-keys (default to #f)
8746
8747         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
8748
8749         * scm/output-gnome.scm: remove beam routine.
8750
8751         * scm/output-ps.scm (scm): idem.
8752
8753         * scm/output-svg.scm: remove beam.
8754
8755         * ps/music-drawing-routines.ps: remove draw_beam.
8756
8757         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
8758
8759         * flower/include/guile-compatibility.hh (scm_from_locale_string):
8760         add scm_from_locale_string compatibility glue. 
8761
8762 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8763
8764         * scripts/lilypond-book.py: Prevent occuring error when
8765         'lilypond-book --output=foo/ somefile.ly' is executed multiple
8766         times and target file shoud be overwritten.  (Error message said
8767         'input file and output file is same'.)
8768
8769 2005-07-13  Graham Percival  <gperlist@shaw.ca>
8770
8771         * input/regression/slur-extreme.ly,
8772         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
8773         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
8774         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
8775         "excentricity" to "eccentricity".
8776
8777         * Documentation/user/converters.itely: fix URL for Noteedit and
8778         Rosegarden.
8779
8780         * THANKS: added Yoshinobu Ishizaki.
8781
8782 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8783
8784         * scm/define-markup-commands.scm (justify-field): add. 
8785
8786         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
8787
8788 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8789
8790         * lily/lookup.cc (filled_box): express filled_box with
8791         round_filled_box
8792
8793         * scm/midi.scm (paper-book-write-midis): new function. Write all
8794         performances in numbered MIDI files.
8795
8796         * lily/performance-scheme.cc (LY_DEFINE): new file.
8797         (LY_DEFINE): new function ly:performance-write.
8798
8799         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
8800         new function.
8801         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
8802
8803         * scm/framework-*.scm: use port arguments throughout.
8804
8805         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
8806
8807         * lily/paper-outputter.cc (Paper_outputter): take port argument.
8808
8809         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
8810
8811         * scm/framework-texstr.scm (output-framework): 
8812
8813         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
8814
8815         * scm/output-lib.scm (tablature-stem-attachment-function):
8816         tablature stem attachment fix. 
8817
8818 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8819
8820         * lily/bezier.cc: hardcode binomial coefficients of order 3.
8821
8822         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
8823
8824         * scm/define-music-types.scm (music-descriptions): don't use
8825         Music_wrapper type.
8826
8827         * lily/paper-column.cc (print): print moment too.
8828
8829         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
8830         remove compatibility cruft.
8831
8832         * lily/parser.yy (score_body): \score can only begin with Music. 
8833
8834         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
8835         make-score. Take music argument only. Move parser interaction to
8836         Scheme.
8837
8838         * scm/lily-library.scm (scorify-music): new function.
8839
8840         * python/lilylib.py (datadir): remove 2.1 compat kludge.
8841         (datadir): remove resource import.
8842         (print_environment): remove get_bbox()
8843         (cp_to_dir): remove pre 1.5.2 compat glue.
8844
8845 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8846
8847         * lily/include/simple-spacer.hh (Module): idem.
8848
8849         * lily/include/spring.hh (struct Spring): store inverse
8850         strength. This prevents division by zero.
8851
8852         * VERSION: release 2.7.0
8853         
8854         * lily/include/music.hh (class Music): remove Music::duration_log()
8855
8856         * lily/stem-engraver.cc (make_stem): take duration log from event.
8857
8858         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
8859
8860 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8861
8862         * scm/lily.scm (ly:load): load autochange.scm
8863
8864         * Documentation/user/tutorial.itely (Running LilyPond for the
8865         first time): remove reference to DVI/TeX
8866
8867         * scm/define-markup-commands.scm (text): add \text markup command.
8868
8869         * configure.in (reloc_b): bump requirement to Python 2.2.
8870
8871         * lily/include/dots.hh (class Dots): make has_interface() static.
8872
8873         * python/convertrules.py (conv): add rule for ly:grob-default-font
8874
8875         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
8876         alphabetical order.
8877
8878         * input/regression/trill-spanner-pitched.ly: new file.
8879
8880         * lily/font-interface-scheme.cc (LY_DEFINE): function
8881         ly:grob-default-font (changed from get-default-font).
8882
8883         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
8884
8885         * lily/note-head.cc (internal_print): if style is not a symbol,
8886         set style to 'default. 
8887         (internal_print): no style suffix if glyph-name-procedure not
8888         set. Default to quarter head.
8889
8890         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
8891
8892         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
8893
8894         * ly/music-functions-init.ly: \pitchedTrill
8895
8896         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
8897
8898         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
8899
8900         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
8901
8902         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
8903
8904         * po/fr.po: update
8905
8906         * po/de.po: update.
8907
8908 2005-07-06  Graham Percival  <gperlist@shaw.ca>
8909
8910         * Documentation/user/changing-defaults.itely: add link
8911         to grob-iterface.
8912
8913         * Documentation/user/advanced-notation.itely: add material
8914         to Setting automatic beam behaviour.  Thanks, Joe!
8915
8916         * Documentation/user/lilypond.itely: change encoding to utf-8.
8917
8918 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
8919
8920         * Documentation/user/advanced-notation.itely (Setting automatic
8921         beam behavior): Correct the documentation of
8922         revert-auto-beam-setting (backportme)
8923
8924 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8925
8926         * lily/ly-module.cc (ly_make_anonymous_module): define
8927         %module-public-interface of module. 
8928
8929         * lily/lily-parser.cc (print_smob): allow printing of parser smob
8930         without lexer.
8931
8932 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8933
8934         * input/regression/fret-diagrams.ly: stretch example.
8935
8936 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8937
8938         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
8939         Fodor).
8940
8941 2005-06-30  Graham Percival  <gperlist@shaw.ca>
8942
8943         * Documentation/topdocs/AUTHORS.texi: update personal web address.
8944
8945         * Documentation/user/examples.itely, lilypond-book.itely:
8946         change \RequirePackage to \usepackage.
8947
8948         * Documentation/user/global.itely: document copyright and tagline.
8949
8950 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8951
8952         * Documentation/user/basic-notation.itely (Transpose): remove link
8953         to nonexistent UntransposableMusic.
8954
8955         * scm/output-svg.scm: remove old definitions.
8956
8957         * scripts/lilypond-book.py (do_file): search for kpsewhich before
8958         invoking.
8959
8960         * python/lilylib.py (search_exe_path): new function.
8961
8962 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8963
8964         * python/lilylib.py (mkdir_p): remove setup_environment()
8965         (backportme)
8966
8967         * buildscripts/mutopia-index.py (headertext): trim text.
8968
8969         * Documentation/topdocs/NEWS.tely (Top): refresh.
8970
8971         * scm/define-markup-commands.scm (wordwrap-string): new function:
8972         split string in paras and words.
8973         (wordwrap-markups): new function.
8974         (wordwrap-stencils): new function. 
8975         (justify): use it.
8976         (wordwrap): use it.
8977         (wordwrap-string): use it
8978         (justify-string): use it.
8979
8980         * scm/lily-library.scm (regexp-split): new function.
8981
8982         * scm/define-markup-commands.scm: remove encoded-simple. 
8983         remove font-markup.
8984         (fontsize): remove old version  of fontsize.
8985         (wordwrap): new markup function. Wrap into paragraphs.
8986
8987         * VERSION: Branch lilypond_2_6
8988         (MINOR_VERSION): go to 2.7.0
8989
8990 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8991
8992         * po/zh_TW.po: update from translation project.
8993
8994 2005-06-28  Graham Percival  <gperlist@shaw.ca>
8995
8996         * scm/midi.scm: compile fix.
8997
8998 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
8999
9000         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9001         patch. Now, the tempfile module is loaded too, not only used.
9002
9003 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9004
9005         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9006         0.05 - 1.00 to 0.25 - 1.00
9007
9008         * scm/midi.scm: moved the default-instrument-equalizer procedure
9009         to just under the insturment-equalizer-alist it takes as an
9010         argument.
9011
9012 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9013
9014         * Documentation/user/advanced-notation.itely (Font selection):
9015         remove CMR note.
9016
9017         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9018
9019 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9020
9021         * THANKS: Add UTF-8 marker.
9022
9023         * Documentation/user/point-and-click.itely (http): Update: use
9024         lilypond-invoke-editor.  Fix: instruct to use user.js.
9025
9026 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9027
9028         * ly/titling-init.ly: implements printpagenumber, increases
9029         space between dedication and title (to avoid collisions with
9030         "g" and "q" in dedication), and nicer logic about copyright
9031         and instrument fields being printed on the first page.
9032         Thanks Vincent!
9033
9034         * Documentation/user/global.itely: document printpagenumber.
9035
9036 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9037
9038         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9039
9040 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9041
9042         * THANKS: update to 2.6
9043
9044         * VERSION: 2.6.0 released.
9045
9046 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9047
9048         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9049         rule, errorneously removed probably because of misleading comment.
9050
9051 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9052
9053         * python/lilylib.py (datadir): py2exe comments.
9054
9055         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9056
9057         * configure.in (reloc_b): make fontconfig REQUIRED.
9058
9059 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9060
9061         * po/fi.po: add latest translations.
9062
9063 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9064
9065         * ChangeLog: recode utf-8
9066
9067         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9068         logo.
9069
9070         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9071
9072         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9073
9074         * python/convertrules.py (do_conversion): don't print program_name
9075         from within a module
9076
9077         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9078
9079         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9080
9081 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9082
9083         * Documentation/user/lilypond-book.itely,
9084         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9085
9086         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9087         fixes baseline-skip.  Thanks Vincent!
9088
9089         * Documentation/user/advanced-notation.itely, global.itely:
9090         moved "Selecting font sizes" to global, since it deals with
9091         notation font size, not text fonts.
9092
9093 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9094
9095         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9096         to fonts.
9097
9098 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9099
9100         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9101         workaround since /dev/stdin doesn't work on Cygwin. Using a
9102         temporary file in the current directory since latex doesn't
9103         understand the path name to the default TMP in Cygwin (at least on
9104         win XP).
9105         
9106         * Documentation/user/global.itely (Creating titles): Correct
9107         misprint in example. Thanks to Rob Vlasaty.
9108
9109 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9110
9111         * VERSION (PATCH_LEVEL): release 2.5.32
9112
9113         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9114         variable in lily module
9115
9116         * scm/framework-ps.scm (output-classic-framework): error message
9117         regarding the classic framework.
9118
9119         * Documentation/user/henle-flat-gray.png (Module): new file.
9120
9121         * Documentation/user/baer-flat-gray.png (Module): new file.
9122
9123         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9124         whiteout for markups.
9125
9126         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9127         regex too. This fixes change clef appearance in PDF. 
9128
9129         * ttftool/include/*: remove.
9130
9131         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9132
9133         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9134
9135         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9136
9137         * ttftool/*: remove ttftool subdirectory.
9138
9139         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9140
9141         * lily/ttf.cc (print_header): new file. Convert to type42, using
9142         FreeType to parse the TTF. 
9143
9144         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9145         and post table may differ. Pass around post_nglyphs as well.
9146
9147 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9148
9149         * ly/music-functions-init.ly (musicMap): new music function
9150         musicMap. 
9151         
9152 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9153
9154         * make/mutopia-rules.make: anti-alias-factor = 2
9155
9156         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9157         page switch.
9158
9159         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9160         anti-alias-factor for lilypond-book runs.
9161
9162         * scm/ps-to-png.scm (scale-down-image): new function.
9163         (my-system): new function.
9164         (make-ps-images): blow up GS resolution by anti-alias-factor,
9165         scale down image by anti-alias-factor.  This improves appearance
9166         of bitmaps
9167         (make-ps-images): remove showpage. Fixes spurious empty png at
9168         end.
9169
9170         * scm/framework-ps.scm (write-preamble): downcase filename before
9171         string-matching. Should fix .TTF files (as opposed to ttf files)  
9172
9173         * Documentation/user/tutorial.itely (Running LilyPond for the
9174         first time): separate subsections for windows, macos and unix.  
9175
9176         * Documentation/user/invoking.itely (Updating files with
9177         convert-ly): add MacOS X note.
9178
9179 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9180
9181         * Documentation/user/introduction.itely (Engraving): don't include
9182         file optical-spacing, add directly.
9183
9184         * lily/paper-outputter.cc (file): open file in binary mode. This
9185         fixes OTF embedding on windows.
9186
9187 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9188
9189         * scm/framework-ps.scm (write-preamble): remove debugging output.
9190
9191         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9192
9193         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9194         outdir.
9195         (install-fc-cache): install font cache in installation directories.
9196
9197 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9198
9199         * scm/editor.scm (editor-command-template-alist): Use char iso
9200         column, except for Emacs.
9201         (get-editor-command): Substitute char too (Bertalan Fodor).
9202
9203 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9204
9205         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9206         quoted ~s.  This should fix PNG output on Windows; single quotes
9207         are regular characters on Windows.
9208
9209 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9210
9211         * Documentation/user/basic-notation.itely: include ChoirStaff
9212         in System start delimiters.
9213
9214         * Documentation/user/putting.itely: new doc section on
9215         fixing overlapping notation.
9216
9217 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9218
9219         * Documentation/user/global.itely (Paper size): \paper is in
9220         \book, not \score.
9221
9222         * make/mutopia-rules.make: -ddelete-intermediate-files
9223
9224         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9225
9226 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9227
9228         * ChangeLog: Recode utf-8.
9229
9230         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9231         datadir with .py modules.
9232
9233 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9234
9235         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9236
9237 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9238
9239         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9240         
9241         * scm/framework-ps.scm (write-preamble): remove status check.
9242
9243         * Documentation/user/invoking.itely (Updating files with
9244         convert-ly): remove -o option.
9245
9246         * VERSION (PACKAGE_NAME): release 2.5.31
9247
9248         * scm/framework-ps.scm (write-preamble): use ly:system.
9249         (write-preamble): verbosity.
9250
9251         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9252
9253         * python/convertrules.py: new file. Store conversion rules
9254         separately.
9255
9256 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9257
9258         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9259
9260 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9261
9262         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9263         \musicDisplay 
9264
9265         * Documentation/user/instrument-notation.itely (More stanzas): Add
9266         reference to StanzaNumber.
9267
9268 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9269
9270         * THANKS: separate section for website translators.
9271
9272 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9273
9274         * Documentation/topdocs/INSTALL.texi: update vim info;
9275         thanks Simon Bailey!
9276
9277         * Documentation/user/advanced-notation.itely: included
9278         color names.
9279
9280         * Documentation/user/advanced-notation.itely,
9281         Documentation/usr/notation-appendices.itely: moved
9282         color names into an appendix.
9283
9284 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9285         
9286         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9287
9288         * scm/lily.scm (lambda): initialize program options from here.
9289
9290         * scm/framework-*.scm: add header info.
9291
9292         * lily/main.cc (parse_argv): only set output format to pdf if no
9293         other format specified.
9294
9295         * scm/backend-library.scm (postprocess-output): process
9296         'delete-intermediate-files after running convert-to-*. This fixes
9297         PNG generation when 'delete-intermediate-files is set.
9298         
9299 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9300
9301         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9302         links on website. 
9303
9304 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9305
9306         * Documentation/topdocs/INSTALL.texi,
9307         Documentation/user/lilypond-book.itely: typos.
9308
9309 2005-06-12  Pal Benko  <benkop@freestart.hu>
9310
9311         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9312         added between program name and switch; -b changed to -f not
9313         to generate pdf
9314
9315 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9316
9317         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9318         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9319
9320         * input/sakura-sakura.ly: add \midi.
9321
9322         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9323         iso. python find. 
9324
9325         * ttftool/test.c (main): cosmetics.
9326
9327         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9328
9329         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9330         create a ttf2ps binary.
9331
9332         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9333
9334         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9335         true.
9336
9337 2005-06-11  Graham Percival <gperlist@shaw.ca>
9338
9339         * Documentation/user/lilypond-book.itely: add warning about
9340         the font warnings in dvips.
9341
9342 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9343
9344         * THANKS: typo
9345
9346         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9347
9348         * GNUmakefile.in: remove links for .map, .enc
9349         don't fail if out/ doesn't exist yet.
9350
9351 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9352
9353         * ttftool/util.c (surely_read): return nbytes
9354
9355         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9356
9357         * VERSION (PACKAGE_NAME): release 2.5.30
9358
9359         * flower/string-convert.cc (precision_string): >? fix.
9360
9361         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9362         (make-ps-images): add verbose -q too.
9363
9364         * lily/default-actions.cc (Module): new file. default
9365         {book,score}-print functions.
9366
9367         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9368         pass results via parseStringResult, lookup via ly:parser-lookup.  
9369
9370         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9371         constructors.
9372         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9373         (parse_string): idem.
9374
9375         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9376
9377         * lily/main.cc (main_with_guile): copy be_verbose_global into
9378         ly_set_option()
9379
9380 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9381
9382         * scm/backend-library.scm (postscript->pdf):
9383         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9384         verbose mode.  Search for several names of gs executable.
9385
9386 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9387
9388         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9389         directly. This fixes a massive memory leak, provided you use CVS
9390         GUILE.
9391
9392 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9393
9394         * ly/property-init.ly: Added tieDashed.
9395
9396         * THANKS: Added some bughunters for 2.5.
9397
9398 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9399
9400         * lily/program-option.cc: add debug-gc option.
9401
9402         * lily/include/lily-guile-macros.hh: don't protect exported module
9403         objects.
9404
9405         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9406
9407         * scm/backend-library.scm (postscript->pdf): use
9408         delete-intermediate-files iso. running-from-gui? 
9409
9410         * ttftool/util.c (surely_read): robustness. Allow read() to return
9411         less bytes than requested, as per posix standards.
9412
9413         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9414         program option.
9415
9416         * ttftool/include/ttftool.h ("C"): rename verbosity to
9417         ttf_verbosity. Add to public interface.
9418
9419         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9420
9421         * lily/program-option.cc: rename from scm-option.cc
9422
9423         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9424         (get_help_string): Print pretty help string.
9425
9426         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9427         to snippet preamble.
9428
9429         * lily/scm-option.cc: remove command-line-settings option. Fold
9430         all command-line options plus default settings in a generic
9431         interface. 
9432
9433         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9434         texts too.
9435
9436 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9437
9438         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9439         or EXT_ components non-empty.
9440
9441 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9442
9443         * scm/lily.scm (running-from-gui?): Export.
9444
9445         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9446         output in .ly source directory.
9447
9448 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9449
9450         * ttftool/util.c (surely_lseek): more verbosity.
9451
9452         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9453         compile.
9454
9455         * lily/parser.yy (Repeated_music): remove >? 
9456
9457         * scm/backend-library.scm (postscript->pdf): Support for
9458         -dgs-font-load=1
9459
9460         * scm/framework-ps.scm (write-preamble): make font loading
9461         switchable to GS via --define-default gs-font-load=1
9462
9463 2005-06-09  Graham Percival  <gperlist@shaw.ca>
9464
9465         * Documentation/user/global.itely: added \layout docs.
9466
9467 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9468
9469         * lily/lily-parser-scheme.cc: add unistd.h
9470
9471 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9472
9473         * scm/editor.scm: add char argument.
9474
9475         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
9476
9477         * ttftool/util.c (syserror): use errno for better error reporting.
9478
9479         * lily/source-file.cc (get_counts): new function. Calc column,
9480         line and char count in one go.
9481
9482         * lily/binary-source-file.cc (quote_input): rename to quote_input
9483
9484         * lily/input.cc (set): new function.
9485
9486 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9487
9488         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
9489         directory part of file name to search directory.
9490
9491         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
9492         search path and chdir to DIR if --outname=DIR used.
9493
9494         * lily/main.cc (prepend_env_path): Bugfix: Check directory
9495         existence before appending original path.
9496
9497 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9498
9499         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
9500         file" massage.
9501
9502         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
9503         texinfo.tex is always used.
9504         
9505 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9506
9507         * flower/include/axis.hh: rename from axes.hh
9508
9509         * lily/include/text-interface.hh (Module): rename from text-item.hh
9510
9511         * VERSION (PATCH_LEVEL): release 2.5.29
9512
9513         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
9514
9515         * scm/framework-ps.scm (font-file-as-ps-string): new function.
9516         (handle-macfont): new function. Call fondu for Native mac fonts.
9517
9518         * scm/define-markup-commands.scm (fill-line): handle text-widths =
9519         '() case.
9520
9521 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9522
9523         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
9524         multi-page.  Fix .eps regular expression.
9525
9526 2005-06-07  Graham Percival  <gperlist@shaw.ca>
9527
9528         * Documentation/user/putting.itely: add info on modifying templates.
9529
9530         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
9531         misc small changes.
9532
9533 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9534
9535         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
9536
9537         * scripts/lilypond-ps2png.scm
9538
9539         * VERSION (PACKAGE_NAME): release 2.5.28
9540
9541 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9542
9543         * lily/main.cc (prepend_env_path): Do not append /, that does not
9544         work.  Localedir lives in datadir, not in prefix.
9545
9546         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
9547         hack for windows.
9548
9549         * flower/include/file-cookie.hh: Compile fix.
9550
9551 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9552
9553         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
9554
9555         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
9556         system primitives.
9557         (gulp-port): using read-string!/partial. We don't want to read an
9558         entire PS file  (GUILE 1.6 limits strings to 16M) 
9559
9560         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
9561         properties. Add font-interface. 
9562
9563         * scm/define-grob-properties.scm (all-user-grob-properties):
9564         remove old bracket properties.
9565
9566         * scm/x11-color.scm: reformat. 
9567
9568         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
9569         LedgerLineSpanner if new StaffSymbol is found. 
9570
9571         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
9572         staff-symbol for finishing staff. 
9573
9574         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
9575
9576         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
9577         change black to currentColor everywhere. This fixes color support
9578         in SVG.
9579
9580 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
9581
9582         * input/regression/fret-diagrams.ly: new file to test fret diagram
9583         capability
9584
9585         * scm/output-tex.scm: remove white-dot and white-text
9586
9587         * scm/output-ps.scm: remove white-dot and white-text
9588
9589         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
9590         using ly:stencil-in-color instead
9591         (draw-dots) : remove call to white-dot
9592
9593 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9594
9595         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
9596         support.
9597
9598         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
9599
9600         * flower/include/file-cookie.hh: new file. lily_cookie extension 
9601
9602         * flower/file-cookie.cc: new file. lily_cookie extension.
9603         
9604 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9605
9606         * scm/editor.scm (editor-command-template-alist): Add syn
9607         editor (Jaap [de Vos]).
9608
9609 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
9610
9611         * scripts/lilypond-ps2png.scm:
9612         * scm/ps-to-png.scm: New file.
9613
9614         * scm/backend-library.scm (postscript->png): Use it.
9615
9616         * scripts/lilypond-ps-to-png.py: Remove file.
9617
9618         * python/lilylib.py (get_bbox, make_ps_images): Remove.
9619
9620 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9621
9622         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
9623
9624         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
9625         start on grace moment. Fixes autobeam-grace.ly.
9626
9627         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
9628         process anything unless we're at the end of a pending beam. Fixes
9629         syncopated 8ths beamed across a beat.
9630
9631 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
9632
9633         * scm/editor.scm (editor-command-template-alist): Start emacs if
9634         emacslient fails.
9635
9636         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
9637
9638         * flower/file-path.cc (is_file, is_dir): Export.
9639
9640         * lily/main.cc (prepend_env_path, set_env_file): Use them.
9641
9642 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
9643
9644         * lily/easy-notation.cc: Added include cctype to correct
9645         compilation error.
9646
9647 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9648
9649         * scm/backend-library.scm (postscript->pdf): set resolution to
9650         1200, so bitmap fonts aren't that ugly. 
9651
9652         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
9653
9654         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
9655         parent if we have a notehead. Fixes incorrect offsets when
9656         Paper_column is very wide in the X direction.
9657
9658         * input/regression/font-family-override.ly (Module): new file.
9659
9660         * scm/font.scm (make-pango-font-tree): new function.
9661
9662         * lily/beam.cc (before_line_breaking): remove warning about less
9663         than 2 visible stems. We still get a warning when there is only
9664         one stem.
9665
9666 2005-06-01  Werner Lemberg  <wl@gnu.org>
9667
9668         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
9669         correctly.
9670
9671 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9672
9673         * lily/slur-scoring.cc (generate_avoid_offsets): new
9674         function. Generate avoid offsets once per slur.
9675
9676         * lily/slur.cc (add_extra_encompass): add dependency to
9677         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
9678
9679         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
9680         too. Fixes inf error with added bass notes.
9681
9682         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
9683         argument anymore.
9684
9685         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
9686
9687         * input/tutorial/lbook-latex-test.tex: add line length test.
9688
9689         * scripts/lilypond-book.py (set_default_options): new
9690         function. Call this before dissecting snippets, so linewidth
9691         settings reach the snippets.
9692
9693 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9694
9695         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
9696
9697 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9698
9699         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
9700
9701 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9702
9703         * stepmake/aclocal.m4: More autopackage friendliness.
9704
9705 2005-05-31  Graham Percival  <gperlist@shaw.ca>
9706
9707         * Documentation/index.html.in: remove link to LSR.
9708
9709         * Documentation/user/global.itely: remove duplicate
9710         "dedication" \header{} section.
9711
9712 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9713
9714         * VERSION (PACKAGE_NAME): release 2.5.27.
9715
9716         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
9717         too. Plugs memory leak.
9718
9719         * make/lilypond.fedora.spec.in (Group): remove
9720         lilypond-pdfpc-helper.
9721
9722         * scripts/GNUmakefile (SEXECUTABLES): remove
9723         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
9724
9725         * scm/font.scm (make-century-schoolbook-tree): add Mono as
9726         'typewriter family.
9727
9728         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
9729         memory leak.
9730
9731         * lily/parser.yy (score_body): don't clone Score, that's done in
9732         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
9733
9734         * lily/score-engraver.cc (derived_mark): new function.
9735         (initialize): unprotect Paper_score. This fixes a memory leak.
9736
9737         * lily/score-performer.cc (derived_mark): new function.
9738
9739         * lily/score-translator.cc (get_output): use SCM for get_output() call.
9740
9741         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
9742         spurious warning.
9743
9744         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
9745         serif.
9746
9747 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9748
9749         * configure.in (reloc_b): Add --enable-relocation.
9750
9751 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9752
9753         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
9754
9755         * input/regression/alignment-order.ly: add Staff example.
9756
9757 2005-05-31  John Mandereau   <john.mandereau@free.fr>
9758
9759         * po/fr.po: update.
9760
9761 2005-05-31  Graham Percival  <gperlist@shaw.ca>
9762
9763         * Documentation/index.html.in: add link to LSR.
9764
9765 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9766
9767         * scm/define-stencil-commands.scm (Module): new file. Register all
9768         allowed stencil expression heads in a central place.
9769
9770         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
9771         ly:make-stencil
9772
9773         * lily/stencil-expression.cc (all_stencil_heads): registering
9774         stencil expressions.
9775
9776         * lily/stencil-interpret.cc: new file. Stencil expression
9777         interpreting.
9778
9779         * input/xiao-haizi-guai-guai.ly: move file back.
9780
9781 2005-05-30  Graham Percival  <gperlist@shaw.ca>
9782
9783         * Documentation/user/advanced.itely, converters.itely,
9784         instrument-notation.itely, lilypond-book.itely: misc small
9785         changes.
9786
9787 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9788
9789         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
9790
9791         * make/lilypond.fedora.spec.in: Fix source url.
9792
9793         * cygwin: Update from mingw patches.
9794
9795         * scm/editor.scm (editor-command-template-alist): Use jedit
9796         -reuseview (Bertalan), add uedit (Patrick Huberts).
9797
9798         * input/xiao-hai-zi-guai-guai.ly: Rename from
9799         xiao-haizi-guai-guai.ly.
9800
9801         * input/*: Reindent, do not use TAB.
9802
9803         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
9804         white background.
9805
9806 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
9807
9808         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
9809         numerical overflow error.
9810
9811 2005-05-29 Laura Conrad <lconrad@laymusic.org>
9812         
9813         * abc2ly.py: fix to syntax error in multi-part output.
9814
9815 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9816
9817         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
9818         with disappearing span bars when alignAboveContext is active
9819
9820         * lily/property-iterator.cc (check_grob): use is-grob?
9821         object-property. Fixes crash-key-sig-font-size.ly. 
9822
9823 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9824
9825         * lily/bar-line.cc (print): don't round barlines; this produces
9826         odd aliasing effects in Acroread.
9827
9828         * lily/timing-engraver.cc (process_music): robustness fix.
9829
9830         * lily/context-def.cc (filter_engravers): bugfix.
9831
9832 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9833
9834         * lily/lilypond.rc.in: Add ly-icon.
9835
9836         * lily/GNUmakefile: 
9837         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
9838         rules.
9839
9840 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9841
9842         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
9843
9844         * ps/music-drawing-routines.ps: 
9845
9846         * scm/output-ps.scm: remove draw ez_ball.
9847
9848         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9849         EasyNotation context definition.
9850
9851         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
9852         Text_interface and color for making easy note heads.
9853
9854         * lily/stencil.cc (with_color): new function.
9855
9856         * ps/music-drawing-routines.ps: remove draw_zigzag_line
9857
9858         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
9859         output routine. Zigzag now works in SVG too.
9860
9861         * scm/output-tex.scm (filledbox): idem.
9862
9863         * scm/output-svg.scm (filledbox): idem.
9864
9865         * scm/output-ps.scm (lily-def): remove horizontal-line. 
9866
9867         * lily/lookup.cc (horizontal_line): use draw-line. 
9868
9869         * lily/system-start-delimiter.cc: remove old staff bracket code.
9870
9871         * mf/feta-haak.mf: further tweaks.
9872
9873         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
9874
9875         * mf/feta-generic.mf: include feta-haak.
9876
9877         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
9878
9879         * scm/framework-ps.scm (write-preamble): only load fonts if their
9880         filename is a string. 
9881
9882 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9883
9884         * scm/output-svg.scm (circle): support circle.
9885         (bracket): stub for bracket.
9886
9887         * scripts/lilypond-book.py (main): make sure --psfonts warning is
9888         correct.
9889
9890 2005-05-26  Graham Percival  <gperlist@shaw.ca>
9891
9892         * Documentation/user/lilypond.tely, advanced-notation.itely,
9893         basic-notation.itely, instrument-notation.itely, global.itely,
9894         introduction.itely, tutorial.itely: rearranging, editing,
9895         clean-up.
9896
9897         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
9898         for compiling on FreeBSD.
9899
9900 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9901
9902         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
9903         otf files.
9904
9905         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
9906         bugfixes.
9907
9908         * VERSION: 2.5.26 released.
9909
9910         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
9911
9912 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
9913
9914         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
9915         if printpagenumber is false.
9916
9917 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9918
9919         * lily/font-config.cc (init_fontconfig): comment out FontConfig
9920         cache warning.
9921
9922         * lily/tie.cc (print): support dotted ties.
9923         
9924 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9925
9926         * scm/define-grobs.scm (all-grob-descriptions): switch off
9927         debugging
9928         (all-grob-descriptions): Arpeggio has Y-extent.
9929
9930         * scm/define-music-properties.scm (all-music-properties): document
9931         length-callback and start-callback as "read-only".
9932
9933         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
9934         length-callback after creation. 
9935
9936         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
9937         compressmusic -> compressMusic.
9938
9939         * ly/music-functions-init.ly (oldaddlyrics): idem.
9940
9941         * lily/parser.yy: NewLyricCombineMusic ->
9942         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
9943
9944 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
9945
9946         * ly/Welcome_to_LilyPond.ly: typo.
9947
9948 2005-05-24  Graham Percival  <gperlist@shaw.ca>
9949
9950         * Documentation/user/lilypond.tely: move changing-defaults to be
9951         before global issues.
9952
9953         * Documentation/user/basic-notation.itely: move Transpose section
9954         here from advanced/Other.
9955
9956         * Documentation/user/changing-defaults.itely,
9957         advanced-notation.itely: move Fonts to advanced, edit.
9958
9959 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9960
9961         * lily/parser.yy (bare_int): remove rule.  From now on, we require
9962         # before negative integers.
9963
9964 2005-05-23  Graham Percival  <gperlist@shaw.ca>
9965
9966         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
9967
9968         * Documentation/user/lilypond.tely: change Unified index to
9969         LilyPond index.
9970
9971         * Documentation/user/advanced-notation.itely,
9972         instrument-notation.itely: editing.
9973
9974 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
9975
9976         * scm/lily.scm (lilypond-all): Bugfix: return failed.
9977
9978         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
9979
9980 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
9981
9982         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
9983         ly:port-move.  Needs to be stderr-specific on mingw.
9984         Run fixcc.
9985
9986 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
9987
9988         * lily/general-scheme.cc (ly:port-move): Remove.
9989
9990         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
9991         windows.
9992
9993         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
9994         variables.  This eliminates the need for a gs.bat wrapper, which
9995         opens a console.
9996
9997         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
9998         * scm/lily.scm (running-from-gui?): 
9999         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10000         artifact of not compiling with -mwindows.
10001
10002         * scm/editor.scm: Define PLATFORM.
10003
10004 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10005
10006         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10007         can start to cut & paste lilypond-book fragments.  
10008
10009         * scm/define-music-types.scm (music-descriptions): remove
10010         UntransposableMusic
10011
10012 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10013
10014         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10015
10016 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10017
10018         * Documentation/user/instrument-notation.itely: remove *Engraver.
10019
10020         * Documentation/user/advanced-notation.itely: edit, rearrange.
10021
10022 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10023
10024         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10025         findresource iso. findfont for CID CFF fonts.
10026
10027         * VERSION (PACKAGE_NAME): release 2.5.25
10028
10029         * ly/Welcome_to_LilyPond.ly: add  \version
10030
10031 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10032
10033         * Documentation/user/programming-interface.itely: move
10034         \displayMusic into its own section.
10035
10036         * Documentation/user/basic-notation.itely: finish editing.
10037
10038 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10039
10040         * flower/file-path.cc (find): don't throw away file_name.dir, but
10041         append to it. Fixes \include with directories.
10042
10043         * flower/include/file-path.hh (class File_path): don't derive from
10044         Array<String>.
10045
10046         * flower/include/file-name.hh (class File_name): remove to_str0()
10047
10048         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10049         Hara_kiri_engraver in separate file.
10050
10051         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10052         translation went wrong. Fixes vertically translated slurs.
10053
10054 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10055
10056         * Documentation/user/basic-notaton.itely: editing.
10057
10058 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10059
10060         * Documentation/user/macros.itexi, basic-notation.itely:
10061         add @commonprop (commonly used properties) macro.
10062
10063 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10064
10065         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10066
10067         * scripts/lilypond-book.py (invokes_lilypond): new function
10068         (main): only run fontextract if invokes_lilypond() is true.
10069
10070         * lily/function-documentation.cc (ly_add_function_documentation):
10071         duh, use !=
10072
10073         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10074
10075         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10076
10077         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10078
10079         * lily/function-documentation.cc (ly_add_function_documentation):
10080         use scm_hash_table_p() for checking.
10081
10082 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10083
10084         * Documentation/user/advanced-notation.itely (Text scripts):
10085         Change nonexisting @internalsref{Text markup} to @ref{Text
10086         markup}.  Change @internalsref{Text script} to
10087         @internalsref{TextScript}.
10088
10089         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10090
10091 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10092
10093         * Documentation/user/tutorial.itely, basic-notation.itely,
10094         changing-defaults.itely: remove duplicate cindex entries
10095         that appear on the same page.
10096
10097         * scm/define-grobs.scm: change default padding for TextSpanner.
10098
10099         * Documentation/topdocs/AUTHORS.texi: update email address.
10100
10101         * Documentation/user/global.itely: add info about \include.
10102
10103 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10104
10105         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10106         when running-from-gui.
10107
10108         * scm/editor.scm (get-editor): Add platform defaults.
10109
10110         * scm/backend-library.scm (postscript->pdf): Typo.
10111
10112 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10113
10114         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10115
10116         * lily/font-config.cc (init_fontconfig): add warning about cache.
10117
10118 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10119
10120         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10121
10122 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10123
10124         * lily/horizontal-bracket.cc (print): Take care of the direction
10125         property so brackets above the stave point downwards. 
10126
10127         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10128         for HorizontalBracket so it doesn't end up within the stave.
10129
10130 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10131
10132         * lily/GNUmakefile (default): Typo.
10133
10134         * scm/lily.scm (PLATFORM): Export.
10135
10136         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10137         load-font-via-GS, ttftool or fopencookie is broken on windows.
10138         
10139         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10140         -dSAFER, that is broken on windows.
10141
10142 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10143
10144         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10145         for FlexLexer.h
10146
10147         * scripts/lilypond-invoke-editor.scm: remove stray -
10148
10149 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10150
10151         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10152         Fixes deprecation warning.
10153
10154         * flower/include/string.icc (to_string): Only inline if
10155         -DSTRING_UTILS_INLINED.
10156
10157         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10158         name.  Remove windows comment.
10159
10160         * scm/editor.scm (slashify): New function.
10161         (get-editor-command): Use it.
10162         (get-command-template): Do not alter editor command if
10163         environment value includes `%(file)s' magic.
10164
10165         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10166         (dissect-uri): Use it.
10167         (unquote-uri): Bugfix.
10168
10169 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10170
10171         * scm/framework-ps.scm (write-preamble): add TTF rule.
10172
10173         * Documentation/topdocs/README.texi (Top): remove note about
10174         xdelta.
10175
10176         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10177         requirement.
10178
10179         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10180         function. Figure out where FlexLexer.h lives
10181
10182         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10183         
10184 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10185
10186         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10187         with Windows root in file name.
10188
10189         * scm/backend-library.scm (ly:system): Only redirect output (using
10190         system and shell, ugh) if /dev/null is writable.
10191
10192         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10193         windows icon.
10194
10195         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10196         on Mingw.
10197
10198         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10199         click.
10200
10201         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10202         use result of stat when available.
10203
10204         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10205         absolute file name and root.
10206
10207         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10208
10209         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10210
10211         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10212         slashes in file name.
10213
10214 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10215
10216         * Documentation/user/preface.itely (Preface): Run
10217         texinfo-all-menus-update.
10218
10219         * scm/editor.scm (get-editor-command): Bugfix: allow full
10220         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10221
10222         * Documentation/pictures/lilypond-48.xpm: New file.
10223
10224         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10225
10226         * ly/Welcome_to_LilyPond.ly: New file.
10227
10228         * lily/main.cc (main): Only identify if we have a terminal.
10229
10230         * scm/backend-library.scm (postscript->png)
10231         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10232         non-/bin/sh).
10233
10234 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10235
10236         * Documentation/topdocs/AUTHORS.texi: polish, update.
10237
10238 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10239
10240         * Documentation/user/preface.itely (Notes for version 2.6): new
10241         notes for 2.6
10242
10243         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10244         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10245         is not fully contained" warnings.
10246
10247         * lily/slur-scoring.cc (get_bound_info): remove warning.
10248
10249         * lily/staff-symbol-engraver.cc (process_music): start initial
10250         spanner in process_music(). This fixes overrides of StaffSymbol
10251         properties.
10252
10253         * scm/framework-pdf.scm (Module): remove.
10254
10255         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10256
10257         * lily/ambitus-engraver.cc: formatting cleanups.
10258
10259         * mf/feta-solfa.mf (Module): remove.
10260
10261         * ChangeLog: more details about contributions.
10262
10263 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10264
10265         * lily/align-interface.cc (align_elements_to_extents): warn if
10266         called too early. Fixes: disappearing-staff-lines.ly
10267
10268         * VERSION (PACKAGE_NAME): release 2.5.24
10269
10270 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10271
10272         * stepmake/aclocal.m4: Typo.
10273
10274         * flower/string.cc (substitute): Take two strings or two
10275         characters.  Update callers.
10276
10277 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10278
10279         * flower/file-name.cc (File_name): Slashify.
10280
10281         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10282
10283         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10284
10285         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10286
10287         * configure.in (gui_b): Use it.
10288
10289         * lily/lilypond.rc.in: New file.
10290
10291         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10292
10293 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10294
10295         * Documentation/user/advanced-notation.itely: edit of Text
10296         section; clarify text scripts vs. text markup.
10297
10298 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10299
10300         * lily/multi-measure-rest-engraver.cc
10301         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10302         separation items on start. Fixes mm rests in start of score.
10303
10304         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10305         don't access StaffSymbol if not there.
10306         Fixes: crash-staff-symbol-engraver.ly.
10307
10308         * lily/instrument-name-engraver.cc (class
10309         Instrument_name_engraver): data member first_. Create
10310         InstrumentName on start. 
10311
10312 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10313
10314         * Documentation/user/instrument-notation.itely: add guitar
10315         position.
10316
10317         * Documentation/user/introduction.itely,
10318         Documentation/user/lilypond.tely,
10319         Documentation/user/tutorial.itely: begin pruning
10320         unused (duplicated) cindex entries and misc cleanup.
10321
10322 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10323
10324         * input/test/volta-chord-names.ly: Bring the explanation up to
10325         date.
10326
10327 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10328
10329         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10330         Specify `@documentencoding utf-8' for html, ignore warnings.
10331
10332 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10333
10334         * THANKS: Added bughunters.
10335
10336 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10337
10338         * lily/main.cc: update help string for `lilypond -H'.
10339
10340         * po/fi.po: update.
10341         
10342 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10343
10344         * Documentation/user/advanced-notation.itely: minor fixes.
10345
10346 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10347
10348         * scm/editor.scm: New module.
10349
10350         * scm/lily.scm (gui-main): Use it.
10351
10352         * scm/framework-gnome.scm (spawn-editor): Use it.
10353
10354         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10355
10356 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10357
10358         * scm/framework-ps.scm (load-font-via-GS):  new function.
10359
10360         * lily/pango-font.cc (pango_item_string_stencil): add support for
10361         CID keyed font.
10362
10363         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10364
10365 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10366
10367         * Documentation/user/basic-notation.itely: add @ref.
10368
10369         * Documentation/user/advanced-notation.itely: add example
10370         of 5/8 beaming.
10371
10372 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10373
10374         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10375
10376         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10377         going through ps2pdf wrappers.
10378
10379 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10380
10381         * Documentation/user/instrument-notation.itely: petrucci note
10382         heads: updated docu
10383
10384         * input/regression/note-head-style.ly: updated regression test;
10385         indentation fixes
10386
10387         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10388         heads as default
10389
10390         * mf/parmesan-heads.mf: minor editing; use musicological names
10391         (rather than optical description) as note head names
10392
10393         * scm/output-lib.scm: complete petrucci heads
10394
10395 2005-05-09  Pal Benko  <benkop@freestart.hu>
10396
10397         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10398         heads, but bigger)
10399
10400 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10401
10402         * lily/main.cc (main_with_guile): Remove no files check.
10403
10404         * lily/main.cc (ly:usage): Export to Scheme.
10405
10406         * scm/lily.scm (no-files-handler): New function.
10407
10408         * scm/lily.scm (lilypond-main): Use it.
10409
10410         * configure.in (gui_b): Add mbrtowc checking.
10411         Resurrect [utf8/]wchar.h checking.
10412
10413 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10414
10415         * Documentation/user/advanced-notation.itely (Metronome marks):
10416         Add link to the program reference for MetronomeMark
10417
10418         * Documentation/user/lilypond-book.itely (An example of a
10419         musicological document): Correct the example using psfonts 
10420
10421 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10422
10423         * po/fi.po: update after a lesson how to update entries against
10424         source.
10425         
10426         * po/TODO: document the lesson.
10427
10428 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10429
10430         * configure.in (gui_b): remove wcrtomb checking.
10431
10432         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10433         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10434
10435 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10436
10437         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10438         keep Scheme expressions and strings unmodified when doing the
10439         conversion to postfix notation for slurs and beams. Should
10440         hopefully solve most related conversion problems. 
10441
10442         * Documentation/user/lilypond-book.itely : Clarify and correct how
10443         to call dvips with -h psfonts.
10444
10445 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10446
10447         * Documentation/user/instrument-notation.itely (Entering lyrics):
10448         Typo.  Fixes build.
10449
10450 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10451
10452         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10453
10454         * Documentation/user/lilypond.tely, lilypond-book.itely,
10455         tutorial.itely: change references to 2.5.x to 2.6.x.
10456
10457         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10458         vs \lyricmode.
10459
10460         * Documentation/user/invoking.itely: remove old info about
10461         lilypond-profile.
10462
10463         * Documentation/topdocs/INSTALL.texi: remove old info about
10464         lilypond-profile, add warning about needing international fonts
10465         to build docs.
10466
10467 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10468
10469         * lily/include/grob-info.hh (class Grob_info): make data member
10470         private. Changes throughout.
10471
10472         * input/regression/alignment-order.ly: new file. 
10473
10474         * lily/vertical-align-engraver.cc (acknowledge_grob): read
10475         alignAboveContext and alignBelowContext
10476
10477 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10478
10479         * lily/pfb.cc (LY_DEFINE): add cast.
10480
10481         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
10482         matches .otf
10483         (write-preamble): warn about unknown fonts.
10484
10485         * lily/pfb.cc (Module): new function ly:otf->cff
10486
10487         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
10488         (get_otf_table): new function.
10489
10490 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10491
10492         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
10493         iso. ps2png.
10494
10495 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
10496
10497         * po/fi.po: apply second round of update.
10498
10499 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10500
10501         * scm/x11-color.scm (make-x11-color-handler): don't use
10502         #\sp. Apparently doesn't work on all platforms. 
10503
10504 2005-05-06  Graham Percival  <gperlist@shaw.ca>
10505
10506         * Documentation/user/advanced-notation.itely, putting.itely,
10507         tutorial.itely, global.itely, introduction.itely: really minor fixes.
10508
10509 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10510
10511         * VERSION (PACKAGE_NAME): release 2.5.23
10512
10513 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10514
10515         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
10516         convert to utf-8.
10517
10518         * THANKS: Add translators for this release, convert to utf-8.
10519
10520         * mf/GNUmakefile (MFTRACE_FLAGS):
10521         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
10522         outdir as option (WAS: hardcoded).
10523
10524 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10525
10526         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
10527         finished_span_
10528
10529         * THANKS: add Hans Forbrich.
10530
10531         * Documentation/topdocs/NEWS.tely (Top): document new feature.
10532
10533         * Documentation/user/basic-notation.itely (Staff symbol): document
10534         start/stop staff. Reference to ossia.ly
10535
10536         * input/test/ossia.ly: new example using stop and startStaff.
10537
10538         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
10539         in other words, don't create "|" barline at start of the score.
10540         (start_translation_timestep): don't set whichBar for start of score.
10541
10542         * input/regression/staff-halfway.ly: use new functionality.
10543
10544         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
10545         start and stop staff based on events.
10546
10547         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
10548
10549         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
10550
10551 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10552
10553         * Documentation/user/programming-interface.itely (How markups work
10554         internally ): remove \encoding reference.
10555
10556 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
10557
10558         * scripts/convert-ly.py: Attempt to do a smarter update of 
10559         text markups from versions < 1.9.0 with arbitrary nesting.
10560
10561 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
10562
10563         * po/fi.po: convert to utf-8, and update.
10564
10565 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10566
10567         * make/lilypond.suse.spec.in: update from suse 2.4 package.
10568
10569         * lily/*.cc: more <? >? to min/max changes
10570
10571         * lily/include/interpretation-context-handle.hh: rename
10572         Interpretation_context_handle to Context_handle.
10573
10574 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
10575
10576         * input/regression/GNUmakefile (local_delete): use `find` together 
10577         with `xargs` to avoid too long argument-lists in cmd line.
10578
10579 2005-05-04  Graham Percival  <gperlist@shaw.ca>
10580
10581         * Documentation/user/introduction.itely: updates "About this manual".
10582
10583         * Documentation/user/advanced-notation.itely,
10584         invoking.itely: minor fixes.
10585
10586 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10587
10588         * COPYING: add font exception. Update FSF address. 
10589
10590         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
10591         should be taken without child context.
10592
10593         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
10594
10595         * scm/define-markup-commands.scm (triangle): new command, as
10596         robust replacement for unicode Delta/Triangle.
10597
10598 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10599
10600         * ps/music-drawing-routines.ps: add fillp argument.
10601
10602         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
10603
10604         * lily/font-config.cc (init_fontconfig): don't add cff/
10605
10606         * VERSION (PACKAGE_NAME): release 2.5.22
10607
10608         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
10609
10610         * lily/grace-engraver.cc (consider_change_grace_settings): use
10611         is_alias(). Fixes problem with CueVoice grace notes. 
10612
10613         * lily/simultaneous-music-iterator.cc (construct_children): call
10614         Music_iterator::quit() for iterators that start out invalid. This
10615         fixes indefinitely continuing contexts.
10616
10617         * buildscripts/substitute-encoding.py: new file
10618
10619         * Documentation/user/basic-notation.itely (Basic polyphony): fix
10620         missing @end 
10621
10622         * scripts/lilypond-book.py (write_if_updated): print file name.
10623
10624         * Documentation/user/basic-notation.itely (Explicitly
10625         instantiating voices): idem.
10626
10627         * Documentation/user/advanced-notation.itely (Text spanners):
10628         remove stray { } 
10629
10630         * lily/context.cc (default_child_context_name): the default child
10631         is now first in accepts_list_.
10632
10633         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
10634         \defaultchild to all relevant contexts.  This fixes:
10635         drums-pitch.ly.
10636
10637         (Probably also fixes similar problems with ancient
10638         transcriptions getting CueVoices instead of the desired voices.)
10639  
10640         * lily/context-def.cc (get_default_child): new function.
10641         (get_accepted): place default child in front of list.
10642
10643         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
10644
10645         * lily/include/context-def.hh (struct Context_def): add
10646         default_accept_
10647
10648 2005-05-03  Graham Percival  <gperlist@shaw.ca>
10649
10650         * scm/define-grobs.scm: remove "remove-first" line, since
10651         the absent property is set to #f anyway.
10652
10653         * Documentation/user/basic-notation.itely,
10654         advanced-notation.itely, instrument-notation.itely: minor
10655         fixes.
10656
10657         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
10658
10659         * Documentation/user/advanced-notation.itely,
10660         changing-defaults.itely: consolidate Text stuff in
10661         advanced notation.
10662
10663         * Documentation/user/global.itely: better docs for \header.
10664
10665         * Documentation/user/putting.itely: new chapter; placeholder
10666         for future expansion.
10667
10668         * Documentation/user/examples.itely: moved "suggestions for
10669         writing LP files" section into putting.itely.
10670
10671         * Documentation/user/lilypond.itely: added new chapter,
10672         fixed the short table of contents.
10673
10674 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10675
10676         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
10677         infinity for unfeasible beams.
10678
10679         * make/lilypond.fedora.spec.in (Group): idem.
10680
10681         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
10682
10683         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
10684
10685         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
10686         fonts directly.
10687
10688         * buildscripts/gen-emmentaler-scripts.py (i): idem.
10689
10690         * mf/GNUmakefile: remove all CFF rules.
10691
10692         * scm/framework-ps.scm (ps-embed-cff): reinstate.
10693
10694         * lily/open-type-font-scheme.cc (LY_DEFINE):
10695         new function ly:otf-font-table-data.
10696         (LY_DEFINE): new function otf-font?
10697
10698 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10699
10700         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
10701         ($(outdir)/Fontmap.lily): idem.
10702
10703         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
10704         for PFAEmmentaler-XXX.pfa. 
10705
10706         * Documentation/user/music-glossary.tely (accidental): NL
10707         translation of accidental.
10708
10709 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
10710
10711         * flower/include/international.hh: Bugfix: include "string.hh".
10712
10713         * lily/include/mingw-compatibility.hh: New file.
10714
10715         * flower/include/libc-extension.hh (memrev): Rename from strrev.
10716
10717         * configure.in: Search for mingw wcrtomb library.
10718
10719 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
10720
10721         * scripts/convert-ly.py: Bug fix
10722
10723         * Documentation/user/changing-defaults.itely (Common tweaks):
10724         Added example where the context has to be specified explicitly
10725         (MetronomeMark). 
10726
10727 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10728
10729         * scripts/lilypond-book.py (ly_options): set timing to #f for
10730         notime option.
10731
10732         * scripts/convert-ly.py (conv): typo.
10733
10734         * flower/*.cc: remove <? and >?
10735         
10736         * lily/*.cc: remove <? and >?
10737
10738         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
10739         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
10740         editor.
10741
10742 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10743
10744         * lily/part-combine-engraver.cc: add space to variable list.
10745
10746 2005-04-30  Graham Percival  <gperlist@shaw.ca>
10747
10748         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
10749         remove-first to false (matches docs)
10750
10751         * Documentation/user/advanced-notation.itely: corrected docs
10752         concerning remove-first.
10753
10754 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
10755
10756         * lily/part-combine-engraver.cc: make sure that the relevant
10757         properties are included in the documentation.
10758
10759 2005-04-28  Graham Percival  <gperlist@shaw.ca>
10760
10761         * Documentation/user/lilypond-book.itely: Bernard's docs
10762         for \betweenLilyPondSystem.
10763
10764 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10765
10766         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
10767         remarks.
10768
10769 2005-04-28  Pal Benko  <benkop@freestart.hu>
10770
10771         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
10772         only on vertical lines of flexa shape, and use a constant
10773         thickness value for horizontal lines (patch slightly modified by
10774         Jürgen Reuter)
10775
10776         * lily/include/mensural-ligature.hh: make 2 comments clearer
10777
10778 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
10779
10780         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
10781         to need_extra_horizontal_space; bugfix: use class scope to avoid
10782         global namespace pollution
10783
10784         * Documentation/user/instrument-notation.itely (ligatures): added
10785         comment on possible future syntax change and how to work around
10786
10787         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
10788         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
10789         intervals (fixes agnus dei example)
10790
10791         * Documentation/user/instrument-notation.itely (white mensural
10792         ligatures): selected a more illustrative example
10793
10794 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
10795
10796         * Documentation/index.html.in: specify utf-8 charset in meta content.
10797
10798 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10799
10800         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
10801         empty 2nd page for single page.
10802
10803         * scm/lily.scm: remove p&c definitions.
10804
10805         * po/zh_TW.po (Module): new translation.
10806
10807         * lily/lily-guile.cc (ly_chain_assoc): remove.
10808
10809         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
10810         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
10811
10812 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10813
10814         * lily/beaming-info.cc: remove infinity_i
10815
10816         * scripts/abc2ly.py (out_filename): fix thinko with \version.
10817
10818 2005-04-26  Graham Percival  <gperlist@shaw.ca>
10819
10820         * Documentation/user/basic-notation.itely,
10821         instrument-notation.itely, advanced-notation.itely,
10822         changing-defaults.itely: minor fixes.  Added docs
10823         for colors to advanced-notation.itely.
10824
10825         * Documentation/user/advanced-notation.itely: fixed compile
10826         problem and added Bernard's x11-color doc patch.
10827
10828 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
10829
10830         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
10831         alright this time round.
10832
10833 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10834
10835         * Documentation/topdocs/INSTALL.texi (Top): idem.
10836
10837         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
10838
10839         * VERSION (MAJOR_VERSION): release 2.5.21
10840
10841         * scm/output-ps.scm (grob-cause): bugfix.
10842
10843 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
10844
10845         * cygwin/*: Update.
10846
10847         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
10848         stuff.
10849
10850         * scm/output-ps.scm (grob-cause): Bugfix.
10851
10852         * scm/lily.scm (ly:load): Remove x11-color.
10853
10854         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
10855         quote executable, fixes getting version from program --with
10856         --options.
10857         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
10858         $ac_exeect.
10859
10860         * Documentation/user/GNUmakefile: Only build music-glossary with
10861         rendered lilypond snippets during web.
10862
10863 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10864
10865         * po/de.po: update.
10866
10867         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
10868
10869 2005-04-22  Laura Conrad <lconrad@laymusic.org>
10870  
10871         * scripts/abc2ly:
10872         second title line append with punctuation dash character;
10873         encode abc2ly python strings in utf-8
10874        
10875 2005-04-21  Laura Conrad <lconrad@laymusic.org>
10876
10877         * scripts/abc2ly fix chords (again)
10878  
10879 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
10880
10881         * scm/x11-color.scm: new file
10882         All x11 color names can be accessed with:
10883         #(x11-color 'ColorName),
10884         #(x11-color "ColorName") or:
10885         #(x11-color "color name")
10886         If the x11 color name is not recognised then it defaults
10887         to black
10888
10889         * scm/lily.scm: amended to call scm/x11-color.scm
10890
10891 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10892
10893         * Documentation/user/invoking.itely (Reporting bugs): comment out
10894         reference to online PNG bug repository.
10895
10896 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10897
10898         * lily/translator-scheme.cc (ly:translator-property): Remove.
10899         Update callers.
10900
10901         * lily/context-scheme.cc (ly:context-now): Move from translator.
10902         Update callers.
10903
10904 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10905
10906         * input/regression/grid-lines.ly (skips): refine example.
10907
10908         * scm/define-context-properties.scm
10909         (all-user-translation-properties): doc autoBeamCheck
10910
10911         * input/regression/grid-lines.ly (Module): new file.
10912
10913         * lily/grid-point-engraver.cc (Module): new file.
10914
10915         * lily/grid-line.cc (Module): new file.
10916
10917         * lily/grid-line-span-engraver.cc (Module): new file.
10918
10919         * lily/grid-line-interface.cc (Module): new file.
10920
10921 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10922
10923         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
10924         missing parameter, actualy cdr through list.  Actually return a
10925         list with ENTRY removed (was '()).
10926
10927         * scripts/convert-ly.py: Update.  Print warning if file cannot be
10928         opened.
10929         (do_conversion): Fix printing of continuation comma.
10930
10931         * Documentation/user/advanced-notation.itely (Beam formatting):
10932         Remove refbugs about compound time and mixed duration.
10933
10934         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
10935         modulo moments explicitely.
10936
10937         * lily/moment.cc (operator %): New function.
10938
10939         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
10940
10941         * lily/translator-scheme.cc (ly:translator-now,
10942         ly:translator-property): New function.
10943
10944         * scm/auto-beam.scm (default-auto-beam-check): New function.
10945
10946         * lily/auto-beam-engraver.cc (test_moment): Use it.
10947
10948         * flower/rational.cc (operator %): Bugfix.
10949
10950 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
10951
10952         * scripts/abc2ly: Bugfix
10953
10954 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10955
10956         * python/fontextract.py (write_extracted_fonts): bugfix, too many
10957         %'s on EndFont comment.
10958
10959         * lily/ledger-line-spanner.cc: some more words of explanation.
10960
10961 2005-04-20  John Williams <williams@tni.com>  
10962         
10963         * scripts/lilypond-book.py: htmlquote bugfix.
10964         Allow snippets to be given distinct filenames.
10965         Allow the default alt text to be overridden.
10966
10967 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
10968
10969         * ly/performer-init.ly: Bugfix
10970
10971         * THANKS: Added bughunters.
10972
10973 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10974
10975         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
10976
10977         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
10978         position (was: use modulo measure length).
10979
10980         * configure.in (no gui_b): Remove optional gtk+ requirement.
10981
10982 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10983
10984         * Documentation/user/basic-notation.itely (Pitches): add
10985         LedgerLineSpanner.
10986
10987         * lily/dynamic-engraver.cc (process_music): set right bound to
10988         script if present. Else, do not set.
10989         (acknowledge_grob): only set right bound of finished spanner to
10990         note column if no other bound is set.
10991
10992         * python/lilylib.py (make_ps_images): switch back to png16m.
10993         
10994 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10995
10996         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
10997         writing up to date file.  Add dvips usage suggestion.
10998
10999         * scripts/convert-ly.py: Fix error message.
11000         Print usage if no files on command line.
11001         (usage): Add example usage.
11002
11003         * input/test/compound-time.ly: New file.
11004
11005         * input/test/circle.ly: New file.
11006
11007         * Documentation/topdocs/NEWS.tely: Use them.
11008
11009         * input/test/boxed-stencil.ly: Remove \score.
11010
11011         * buildscripts/mf-to-table.py (base): Add .log dependency.
11012
11013         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11014         pfa's.  Add .log dependency
11015
11016         * scm/define-markup-commands.scm (lower): New command.
11017
11018         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11019         make it default.
11020
11021 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11022
11023         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11024         also to finished cresc as right bound. This fixes:
11025         skip-string-decresc.ly
11026
11027         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11028         relative_coordinate if extent is empty.
11029
11030         * lily/stem.cc (width_callback): determine correct extent if flag
11031         is not there. This fixes slur-no-flag.ly
11032
11033         * lily/grace-engraver.cc (consider_change_grace_settings): new
11034         function.
11035         (initialize): also consider_change_grace_settings() on
11036         initialization. Fixes large grace notes at start of score.
11037
11038         * lily/break-align-interface.cc (do_alignment): don't translate if
11039         total_extent is empty.
11040
11041         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11042
11043 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11044
11045         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11046         with slash.
11047
11048 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11049
11050         * stepmake/aclocal.m4: Remove tfm_path.
11051
11052 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11053
11054         * scm/music-functions.scm (markup-expression->make-markup): fix
11055         bug with cons arguments of markup commands.
11056         (music->make-music): fix music expression property list building
11057
11058 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11059
11060         * aclocal.m4: Massage package names.
11061
11062         * SCons updates.
11063
11064 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11065
11066         * VERSION (PACKAGE_NAME): release 2.5.20
11067
11068         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11069         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11070
11071         * lily/percent-repeat-engraver.cc (try_music): add measure before
11072         next_moment to future processing moment. Fixes:
11073         percent-repeat-mm-rest.ly
11074         (process_music): don't add moment for 2nd time.
11075
11076         * input/regression/repeat-percent.ly: add mmrests as extra test.
11077
11078         * lily/axis-group-engraver.cc (acknowledge_grob): read
11079         keepAliveInterfaces to decide what to kill.
11080
11081         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11082         percent-repeat-interface to keepAliveInterfaces. This fixes
11083         percent-repeat-harakiri.
11084
11085 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11086
11087         * SCons updates.
11088
11089 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11090
11091         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11092
11093         * aclocal.m4: remove --enable-tfm-path configure option
11094
11095         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11096
11097         * scm/backend-library.scm (postscript->png): newline after
11098         finishing command.
11099
11100         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11101         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11102
11103         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11104
11105         * lily/score.cc (default_rendering): use Music_output too.
11106
11107         * input/test/chord-names-languages.ly (Module): rename file.
11108
11109         * lily/text-spanner.cc: add bound-padding.
11110
11111         * lily/paper-book.cc (systems): accept Paper_score
11112         iso. Paper_system vector. 
11113
11114         * input/regression/line-arrows.ly: new file.
11115
11116         * lily/paper-score.cc (process): run get_paper_systems() only once.
11117
11118         * lily/line-spanner.cc (line_stencil): add arrows.
11119
11120 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11121
11122         * lily/line-interface.cc (make_arrow): new function. 
11123         (arrows): idem.
11124
11125 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11126
11127         * input/test/chord-names-german.ly: update for italian/french
11128         chords.
11129         
11130         * Documentation/user/instrument-notation.itely (Printing chord
11131         names): update.
11132
11133 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11134
11135         * lily/include/paper-score.hh (class Paper_score): remove unused
11136         prototypes.
11137
11138         * lily/book.cc (process): add -COUNT to midi output.
11139
11140         * lily/score.cc (book_rendering): remove outname argument
11141         (book_rendering): return list of Music_outputs. 
11142
11143         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11144
11145         * lily/book.cc (process): loop over Music_outputs returned from
11146         Score::book_rendering().
11147
11148         * lily/*.cc (width_callback): remove spurious "unused" warnings
11149         for assert (axis==[XY]_AXIS); 
11150
11151         * lily/include/music-output.hh (class Music_output): smobify class.
11152
11153         * lily/include/paper-score.hh (class Paper_score): make members
11154         private.
11155
11156         * lily/performance.cc (process): return #f iso. #<undefined>. This
11157         prevents #<undefined> leaking into GUILE-userspace.
11158
11159 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11160
11161         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11162
11163 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11164
11165         * scm/chord-name.scm : support for italian and french
11166         chords names.
11167
11168         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11169         a space defined by chordPrefixSpacer when the root name is
11170         direclty followed by a prefix.
11171
11172         * ly/engraver-init.ly : chordPrefixSpacer       
11173         * scm/define-context-properties.scm : chordPrefixSpacer
11174         * ly/property-init.ly : italianChords, frenchChords 
11175
11176 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11177
11178         * mf/feta-din.mf: Remove.
11179
11180         * mf/GNUmakefile (fontdir): Bugfix.
11181
11182         * mf/SConstruct: Some updates.
11183
11184         * SConstruct: Require pkg-config.
11185         (test_program): Bugfix for double digit version compares, use
11186         integer (not string-) compare.
11187         Optionally require gs 8.14.
11188
11189         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11190
11191         * lily/*: s/ifdef HAVE_*/if have/.
11192
11193         * SConstruct (test_lib): New function.  Update pkg-config and some
11194         other requirements.
11195
11196         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11197         freetype, pangof2t.
11198
11199 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11200
11201         * po/lilypond.pot, ...: Update using bison-CVS.
11202
11203         * python/lilylib.py (make_ps_images): Fixo.
11204
11205 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11206
11207         * python/lilylib.py (make_ps_images): typo.
11208
11209         * configure.in (gui_b): make bison optional.
11210
11211         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11212
11213 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11214
11215         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11216         with one parameter can be defined in a LaTeX file when processed
11217         by lilypond-book this will be evaluated between the systems of
11218         a multi-system score. The parameter is the number of systems processed.
11219
11220 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11221
11222         * python/lilylib.py (make_ps_images): Escape newline.
11223
11224         * Documentation/user/music-glossary.tely: Run
11225         texinfo-all-menus-update.
11226
11227 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11228
11229         * scm/lily-library.scm (old-relative-not-used-message)
11230         (version-not-seen-message): Add input-file-name-location to message.
11231
11232         * lily/parser.yy (lilypond): Add token aliases.
11233
11234         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11235         not confuse with alteration.
11236         (alteration): Add.
11237
11238 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11239
11240         * python/lilylib.py (make_ps_images): use -dEPSCrop
11241
11242         * VERSION (PACKAGE_NAME): release 2.5.19 
11243
11244         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11245         only put xrefs in info documentation.
11246
11247         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11248         .pdf rule to tex-rules.make.
11249
11250         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11251         from -systems.* output.
11252
11253         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11254         directly, remove -$(PAGESIZE) target.
11255
11256         * input/test/embedded-postscript.ly: update.
11257
11258 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11259
11260         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11261
11262         * Documentation/user/changing-defaults.itely (Font selection):
11263         document font-name.
11264
11265         * input/regression/font-name.ly: show Pango fonts for
11266         font-name. Update example. 
11267
11268         * lily/pango-select.cc (properties_to_pango_description): don't
11269         convert symbol font-size to number, but use to lookup.
11270
11271         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11272
11273         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11274         (NAME . FILE-NAME) tuples for font descriptions. 
11275         (write-preamble): display BeginFont DSC comments.
11276
11277         * python/fontextract.py (write_extracted_fonts): new file. Extract
11278         font resources from a PS file.
11279
11280         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11281         (Compile_error.process_include): do_file returns chunks.
11282
11283         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11284
11285         * make/lysdoc-targets.make: .texi is .PRECIOUS
11286
11287         * scripts/lilypond-book.py (write_if_updated): new function.
11288
11289 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11290
11291         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11292
11293 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11294
11295         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11296
11297         * input/regression/markup-syntax.ly: remove \score.
11298
11299         * scm/define-markup-commands.scm (draw-circle): add fill argument
11300
11301         * scm/stencil.scm (make-circle-stencil): add fill argument
11302
11303         * ps/music-drawing-routines.ps: add fill argument.
11304
11305         * ly/performer-init.ly: add CueVoice to MIDI too.
11306
11307         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11308         EndEPSF.
11309
11310         * input/regression/markup-eps.ly: new file.
11311
11312         * scm/framework-ps.scm (write-preamble): change order: vars should
11313         be inited before procedures.
11314
11315         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11316         for EPS files.
11317
11318         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11319
11320 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11321
11322         * configure.in (gui_b): add check for ghostscript 8.15
11323
11324 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11325
11326         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11327         start of line. Fixes cresc-after-newline.ly
11328
11329         * lily/source-file.cc (file_line_column_string): use get_column().
11330
11331 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11332
11333         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11334
11335 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11336
11337         * lily/*: use message () iso progress_indication () for messages.
11338         Revise/uniformise user messages.
11339
11340         * flower/warn.cc (progress_indication): New function.
11341         (message): Use it.  Fixes newline problems.
11342
11343         * config.make.in (webdir): Sort out install dirs.
11344
11345         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11346
11347         * python/lilylib.py (command_name): Bugfix.
11348         (make_ps_images):
11349
11350 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11351
11352         * lily/main.cc: --help says what types of backends are availabe
11353
11354 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11355
11356         Fix ./VERSION dependency, and without need to reconfigure.
11357
11358         * lily/main.cc (setup_paths): Update.
11359
11360         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11361
11362         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11363
11364         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11365         Add \line for some simplistic cases.
11366
11367         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11368
11369 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11370
11371         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11372         to compile LY files (useful for adding eg. "-I" args)
11373         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11374         2Gnome command for gnome backend.
11375         (LilyPond-command-formatgnome): call the 2Gnome command. key
11376         binding: C-c C-g
11377
11378 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11379
11380         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11381         depend on all PNG images.
11382
11383 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11384
11385         * GNUmakefile.in: Bugfix: also link .map files.
11386
11387 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11388
11389         * scm/music-functions.scm (music->make-music): generate 
11390         a (make-music ...) sexpr from a music expression.
11391         (display-scheme-music): use guile pretty printer to display the
11392         make-music sexpr.
11393
11394 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11395
11396         * ly/engraver-init.ly: reindent.
11397         Add CueVoice.
11398
11399         * scm/music-functions.scm (music-pretty-string): handle moments
11400         too.
11401         (music-pretty-string): only print non-empty lists.
11402         (cue-substitute): create CueVoice context, which has smaller type.
11403
11404         * lily/moment-scheme.cc (LY_DEFINE): new methods
11405         ly:moment-grace-{numerator,denominator}
11406
11407         * lily/context-handle.cc: remove quit() method. 
11408
11409         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11410         (init_fontconfig): success is 0, not !0
11411
11412 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11413
11414         * mf/feta-nummer-code.mf (code): add plus glyph.
11415
11416         * lily/tie.cc (print): idem.
11417
11418         * lily/slur.cc (print): don't use thickness property for
11419         slur shape-thickness.
11420
11421         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11422         while adding stencils.
11423
11424         * scm/define-markup-commands.scm (with-color): with-color markup
11425         command.
11426         (whiteout): new markup command 
11427         (filled-box): new markup command
11428
11429 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11430
11431         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11432         test for PDF docs.
11433
11434         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11435         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11436         
11437         Notes for tetex-3.0 make web:
11438            psclean.map: s/uhv8a/uhvr8a/
11439            config.ps add:
11440                 p +psfonts_t1.map
11441                 p +psclean.map
11442                 p +typeface.map
11443
11444 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11445
11446         * scm/music-functions.scm (music-pretty-string): fix bug with
11447         string argument.
11448
11449 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11450
11451         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11452
11453 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11454
11455         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11456         only process options if they're there.
11457         (write_file_map): add version-seen? to snippet-map.ly
11458
11459 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11460
11461         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
11462         formatting cleanups.
11463
11464         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
11465         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
11466
11467 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11468
11469         * scm/framework-ps.scm (ps-font-command): don't hash, just use
11470         name directly.
11471
11472         * lily/main.cc (setup_paths): either add mf/out to search path or 
11473         fonts/{otf,type1,etc}
11474         
11475         * lily/font-config.cc (init_fontconfig): either add mf/out to
11476         FontConfig or fonts/{otf,type1,etc}
11477
11478         * GNUmakefile.in: don't put mf/ link in share/ dir.
11479
11480         * lily/staff-spacing.cc: move same-direction-correction to
11481         note-spacing-interface
11482
11483         * scm/lily.scm (lilypond-main): use variable argument count for
11484         exception handler.
11485
11486         * lily/font-config.cc (init_fontconfig): add operator pacification
11487         message.
11488
11489         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
11490
11491         * buildscripts/gen-emmentaler-scripts.py (i): generate
11492         PFAEmmentaler as well.
11493
11494         * scm/framework-ps.scm (munge-lily-font-name): new function
11495         (write-preamble): hack: insert PFA equivalent of CFF into
11496         .PS. This makes LilyPond output printable on normal PS printers
11497         again.
11498
11499         * buildscripts/gen-emmentaler-scripts.py (i): generate
11500         PFAEmmentaler.pfa aswell.
11501
11502 2005-04-06  John Williams <williams@tni.com>  
11503         
11504         * scripts/lilypond-book.py: refactor the compose_ly procedure.
11505         
11506 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11507
11508         * scm/page-layout.scm (default-page-make-stencil): always combine
11509         the header stencil, even if empty. This prevents the body text to
11510         reach up to the margins.
11511
11512         * po/rw.po (Module): new file, for Kinyarwanda.
11513
11514         * input/test/spacing-optical.ly (Module): new file.
11515
11516         * lily/staff-spacing.cc: add same-direction-correction
11517
11518 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11519
11520         * Documentation/user/introduction.itely (Engraving): Comment-out
11521         non-existent file.
11522
11523 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11524
11525         * scm/define-grob-properties.scm (all-user-grob-properties): add
11526         same-direction-correction
11527
11528         * VERSION: release 2.5.18
11529
11530 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
11531
11532         * lily/grob.cc (mark_smob): Check pscore->layout_ before
11533         dereferencing.  Fixes make web.
11534
11535         * lily/midi-stream.cc: Handle unwritable midi file.  Include
11536         errno.h.
11537
11538         * Documentation/user/: Fix links.
11539
11540 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11541
11542         * lily/text-interface.cc (Module): rename from text-item.cc
11543
11544         * input/regression/apply-output.ly (texidoc): function naming fix.
11545
11546         * lily/time-signature-performer.cc (derived_mark): new function.
11547
11548         * lily/lily-parser-scheme.cc:  print mapped file name for progress
11549
11550         * scripts/lilypond-book.py (find_linestarts): new function.
11551         (find_toplevel_snippets): keep track of line numbers.
11552
11553         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
11554         all key changes.
11555
11556         * ly/declarations-init.ly (partCombineListener): use
11557         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
11558
11559         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
11560
11561 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
11562
11563         * lily/text-item.cc: Fix link.
11564
11565         * Documentation/user/changing-defaults.itely (Changing defaults):
11566         Fix programs reference links.
11567
11568         * Documentation/user/music-glossary.tely: Convert to utf-8.
11569
11570 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11571
11572         * make/lilypond-vars.make: remove TEXMF from variables.
11573         remove DEB_BUILD pk font variables.
11574         remove GUILE_LOAD_PATH
11575         remove TeX memory vars.
11576
11577 2005-04-04  Werner Lemberg  <wl@gnu.org>
11578
11579         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
11580
11581 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11582
11583         * ps/lilyponddefs.ps: remove reencode-font
11584
11585         * lily/simple-spacer.cc (add_columns): also compare
11586         directly. Column rank doesn't distinguish between broken and
11587         unbroken columns. This fixes large spaces before time sig changes.
11588
11589         * Documentation/user/point-and-click.itely: document ly:set-option.
11590
11591         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
11592         point_and_click_global is set.
11593
11594         * lily/scm-option.cc (LY_DEFINE): add point-and-click
11595         ly:set-option argument.
11596
11597 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11598
11599         * GNUmakefile.in: Include symlinks in webball.
11600
11601         * Documentation/user/GNUmakefile (source-links): Add symlinks to
11602         source dir for split and non-split manuals.
11603
11604         * Documentation/user/*y: Fix @uref/@inputfile links for
11605         split/non-split HTML documents.
11606
11607         * Documentation/user/GNUmakefile (local-WWW): Do not generate
11608         .ps.gz.
11609         
11610 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11611
11612         * GNUmakefile.in: Add newline.
11613
11614 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
11615
11616         * tex/lilyponddefs.tex: use color instead of xcolor
11617         * scm/output-tex.scm: minor editing
11618
11619 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11620
11621         * scm/music-functions.scm (display-scheme-music): pretty printer
11622         for music expressions.
11623
11624 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11625
11626         * buildscripts/install-info-html.sh (index_file): Fix link.
11627
11628 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
11629
11630         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
11631
11632         * Documentation/index.html.in: Add size estimates with some big pages.
11633
11634         * Documentation/user/tutorial.itely (Running LilyPond for the
11635         first time): Add/replace some @rglos links.  TODO: add more
11636         @rglos links in tutorial, test non-intrusiveness (.css).
11637
11638         * stepmake/bin/add-html-footer.py (do_file): Remove info's
11639         annoying's indication of referencing external document.
11640
11641         * Documentation/user/GNUmakefile: Split version of glossary too.
11642         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
11643         links, not only for html.
11644
11645         * Documentation/user/introduction.itely: Fix some links for other
11646         than html, do not use `here' as link name.
11647
11648 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
11649
11650         * scm/documentation-generate.scm (string-append): Fix @usermanref,
11651         @glossaryref.
11652
11653 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11654
11655         * scm/page-layout.scm (default-page-make-stencil): only add header
11656         if existing and not empty. Fixes spurious programming error.
11657
11658         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
11659
11660 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
11661
11662         * scm/output-tex.scm: implement {re,}setcolor
11663         * tex/lilyponddefs.tex: use color package
11664
11665 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
11666
11667         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
11668         additions to website.
11669
11670         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
11671
11672         * Documentation/user/macros.itexi: Fix @usermanref html links in
11673         split documents: use @inforef.
11674
11675 2005-03-30  Graham Percival  <gperlist@shaw.ca>
11676
11677         * Documentation/user/programming-interface.itely: minor fix.
11678
11679         * Documentation/user/advanced-notation.itely: added info to
11680         Metronome markings.
11681
11682 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
11683
11684         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
11685         use box-stencil.  Remove y-padding argument.
11686         (make-stencil-circler): New function.
11687
11688         * buildscripts/lilypond-words.py (F): 
11689         * elisp/SConscript (a): 
11690         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
11691         * vim/SConscript (a): 
11692         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
11693
11694         * lily/general-scheme.cc: Build fix.
11695
11696         * scm/markup.scm:
11697         * input/regression/markup-scheme.ly: 
11698         * input/regression/markup-syntax.ly: Drop 'new-' from name.
11699
11700         * scm/stencil.scm (make-circle-stencil): New function.
11701
11702         * scm/define-markup-commands.scm (draw-circle): Use it.  New
11703         name (was cicle).  Update callers.
11704         (circle): New markup command, similar to box.
11705
11706         * scm/stencil.scm (circle-stencil): New function.
11707
11708 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
11709
11710         * configure.in: Detect libutf8/wchar.h variant.
11711
11712         * stepmake/aclocal.m4: Modify shared size test.
11713
11714 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11715
11716         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
11717
11718 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11719
11720         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
11721         
11722         * VERSION (PACKAGE_NAME):  release 2.5.17
11723
11724 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
11725
11726         * scm/backend-library.scm (postscript->png): Fix comment and png
11727         message.
11728
11729         * GNUmakefile.in (link-tree): Fix locales.
11730
11731 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11732
11733         * lily/stencil-scheme.cc (LY_DEFINE): change to
11734         ly:stencil-aligned-to, non mutating.
11735
11736         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
11737
11738         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
11739
11740         * lily/quote-iterator.cc (derived_mark): call
11741         Music_wrapper_iterator::derived_mark() too.
11742
11743         * lily/grace-engraver.cc (derived_mark): change signature, add
11744         const.
11745
11746 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11747
11748         * SConstruct (symlink): 
11749         * GNUmakefile.in (link-tree): Add scripts to prefix.
11750
11751         * lily/general-scheme.cc (ly:effective-prefix): New function.
11752
11753         * scm/backend-library.scm (postscript->png): Use it.
11754
11755 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11756
11757         * lily/paper-score.cc (process): don't delete grobs after
11758         producing stencils. 
11759
11760         * scm/part-combiner.scm (determine-split-list): switch off
11761         debugging info.
11762
11763         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
11764         if available.
11765
11766         * scm/define-context-properties.scm
11767         (all-user-translation-properties): add stringNumberOrientations.
11768
11769         * lily/new-fingering-engraver.cc (position_scripts): make generic,
11770         so fingering and string-numbers are separately controlled.
11771
11772 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11773
11774         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
11775         not use debugging.
11776
11777 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11778
11779         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
11780
11781         * config.hh.in: add HAVE_FONTCONFIG.
11782
11783         * Documentation/user/instrument-notation.itely (String number
11784         indications): new node.
11785
11786         * input/regression/new-markup-syntax.ly (texidoc): add circle.
11787
11788         * lily/new-fingering-engraver.cc (add_string): new function. 
11789         (acknowledge_grob): accept string-number-event as well.
11790
11791         * scm/define-markup-commands.scm (circle): new markup command.
11792
11793         * scm/output-lib.scm (print-circled-text-callback): new function.
11794
11795         * lily/GNUmakefile: move ifeq after include stepmake.make.
11796
11797 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11798
11799         * config.make.in (HAVE_LIBKPATHSEA_SO):
11800         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
11801
11802         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
11803         add KPATHSEA_LIBS.
11804
11805         * debian/watch: 
11806         * debian/control: Update.
11807
11808 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11809
11810         * input/test/title-markup.ly (spaceTest): remove.
11811
11812         * input/test/embedded-tex.ly (Module): remove.
11813
11814         * input/test/music-box.ly: use 'name property, not ly:music-name.
11815
11816         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
11817
11818         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
11819
11820 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11821
11822         * Documentation/topdocs/INSTALL.texi (Top): Remove information
11823         about xdeltas.  Add information about CVS.
11824
11825         * scm/lily.scm (lilypond-main): Fix invocation of handler,
11826         gracefully handle failed files.
11827
11828         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
11829
11830         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
11831         small fixes.
11832
11833         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
11834         No unnecessarily specific i18n messages.  Remove stray `1'.
11835
11836 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11837
11838         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
11839         documentencoding
11840
11841         * scm/documentation-lib.scm (texi-file-head): set utf-8
11842         documentencoding.
11843
11844         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
11845         Delta, not the Symbol one. 
11846
11847         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
11848         for the .map file.
11849
11850         * Documentation/topdocs/INSTALL.texi (Top): add running
11851         requirement as compilation requirement.
11852
11853 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11854
11855         * buildscripts/mutopia-index.py (headertext): add h1 header and
11856         utf-8 charset meta field.
11857
11858         * input/GNUmakefile: prune example list.
11859
11860         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
11861         options.
11862
11863         * lily/slur-scoring.cc (get_base_attachments): only look at stem
11864         extent for visible stems.
11865
11866         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
11867
11868 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
11869
11870         * Documentation/topdocs/INSTALL.texi (Top): Updates.
11871
11872         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
11873
11874 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11875
11876         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
11877         pass inf/nan into slur scoring.
11878
11879         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
11880         page.
11881
11882         * scripts/abc2ly.py (dump_voices): use alphabet().
11883
11884 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
11885         
11886         * mf/GNUmakefile (depth): use $(FONTFORGE). 
11887
11888 2005-03-27 Matthias Neeracher <neeracher@mac.com>
11889         
11890         * flower/include/virtual-methods.hh: simplify. Patch by
11891
11892 2005-03-25  John Williams <williams@tni.com>  
11893
11894         * scripts/lilypond-book.py (main): add png for HTML too, guess
11895         only if necessary. 
11896
11897 2005-03-25  Graham Percival  <gperlist@shaw.ca>
11898
11899         * Documentation/topdocs/INSTALL.texi: now recommends
11900         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
11901
11902         * Documentation/user/basic-notation.itely,
11903         Documentation/user/tutoria.itely: warn about
11904         only one (phrasing) slur at once.
11905
11906 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
11907
11908         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
11909
11910 2005-03-23  Graham Percival  <gperlist@shaw.ca>
11911
11912         * Documentation/user/basic-notation.itely: fixed info about
11913         ending a (de)cresc.
11914
11915         * Documentation/user/lilypond-book.itely: fixed
11916         lilypond-book filter example and warned about not doing
11917         --filter and --process at the same time.
11918
11919 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
11920
11921         * lily/parser.yy (bass_number),
11922         Documentation/user/instrument-notation.itely (Figured bass): 
11923         Add the possibility to use text markup in figured bass. 
11924
11925 2005-03-19  Graham Percival  <gperlist@shaw.ca>
11926
11927         * Documentation/user/global.itely: added info about naming
11928         identifiers and breakbefore.
11929
11930         * Documentation/user/invoking.itely: added info about batch
11931         processing files with convert-ly, removed references to TeX
11932         in the jail section.
11933
11934         * Documentation/user/examples.itely: possibly fixed piano
11935         dynamics.
11936
11937         * Documentation/user/advanced-notation.itely: added info
11938         about removing other types of Staff.
11939
11940         * Documentation/user/instrument-notation.itely: possibly
11941         fixed piano staff line switch.
11942
11943         * Documentation/user/changing-defaults.itely: added info
11944         about using normal font in titles.
11945
11946 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11947
11948         * VERSION (PATCH_LEVEL): release 2.5.16
11949
11950         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
11951         explicitly.
11952
11953 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11954
11955         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
11956         whitespace.
11957
11958         * python/lilylib.py (make_ps_images):
11959         * scm/backend-library.scm (postscript->pdf, postscript->png):
11960         Quote file name.  Use format rather than string-append juggling.
11961
11962 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11963
11964         * python/lilylib.py (make_ps_images): add x to -g argument. 
11965
11966         * lily/key-performer.cc (create_audio_elements): don't use
11967         scm_eval_string. Check for minor 3rd directly.
11968   
11969         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
11970         (sarabandeCelloGlobal): key is D minor, not F major.
11971
11972 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11973
11974         Fix truncated --png output (Peter Danenberg).
11975         
11976         * python/lilylib.py (make_ps_images):
11977         * scripts/ps2png.py (copyright): Grok --papersize option.
11978
11979         * scm/backend-library.scm (postscript->png): Add parameter
11980         PAPERSIZE.  Update callers.
11981
11982         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
11983         Fixes symbol placement.
11984
11985         * lily/spanner.cc: 
11986         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
11987         <libc-extension.hh>).
11988
11989 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11990
11991         * Nitpick run.
11992
11993         * buildscripts/fixcc.py: Update.
11994
11995         Builddir run fixes.
11996
11997         * HACKING (datadir): Add VERSION.
11998
11999         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12000         higher up.
12001
12002 2005-03-15  Werner Lemberg  <wl@gnu.org>
12003
12004         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12005         diagonal stem doesn't become thinner.
12006
12007 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12008
12009         * buildscripts/fixcc.py: Fixes (Werner).
12010
12011 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12012
12013         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12014         Emmentaler/Aybabtu.
12015
12016         * GNUmakefile.in: fix lilypond-words path.
12017
12018         * po/tr.po: update to 2.3.21
12019
12020         * lily/new-fingering-engraver.cc (position_scripts): take priority
12021         from head position.
12022
12023         * input/regression/finger-chords-order.ly (texidoc): new file.
12024
12025 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12026
12027         * make/ly-rules.make: 
12028         * stepmake/aclocal.m4: 
12029         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12030
12031         * buildscripts/fixcc.py (rules): Leave space after operator.
12032
12033 2005-03-14  Werner Lemberg  <wl@gnu.org>
12034
12035         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12036         top of the glyph with smooth curve.
12037
12038 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12039
12040         * Documentation/user/global.itely (Page layout): remove
12041         printpagenumber.
12042
12043 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12044
12045         * input/regression/mensural-ligatures.ly: new file (with examples
12046         compiled by Pal Benko).
12047
12048         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12049         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12050         musicglyph access.  Many small beautifications in ancient
12051         examples.
12052
12053         * input/test/divisiones.ly: fixed indentation; small
12054         beautifications
12055
12056         * ly/engraver-init.ly: added FIXME comment
12057
12058         * scripts/lilypond-book.py,
12059         Documentation/user/lilypond-book.itely: added music fragment
12060         option "packed" to lilypond-book
12061
12062         * Documentation/user/instrument-notation.itely: Bugfix: added
12063         missing LedgerLineSpanner color setting in several places.  Added
12064         music fragment option "packed" to VaticanaContext example.
12065
12066 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12067
12068         * scm/define-grobs.scm (all-grob-descriptions): switch off
12069         Hyphen_spanner::set_spacing_rods 
12070
12071         * lily/lyric-hyphen.cc (print): add padding between syllable and
12072         hyphen.
12073         (print): shorten hyphen in tight situations (determine using
12074         minimum-length)
12075
12076         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12077         0.4pt.
12078
12079 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12080
12081         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12082
12083         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12084         header/footer markings for regression-test.
12085
12086         * scm/backend-library.scm (output-scopes, header-to-file): Move
12087         from framework-tex.scm.
12088
12089         * scm/framework-ps.scm (output-framework)
12090         (output-preview-framework):
12091         * scm/framework-eps.scm (output-classic-framework)
12092         (output-framework): Use it.  Fixes collated files.
12093
12094 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12095
12096         * input/sakura-sakura.ly: 
12097         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12098
12099         * buildscripts/guile-gnome.sh: Update.
12100
12101         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12102
12103         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12104
12105 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12106
12107         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12108         culprit: always exit the loop if we find a rod, even if it has
12109         distance < 0. 
12110
12111         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12112         algorithm.
12113
12114         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12115         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12116
12117         * scm/output-svg.scm (dashed-line): new  function body.
12118         
12119         * GNUmakefile.in: create .htaccess.
12120
12121 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12122
12123         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12124
12125 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12126
12127         * VERSION (PACKAGE_NAME): release 2.5.15
12128
12129         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12130
12131         * scm/framework-svg.scm (output-framework): put scaling in
12132         document header. Apply scaling only once.
12133         (output-framework): dump page size in px, not mm. 
12134
12135         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12136         from font-size.
12137
12138         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12139         ly:outputter-output-scheme, new function.
12140
12141         * scm/output-svg.scm (pango-description-to-svg-font): new function
12142
12143 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12144
12145         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12146         target.
12147
12148         * input/typography-demo.ly: new file.
12149
12150 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12151
12152         * Documentation/user/global.itely (File structure): Add markup blocks
12153         to toplevel expressions.
12154         (Multiple movements, Creating titles): Add markup blocks.
12155
12156         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12157         <libc-extension.hh>).
12158
12159         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12160
12161         * flower
12162         * lily
12163         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12164
12165 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12166
12167         * lily/accidental.cc: special bboxes for natural. 
12168
12169         * mf/feta-toevallig.mf: make stems heavier.
12170
12171         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12172         texts as well.
12173
12174         * mf/feta-klef.mf: revise. 
12175
12176         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12177
12178         * mf/feta-klef.mf: add rounded curve at top. 
12179         make thinnib a little heavier.
12180
12181 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12182
12183         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12184
12185         * buildscripts/fixcc.py: New file.
12186
12187         * input/regression/utf8.ly: Update Debian font description.
12188
12189 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12190
12191         * stepmake/aclocal.m4: Fix test.
12192
12193 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12194
12195         * Documentation/user/invoking.itely: added Sebastino Vigna's
12196         docs for the --jail option.
12197
12198 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12199
12200         * lily/stem.cc (print): only produce stemlets if there are no
12201         noteheads on this stem.
12202
12203         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12204         don't crash on stemlet (visible stem without heads).
12205
12206         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12207         unbroken situations. 
12208
12209         * scm/output-lib.scm (center-invisible): new function.
12210
12211         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12212         wishes to determine loose column space.
12213
12214         * lily/font-config.cc (init_fontconfig): add
12215         fonts/{otf,type1,cff}  to path.
12216
12217         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12218
12219         * mf/GNUmakefile (Module): install all fonts under otf/
12220
12221         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12222         replace /fonts/otf/ by /ps/ 
12223
12224         
12225 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12226
12227         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12228
12229         * lily/book.cc (process): Oops, add score_.header_.
12230
12231         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12232
12233         * lily/parser.yy: Handle toplevel and book texts as score.
12234
12235         * scm/page-layout.scm (default-page-make-stencil):
12236         Bugfix: (page-properties rename.
12237
12238         * scm/backend-library.scm (ly:system): Typo.
12239
12240 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12241
12242         * stepmake/stepmake/executable-targets.make (installexe): don't
12243         strip installed executables
12244
12245         * lily/font-select.cc (get_font_by_design_size): revert
12246         pango_description_string as well.
12247
12248         * lily/system.cc (set_loose_columns): put loose column just left
12249         of next column.
12250
12251         * lily/include/group-interface.hh (extract_grob_array): rename
12252         from Pointer_group_interface__extract_grobs
12253
12254         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12255
12256         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12257         function. Keep ledgered note heads at a minimum distance.
12258         Introduce minimum-length-fraction
12259         (print): introduce length-fraction property.
12260
12261 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12262
12263         * tex/GNUmakefile: remove latin1.enc rules.
12264
12265 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12266
12267         * scm/titling.scm: Typo.
12268
12269         * input/regression/score-text.ly: Really add.
12270
12271         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12272
12273 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12274
12275         * lily/open-type-font-scheme.cc:  new file.
12276
12277 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12278
12279         * scm/titling.scm (layout-extract-page-properties): Rename from
12280         page-properties.  Update callers.
12281
12282         * lily/lexer.ll (Lily_lexer):
12283         * lily/parser.yy: Junk lyric_markup state.
12284
12285         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12286
12287         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12288         Add texts parameter.
12289
12290 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12291
12292         * lily/lexer.ll (lyric_markup): New mode.
12293         (Lily_lexer::push_lyric_markup_state): New method.
12294         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12295
12296         * lily/parser.yy (book_body):
12297         (toplevel_expression): Grok \markup texts.
12298
12299         * lily/score-scheme.cc (ly:music-scorify): 
12300         * scm/lily-library.scm (collect-music-for-book): Take texts
12301         parameter.
12302
12303         * lily/score.cc (texts_): New member.
12304
12305         * lily/paper-book.cc (systems): Format score texts.
12306
12307         * score-text.ly: New file.
12308
12309         * ttftool/SConscript:
12310         * kpath-guile/SConscript: New file.
12311
12312         * lily/SConscript:
12313         * SConstruct: Update.
12314
12315 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12316
12317         * VERSION (PACKAGE_NAME): release 2.5.14
12318
12319 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12320
12321         * lily/main.cc: Add dummy xgettext markers.
12322
12323 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12324
12325         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12326         requirements
12327
12328         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12329         executable is < 40k
12330
12331         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12332         hack.
12333
12334 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12335
12336         * flower/libc-extension.cc:
12337         * flower/include/libc-extension.hh: [Open]BSD simply cast
12338         cookie/funopen declarations.
12339
12340         * stepmake/aclocal.m4: Check for libkpathsea.so.
12341
12342         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12343         dl_kpse_find_file.
12344
12345 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12346
12347         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12348         (open_library): alternative for static library.
12349
12350 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12351
12352         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12353
12354         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12355
12356         Drop run-time dependency on teTeX.
12357
12358         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12359
12360         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12361         KPATHSEA_LIBS in LIBS.
12362         (STEPMAKE_DLOPEN): New function.
12363
12364         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12365         not path.
12366
12367         * flower/file-path.cc (directories): Rename from paths, as this
12368         return an array of directories (a single path).
12369
12370 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12371
12372         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12373
12374         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12375         new ly:kpathsea-find-file
12376
12377         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12378
12379         * kpath-guile/GNUmakefile: new file
12380
12381         * buildscripts/gen-emmentaler-scripts.py (i): generate
12382         emmentaler-X.fontname as well.
12383
12384         * buildscripts/ps-embed-cff.py: new script
12385
12386         * scm/lily-library.scm: remove ps-embed-cff.
12387
12388         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12389         font loading. 
12390
12391         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12392         fontconfig as well.
12393
12394         * lily/font-config.cc (init_fontconfig): add cff/ too.
12395
12396         * ly/generate-embedded-cff.ly: capitalize.
12397
12398         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12399         so as to register the pango font.
12400
12401         * lily/font-config.cc (init_fontconfig): add
12402         prefix/{otf,type1,mf/out} to fontconfig path.
12403
12404         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12405         overrides all. 
12406
12407         * configure.in (gui_b): remove ec mftrace check
12408
12409         * config.hh.in: use lilypond-Major.Minor as data directory.
12410
12411         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12412
12413         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12414         name.
12415
12416 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12417
12418         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12419         error messages.
12420
12421         * flower/libc-extension.cc:
12422         * flower/include/libc-extension.hh: [Open]BSD fixes for
12423         cookie/funopen declarations.
12424
12425 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12426
12427         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12428         emmentaler.
12429
12430         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12431         lcrm10.
12432
12433         * scm/define-markup-commands.scm (fontsize): new markup
12434         command. Also set baseline-skip
12435
12436 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12437         
12438         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12439         use.
12440
12441 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12442
12443         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12444
12445         * lily/pdf.cc: remove PDF related files
12446
12447 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12448
12449         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12450         <hamamatsu@gmx.de>
12451
12452 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12453
12454         * Documentation/user/advanced-notation.itely: first draft
12455         of reorg done.
12456
12457         * Documentation/user/global.itely: fixed (sub)section
12458         bits of MIDI.
12459
12460 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12461
12462         * cygwin/mknetrel (extras): Bufix (Bertalan).
12463
12464         * Documentation/user/basic-notation.itely (Chords): @ref fix.
12465         * Documentation/user/instrument-notation.itely (Introducing chord
12466         names): Compile fix: must have unique name.
12467
12468 2005-03-02  Graham Percival  <gperlist@shaw.ca>
12469
12470         * Documentation/user/instrument-notation.itely: reorg.
12471
12472 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12473
12474         * scm/output-gnome.scm:
12475         * scm/output-svg.scm: Fix font scaling.
12476
12477 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12478
12479         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
12480         what link to use best.
12481
12482         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
12483         * Documentation/user/tutorial.itely (Automatic and manual beams):
12484         Fix @ref.
12485
12486         * lily/tweak-registration.cc (replace_grob_tweak): New function.
12487         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
12488         * scm/framework-gnome.scm (tweak): Use it.
12489
12490 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12491
12492         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
12493
12494         * scm/output-ps.scm (white-text): reinstate white-text
12495
12496 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12497
12498         * scm/output-ps.scm (offset-add): Remove.
12499
12500         * scm/lily-library.scm (offset-flip-y): New function.
12501         * scm/framework-gnome.scm (tweak): Use it.
12502
12503         * scm/output-gnome.scm (grob-cause): Add parameter.
12504
12505         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
12506         * scm/output-ps.scm (url-link): Move.
12507         (white-text): Warn user about brokenness.
12508
12509         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
12510         wrt ghostscript.
12511
12512 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12513
12514         * lily/slash-repeat-engraver.cc (try_music): always make slashes
12515         if body length smaller than measure length.
12516
12517         * scm/define-markup-commands.scm (with-url): oops. use Y extent
12518         for Y.
12519
12520         * ly/titling-init.ly (tagline): put default tagline in \paper
12521
12522 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12523
12524         * lily/kpath.cc: 
12525         * lily/pdf.cc (Pdf_file): Use more generic error messages.
12526
12527         * scm/lily-library.scm (version-not-seen-message): New function.
12528         * ly/init.ly: Use it.
12529
12530         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
12531         breaks as progess.
12532
12533         * scripts/lilypond-book.py (do_process_cmd): Do not lump
12534         whitespace with l10n message.
12535
12536         * scm/framework-tex.scm (convert-to-ps):
12537         (convert-to-dvi): Do not use overly specific l10n messages.
12538
12539         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
12540
12541         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
12542         merge stderr with stdout.  
12543
12544 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12545
12546         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
12547         Neeracher).
12548
12549 2005-02-29  Graham Percival  <gperlist@shaw.ca>
12550
12551         * Documentation/user/instrument-notation.teily: moved
12552         \arpeggio to Basic.
12553
12554         * Documentation/user/advanced-notation.itely: Articulation to
12555         Basic, a bunch of stuff from Basic moved to Advanced.
12556
12557         * Documentation/user/basic.itely: swapped various sections,
12558         reorganized Basic.
12559
12560 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12561
12562         * flower/memory-stream.cc: 
12563         * flower/libc-extension.cc: Remove obsolete #undefs.
12564
12565         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
12566         more carefully.
12567
12568 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12569
12570         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
12571         dependency.
12572
12573         * VERSION (PACKAGE_NAME): release 2.5.13
12574
12575         * GNUmakefile.in (web-ext): don't ship ps.gz
12576
12577         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
12578         stdout
12579
12580 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12581
12582         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
12583         without libintl.  Now it compiles too.
12584
12585 2005-02-28  Graham Percival  <gperlist@shaw.ca>
12586
12587         * Documentation/user/basic-notation.itely,
12588         instument-notation.itely, advanced-notation.itely:
12589         split up contents of notation.itely.
12590
12591         * Documentation/user/notation.itely: file removed.
12592
12593         * Documentation/user/invoking.itely, converters.itely:
12594         moved convert-ly info to invoking.itely.
12595
12596         * Documentation/user/global.itely, changing-defaults.itely,
12597         sound-output.itexi: moved global settings, file layout, and
12598         sound into global.itely.
12599
12600         * Documentation/user/sound-output.itexi: file removed.
12601
12602         * Documentation/user/lilypond.tely: removed links to
12603         notation.itely and sound.itely.
12604
12605 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12606
12607         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
12608
12609         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
12610  
12611         * THANKS: add sponsor.
12612
12613         * scm/define-markup-commands.scm (with-url): new markup command.
12614
12615         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
12616         tagline.
12617         
12618         * scm/output-tex.scm (url-link): stub.
12619
12620         * scm/output-ps.scm (url-link): new function.
12621
12622         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
12623         ly:set-point-and-click
12624
12625 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12626
12627         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
12628         based on pdf-viewer setting.
12629
12630         * scm/framework-ps.scm (write-preamble): Find and set preferred
12631         pdf-viewer.
12632
12633 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12634
12635         * Documentation/user/point-and-click.itely: update for PDF point &
12636         click.
12637
12638         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
12639         editors based on EDITOR setting.
12640
12641 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12642
12643         * scm/*: Oops, more grand 2005 replace bits.
12644
12645 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12646
12647         * ps/music-drawing-routines.ps: new routine: insert PDF mark
12648
12649         * scm/output-ps.scm (grob-cause): point & click support for
12650         PostScript
12651
12652 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12653
12654         * lily/input-scheme.cc (LY_DEFINE): rename to
12655         ly:input-file-line-column
12656
12657 2005-02-26  Graham Percival  <gperlist@shaw.ca>
12658
12659         * Documentation/user/examples.itely: small fix from Steve Doonan.
12660
12661         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
12662
12663         * THANKS: added Yuval Harel.
12664
12665         * Documentation/user/{various}: inserted two spaces after a period.
12666
12667         * Documentation/user/lilypond.tely: added framework for reorg.
12668
12669         * Documentation/user/basic-notation.itely, instrument-notation.itely,
12670         advanced-notation.itely, global.itely: new files, placeholder for
12671         future reorg.
12672
12673 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
12674
12675         * Documentation/user/notation.itely: revamped Polyphony section
12676         
12677 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12678
12679         * Documentation/user/lilypond-book.itely (Music fragment options):
12680         doc fontload.
12681
12682         * Documentation/user/changing-defaults.itely (Text encoding): add
12683         fontload option to utf8 include
12684
12685         * scripts/lilypond-book.py (compose_ly): add fontload option
12686
12687         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
12688         force-eps-font-include option.
12689
12690         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
12691         black triangle
12692
12693         * Documentation/user/invoking.itely (Editor support): remove
12694         lilypond-latex section.
12695
12696         * scripts/lilypond-latex.py (Module): remove script.
12697
12698         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
12699         overwrite .log. 
12700
12701         * lily/main.cc: remove -m, --no-layout
12702
12703         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
12704         to define. We don't want to override fprintf everywhere.
12705
12706 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
12707
12708         * cygwin/lilypond.hint: 
12709         * cygwin/README.in: Update dependencies.
12710
12711         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
12712         Bugfix: do not pollute CPPFLAGS, LIBS.
12713
12714         * cygwin/mknetrel (extras): Cross compile fixes.
12715
12716         * ttftool/util.c: 
12717         * ttftool/ttfps.c: 
12718         * ttftool/ps.c: #include libc-extension.hh
12719
12720         * flower/include/libc-extension.hh:
12721         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
12722         wrapper using funopen.
12723         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
12724         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
12725
12726         * config.hh.in:
12727         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
12728         (AC_CHECK_HEADERS): Add libio.h
12729
12730         * scripts/convert-ly.py: Uniformize, internationalize.
12731         (2.5.2): Remove fatal encoding rule.
12732         (2.5.13): Handle latin1 encoding gracefully.
12733
12734 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
12735
12736         * HACKING: Fix line breaks.
12737
12738 2005-02-23  Werner Lemberg  <wl@gnu.org>
12739
12740         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
12741         contains those two files.
12742
12743 2005-02-21  Werner Lemberg  <wl@gnu.org>
12744
12745         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
12746         to improve overlap removal process.
12747
12748         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
12749         left and right ending.  This ensures better overlapping.
12750         Update all callers.
12751         ("lineprall"): Don't use draw_gridline to get better overlapping.
12752
12753 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12754
12755         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
12756
12757         * Documentation/topdocs/NEWS.tely (Top): oops.
12758
12759 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
12760
12761         * HACKING: new file.
12762
12763         * input/regression/utf8.ly (portuguese): added a portuguese example
12764         to show latin1 accents.
12765
12766 2005-02-21  Pal Benko  <benkop@freestart.hu>
12767
12768         * lily/mensural-ligature-engraver.cc:
12769         * lily/mensural-ligature.cc:
12770         * lily/include/mensural-ligature.hh: new algorithm implemented
12771
12772         * scm/define-grob-properties.scm: join-left killed (add-join may
12773         be used); join-left-amount changed to join-right-amount
12774
12775 2005-02-21  Graham Percival  <gperlist@shaw.ca>
12776
12777         * Documentation/user/notation.itely: small but urgent fix.
12778
12779 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
12780
12781         * lily/duration-scheme.cc: bugfix: correct parameters to
12782         SCM_ASSERT_TYPE.
12783
12784         * THANKS: added Pal.
12785
12786         * Documentation/user/notation.itely: bugfix: unTeXified
12787         $\\backslash$.  Bugfix: yet another glyph renaming victim:
12788         "timesig.*x/y" -> "timesig.*xy".
12789
12790 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12791         
12792         * VERSION (PACKAGE_NAME): release 2.5.12
12793
12794 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12795
12796         * ly/engraver-init.ly: set tieWaitForNote to #t by default
12797
12798         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
12799
12800         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
12801
12802         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
12803
12804 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
12805
12806         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
12807         latin1..utf-8.
12808
12809         * input/regression/stanza-number.ly:
12810         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
12811
12812         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
12813
12814 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12815
12816         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
12817         NEWS. Refer to website for older news.  
12818
12819         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
12820         .HTML. This should be done for specific servers only.
12821
12822         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
12823         .ly image examples.
12824
12825         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
12826         in layer 0 too.
12827
12828         * scm/define-context-properties.scm
12829         (all-user-translation-properties): add tieWaitForNote
12830
12831         * scm/define-grobs.scm (all-grob-descriptions): add
12832         Tie_column::before_line_breaking
12833
12834         * lily/tie.cc (get_column_rank): new function
12835
12836         * lily/tie-column.cc (before_line_breaking): new function.
12837         (werner_directions): take into account ties that start on
12838         different columns.  
12839
12840         * lily/score-engraver.cc (set_columns): move add_column() so we
12841         have column rank available.
12842
12843         * lily/tie.cc (get_column_rank): new function.
12844
12845         * input/regression/utf8.ly (japanese): add japanese lyrics.
12846
12847         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
12848
12849         * THANKS: add Steve D
12850
12851         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
12852         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
12853
12854 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
12855
12856         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
12857         to show harmonic notes
12858         * scm/define-markup-commands.scm: in \markup-by-number
12859         "dots-dot" -> "dots.dot" to show dotted notes
12860
12861 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12862
12863         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
12864
12865         * flower/memory-stream.cc (writer): new file.
12866
12867         * configure.in: add endian test.
12868
12869 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
12870
12871         * Documentation/user/examples.itely: small
12872         simplification/beautification
12873
12874         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
12875         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
12876         notation manual.
12877
12878         * lily/mensural-ligature.cc: bugfix: another few victims of the
12879         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
12880
12881         * ly/gregorian-init.ly: commit some experimental code for hi-level
12882         ligature input language lying around here for several months.
12883
12884         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
12885         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
12886
12887         * lily/vaticana-ligature-engraver.cc: bugfix: another few
12888         "x-y-z"->"x.y.s-z" fixes.
12889
12890 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12891
12892         * scm/framework-pdf.scm (scm): new file
12893
12894         * lily/include/pdf.hh (class Pdf_file): new file.
12895
12896         * lily/pdf.cc (write_trailer): new file.
12897
12898 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
12899
12900         * input/regression/color.ly: new file
12901
12902         * lily/stencil.cc (interpret_stencil_expression):
12903         when a color expression is encountered: save current color,
12904         process the rest of the expression, and restore previous color.
12905
12906         * lily/system.cc (get_line): check all grobs for color property and
12907         prepare the stencil scheme expressions for further processing.
12908         Fix layer-loop.
12909
12910         * scm/define-grob-properties.scm: introduce the color property.
12911
12912         * scm/output-lib.scm: color helper functions.
12913
12914         * scm/output-ps.scm: introduce setcolor/resetcolor.
12915
12916 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
12917
12918         * ly/*.ly, input/regression/*.ly: Added missing \version
12919         statements in some files.
12920
12921 2005-02-15  Graham Percival  <gperlist@shaw.ca>
12922
12923         * Documentation/user/notation.itely: minor editing.
12924
12925         * Documentation/user/converters.itely: updated convert-ly bugs.
12926
12927         * Documentation/user/lilypond-book.itely: add info about using
12928         feta characters in latex.
12929
12930 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12931
12932         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
12933
12934 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12935
12936         * scm/define-grob-properties.scm (all-user-grob-properties):
12937         removed 'dashed property.
12938
12939 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12940
12941         * scm/lily.scm (define-safe-public): new macro for defining
12942         variables that can be used in --safe mode. Use it in *.scm
12943         instead of manually setting safe-objects in safe-lily.scm.
12944
12945 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12946         
12947         * lily/slur.cc: Slur-dash patch by Bertalan.
12948
12949         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
12950
12951         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
12952
12953 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12954
12955         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
12956
12957 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12958
12959         * mf/GNUmakefile: teTeX-3.0 install fix.
12960
12961         * Cygwin patch from Bertalan.
12962
12963         * stepmake/stepmake/metafont-rules.make: Remove bashism.
12964
12965 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12966
12967         * GNUmakefile.in: 
12968         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
12969
12970         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
12971         2.0.x compatibility.
12972
12973 2005-02-08  Werner Lemberg  <wl@gnu.org>
12974
12975         * mf/feta-din-code.mf: Format; clean up code.
12976         Replace `---' with `--' plus explicit path directions.
12977         (linethickness#, stafflinethickness#): Remove.
12978         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
12979         ("dynamic s"): Improve shape.
12980         ("dynamic p"): Improve shape.
12981         Replace `draw' with better outline approximation.
12982         ("dynamic r"): Improve shape.
12983         Don't call `fill' and `draw' at the same time.
12984
12985 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12986
12987         * SConstruct (symlink):
12988         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
12989         build fix: add enc symlink.
12990
12991         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
12992
12993         Support for DESTDIR besides prefix=/foo
12994
12995         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
12996
12997         * stepmake/stepmake/*.make:
12998         * */GNUmakefile:
12999         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13000
13001         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13002
13003         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13004         mawk in fontforge (date) test.
13005
13006 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13007
13008         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13009         font-family=roman. Add Luxi Sans as sans
13010
13011 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13012
13013         * Documentation/user/notation.itely: add warning about
13014         percent repeats and Voice contexts.
13015
13016         * Documentation/user/lilypond-book.itely: clarified the
13017         necessity of dvips -u arguments.
13018
13019 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13020
13021         * THANKS: Added a bunch of bug hunters.
13022
13023 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13024
13025         * scm/framework-ps.scm (output-preview-framework): bugfix.
13026
13027         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13028         o/ for chord modifier..
13029
13030         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13031
13032         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13033         Welsh Duggan). 
13034
13035 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13036
13037         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13038
13039         * ly/titling-init.ly: Do not also print intstrument in header on
13040         first page.  Do not print page number on first and only page.
13041
13042 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13043
13044         * input/regression/*.ly: remove old-relative everywhere
13045
13046         * lily/music-sequence.cc (simultaneous_relative_callback): do
13047         what-if analysis on copy, not on original. Fixes old-relative
13048         compatibility.
13049
13050         * scm/backend-library.scm (postscript->png): space before
13051         --verbose.
13052         
13053 2005-02-05  Werner Lemberg  <wl@gnu.org>
13054
13055         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13056         is defined.
13057
13058         * mf/feta-alphabet.mf: Define `staffsize#'.
13059         Include `feta-params.mf'.
13060         s/staffheight/design_size/.
13061
13062         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13063
13064         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13065
13066         * mf/feta-nummer-code.mf: Reformatted.
13067         (draw_six): Use outline intersection to avoid a self-intersecting
13068         path.
13069         ("Numeral comma"): Fix serious outline glitches.  This slightly
13070         changes the glyph shape.
13071         ("Numeral dash"): Use `draw_rounded_block'.
13072         ("Numeral dot"): Use `drawdot'.
13073         ("Numeral 1"): Assure identical tangent directions for the
13074         intersection points of paths.  The glyph shape improvement is only
13075         visible at very high magnifications.
13076         ("Numeral 2"): Use `solve' macro to make the lower right part of
13077         the glyph outline touch the x axis exactly.  This changes the
13078         glyph shape.
13079         Minor fixes for better overlap removal support.
13080         ("Numeral 4"): Make lefter corner `rounder'.
13081         ("Numeral 5"): Assure identical tangent directions for the
13082         intersection points of paths.  This improves the glyph shape at
13083         high magnifications.
13084         ("Numeral 7"): Use `solve' macro to make the upper right part of
13085         the glyph outline touch the metrics box exactly.  This changes the
13086         glyph shape.
13087         Avoid corner in the upper left part of the glyph (causing a minor
13088         shape change).
13089
13090         * mf/feta-ital-*.mf: Removed.  Unused.
13091
13092 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13093
13094         * VERSION (PATCH_LEVEL): release 2.5.11
13095
13096         * input/regression/fill-line-test.ly: new file.
13097
13098         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13099         emmentaler name, eg. emmentaler-23. 
13100
13101 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13102
13103         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13104         alignment with centered texts
13105
13106         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13107         list of paddings
13108
13109 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13110
13111         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13112
13113         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13114         of parents when translating rests. Fixes: c-chord-rest.ly 
13115
13116         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13117         dimension_callback_ member.
13118
13119         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13120         of extents.
13121
13122 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13123
13124         * all but lily/*: The grand 2004/2005 replace.
13125
13126 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13127
13128         * lily/*: add space after ,  
13129
13130         * scm/music-functions.scm (has-request-chord): don't use
13131         ly:music-name anywhere. Fixes <<\\>> notation. 
13132
13133         * scm/define-markup-commands.scm (box): use font-size for
13134         padding. Fixes boxed-rehearsal-marks.ly
13135
13136         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13137         identifier definition too, so foo = \lyrics { ...   } bar = #1
13138         doesn't complain about "bar" being LYRICS_STRING.
13139
13140         * lily/paper-def.cc (find_pango_font): new routine; Store
13141         pango_fonts in hash tab too. This is necessary for retrieving
13142         Pango_fonts::physical_font_tab() later on.
13143  
13144         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13145         crash if psname is null.
13146
13147         * lily/lily-guile.cc (ly_hash2alist): new function
13148
13149         * Documentation/user/changing-defaults.itely (Text encoding):
13150         rewrite. 
13151
13152         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13153         -> font_filename mapping.
13154
13155         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13156         ly_pango_font_physical_fonts
13157
13158         * scm/framework-ps.scm (supplies-or-needs): extract names from
13159         physical Pango_fonts.
13160
13161         * utf8.ly: new file.
13162
13163 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13164
13165         * Documentation/user/changing-defaults.itely (Page layout): add
13166         doco about systemSeparatorMarkup.
13167
13168         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13169         function.
13170         (default-page-make-stencil): insert system separators.
13171
13172         * scm/define-markup-commands.scm (hcenter): add
13173         (beam): add.
13174
13175 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13176
13177         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13178
13179 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13180
13181         * lily/main.cc: Spell backend consistently.  Sort options.
13182
13183 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13184
13185         * scripts/lilypond-book.py (Module): revert @include.
13186         
13187 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13188
13189         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13190         Bugfix: @include .tex (not .texi).  Small cleanups.
13191
13192         * stepmake/bin/add-html-footer.py (i18n): New function.
13193
13194 2005-01-31  Werner Lemberg  <wl@gnu.org>
13195
13196         * mf/feta-nummer.mf: Removed.  Unused.
13197
13198 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13199
13200         * lily/ : 2004 -> 2005 s&r
13201
13202         * scm/file-cache.scm (cached-file-contents): add file. Read each
13203         file only once.
13204
13205         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13206         now default.
13207
13208         * VERSION: release 2.5.10
13209         
13210         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13211
13212         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13213
13214         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13215         that both X and Y extents of bbox are non-nil.
13216
13217 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13218
13219         * scm/chord-name.scm (alteration->text-accidental-markup): change
13220         - to . 
13221
13222         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13223
13224         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13225
13226         * Documentation/user/invoking.itely (Invoking lilypond): add note
13227         about EPS backend.
13228
13229         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13230         files for inclusion in lilypond-book document.
13231
13232         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13233
13234         * input/tutorial/lbook-texi-test.texi: new file.
13235
13236         * scm/safe-lily.scm (safe-objects): add
13237         {begin,end}-of-line-(in)?visible as safe.
13238  
13239 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13240
13241         * Documentation/user/changing-defaults.itely: fixed example
13242         of (dynamics).
13243
13244 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13245
13246         * lily/main.cc: fix info about -o=FILE.
13247
13248 2005-01-29  Werner Lemberg  <wl@gnu.org>
13249
13250         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13251         construction to assure smooth transition from straight to curved
13252         lines.
13253
13254 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13255
13256         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13257         stencils.
13258
13259         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13260         translate to top of page. Fixes alignment problems of
13261         lilypond-generated EPS files.
13262
13263 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13264
13265         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13266         crescendo-end as well, since Decrescendo maybe ended with Stop
13267         Crescendo.). Fixes: partcombine-diminuendo.ly
13268
13269         * scm/script.scm (default-script-alist): swap portato symbols.
13270
13271         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13272
13273         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13274         ly:outputter-port. New function.
13275
13276         * scm/framework-ps.scm (output-classic-framework): dump a
13277         -systems.texi too
13278         (output-classic-framework): dump multiple systems on an "infinite"
13279         page EPS including fonts. 
13280
13281         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13282         .eps files for both texi and tex formats. Use PNG coming from
13283         lilypond.
13284         
13285 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13286
13287         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13288
13289         * scripts/lilypond-latex.py: fix info about -o=FILE.
13290
13291 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13292
13293         * ly/generate-embedded-cff.ly: write .cff.ps files.
13294
13295         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13296
13297         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13298         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13299
13300 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13301
13302         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13303
13304 2005-01-28  Werner Lemberg  <wl@gnu.org>
13305
13306         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13307         macros.
13308         (draw_bulb): Improved.
13309
13310         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13311         metapost bug.
13312         (draw_pedal_P): Use soft_end_penstroke.
13313         (draw_pedal_d): Use soft_start_penstroke.
13314
13315         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13316         path.
13317         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13318         doesn't change the glyph shape.
13319
13320         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13321         changing the shape) to avoid fontforge warnings.
13322
13323         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13324         soft_end_penstroke and fix glyph shape.
13325
13326 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13327
13328         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13329
13330 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13331
13332         * scm/define-markup-commands.scm (line): filter out empty stencils
13333         from line command.
13334
13335         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13336         amount.
13337
13338 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13339
13340         * Documentation/user/notation.itely: added info about what
13341         \voiceFoo does.  Also rewrote warning about marks at
13342         a line break.
13343
13344         * Documentation/user/changing-defaults.itely: added info
13345         about putting dynamics in parenthesis and brackets.
13346
13347 2005-01-27  Werner Lemberg  <wl@gnu.org>
13348
13349         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13350
13351 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13352
13353         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13354         portato-direction.ly
13355
13356         * lily/beam.cc (consider_auto_knees): add beam height to
13357         threshold. Fixes: knee-multiple-beam.ly
13358
13359         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13360         pedal line spanners. Fixes: instrument-center-pedal.ly
13361
13362         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13363         if encountering barline. Fixes: auto-beam-repeat.ly
13364
13365 2005-01-26  Werner Lemberg  <wl@gnu.org>
13366
13367         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13368         overlapping.
13369
13370         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13371         with inflections for the 1/2 sharp glyph.
13372
13373         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13374         connection between `t' and `r'.
13375         Unify bulb with the rest of `r' to avoid grazing outlines which
13376         confuses the overlap removal algorithm of fontforge.
13377
13378         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13379         inflections.
13380         (draw_cross): Fix shape to have uniform thickness in corners.
13381
13382         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13383         to avoid an uneven number of self-intersections; this confuses
13384         fontforge.
13385         Fix a slight bug in the shape at left bottom (which is visible only
13386         at high magnifications).
13387         `Center' the stem horizontally to avoid overlapping.
13388
13389 2005-01-24  Werner Lemberg  <wl@gnu.org>
13390
13391         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13392         to `asis'.
13393         (fet_begingroup): Save group name in string `feta_group'.
13394         (fet_endgroup): Updated.
13395         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13396
13397         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13398
13399         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13400         in metapost.
13401
13402 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13403
13404         * Documentation/user/notation.itely: really minor editing.
13405
13406 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13407
13408         * Documentation/user/examples.itely: minor editing.
13409
13410         * Documentation/user/changing-defaults.itely: minor editing.
13411
13412         * Documentation/user/notation.itely: clarified info on polyphony
13413         and \addlyrics.
13414
13415 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13416
13417         * scm/output-gnome.scm: 
13418         * scm/output-svg.scm:
13419         * scm/lily-library.scm (font-name-style): Update font name
13420         kludging for fontconfig use.
13421
13422 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13423
13424         * scm/define-markup-commands.scm: Document right-align and
13425         larger markup commands. Remove "TODO" from the topmost comment
13426         "each markup function should have a doc string." More consistent
13427         use of new-lines.
13428
13429 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13430
13431         * Documentation/user/changing-defaults: removed info about
13432         copyright symbol, since it's likely to change soon.
13433         Added info about betweensystemspace.
13434
13435         * Documentation/user/notation.itely: minor fixes.
13436
13437         * Documentation/user/lilypond.tely,
13438         Documentation/user/music-glossary.tely: changed copyright
13439         date to 2005 instead of 2004.
13440
13441         * input/test/volta-chord-names.ly: added old example back.
13442
13443 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13444
13445         * mf/feta-beugel.mf: use design size 20 (not 15).
13446
13447         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13448         change name to aybabtu completely
13449
13450 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13451
13452         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13453         design_size to fontname
13454
13455 2005-01-19  Werner Lemberg  <wl@gnu.org>
13456
13457         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13458         mf/feta-schrift.mf: s/p/pat/ if a path variable.
13459
13460         * mf/feta-autometric.mf (set_char_box): Add code which emits
13461         specials for mf2pt1 if run with metapost.
13462         (to_bp): New macro for mf2pt1.
13463
13464 2005-01-18  Graham Percival  <gperlist@shaw.ca>
13465
13466         * Documentation/user/changing-defaults: added info on
13467         creating a copyright symbol.
13468
13469 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13470
13471         * VERSION: release 2.5.9
13472         
13473 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
13474
13475         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
13476
13477         * Documentation/user/notation.itely: Document
13478         score-override-auto-beam-setting Fix documentation for
13479         revert-auto-beam-setting.
13480
13481 2005-01-18  Werner Lemberg  <wl@gnu.org>
13482
13483         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
13484         (procset): New function to define a procset resource.
13485         (ps-embed-pfa): New function to define a font resource.
13486         (setup): New function to define a `Setup' environment.
13487         (preamble): Use new functions.
13488
13489         * ps/lilypond.defs (init-lilypond-parameters): New function to
13490         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
13491
13492 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13493
13494         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
13495
13496 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
13497
13498         * scm/define-markup-commands.scm: Change number->markletter-string
13499         to take two arguments (vector number). Add number->mark-alphabet-vector
13500         and markalphabet markup command.
13501
13502         * scm/translation-functions.scm: Add format-mark-box-alphabet,
13503         format-mark-alphabet, format-mark-box-barnumbers and
13504         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
13505
13506 2005-01-17  Graham Percival  <gperlist@shaw.ca>
13507
13508         * Documentation/user/examples.itely: add SATB automatic piano
13509         reduction template.
13510
13511         * Documentation/user/notation.itely: added info about changing
13512         partcombine texts.  Also adds examples of alternate lyrics.
13513
13514         * Documentation/user/changing-defaults.itely: added warning
13515         about \RemoveEmptyStaffContext overriding previous changes.
13516
13517 2005-01-17  Werner Lemberg  <wl@gnu.org>
13518
13519         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
13520         feta-alphabet*.
13521
13522 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13523
13524         * python/lilylib.py (make_ps_images): don't do final showpage for
13525         multi-page documents.
13526         
13527         * VERSION (MY_PATCH_LEVEL): release 2.5.8
13528
13529 2005-01-16  Graham Percival  <gperlist@shaw.ca>
13530
13531         * Documentation/user/lilypond.tely: changed order of appendices;
13532         unified index should be last.
13533
13534         * Documentation/user/notation.itely: add example of key signatures
13535         and info about Staff.printKeyCancellation.
13536
13537 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13538
13539         * lily/include/repeated-music.hh (class Repeated_music): change
13540         into "namespace" class.
13541
13542         * lily/event.cc: remove Key_change_event.
13543
13544         * lily/include/transposed-music.hh (class Transposed_music): remove.
13545
13546         * lily/transposed-music.cc: remove
13547
13548         * lily/include/relative-music.hh: remove.
13549
13550         * lily/include/music-sequence.hh (struct Music_sequence): change
13551         into "namespace" class.
13552
13553         * lily/untransposable-music.cc (Module): remove
13554
13555         * lily/include/un-relativable-music.hh (Module): remove
13556
13557         * lily/include/untransposable-music.hh (Module): remove
13558
13559         * lily/include/music-list.hh (Module): remove file
13560
13561         * lily/un-relativable-music.cc: remove file.
13562
13563 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13564
13565         * lily/parser.yy: Compile fix.
13566
13567 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13568
13569         * lily/include/music.hh (class Music): unvirtualize transpose().
13570
13571         * lily/sequential-music.cc: remove file.
13572
13573         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
13574
13575         * lily/slur-scoring.cc (get_best_curve): only switch on
13576         DEBUG_SLUR_SCORING for non NDEBUG builds.
13577
13578         * lily/include/music.hh (class Music): replace Music::start_mom()
13579         by start-callback property
13580
13581         * lily/include/grace-music.hh: remove file. 
13582
13583         * lily/stem.cc (height): robustness fix.
13584
13585         * lily/time-scaled-music.cc: remove file.
13586
13587         * lily/include/music.hh (class Music): include SCM init argument.
13588         (class Music): replace Music::get_length() virtual by
13589         length-callback property everywhere.
13590
13591         * scripts/convert-ly.py (conv): add  # to \property scalar value.
13592
13593         * mf/GNUmakefile: don't install *list.ly
13594
13595 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13596
13597         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
13598
13599 2005-01-12  Werner Lemberg  <wl@gnu.org>
13600
13601         This patch addresses the following problems in the feta sources
13602         files which contribute to the fetaXX fonts.
13603
13604         . Many fixes for rasterization at low resolutions (consistent use of
13605           `vround' and `hround', integer shift values for paths, applying
13606           `eps' for mirrored paths, use of `define_whole_pixels' and
13607           friends, etc.) -- while this probably looks like a waste of time
13608           it has revealed deficiencies in some glyph shapes.  See comment at
13609           the end of feta-params.mf how vertical symmetry is achieved.
13610
13611         . The `---' operator has been replaced everywhere with `--'; this
13612           both improves and considerably reduces the font size after
13613           conversion with mf2pt1.
13614
13615         These change aren't explicitly mentioned below since virtually all
13616         glyphs are affected.
13617
13618         Other notable differences:
13619
13620         . Glyphs from feta-accordion.mf now have charboxes around the
13621           outline.
13622
13623         . Fixed incorrect charbox for `accDot'.
13624
13625         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
13626
13627         . Fixed position of the bow in the `upprall' glyph and its siblings.
13628
13629         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
13630           dependent on the staff line thickness to avoid touching the middle
13631           staff line at smaller sizes.
13632
13633         . Largely extended output for feta-testXX: Where useful, glyphs
13634         are shown both between and on staff lines.
13635
13636
13637         * mf/feta-params.mf (staff_space_rounded,
13638         stafflinethickness_rounded, linethickness_rounded,
13639         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
13640         Update all code which uses them where appropriate.
13641         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
13642         New variables used to control rasterization at low resolutions.  Set
13643         to zero if feta code is processed with metapost.
13644
13645         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
13646         (draw_rounded_block, draw_square_block): Updated to use `--' only.
13647         (flare_path): Updated.
13648         Make it work with `filldraw' (but only circular pens).
13649         (hfloor, vfloor, hceiling, vceiling): New macros.
13650
13651         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
13652         Use `draw' again in mf mode to have good pixel dropout control.
13653         Fix intersection points of horizontal lines with circle.
13654         ("accDot"): Fix parameters for set_char_box.
13655         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
13656         control.
13657
13658         * mf/feta-banier.mf: Updated.
13659
13660         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
13661         testing.
13662         (undraw_inside_ellipse): Remove `center' argument.  Update all
13663         callers.
13664         (draw_brevis): New macro, called by "Brevis notehead".
13665         (draw_whole_triangle_head): New macro, called by "Whole
13666         trianglehead".
13667         (draw_small_triangle_head): Use `filldraw'.
13668
13669         * mf/feta-eindelijk.mf: Remove useless global group.
13670         Updated.
13671
13672         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
13673         `filldraw'.
13674
13675         * mf/feta-pendaal.mf: Updated.
13676
13677         * mf/feta-puntje.mf: Updated.
13678
13679         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
13680         less points.
13681         ("Flageolet"): Use `draw' again in mf mode to have good pixel
13682         dropout control.
13683         ("Varied Coda"): Use `draw_block'.
13684         (draw_comma): Fix typo.
13685         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
13686         pixel dropout control.
13687
13688         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
13689         position of bow.
13690
13691         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
13692         sizes.
13693
13694         * mf/feta-toevallig.mf (remember_pic): New variable, used for
13695         testing.
13696         (draw_meta_sharp): Much simplified.
13697         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
13698
13699         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
13700
13701 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
13702
13703         * Documentation/user/notation.itely (Ancient rests): Fix typo
13704         (thanks Anthony)
13705
13706 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
13707
13708         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
13709
13710         * lily/main.cc (setup_paths): Add cff.
13711
13712         * mf/GNUmakefile (foe): Include actual target %.cff.
13713         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
13714
13715 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13716
13717         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
13718         suffix for main_input_b_.
13719
13720         * scm/music-functions.scm (toplevel-music-functions):
13721         precompute music lengths for music expressions.  
13722
13723 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13724
13725         * lily/include/input.hh (class Input): new `end_' slot for end of
13726         input. Renamed defined_str0_ to start_.
13727
13728         * lily/input.cc (Input): Add Input::Input (Input const &) and
13729         remove Input::Input (Source_file*, char const *). Use the new
13730         slots.
13731         (set_location): method used by bison to propagate input
13732         locations (YYLLOC_DEFAULT).
13733         (end_line_number, end_column_number, step_forward): new methods
13734         
13735         * lily/input-scheme.cc (ly:input-both-locations): new function,
13736         similar to ly:input-location, but also return the end line and
13737         column.
13738
13739         * lily/include/includable-lexer.hh: 
13740         * lily/includable-lexer.cc: 
13741         * lily/include/lily-lexer.hh (class Lily_lexer): 
13742         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
13743         Includable_lexer to Lily_lexer, in order to update lexloc (the
13744         yylloc), a new slot of Lily_lexer.
13745         (here_input, LexerError): simplify by using the lexloc slot (aka
13746         yylloc)
13747
13748         * lily/lexer.ll: #define yylloc to use input locations (it may
13749         be useless here?). Fixed the #embedded_scm rule (step the location
13750         forward in order to skip the sharp sign before parsing the scheme
13751         expression)
13752
13753         * lily/include/lily-parser.hh (class Lily_parser): 
13754         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
13755         here_input()
13756         (parser_error): overload for more precise locations of errors.
13757
13758         * lily/parser.yy (YYLTYPE): set location type to Input
13759         (YYLLOC_DEFAULT): use Input::set_location()
13760         (yylex): add the YYLTYPE* location parameter.
13761         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
13762         Give an Input parameter to THIS->parser-error() for more accurate
13763         messages.
13764
13765 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13766
13767         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
13768
13769         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
13770         on BEAMQUANTING for non-NDEBUG builds.
13771
13772         * lily/stem.cc (head_count): performance: avoid String::String()
13773         inside oft called function.
13774
13775 2005-01-09  Graham Percival  <gperlist@shaw.ca>
13776
13777         * Documentation/user/examles.itely: attempted fix for broken
13778         string quartet template.
13779
13780         * Documentation/user/notation.itely: remove unnecessary broken
13781         link.
13782
13783 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13784
13785         * VERSION (PACKAGE_NAME): release 2.5.7
13786
13787 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13788
13789         * config.make.in (METAFONT): Append -progname=mf, fixes use with
13790         mf-nowin for teTeX-3.0.  Backportme.
13791
13792         * scm/output-svg.scm (utf8-string): New function.
13793
13794         * scm/output-gnome.scm (utf8-string): New function.
13795         (otf-name-mangling): Remove.
13796
13797         * lily/pango-font.cc (Pango_font): Use font string iso font
13798         filename for utf8-text.
13799
13800         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
13801         name.
13802
13803 2005-01-08  Graham Percival  <gperlist@shaw.ca>
13804
13805         * Documentation/user/notation.itely: add info about
13806         Staff.extraNatural = ##f in Pitches section.  Also
13807         fixed some minor issues in the Vocal music section.
13808
13809 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13810
13811         * scm/output-ps.scm (white-text): comment out Helvetica font,
13812         which is broken for my GS install.
13813
13814         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
13815         which provides a tighter bbox.
13816
13817         * scm/define-grobs.scm (all-grob-descriptions): remove all
13818         extra-offsets from definitions.
13819
13820 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
13821
13822         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
13823         add tuning for 4-string bass and some common 4/5-string banjo
13824         tunings.  New function (four-string-banjo) turns a 5-string tuning
13825         into a 4-string tuning.  New function
13826         (fret-number-tablature-format-banjo) computes correct fret numbers
13827         on 5-string banjos.
13828
13829         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
13830         Add beam correction to TabVoice.
13831
13832         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
13833         using bold font; makes tabs more readable.
13834
13835 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13836
13837         * lily/font-select.cc (get_font_by_design_size): don't make
13838         Modified_font_metric; this causes trouble, since we don't know the
13839         font magnification from inside Pango_font::text_stencil()
13840
13841         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
13842
13843         * Documentation/user/notation.itely (The Lyrics context): comment out
13844         broken {Small ensembles} link.
13845
13846         * scm/framework-svg.scm (output-framework): change calling convention.
13847
13848         * lily/object-key-dumper-scheme.cc: new file.
13849
13850         * lily/object-key-undumper-scheme.cc: new file.
13851
13852         * lily/tweak-registration-scheme.cc: new file.
13853
13854         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
13855
13856         * Documentation/user/examples.itely (String quartet): uncomment
13857         broken example.
13858
13859         * lily/font-config.cc: new file.
13860
13861 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13862
13863         * scm/output-svg.scm: 
13864         * scm/output-gnome.scm: s/bigcheese/emmentaler.
13865
13866         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
13867
13868 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13869
13870         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
13871         Add headers.
13872
13873         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
13874
13875 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13876
13877         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
13878
13879         * lily/include/main.hh: lose _b hungarian suffixes for global
13880         variables.
13881
13882         * lily/include/lily-guile-macros.hh: new file.
13883
13884         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
13885
13886         * lily/general-scheme.cc: new file. 
13887
13888         * lily/font-select.cc (get_font_by_design_size): retrieve
13889         PangoFont for (designsize . "pango-descr") entries.
13890
13891         * lily/lily-parser-scheme.cc: new file.
13892
13893         * lily/output-def-scheme.cc: new file.
13894
13895         * lily/paper-book-scheme.cc: new file.
13896
13897         * lily/duration-scheme.cc (LY_DEFINE): new file.
13898
13899         * lily/pitch-scheme.cc:  new file.
13900
13901         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
13902
13903 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13904
13905         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
13906
13907 2005-01-06  Graham Percival  <gperlist@shaw.ca>
13908
13909         * Documentation/user/notation.itely: minor editing.
13910
13911         * Documentation/user/changing-defaults: minor editing.
13912
13913         * Documentation/user/examples.itely: add template for
13914         string quartet part extraction; demonstrates tag.
13915
13916 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
13917
13918         * Documentation/user/notation.itely: documents
13919         format-mark-box-letters and format-mark-box-numbers
13920
13921         * scm/define-context-properties.scm: change comment.
13922
13923 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13924
13925         * scm/framework-ps.scm (output-classic-framework): new function:
13926         dump systems as separate .eps files (without fonts) and write a
13927         single collecting .tex file.
13928
13929 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
13930
13931         * Documentation/user/notation.itely (Setting simple songs):
13932         Correct several errors in the equivalent formulation of
13933         \addlyrics. 
13934         (The Lyrics context): Corrected link to the SATB example.
13935
13936 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13937
13938         * scm/lily.scm (completize-formats): new function
13939         (postprocess-output): new function
13940
13941         * lily/paper-book.cc (classic_output): change calling
13942         convention. Give basename as first argument. 
13943         remove Paper_book::post_processing().
13944
13945         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
13946
13947 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13948
13949         * lily/paper-outputter.cc (LY_DEFINE): new function
13950         ly:outputter-close.
13951
13952         * lily/main.cc: change --format,-f to --backend,-b
13953
13954         * lily/include/main.hh: rename format to backend.
13955
13956         * scm/translation-functions.scm (format-mark-box-numbers): add.
13957         patch by Erlend Aasland
13958
13959 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13960
13961         * lily/pango-font.cc (text_stencil): dump string as
13962         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
13963
13964 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
13965
13966         * configure.in (gui_b): Remove handy developer-only
13967         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
13968         CVS source installations (but break other non-default but correct
13969         PKG_CONFIG_PATH setups), as this is no longer developer-only.
13970
13971         * SConstruct: 
13972         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
13973         compatibility (backportme).
13974
13975         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
13976
13977 2005-01-03  Werner Lemberg  <wl@gnu.org>
13978
13979         Prepare glyph shapes for mf2pt1 conversion.
13980
13981         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
13982         (accDiscant, accFreebase, accStdbase): Replace `draw' with
13983         `penstroke'.
13984         (accDot): Use `drawdot'.
13985         (accBayanbase): Replace `draw' with `draw_gridline'.
13986         (print_penpos): Moved to feta-macros.mf.
13987         (accOldEE): Replace `filldraw' with `penstroke'.
13988         Replace `draw' with `penstroke' and `drawdot'.
13989
13990         * mf/feta-banier.mf: Code clean-up.
13991         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
13992         `fill'.
13993
13994         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
13995
13996         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
13997         paremeter to control drawing of labels.  Update all callers.
13998
13999         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14000         (new_bulb): Return a bulb as a single path.  To do that, it now
14001         takes some more parameters.  Updated all callers.
14002         (draw_gclef): Major clean-up.  `draw' has been replaced with
14003         `penstroke', unnecessary outlines have been removed.
14004         Remove (unused) gnome-canvas code.
14005
14006         * mf/feta-macros.mf (print_penpos): New macro (from
14007         feta-accordion.mf).
14008         Other minor fixes.
14009
14010         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14011         ("Pedal dot"): Use `drawdot'.
14012         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14013         all callers.
14014         Fix shape at top.
14015         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14016         all callers.
14017         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14018         all callers.
14019         Revert drawing direction.
14020
14021         * mf/feta-schrift.mf (draw_fermata): Use single path.
14022         (draw_short_fermata): Replace `filldraw' with `fill'.
14023         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14024         `draw_rounded_block' with a single path.
14025         ("Thumb"): Draw full circle instead of mirroring segments.
14026         (draw_accent): New macro.
14027         ("> accent", "espr"): Use it.
14028         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14029         ("open (unstopped)"): Draw full circle instead of mirroring
14030         segments.
14031         (draw_vee): Removed.
14032         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14033         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14034         path.
14035         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14036         partial pieces drawn with `fill' -- these do still overlap with the
14037         stem of the `t' but just once, not multiple times so that fontforge
14038         can handle it gracefully.
14039         Change other parts of the glyph so that fontforge's overlapping
14040         algorithm reliably works.
14041         (draw_heel): Replace `draw' with `fill'.
14042         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14043         ("Flageolet"): Replace `draw' with `penstroke'.
14044         ("Segno"): Replace `filldraw' with `penstroke'.
14045         Replace `draw' with `drawdot'.
14046         ("Coda"): Replace `fill' with `penstroke', using a single path.
14047         ("Varied Coda"): Use less overlapping paths.
14048         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14049         single path.
14050
14051         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14052         group to better control the `labels' command.
14053         Rename argument to `offset' and use it actually.  Update all
14054         callers.
14055         Replace `filldraw' with `fill'.
14056         ("mordent", "prallmordent", "upmordent", "downmordent",
14057         "lineprall"): Replace `draw' with `draw_gridline'.
14058         ("upprall", "downprall"): Replace `draw' with `fill'.
14059
14060         * mf/feta-timesig.mf: Formatting.
14061
14062         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14063         to...
14064         ("Flat"): Here.
14065         (draw_paren): Move code to draw labels to...
14066         ("Right Parenthesis"): Here.
14067
14068 2005-01-02  Graham Percival <gperlist@shaw.ca>
14069
14070         * Documentation/user/notation.itely: add example of \setTextDecresc
14071         and \setTextDim.
14072
14073 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14074
14075         * scm/define-markup-commands.scm :  fix glyph-strings of
14076         accidentals and \note-by-number
14077
14078 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14079
14080         * VERSION: 2.5.6 released.
14081         
14082         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14083
14084         * input/regression/new-markup-scheme.ly: oops. font-family=music
14085         -> font-encoding fetaMusic.  
14086
14087         * lily/main.cc: put default to PS.
14088
14089         * lily/tfm.cc: idem.
14090
14091         * lily/afm.cc: idem.
14092
14093         * lily/include/modified-font-metric.hh (struct
14094         Modified_font_metric): remove coding_scheme() method.
14095
14096         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14097
14098         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14099
14100         * input/les-nereides.ly: convert to utf8
14101
14102         * lily/modified-font-metric.cc (text_dimension): idem.
14103
14104         * lily/parser.yy (TODO): idem.
14105
14106         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14107
14108         * lily/lexer.ll: remove encoding
14109
14110         * scm/framework-ps.scm (output-variables): separately scale the
14111         page to mm 
14112
14113         * lily/pango-font.cc (Pango_font): fix scaling.
14114
14115         * lily/font-metric.cc (design_size): design_size returns a
14116         dimension now as well.
14117
14118 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14119
14120         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14121         brace generation. 
14122
14123         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14124
14125 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14126
14127         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14128         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14129
14130 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14131
14132         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14133         in first run as well.
14134
14135         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14136         dimension less points (ie. 12 = 12 point)
14137
14138         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14139
14140         * lily/all-font-metrics.cc (find_pango_font): set description_
14141
14142         * lily/pango-font.cc (text_stencil): export size as well.
14143         (text_stencil): fix scaling and extents box.
14144
14145 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14146
14147         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14148
14149         * Documentation/user/invoking.itely (Invoking lilypond): document
14150         texstr
14151
14152         * scripts/convert-ly.py (conv): add ancient rules.
14153
14154         * scm/clef.scm (c0-pitch-alist): replace - with .
14155
14156         * scripts/lilypond-book.py (process_snippets): add texstr support.
14157
14158         * scm/framework-texstr.scm (header): change extension to .textmetrics
14159
14160         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14161         -f tex.
14162
14163         * lily/text-metrics.cc: new file.
14164         (try_load_text_metrics): new function
14165
14166         * lily/include/text-metrics.hh: new file.
14167
14168 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14169
14170         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14171         ly_scheme_function to ly_lily_module_constant.
14172
14173         * lily/modified-font-metric.cc (text_dimension): try
14174         lookup_tex_text_dimension() first.
14175
14176         * lily/tfm.cc: new function ly:load-text-dimensions
14177
14178 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14179
14180         * scm/output-texstr.scm (text): use \lilygetmetrics
14181
14182         * scm/framework-texstr.scm (header): dump in new format.
14183
14184         * tex/lilypond-tex-metrics: new file.
14185         
14186 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14187
14188         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14189         mapping.
14190         (index_to_charcode): New method.
14191
14192         * scm/output-ps.scm (glyph-string): 
14193         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14194
14195 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14196
14197         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14198         implement fully, need FONT to get to charcode.
14199
14200         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14201
14202         * scm: Cleanups.
14203
14204         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14205         {Tunable context properties},
14206         {All layout objects},
14207         {Music definitions}.
14208
14209 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14210
14211         * VERSION: release 2.5.5
14212         
14213         * lily/main.cc: use TeX as default output format.
14214
14215         * flower/file-path.cc (find): try to open directly as well, so we
14216         find absolute path files. 
14217
14218         * lily/pango-select.cc: new file.
14219
14220         * scm/framework-ps.scm: remove all encoding code. 
14221         load pfb/pfa for PangoFont too.
14222         
14223         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14224
14225 2004-12-22  Werner Lemberg  <wl@gnu.org>
14226
14227         Prepare glyph shapes for mf2pt1 conversion.
14228
14229         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14230
14231         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14232         (define_triangle_shape): Use it to replace `draw' with `fill' and
14233         `unfill'.  Update all callers.
14234         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14235         (draw_cross): Ditto.
14236         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14237         Use penrazor for better conversion with mf2pt1.
14238         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14239         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14240         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14241         draw_la_head, draw_ti_head): Replace `filldraw' with
14242         `fill'.  Update all callers.
14243
14244 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14245
14246         * lily/paper-book.cc (output): revert: only allow a single output
14247         format.
14248
14249         * lily/include/pango-font.hh: new file.
14250
14251         * lily/pango-font.cc: new file.
14252
14253         * lily/font-metric.cc (text_stencil): new routine
14254
14255         * lily/all-font-metrics.cc (find_pango_font): new routine.
14256
14257         * lily/include/font-metric.hh (struct Font_metric): add
14258         text_stencil()
14259
14260         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14261
14262 2004-12-22  Werner Lemberg  <wl@gnu.org>
14263
14264         Prepare glyph shapes for mf2pt1 conversion.
14265
14266         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14267
14268         * mf/feta-toevallig.mf: Formatting.
14269         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14270         ("Natural"): Fix paths to allow better postprocessing.
14271         (draw_meta_flat): Use `z3l' as additional point in path to get
14272         better conversion with mf2pt1.
14273         Other minor cleanups.
14274         ("3/4 Flat"): Add auxiliary points and modify path to replace
14275         `draw' with `fill'.
14276         ("Double Sharp"): Mirror path segments instead of picture elements
14277         to get a single outline.
14278         Modify path to replace `filldraw' with `fill'.
14279
14280 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14281
14282         * input/test/unfold-all-repeats.ly: added file back.
14283
14284         * Documentation/user/notation.itely,
14285         Documentation/user/programming-interface.itely
14286         Documentation/user/changing-defaults.itely: fixed misc broken
14287         links to input/test/ files.
14288
14289 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14290
14291         * tex/texinfo.tex: Update.  We should not be distributing this,
14292         but since we do, use latest version.
14293
14294         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14295         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14296         macros for feta glyphs.
14297
14298 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14299
14300         * Documentation/user/changing-defaults.itely: fix index for set.
14301
14302         * Documentation/user/converters.itely: added convert-ly bugs list
14303         from CVS.
14304
14305 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14306
14307         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14308         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14309         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14310         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14311
14312         * mf/GNUmakefile (pfa_warning): Use less broken check.
14313
14314         * python/lilylib.py (setup_environment): Remove cruft from
14315         GS_FONTPATH.
14316
14317         * configure.in: Bump mftrace requirement to 1.1.1.
14318
14319 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14320
14321         * scm/output-svg.scm (beam): Use polygon.
14322
14323         * scm/lily-library.scm: Bugfix.
14324
14325         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14326
14327         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14328
14329 2004-12-19  Werner Lemberg  <wl@gnu.org>
14330
14331         Prepare glyph shapes for mf2pt1 conversion.
14332
14333         * mf/feta-eindelijk: Some formatting.
14334         (multi_rest_x, multi_beam_height): Removed.  Unused.
14335         ("Quarter rest"): Use `intersectiontimes' to create a single
14336         outline.
14337         (rest_crook): Removed.  Unused.
14338         (draw_rest_bulb): Return path (without filling).  Update callers.
14339         Simplified.
14340         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14341         "128th rest"): Simplify `pat'.
14342         Create single outline.
14343
14344 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14345
14346         * mf/GNUmakefile (ALL_GEN_FILES):
14347         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14348
14349         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14350         function.
14351
14352 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14353
14354         * scm/output-texstr.scm (placebox): add routine
14355
14356         * VERSION (PACKAGE_NAME): release 2.5.4
14357
14358         * scm/framework-texstr.scm (output-framework): new file.  
14359
14360         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14361         processing.
14362
14363         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14364
14365         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14366         rule.
14367
14368         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14369
14370         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14371
14372         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14373
14374 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14375
14376         * scm/framework-svg.scm (dump-page): Implement landscape.
14377
14378 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14379
14380         * lily/main.cc (setup_paths): Add svg to search path.
14381
14382         * scm/output-svg.scm:
14383         * scm/framework-svg.scm: Add pageSet.  Update.
14384         (dump-fonts): New function.
14385         (output-framework): Use it.
14386
14387         * mf/GNUmakefile: 
14388         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14389
14390 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14391
14392         * tex/lilyponddefs.tex: comment out new ifpdf code.
14393
14394 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14395
14396         * GNUmakefile.in: 
14397         * SConstruct (symlink): Replace afm by otf.
14398
14399         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14400         ly:pango-add-afm-decoder.
14401
14402         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14403
14404 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14405
14406         * scm/output-ps.scm (new-text): don't access t glyph for getting
14407         space dimension.
14408
14409         * ly/init.ly: warn about \version
14410
14411         * lily/lexer.ll: set version-seen?
14412
14413 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14414
14415         * scm/output-svg.scm (string->entities): Update.
14416
14417 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14418
14419         * lily/main.cc (setup_paths): replace afm by otf for path. 
14420
14421         * lily/pangofc-afm-decoder.cc: remove.
14422
14423         * lily/include/pangofc-afm-decoder.hh: remove.
14424
14425         * scm/framework-scm.scm (output-framework): new file.
14426
14427         * mf/GNUmakefile: remove SAUTER_FONTS.
14428         remove SVG/sodipodi hacks.
14429
14430         * scm/lily-library.scm (stderr): move stderr.
14431
14432         * mf/GNUmakefile: remove AFM support.
14433
14434         * buildscripts/mf-to-table.py (base): remove AFM support.
14435
14436         * lily/open-type-font.cc (design_size): use design_size
14437
14438 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14439
14440         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14441
14442 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14443
14444         * mf/GNUmakefile: Generate combined aybabtu info.
14445         * mf/aybabtu.pe.in (i): Load it.
14446
14447         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14448         are not symbols.
14449
14450         * lily/include/open-type-font.hh (count): New method.
14451
14452         * mf/aybabtu.pe.in: Typo.
14453
14454         * Documentation/user/out/lilypond-internals.nexi (Scheme
14455         functions): Typo.
14456
14457         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14458
14459 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14460
14461         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
14462         subfonts.
14463
14464         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
14465
14466         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
14467         (tex-font-command-raw): new function.
14468
14469         * lily/include/virtual-font-metric.hh (Module): remove file
14470
14471         * lily/virtual-font-metric.cc (Module): remove file.
14472         
14473
14474         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
14475         (get_indexed_char): read bbox from lily table if present.
14476
14477 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14478
14479         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
14480         aybabtu.subfonts
14481
14482         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
14483         global glyphname. Enables more than 64 glyphs in the OTF.
14484
14485 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
14486
14487         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
14488         braces.
14489
14490         * lily/open-type-font.cc (design_size): Use 12 as default for
14491         design size.
14492
14493         * mf/aybabtu.pe.in: New file.  Merge all our braces.
14494
14495         * mf/GNUmakefile: Generate aybabtu.
14496
14497         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
14498
14499 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14500
14501         * scm/lily-library.scm (char->unicode-index): Remove.
14502
14503         * scm/output-gnome.scm (text): Bugfix for plain string input.
14504         Updates.
14505
14506         * scm/output-svg.scm (svg-font): Add weight to font selection.
14507
14508 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
14509
14510         * Documentation/topdocs/INSTALL.texi (Top): Point to
14511         buildscripts/out/clean-fonts instead of
14512         buildscripts/clean-fonts.sh. 
14513
14514 2004-12-13  Graham Percival  <gperlist@shaw.ca>
14515
14516         * input/regression/figured-bass.ly: attempt to clarify text.
14517
14518         * Documentation/user/notation.tely: add cindex for tag, attempt to
14519         add figured bass example.
14520
14521         * Documentation/user/changing-defaults: basic editing.
14522
14523 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14524
14525         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
14526
14527         * lily/open-type-font.cc (LY_DEFINE): new function
14528         ly:font-sub-fonts
14529
14530         * lily/include/font-metric.hh (struct Font_metric): new method
14531         sub_fonts()
14532
14533         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
14534         . with - in add.stem.
14535         
14536 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14537
14538         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
14539         and fetaDynamic.
14540
14541         * lily/rest.cc (glyph_name): Change - to . .
14542
14543         * scm/output-gnome.scm (text): Hello world, again.
14544
14545         * scm/output-svg.scm (named-glyph): New function.  Hello world!
14546
14547         * lily/modified-font-metric.cc (index_to_charcode): New method.
14548
14549         * lily/include/font-metric.hh (index_to_charcode): New function.
14550
14551         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
14552         new function.
14553         (ly:font-glyph-to-index): Remove.
14554
14555 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14556
14557         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
14558
14559         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
14560
14561         * lily/open-type-font.cc (load_scheme_table): new function
14562
14563         * lily/dots.cc (print): replace - 
14564
14565         * lily/open-type-font.cc (attachment_point): new function.
14566         (load_table): read LILC table
14567
14568         * buildscripts/gen-bigcheese-scripts.py (Module): new
14569         file. Generate FF scripts.
14570
14571         * mf/feta-din10.mf: idem.
14572
14573         * mf/feta-nummer10.mf: remove mf files.
14574
14575         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
14576
14577 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14578
14579         * lily/lily-guile.cc: Use scm_from_locale_stringn.
14580
14581         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
14582         compatibility.
14583
14584 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14585
14586         * lily/open-type-font.cc (get_indexed_char): scale metrics by
14587         design-size and units_per_EM.
14588
14589         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
14590
14591 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14592
14593         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
14594         does not crash fontforge.
14595
14596         * scm/lily-library.scm (char->unicode-index): Hack to map onto
14597         PUA.
14598
14599 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14600
14601         * scm/framework-ps.scm (ps-embed-cff): new function.
14602
14603         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
14604
14605 2004-12-12  Werner Lemberg  <wl@gnu.org>
14606
14607         * mf/bigcheese.pe.in: Add PUA mapping.
14608         Don't create Type 42 but bare CFF font.
14609
14610 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14611
14612         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
14613         within canvas boundaries.
14614
14615         * mf/merge.pe.in: Set font names, version, license GPL.
14616
14617         * make/substitute.make: Add FONTFORGE.
14618
14619         * config.make.in (FONTFORGE): Add.
14620
14621         * configure.in (gui_b): Use PATH_PROG for fontforge.
14622
14623 2004-12-11  Graham Percival  <gperlist@shaw.ca>
14624
14625         * scm/define-markup-commands.scm: add baseline-skip to info
14626         about \column.
14627
14628 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
14629
14630         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
14631
14632         * scm/output-gnome.scm (named-glyph): Use it.
14633
14634         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
14635
14636         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
14637         (upper_string, lower_string, reverse_string): Remove.
14638
14639         * configure.in (fontforge): Reinstate version check.
14640
14641         * ly/engraver-init.ly: Fix clef glyph names.
14642
14643         * lily/time-signature.cc (special_time_signature): Fix fraction
14644         glyph names.
14645
14646 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14647
14648         * mf/merge.pe: new file.
14649
14650         * lily/freetype.cc: new file.
14651
14652         * lily/include/open-type-font.hh (class Open_type_font): new file.
14653
14654         * lily/include/freetype.hh: new file.
14655
14656         * lily/open-type-font.cc: new file.
14657
14658         * lily/all-font-metrics.cc (find_otf): new function.
14659
14660 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
14661
14662         * lily/time-signature.cc (special_time_signature): Fix.
14663
14664         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
14665         GTK2 before checking for pango.  Fixes -fgnome.
14666
14667         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
14668         Scheme name.
14669
14670         * scm/define-markup-commands.scm:
14671         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
14672
14673         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
14674
14675         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
14676         date versions.  Fixes configure.
14677         (STEPMAKE_CHECK_VERSION): Support optional actual program version
14678         argument.
14679
14680 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14681
14682         * buildscripts/mf-to-table.py (write_ps_encoding): write real
14683         names in .enc
14684
14685         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
14686
14687 2004-12-09  Graham Percival  <gperlist@shaw.ca>
14688
14689         * Documentation/user/changing-defaults.itely: add info about
14690         make-dynamic-script
14691
14692         * Documentation/user/notation.itely: add link in dynamics to
14693         section about make-dynamic-script.
14694
14695 2004-12-09  Christian hitz  <chhitz@gmx.net>
14696
14697         * lily/lily-guile.cc: change MACOS_X to __APPLE__
14698
14699 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14700
14701         * buildscripts/mf-to-table.py (parse_logfile): use . for
14702         concatting name and group.
14703         (parse_logfile): use M for Minus (negative.)
14704
14705         * lily/include/type-swallow-translator.hh
14706         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
14707
14708         * lily/*.cc: cosmetics around = sign.
14709
14710         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
14711         lyric spacing on the penultimate column.
14712
14713 2004-12-05  Christian Hitz  <chhitz@gmx.net>
14714
14715         * configure.in:
14716         * lily/accidental-placement.cc:
14717         * lily/bar-line.cc:
14718         * lily/beam-concave.cc:
14719         * lily/beam-quanting.cc:
14720         * lily/beam.cc:
14721         * lily/bezier-bow.cc:
14722         * lily/bezier.cc:
14723         * lily/break-align-interface.cc:
14724         * lily/custos.cc:
14725         * lily/dimension-cache.cc:
14726         * lily/dot-column.cc:
14727         * lily/font-metric.cc:
14728         * lily/font-select.cc:
14729         * lily/gourlay-breaking.cc:
14730         * lily/grob-property.cc:
14731         * lily/grob.cc:
14732         * lily/lily-guile.cc:
14733         * lily/line-spanner.cc:
14734         * lily/lookup.cc:
14735         * lily/lyric-extender.cc:
14736         * lily/lyric-hyphen.cc:
14737         * lily/mensural-ligature.cc:
14738         * lily/midi-def.cc:
14739         * lily/misc.cc:
14740         * lily/note-collision.cc:
14741         * lily/note-column.cc:
14742         * lily/note-head.cc:
14743         * lily/paper-outputter.cc:
14744         * lily/percent-repeat-item.cc:
14745         * lily/rest-collision.cc:
14746         * lily/side-position-interface.cc:
14747         * lily/simple-spacer.cc:
14748         * lily/slur-configuration.cc:
14749         * lily/slur-scoring.cc:
14750         * lily/slur.cc:
14751         * lily/spaceable-grob.cc:
14752         * lily/spacing-spanner.cc:
14753         * lily/spanner.cc:
14754         * lily/staff-symbol-referencer.cc:
14755         * lily/stem.cc:
14756         * lily/stencil.cc:
14757         * lily/system-start-delimiter.cc:
14758         * lily/system.cc:
14759         * lily/text-item.cc:
14760         * lily/tie.cc:
14761         * lily/tuplet-bracket.cc:
14762         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
14763         <cmath> beacause isinf/isnan is undefined in <cmath>
14764
14765 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
14766
14767         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
14768
14769 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14770
14771         * VERSION: release 2.5.3
14772         
14773 2004-11-29  Arno Waschk <arno@arnowaschk.de>
14774
14775         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
14776
14777 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14778
14779         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
14780
14781         * lily/note-head.cc (internal_print): always try the "s" head if
14782         u/d not found.
14783
14784         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
14785
14786 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14787
14788         * mf/parmesan-heads.mf (overdone_heads): typos.
14789
14790 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14791
14792         * lily/parser.yy (markup): in markups, { .. } without command
14793         before are also flattened, ie \line must be explicitely used.
14794
14795         * Documentation/user/changing-defaults.itely:
14796         * Documentation/user/notation.itely: 
14797         * input/wilhelmus.ly: 
14798         * input/regression/instrument-name-markup.ly: 
14799         * input/regression/markup-score.ly: 
14800         * input/regression/new-markup-scheme.ly: 
14801         * input/regression/new-markup-syntax.ly: 
14802         * input/test/coriolan-margin.ly: use \line in markups where
14803         appropriate
14804         
14805 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14806
14807         * scm/new-markup.scm (map-markup-command-list): helper function
14808         used in parser.yy to map markup commands on a markup list.
14809
14810         * lily/parser.yy: get rid off < > in markups by treating { } as
14811         real lists.
14812
14813         * lily/lexer.ll: remove < > from markup lexer mode.
14814
14815         * scripts/convert-ly.py (conv): add rule for converting 
14816         \markup < > to \markup { }
14817
14818         * ly/titling-init.ly: 
14819         * input/test/coriolan-margin.ly: 
14820         * input/regression/new-markup-syntax.ly: 
14821         * input/regression/new-markup-scheme.ly: 
14822         * input/regression/multi-measure-rest-text.ly: 
14823         * input/regression/markup-stack.ly: 
14824         * input/regression/markup-score.ly: 
14825         * input/regression/instrument-name-markup.ly: 
14826         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
14827         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
14828         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
14829         * input/wilhelmus.ly: 
14830         * Documentation/user/notation.itely: 
14831         * Documentation/user/music-glossary.tely: 
14832         * Documentation/user/changing-defaults.itely: change < > to { } in
14833         markups
14834
14835 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14836
14837         * lily/accidental-placement.cc (position_accidentals): shortcut if
14838         no accidentals to place.
14839
14840 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14841
14842         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
14843         typo s/ly:dimension ?/ly:dimension?/
14844
14845         * input/regression/lily-in-scheme.ly: 
14846         * input/regression/music-function.ly: 
14847         * ly/spanners-init.ly (assertBeamSlope): 
14848         * scm/music-functions.scm (def-grace-function): add the paper
14849         argument to music function definitions.
14850
14851 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14852
14853         * lily/moment.cc (LY_DEFINE):
14854         ly:moment-main-{denominator,numberator}, new function.
14855
14856         * lily/score-engraver.cc (typeset_all): assign to column on basis
14857         of axis-group-parent-X setting.
14858
14859         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
14860         add_element() on basis of axis-group-parent-Y setting.
14861
14862         * lily/grob.cc: add axis-group-parent-{XY} properties.
14863
14864         * input/regression/spacing-stick-out.ly: new file.
14865
14866         * lily/simple-spacer.cc (add_columns): use binary search for
14867         setting column rods. Changes O(n^2) to O(n log(n)) for
14868         constructing spacing problem from columns.
14869         (add_columns): read allow-outside-line to make sure no texts stick
14870         out.
14871         (solve): Simple_spacer::is_active() only determines
14872         satisfies_constraints_ for non-ragged typesetting.
14873
14874         * lily/simultaneous-music.cc (to_relative_octave): only set
14875         old_relative_used if return pitch actually changed.
14876
14877         * scm/define-context-properties.scm
14878         (all-user-translation-properties): change to match implementation.
14879
14880         * python/lilylib.py: Replace re.match by re.search and adds "-c
14881         showpage" to the gs command line (Johannes Schindelin)
14882
14883         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
14884         before processing. Prevents crash when inf is in the extent.
14885
14886         * scm/define-markup-commands.scm (note-by-number): add "s" to
14887         "noteheads-" glyphname.
14888  
14889         * lily/parser.yy (Generic_prefix_music): supply parser argument to
14890         music function as well.
14891         
14892 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14893
14894         * VERSION: release 2.5.2
14895
14896         * Documentation/user/changing-defaults.itely (Creating titles):
14897         add breakbefore variable.
14898
14899         * lily/paper-book.cc (set_system_penalty): new function. Set
14900         penalty_ based on breakBefore setting
14901
14902         * lily/context-specced-music-iterator.cc (construct_children):
14903         interpret special context id $uniqueContextId 
14904
14905         * lily/context.cc (create_unique_context): new method. Move
14906         creation of unique (\new) contexts into interpreting phase. This
14907         makes
14908
14909           foo= \new Staff ..
14910           << \foo \foo >>
14911
14912         produce 2 staves.
14913         
14914
14915         * scm/define-music-properties.scm (all-music-properties): add
14916         quoted-voice-direction
14917
14918         * ly/music-functions-init.ly: killCues function.
14919
14920         * scm/music-functions.scm (cue-substitute): move creation of voice
14921         contexts further to the back. 
14922
14923 2004-11-25  Werner Lemberg  <wl@gnu.org>
14924
14925         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
14926         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
14927
14928 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
14929
14930         * buildscripts/guile-gnome.sh: Fixed typo.
14931
14932 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14933
14934         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
14935
14936         * scripts/abc2ly.py (dump_slyrics): add ord(). 
14937
14938         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
14939         to regular engraver. 
14940
14941 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14942
14943         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
14944
14945 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14946
14947         * scm/define-markup-commands.scm (fill-line): Typo.
14948
14949         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
14950         and newer.
14951
14952 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
14953
14954         * ly/dynamic-scripts-init.ly: Fixed typo.
14955
14956 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14957
14958         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
14959         note-head, to have different attachment points for up and down.
14960
14961         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
14962
14963         * mf/feta-generic.mf (else): remove solfa.
14964
14965         * mf/feta-bolletjes.mf (tishape): remove unicode test.
14966
14967         * scm/define-context-properties.scm
14968         (all-user-translation-properties): add shapeNoteStyles property.
14969
14970         * lily/shape-note-heads-engraver.cc (process_music): new file.
14971
14972         * lily/event.cc (transpose): call Event::transpose() for
14973         transposing the tonic.
14974
14975 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14976
14977         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
14978         Unicode/OpenType and AFM.
14979
14980         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
14981
14982 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14983
14984         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
14985
14986         * lily/context.cc (Context): unprotect key from ctor.
14987
14988         * scm/stencil.scm (stack-lines): return empty-stencil if argument
14989         is '()
14990         (stack-stencils): idem.
14991
14992         * Documentation/user/changing-defaults.itely (Creating titles):
14993         document new title layout options.
14994
14995         * lily/parser.yy (lilypond_header_body): copy previous
14996         $globalheader if present.
14997
14998         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
14999         ly:module-copy
15000         
15001         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15002
15003         * scm/titling.scm: remove old titling functions
15004
15005         * lily/stencil.cc (translate): remove absolute dimension.
15006
15007         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15008         via markup.
15009
15010         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15011         field from user-supplied markup
15012
15013         * scm/define-markup-commands.scm (on-the-fly): new markup
15014         command. Enter SCM markup procedure directly in Scheme.
15015         (fromproperty): new markup command. Read markup from props argument.
15016
15017         * scm/titling.scm (marked-up-title): create title via
15018         user-specified markup. 
15019
15020         * scm/define-markup-commands.scm (column): remove empty stencils
15021         from column.
15022
15023         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15024         not have side-effect of creating variable stub.
15025
15026         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15027
15028 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15029
15030         * scm/encoding.scm (coding-alist): 
15031         * scm/font.scm (add-ec-fonts):
15032         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15033         Extended-TeX-Font-Encoding---Latin.
15034
15035         * lily/side-position-interface.cc (general_side_position): Add
15036         actual offset to error message (avoid constant error messages).
15037
15038         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15039         block.
15040
15041         * lily/font-select.cc (select_encoded_font)
15042         (get_font_by_mag_step, get_font_by_design_size): 
15043         * lily/modified-font-metric.cc (Modified_font_metric): 
15044         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15045
15046         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15047         (read-encoding-file): Bugfix: do not require space after bracket.
15048
15049         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15050         these do not exist.
15051
15052 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15053
15054         * Documentation/user/notation.itely: added info about typesetting
15055         boxed bar numbers.
15056
15057 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15058
15059         * flower/interval.cc (T_to_string): gcc4 fixes.
15060
15061         * scm/define-markup-commands.scm (fill-line): use
15062         stack-stencils. This fixes problems with putting already centered
15063         stencils in a line.
15064
15065         * VERSION: release 2.5.1
15066
15067         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15068
15069 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15070
15071         * input/example-[1-3].ly: simplify.
15072
15073         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15074
15075         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15076         show glyphs.
15077
15078         * scm/encoding.scm (decode-byte-string): new function.
15079
15080         * scripts/convert-ly.py (conv): add warning about
15081         set-global-staff-size.
15082
15083         * Doxyfile: add. 
15084
15085         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15086         (conv): warn for TextSpanner split.
15087         (conv): warn for textheight.
15088
15089 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15090
15091         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15092         building the documentation, info with images are installed.
15093         (final-install): Fix description.  Mention sourcing of login
15094         scripts (instead of running).
15095
15096 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15097
15098         * Debian lmodern support.  Note that LilyPond will issue warnings
15099         
15100             no such encoding: "FontSpecific"
15101
15102           The font selection mechanism wants to get the encoding from the
15103           font itself, but the idea of lmodern is that it is usable with
15104           different encodings, ie, Lily should get the encoding from the
15105           font tree, rather than the font itself.  This would require some
15106           more work.
15107         
15108         * configure.in: Test for and accept lmodern if EC fonts not found.
15109
15110         * scm/framework-tex.scm (font-load-command): TeX font name
15111         mangling for latin1 encoded cork-lm fonts.
15112         (convert-to-ps): Load lm.map if available.
15113
15114         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15115         available.
15116
15117         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15118
15119         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15120         available.
15121
15122         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15123         path for absolute file name, that is silly.
15124
15125         * lily/score-engraver.cc (initialize): 
15126
15127         * Documentation/user/GNUmakefile (local-install-info): Invoke
15128         install-info --remove first.
15129
15130         * #include cleanup (Andreas Scherer).
15131
15132 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15133
15134         * input/test/script-abbreviations.ly: fix typos.
15135
15136 2004-11-17  Werner Lemberg  <wl@gnu.org>
15137
15138         * python/lilylib.py (options_help_str): Support pretty-printing of
15139         newlines in fourth element of option description.
15140
15141         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15142         feature.
15143         Sort options.
15144
15145         * Documentation/user/lilypond-book.itely: Finish update.
15146
15147 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15148
15149         * Documentation/user/macros.itexi: Add comment about \command.
15150
15151         * Documentation/user/lilypond.tely:
15152         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15153         and lilypond-book nodes, so that `info lilypond' visits the manual
15154         at top level, and `info lilypond-book' visits the lilypond-book
15155         section.
15156
15157         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15158         and packager messages.
15159
15160         * lily/pangofc-afm-decoder.cc: Update test.
15161
15162 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15163
15164         * scm/lily-library.scm (char->unicode-index): New function.
15165
15166         * scm/output-gnome.scm: 
15167         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15168
15169         * Proper naming of file name throughout; s/filename/file[-_]name/.
15170
15171         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15172
15173         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15174
15175 2004-11-16  Werner Lemberg  <wl@gnu.org>
15176
15177         * scripts/lilypond-book.py: The Lord has commanded me to use only
15178         tabs for indentation.  Your humble servant obeys.
15179
15180 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15181
15182         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15183         including font, if LilyPond-feta font is only feta font in path.
15184
15185         * scm/output-gnome.scm (text): Revert to file name of font if font
15186         has no name.  Fixes ec font selection.
15187         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15188
15189         * scm/framework-svg.scm:
15190         * scm/output-svg.scm: New file.  TODO: figure out how to
15191         do character by index in font.
15192
15193         * scm/output-sodipodi.scm: Remove.
15194
15195         * scm/output-ps.scm (stem): Remove.
15196
15197 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15198
15199         * scm/output-gnome.scm (beam): New function.
15200         (slur): Round corners.
15201         (round-filled-box): Round corners.
15202
15203 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15204
15205         * scm/output-gnome.scm (beam): add function.
15206         (draw-line): new routine.
15207         (dashed-line): stub; call draw-line
15208         (polygon): new routine.
15209
15210 2004-11-15  Werner Lemberg  <wl@gnu.org>
15211
15212         * Documentation/user/lilypond-book.itely: Revise section on
15213         lilypond-book options.
15214         Other minor fixes.
15215
15216         * scripts/lilypond-book.py: Change indentation to 4.
15217         Minor formatting.
15218
15219 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15220
15221         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15222         grobs that have tweaks specced.
15223         
15224 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15225
15226         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15227
15228 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15229
15230         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15231         actual char #, not 0 based index.
15232
15233         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15234
15235         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15236         Warning: do make -C mf clean.
15237
15238         * lily/context-property.cc: Compile fix.
15239
15240         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15241         Grok ec-fonts, braces and dynamics.
15242
15243         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15244
15245 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15246
15247         * lily/include/tweak-registration.hh: new file.
15248
15249         * lily/tweak-registration.cc: new file.
15250
15251         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15252         saving tweaks.
15253
15254         * scm/output-gnome.scm (text): comment dribble.
15255
15256 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15257
15258         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15259
15260         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15261         path-def before using.  Fixes muchtomany slurs in wrong places
15262         bug.
15263
15264 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15265
15266         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15267
15268         * lily/include/object-key-undumper.hh (Module): new file.
15269
15270         * lily/object-key-undumper.cc (Module): New file. Deserialize
15271         keys. SCM bindings
15272
15273         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15274         Provide SCM bindings.
15275
15276         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15277         new file. Serialize object keys.
15278         
15279         * lily/object-key.cc (dump): new function.
15280         (as_scheme): new virtual function
15281         (undump): new function
15282         (undumpers): new table.
15283
15284         * lily/include/global-context.hh (Context): take \score key upon init.
15285
15286         * lily/object-key-dumper.cc (serialize_key): new file.
15287
15288         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15289
15290         * lily/lily-lexer.cc: remove \quote.
15291
15292         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15293
15294         * lily/context.cc (Context): take key argument in ctor.
15295         (create_context): new function
15296
15297         * lily/grob.cc (Grob): take key argument in ctor.  
15298
15299         * lily/lilypond-key.cc (do_compare): new file.
15300
15301         * lily/object-key.cc (Object_key): new file.
15302
15303         * lily/include/object-key.hh (class Object_key): new file.
15304
15305         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15306
15307 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15308
15309         * Documentation/user/lilypond-book.itely: add small warning about
15310         noindent default in lilypond-book.
15311
15312         * Documentation/user/converters.itely: add examples for convert-ly.
15313
15314         * Documentation/user/examples.itely: change version string in templates
15315         to 2.4.0.
15316
15317 2004-11-12  Karl Hammar  <karl@aspodata.se>
15318
15319         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15320         cmdline, use xargs instead (backportme)
15321
15322 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15323         
15324         * Documentation/user/: Numerous fixes in the user manual.
15325
15326 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15327
15328         * lily/parser.yy (re_rhythmed_music): search music expression for
15329         context-id, surround by \new Voice if not found. Fixes:
15330         addlyrics-second-staff.ly
15331
15332         * VERSION: 2.5.0 released.
15333         
15334 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15335
15336         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15337
15338         * Documentation/user/GNUmakefile: Separate rules for split and
15339         unsplit html documents.  Remove perl massaging.  (backportme)
15340
15341 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15342
15343         * Documentation/user/lilypond-book.itely: add short warning about
15344         \lilypond{} in LaTeX docs.
15345
15346 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15347
15348         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15349         found.  (backportme)
15350
15351         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15352         version requirement.  (backportme)
15353
15354         * configure.in: Be explicit about old versions of
15355         ec-fonts-mtraced.  (backportme)
15356
15357         * lily/context-selector.cc (set_tweaks): New function.
15358         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15359         web with -DTWEAK.
15360
15361         * Documentation/user/introduction.itely (Automated engraving):
15362         Remove fragment option.  Fixes web.
15363
15364         * lily/context-property.cc (make_item_from_properties):
15365         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15366         #ifdef.
15367
15368         * scm/define-context-properties.scm
15369         (all-internal-translation-properties): Add tweakRank and tweakCount.
15370
15371         * lily/grob.cc: 
15372         * scm/define-grob-properties.scm (all-internal-grob-properties):
15373         Add tweak-rank and tweak-count.
15374
15375 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15376
15377         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15378         New function.
15379         (text): Use them.
15380
15381         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15382         animated/opaque grob dragging tweaks.
15383
15384         * buildscripts/guile-gnome.sh: Update.
15385
15386 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15387
15388         * scm/define-grobs.scm (all-grob-descriptions): Added
15389         line-interface to the LigatureBracket object.
15390
15391 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15392
15393         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15394         dragging tweaks.
15395
15396         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15397
15398         * lily/context-selector.cc (store_context): New function.
15399
15400         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15401         (store_grob): New function.
15402         (identify_grob): Add Moment parameter.
15403
15404         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15405         exists.
15406
15407         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15408
15409 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15410
15411         * scm/framework-gnome.scm (item-event): Print grob id.
15412         (save-tweaks): New function.
15413         (tweak): New funtion.
15414         (item-event): Use it, bound to arrow keys.
15415
15416         * lily/context-property.cc (make_item_from_properties): Register grob.
15417         * lily/context.cc (add_context): Register context.
15418
15419         * lily/include/context-selector.hh:
15420         * lily/include/grob-selector.hh:
15421         * lily/context-selector.cc:
15422         * lily/grob-selector.cc: New file.
15423
15424 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15425
15426         * lily/slur.cc: add 'positions to interface
15427
15428         * lily/main.cc: reinstate PS as standard output format. 
15429
15430         * scm/framework-tex.scm (output-preview-framework): print systems
15431         up to first non title system.
15432
15433         * lily/grace-engraver.cc (start_translation_timestep): split
15434         scm_cadddr
15435         
15436 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15437
15438         * lily/quote-iterator.cc (Module): remove old quote-iterator
15439
15440         * scm/define-music-types.scm (music-descriptions): move
15441         NewQuoteMusic over QuoteMusic
15442
15443         * Documentation/user/notation.itely (Formatting cue notes): use
15444         \cueDuring.
15445
15446         * lily/new-quote-iterator.cc (quote_ok): new function.
15447
15448         * input/regression/quote-cue-during.ly: new file.
15449
15450         * input/regression/quote-grace.ly: new file.
15451
15452         * scm/define-context-properties.scm (Module): change definition of
15453         graceSettings
15454
15455         * lily/context-property.cc (Module): rename from
15456         translator-property.cc
15457
15458         * lily/context.cc (context_name_symbol): new function
15459
15460         * lily/grace-engraver.cc: new file. Set properties for grobs based
15461         on the grace-ness of now_moment().
15462
15463         * scm/music-functions.scm (add-grace-property): use list
15464         iso. vector for graceSettings
15465         remove set-{start,stop}-grace-properties. 
15466
15467         * lily/new-quote-iterator.cc (construct_children): set
15468         quote_outlet_ if no quoted-context-{id,type} specified.
15469
15470         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
15471
15472         * lily/parser.yy (command_element): remove \quote.
15473
15474         * ly/music-functions-init.ly (location): add quoteDuring music
15475         function. 
15476
15477         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
15478         optional semicolon. (backportme)
15479
15480 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15481
15482         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
15483         need to link to GUILE et al.
15484
15485 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15486
15487         * scm/define-music-properties.scm (all-music-properties): add
15488         quoted-context-type, quoted-context-id.
15489
15490         * scm/lily.scm (type-check-list): new function.
15491         
15492         * scm/lily-library.scm: new file. Generic library routines.
15493
15494         * lily/parser.yy (Generic_prefix_music): move typechecking out of
15495         parser.
15496
15497         * ly/music-functions-init.ly: add quoteDuring function.
15498
15499         * lily/include/music-iterator.hh (class Music_iterator): rename
15500         set_translator -> set_context
15501
15502         * lily/parser.yy (Generic_prefix_music_scm): add
15503         MUSIC_FUNCTION_SCM_SCM_MUSIC
15504
15505         * scm/lily.scm (sanitize-command-option): new function. (backportme)
15506
15507         * scm/framework-tex.scm (header): sanitize TeX paper size.
15508         (backportme)
15509
15510 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15511
15512         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
15513
15514         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
15515
15516         * scm/framework-tex.scm (font-load-command): Use T1 if no
15517         font-encoding set.  (backportme)
15518
15519         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
15520         exists before converting.  (backportme)
15521
15522         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
15523         exists before converting.  (backportme)
15524         (convert-to-ps): Remove .ps file if it exists before
15525         converting.  (backportme)
15526
15527         * lily/lexer.ll: Remove extra progress newline, use present tense.
15528
15529         * scm/paper.scm (paper-alist): public.
15530         * scm/framework-tex.scm (convert-to-ps):
15531         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
15532         command line.
15533
15534 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15535
15536         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
15537
15538         * lily/recording-group-engraver.cc (derived_mark): mark
15539         now_events_. (backportme)
15540
15541 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15542
15543         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
15544
15545         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
15546         invoking latex. (backportme.)
15547
15548         * lily/stem.cc (off_callback): center stems for all rest stems.
15549
15550 2004-11-05  Werner Lemberg  <wl@gnu.org>
15551
15552         * Documentation/user/lilypond.tely: Add more guidelines for writing
15553         lilypond texinfo documents.
15554
15555 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
15556
15557         * Documentation/index.html.in: remove <hr>.
15558
15559         * THANKS: change 2.3 to 2.4.
15560
15561 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
15562
15563         * scm/output-gnome.scm: More fontconfig comment.
15564
15565 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
15566
15567         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
15568         <package> directory in $(builddir)/share according with
15569         PACKAGE_NAME defined in the VERSION file.
15570
15571 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15572
15573         * lily/beam.cc (rest_collision_callback): use local beam
15574         multiplicity.
15575
15576         * input/regression/stem-stemlet.ly: new file.
15577
15578         * lily/stem.cc (add_head): store rests as well.
15579
15580         * scm/define-grob-properties.scm (all-user-grob-properties): add
15581         stemlet-length
15582
15583         * lily/stem.cc: store rests as well.
15584         
15585         * input/regression/new-slur.ly: mention forcing.
15586
15587 2004-11-04  Werner Lemberg  <wl@gnu.org>
15588
15589         * Documentation/user/*: A new round of layout fixes and document
15590         structure cleanup.
15591
15592 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
15593
15594         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
15595
15596 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
15597
15598         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
15599
15600 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
15601
15602         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
15603
15604         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
15605
15606         * lily/main.cc (main): Invoke identify.
15607
15608         * scm/lily.scm (postscript->pdf): Remove progress newline.
15609         Write progress to stderr.
15610
15611         * lily/paper-book.cc (output): Remove progress newline.
15612
15613         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
15614         gettext on user messages, and remove whitespace.
15615
15616         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
15617
15618         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
15619         argv[0] (Thomas Scharkowski).
15620
15621         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
15622         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
15623         for ec-fonts-mtraced.
15624
15625         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
15626         --srcdir build (Bertalan).
15627
15628         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
15629         headers and library too (Laura Conrad).
15630
15631         * Documentation/topdocs/INSTALL.texi (Top): Mention development
15632         package for guile too (Laura Conrad).
15633
15634         * lily/main.cc (usage): Typo.
15635
15636 2004-11-02  Werner Lemberg  <wl@gnu.org>
15637
15638         * Documentation/user/notation.ly: More fixes to improve appearance.
15639
15640         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
15641         better output for multicolumn tables.
15642
15643 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
15644
15645         * lily/main.cc (dir_info): Fixed typo in the printouts.
15646
15647 2004-11-01  Werner Lemberg  <wl@gnu.org>
15648
15649         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
15650         of output.
15651         Set `per_line' to 2; replace hard-coded value with it.
15652
15653         * Documentation/user/*: Many fixes to improve appearance of
15654         printed manual.
15655
15656 2004-11-01  Werner Lemberg  <wl@gnu.org>
15657
15658         * Documentation/user/changing-defaults.itely,
15659         Documentation/user/notation.ly,
15660         Documentation/user/programming-interface.itely: Use @/.
15661         Fix formatting of some lilypond snippets and tables.
15662
15663         * scripts/lilypond-book.py (compose_ly): Provide useful default
15664         for LINEWIDTH in `override'.
15665
15666 2004-10-31  Graham Percival  <gperlist@shaw.ca>
15667
15668         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
15669
15670 2004-10-31  Werner Lemberg  <wl@gnu.org>
15671
15672         Resetting @exampleindent to `5' gives ugly results with texinfo's
15673         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
15674         (if not quoting) to change @exampleindent only locally.
15675
15676         * scripts/lilypond-book.py (NOQUOTE): New variable.
15677         (output) [LATEX]: Remove AFTER and BEFORE.
15678         [TEXINFO]: Remove AFTER and BEFORE.
15679         Fix QUOTE and VERBATIM pattern.
15680         Add NOQUOTE pattern.
15681         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
15682         and BEFORE.
15683         [output_texinfo]: Use NOQUOTE.
15684
15685 2004-10-31  Graham Percival  <gperlist@shaw.ca>
15686
15687         * Documentation/user/changing-defaults.itely: clarify paper
15688         size commands with correct info.
15689
15690         * Documentation/user/lilypond-book.itely: add more docs for
15691         filename extensions.
15692
15693 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15694
15695         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
15696         (PATCH_LEVEL): start 2.5.0.
15697
15698 #Local variables:
15699 #coding: utf-8
15700 #End:
15701