]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
Documentation/user/page.itely: update page breaking documentation
[lilypond.git] / ChangeLog
1 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
2
3         * Documentation/user/page.itely: update page breaking documentation
4
5 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
6
7         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
8
9         * scm/framework-ps.scm (output-preview-framework): use new name.
10
11         * lily/program-option.cc (internal_set_option): use new names.
12
13         * Documentation/user/SConscript (lilypond_book_flags): update -d
14         variable names.
15
16         * Documentation/user/lilypond-book.itely (Inserting LilyPond
17         output into other programs): new variable names.
18
19         * scm/lily.scm (define-scheme-options): uniformize var names.
20
21         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
22         tuplets_ is non-empty before popping.
23
24 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
25
26         * lily/spanner.cc (find_broken_piece): 
27         * lily/spacing-spanner.cc (get_columns): 
28         * lily/source-file.cc (get_line): 
29         * lily/simple-spacer.cc (get_column_description): 
30         * lily/keyword.cc (lookup): 
31         use the new binary search.
32
33         * flower/include/std-vector.hh: replace binary_search with
34         a more STL-like version
35
36 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
37
38         * lily/tie-performer.cc: remove unused last_event_ property.
39         (class Tie_performer): add now_tied_heads_ property for
40         partially-tied heads.
41         (acknowledge_audio_element): when adding an Audio_note, put the
42         note in now_tied_heads_ if the audio note is partially tied.
43         (stop_translation_timestep): always include entries in
44         now_tied_heads_ in heads_to_tie_.
45
46         * lily/drum-note-performer.cc (process_music): look for tie-events
47         in the articulations; pass to Audio_note constructor.
48
49         * lily/note-performer.cc (process_music): look for tie-events in
50         the articulations; pass to Audio_note constructor.
51
52         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
53         constructor.
54
55         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
56         include initializer in constructor.
57
58 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
59
60         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
61         unless they are breakable. This fixes discrepancies between the forces
62         calculated here and the forces calculated in get_line_configuration.
63
64         * lily/grob.cc (pure_relative_y_coordinate): fix some
65         mis-estimation that was happening with piano staves.
66
67         * lily/constrained-breaking.cc (resize): don't choke if we get a
68         measure that won't fit on a line.
69         (combine_demerits): don't consider uniformity when ragged
70
71         * lily/page-spacing.cc (solve): why the f* were there two of these?
72         (calc_subproblem): properly handle the case where a system is taller
73         than the page.
74
75         * lily/system.cc (get_paper_system): ensure that all the permissions
76         and penalties are passed to the paper systems.
77
78         * lily/page-breaking.cc (create_system_list): support system-count.
79
80         * scm/define-grobs.scm (pure-print-callbacks): add
81         ly:script-interface::print
82
83         * lily/page-spacing.cc (min_page_count): fix calculation of min
84         pages if we are ragged and there are non-zero springs.
85
86         * scm/layout-page-layout.scm: if the pure-height estimates are under
87         the real height, allow space-systems to ignore padding if it is
88         needed in order to fit the systems on one page
89
90         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
91         ragged properties
92         (solve): fix performance problem. Make sure we always get at least
93         one solution
94
95         * lily/page-breaking.cc (make_pages): include write-page-breaks
96         and page-stencil
97
98         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
99
100         * scm/define-grobs.scm: add the new slur-callback
101         fix pure-relevant to not exclude grobs whose extent is already
102         calculated
103
104         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
105         page breaker
106
107         * lily/slur.cc (pure_height): new callback to estimate the height
108         of a slur
109
110 2006-09-02  Graham Percival  <gpermus@gmail.com>
111
112         * Documentation/user/invoking.itely: small update on
113         MacOS X notes; thanks Trevor!
114
115 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
116
117         * VERSION (MY_PATCH_LEVEL): release 2.9.17
118
119         * lily/lexer.ll: accept EOF in all states.
120
121         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
122
123         * lily/source-file.cc (Source_file): always 0-terminate character
124         array, to prevent Flex from barfing.
125
126         * lily/global-context.cc (get_output): robustness: don't crash if
127         no Score context found.
128
129         * lily/include/book.hh (class Book): idem.
130
131         * lily/include/context-def.hh (struct Context_def): idem.
132
133         * lily/include/score.hh (class Score): don't derive from Input.
134
135         * lily/book.cc (Book): add a copy ctor. 
136
137         * buildscripts/output-distance.py (FileLink.calc_distance): count
138         orphans in distance too.
139
140         * python/midi.c (midi_parse_track): robustness: don't read past
141         end of string.
142
143         * ly/performer-init.ly: add Control_track_performer, move
144         Tempo_performer and Time_signature_performer to Score.        
145
146         * lily/score-performer.cc (acknowledge_audio_elements): override
147         from base class: add to audio-columns
148
149         * lily/control-track-performer.cc (add_text): new file: generate
150         the control track.
151
152         * lily/performance.cc: move output_header_track to
153         Control_track_performer ()
154
155         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
156
157         * lily/include/midi-item.hh (class Midi_channel_item): insert
158         class into hierarchy, for items that can have a channel setting. Dehungarify.
159
160         * lily/include/performer.hh (class Performer): remove
161         play_element();  move functionality into announce/acknowledge.
162
163         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
164
165         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
166         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
167
168 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
169
170         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
171         ambituses.
172
173         * lily/all-font-metrics.cc: remove TFM support.
174
175         * lily/include/tfm.hh: remove TFM support, TFM reader.
176
177         * lily/include/binary-source-file.hh: remove Binary_source_file.
178
179 2006-08-27  Graham Percival  <gpermus@gmail.com>
180
181         * Documentation/topdocs/NEWS.itely: add @c marker for
182         stuff I've processed.
183
184         * Documentation/user/ various: info from NEWS.
185
186 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
187
188         * lily/paper-column-engraver.cc (finalize): Oops, this change
189         should have gone in on 2006-08-23
190
191 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
192
193         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
194         quotes to quote arguments. Fixes Windows problem.
195
196         * python/lilylib.py (progress): idem
197
198 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
199
200         * scripts/musicxml2ly.py: fix for importing
201         minor key signatures from MusicXML.  (Phillip Kirlin)
202
203 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
204
205         * python/musicxml.py: 
206         (Attributes.get_key_signature): now correctly retrieves mode from 
207         MusicXML. 
208
209 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
210
211         * lily/parser.yy (output_def_body): take ownership of identifier
212         back to C++.
213
214         * Documentation/user/advanced-notation.itely (Metronome marks):
215         update use of \tempo in \midi.
216
217         * VERSION: release 2.9.16
218         
219 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
220
221         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
222         web partially)
223
224 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
225
226         * input/regression/tie-chord-partial.ly: clarify example.
227
228         * scm/define-music-properties.scm (all-music-properties): remove
229         untied.
230
231         * ly/music-functions-init.ly: remove \untied.
232
233         * lily/tie-engraver.cc (struct Head_event_tuple): store both
234         stream events and music events.
235         (stop_translation_timestep): search acknowledged heads for
236         tie-event.
237
238         * input/regression/tie-chord-partial.ly: new file.
239
240         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
241         for \char markup command.
242
243         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
244
245         * scm/define-music-types.scm (music-descriptions): consistency:
246         Use solo-{one,two}-event iso. solo-[12]-event.
247
248         * lily/part-combine-engraver.cc (process_music):
249         Use solo-{one,two}-event iso. solo-[12]-event.
250
251         * ly/declarations-init.ly (partCombineListener): add Timing as
252         alias
253
254         * flower/std-string.cc (string_copy): use copy ()
255
256         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
257
258 2006-08-24  Graham Percival  <gpermus@gmail.com>
259
260         * Documentation/user/changing-defaults.itely, global.itely,
261         lilypond-book.itely, page.itely: minor changes from mailist.
262
263 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
264
265         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
266         snippet-map
267
268         * scm/define-context-properties.scm
269         (translator-property-description): robustness: detect type errors
270         in property definitions.
271
272         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
273         after getting it from SCM. 
274
275         * lily/smobs.cc (protect_smob): switch off fancy smob protection
276         for now. 
277
278         * lily/include/performer.hh (class Performer): strip get_tempo()
279         method.
280
281         * lily/midi-def.cc: strip file.
282
283         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
284
285         * lily/include/context-def.hh (struct Context_def): use
286         VIRTUAL_COPY_CONSTRUCTOR().
287
288         * lily/source-file.cc: smobification.
289
290         * lily/include/source-file.hh (class Source_file): smobify
291         Source_file. Trim redundant members.
292
293         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
294         clones after creation. This plugs a huge memory leak.
295
296         * python/convertrules.py (FatalConversionError.sub_tempo):
297         complete rule for \midi{ \tempo }
298
299         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
300
301         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
302
303 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
304
305         * input/regression/optimal-page-breaking-hstretch.ly: test for
306         ragged-last-bottom also
307
308         * lily/paper-column-engraver.cc (finalize): make the end of a score
309         breakable by default. This is to balance out a change in behaviour
310         of the page-turn-breaker which no longer makes the end of a score
311         breakable.
312
313         * lily/paper-book.cc (pages): set the systems_ once the pages are
314         broken
315
316         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
317         Page_breaking interface.
318
319         * lily/page-breaking.cc (class Page_breaking): make the interface
320         more consistent and provide abstractions for dealing with
321         Line_divisions.
322
323         * lily/optimal-page-breaking.cc (solve): use a more straightforward
324         algorithm. Use the new interface to Page_breaking.
325
326         * lily/page-spacing.cc: better support for ragged-bottom and
327         ragged-last-bottom
328
329 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
330
331         * python/convertrules.py (conv): warning on \tempo{}
332
333         * ly/performer-init.ly: set tempoWholesPerMinute.
334
335         * ly/midi-init.ly: remove \midi
336
337         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
338         MIDI tempo.
339
340         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
341         tempoUnitDuration for determining what to print.
342
343         * lily/lyric-extender.cc: typo.
344
345         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
346
347         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
348         function.
349
350         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
351
352         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
353         eps-pad-boxes is set.
354
355         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
356
357         * THANKS: update sponsors.
358
359         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
360
361         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
362
363         * input/regression/tie-chord-untied.ly: new file.
364
365         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
366
367         * scm/define-music-properties.scm (all-music-properties): add
368         'untied property.
369
370         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
371         than .ly.txt.
372         (headertext_nopics): sanitize no-examples text.
373
374         * scm/page.scm (make-page-stencil): don't rely on extents of
375         page-stencil. This fixes spurious space around .EPS files produced
376         with the EPS backend.
377
378 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
379
380         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
381
382         * lily/hara-kiri-engraver.cc (process_music): remember
383         keepAliveInterfaces after processing \set
384
385         * lily/lyric-extender.cc (print): support left/right-padding for
386         extenders.
387
388         * scm/documentation-generate.scm (string-append): revert lilypond/
389         path, doc why.
390
391 2006-08-20  Graham Percival  <gpermus@gmail.com>
392
393         * Documentation/user/lilypond.tely: clarification to
394         license presentation (not to actual license).
395
396         * Documentation/user/basic-notation.itely,
397         instrument-notation.itely: minor changes.
398
399         * input/ {regression, test}/+.ly: clarification to
400         text (you can click on examples).  Thanks, Mats!
401
402         * input/manual/bar-lines.ly: adds ||: repeats.
403
404 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
405
406         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
407
408         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
409
410         * Documentation/user/lilypond.tely: strip lilypond/ from info
411         links, rename to category LilyPond
412
413         * lily/pango-font.cc (description_string): new function.
414
415         * VERSION: release 2.9.15
416
417         * lily/spacing-engraver.cc (stop_translation_timestep): use
418         Dscho's fix for spacing spanner. 
419
420         * scm/define-music-types.scm (music-descriptions): use
421         apply-output-event for ApplyOutputEvent
422
423         * lily/output-property-engraver.cc (listen_apply_output): rename
424         from listen_layout_instruction.
425
426         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
427         function protect()
428
429 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
430
431         * scm/lily.scm (lilypond-all): option read-file-list: substitute
432         commandline args with contains, split by \n.
433
434         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
435         write snippet-names file, call with -dread-file-list. Fixes
436         command limitations on 64-bit systems.
437
438         * input/regression/stencil-color-rotation.ly: new file.
439
440         * lily/include/translator.hh (struct Acknowledge_information):
441         revert: don't use Protected_scm in global objects, as GUILE can't
442         handle gc_unprotect from automated destructors on MacOS X.
443  
444         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
445         color, not the original stencil. Fixes combinations of
446         color/transparency/rotation. Backportme.
447
448         * scripts/lilypond-book.py (main): add --formats=eps for
449         texinfo/latex.
450
451         * lily/spacing-engraver.cc (stop_translation_timestep): don't
452         crash if spacing_ is nonexistent.
453
454 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
455
456         * scripts/lilypond-book.py (output): Remove obsolete(!?)
457         \catcode`\@=12 in the LaTeX output.
458
459 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
460
461         * scm/define-music-types.scm (music-descriptions):
462         use sustain-event iso. sustain-pedal-event.
463
464 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
465
466         * scripts/convert-ly.py: honour the -n command-line switch
467
468 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
469
470         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
471         break specification.
472
473 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
474
475         * Documentation/user: convert-ly the user manual
476
477 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
478
479         * stepmake/aclocal.m4: version check patch (thanks MWD)
480
481         * ly/music-functions-init.ly: robustness. Don't crash if
482         currentBarNumber is not a number.
483
484         * VERSION (PATCH_LEVEL): bump.
485
486 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
487
488         * stepmake/aclocal.m4: better version check; handle fooX.Y
489         binaries too.
490
491         * ly/performer-init.ly: instrument name fixup.
492
493         * input/manual/chord-names-jazz.ly (banterProperties):
494         instrumentName update
495
496         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
497
498         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
499
500         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
501         function. Use hash tables to check membership.
502
503         * lily/general-scheme.cc (LY_DEFINE): new function.
504
505         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
506
507         * lily/include/translator.hh (struct Acknowledge_information): add
508         Protected_scm
509
510         * ly/music-functions-init.ly: change name to BreathingEvent
511
512         * input/regression/*.ly: apply it.
513
514         * python/convertrules.py (conv): better instrumentName conversion
515         rule.
516
517         * scm/define-music-types.scm (music-descriptions): add
518         line-break-event to LineBreakEvent music
519
520         * lily/music.cc (to_event): don't crash if music type not set.
521
522         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
523         spacing not set.
524
525         * lily/spacing-engraver.cc (stop_translation_timestep): set
526         spacing for proportional notation too.
527
528         * scm/translation-functions.scm (format-bass-figure): inspect
529         stream-event.
530
531         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
532
533 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
534
535         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
536
537         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
538
539         * scm/layout-page-layout.scm (make-page-from-systems): new function
540         (optimal-page-breaks): use the new page-breaking calling convention
541
542         * scm/define-context-properties.scm (all-user-translation-properties):
543         add revokePageTurns
544
545         * lily/paper-column-engraver.cc (stop_translation_timestep): add
546         revokePageTurns  functionality. If there is a special barline within
547         the breakable region, break there instead of at the end of the region.
548
549         * lily/paper-book.cc (pages): use the new page-breaking calling
550         convention
551
552 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
553
554         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
555
556         * scripts/lilypond-book.py: insert \sourcefileline command in
557         output, so lilypond error messages refer to the spot in the
558         original .lytex / .itely sourcefile.
559
560 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
561
562         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
563         space to next column for distance to fixed col.
564
565         * VERSION (PACKAGE_NAME): release 2.9.14
566
567         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
568         if no accidental.
569
570         * lily/accidental-engraver.cc (process_acknowledged): don't create
571         accidental for trill span event. This fixes spurious accidentals
572         on trills.
573
574 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
575
576         * scm/define-grob-properties.scm (all-user-grob-properties):
577         Clarify documentation of side-axis and direction. Thanks to Paul
578         for the inspiration.
579
580         * lily/bar-line.cc: Add documentation for "||:" also in the
581         interface documentation.
582
583 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
584
585         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
586
587         * lily/paper-column.cc (set_system): new function.
588
589         * lily/spacing-engraver.cc (stop_translation_timestep): store
590         SpacingSpanner refs in Paper_column.
591
592         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
593         compute loose clique spacing using GraceSpacing/SpacingSpanner.
594
595 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
596
597         * lily/beam-engraver.cc (listen_beam): add method for
598         Grace_beam_engraver too.
599
600 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
601
602         * python/convertrules.py: Fix indentation bug that broke
603         conversion of files older than 1.3.117.
604         Fix escape error in the description for 2.9.6.
605
606 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
607
608         * lily/*-engraver.cc: convert all try_music functions to listen_*
609         functions.
610
611         * lily/piano-pedal-engraver.cc: some additional cleanups: use
612         enums to represent pedal types, and calculate more data statically.
613
614         * scm/part-combiner.scm (recording-group-emulate): create a
615         softcoded substitute for recording-group-engraver.cc.
616
617         * lily/music.cc: make a common transpose function for events and
618         music
619
620         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
621         ManualMelismaEvent, and obsoletes Melisma_translator.
622
623 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
624
625         * input/test/instrument-name-align.ly: update version.
626
627 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
628
629         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
630         Doc the --pdf flag to lilypond-book.
631
632 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
633
634         * Documentation/topdocs/NEWS.tely (Top): add description.
635
636         * input/regression/tuplet-full-length-note.ly: add file.
637
638         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
639         always store axis group.
640
641 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
642
643         * input/regression/instrument-switch.ly: new file.
644
645         * lily/instrument-switch-engraver.cc (process_music): new file.
646
647         * ly/engraver-init.ly: add Instrument_switch_engraver
648
649         * ly/music-functions-init.ly: \instrumentSwitch
650
651         * scm/define-context-properties.scm
652         (all-user-translation-properties): add instrumentCueName
653
654         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
655
656 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
657
658         * ly/music-functions-init.ly: music function \transposition.
659
660         * lily/parser.yy (command_element): softcode \transposition.
661
662         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
663         (process_music): oops.
664
665         * lily/instrument-name-engraver.cc (start_spanner): new
666         function. Create spanner when property changes.
667         (stop_spanner): new function.
668
669         * python/convertrules.py (conv): add rule.
670
671         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
672         shortInstrumentName iso. instr.
673
674         * scm/output-ps.scm (dashed-line): add phase argument to
675         dashed-line.
676
677         * lily/bar-line.cc (dashed_bar_line): new function.
678         (compound_barline): support \bar "dashed". 
679
680         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
681         --output=DIR to DIR/BASE if it is a dir. 
682
683         * flower/file-name.cc (file_part): new function
684         (dir_part): new function
685
686         * lily/lily-parser-scheme.cc (LY_DEFINE): 
687
688         * DEDICATION: update
689
690 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
691
692         * lily/instrument-name-engraver.cc: formatting.
693
694         * python/convertrules.py (conv): bugfix for \epsfile.
695
696 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
697
698         * lily/grob.cc:
699         
700         * lily/gourlay-breaking.cc: Oops, these should have been included
701         in my last commit
702
703 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
704
705         * scripts/*.py (program_name): cleanup relocation snippets.
706
707         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
708
709 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
710
711         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
712         page-breakable by default
713
714         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
715         correctly calculated for a single-system page
716
717         * scm/lily-library.scm (interval-sane?): also check that the first number is no
718         bigger than the second number
719
720         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
721         acknowledge that we aren't satisfying constraints)
722
723         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
724         non-Items
725
726         * lily/grob.cc (pure_height): add minimum-Y-extent
727
728         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
729         ragged
730
731         * lily/constrained-breaking.cc: convert code to use new Matrix class
732         (get_best_solution): new function
733
734         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
735         is a page with no systems
736
737 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
738
739         * VERSION (PACKAGE_NAME): release 2.9.13
740
741         * scm/define-grobs.scm (all-grob-descriptions): remove stray
742         assignment.
743
744 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
745
746         * Documentation/topdocs/NEWS.tely (Top): doc new features.
747
748         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
749         function.
750
751         * scm/define-grob-properties.scm (all-user-grob-properties):
752         remove grace-space-factor.
753
754         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
755         grace-spacing-interface
756         (spacing-options-interface): add.
757
758         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
759
760         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
761
762         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
763         GraceSpacing object.
764
765         * lily/note-spacing.cc: fix prop list formatting
766
767         * lily/beaming-pattern.cc (de_grace): new function. Sensible
768         beaming for grace notes too.
769
770         * input/regression/spacing-grace.ly: update.
771
772         * lily/grace-spacing-engraver.cc: new file.
773
774         * lily/spacing-spanner.cc: add strict-grace-spacing.
775
776 2006-07-20  Graham Percival  <gpermus@gmail.com>
777
778         * lily/parser.yy: compile fix.
779
780 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
781
782         * scm/define-grobs.scm (all-grob-descriptions): typo.
783
784         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
785         .eps extension from includegraphics.
786
787         * scripts/lilypond-book.py (main): add support for --pdf. 
788
789         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
790         callback to compute common shortest duration.
791         (set_springs): typo.
792
793         * scm/define-grob-properties.scm (all-user-grob-properties): add
794         strict-grace-spacing.
795
796         * lily/spacing-determine-loose-columns.cc (is_loose_column):
797         support float_grace_columns_.
798
799         * lily/spacing-options.cc (init_from_grob): new file.
800
801         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
802
803         * input/regression/spacing-loose-grace.ly: new file.
804
805         * Documentation/topdocs/NEWS.tely (Top): document new feature.
806
807         * lily/tuplet-engraver.cc (struct Tuplet_description): read
808         tupletFullLengthNote too. Choose right bound depending on value.
809
810         * input/regression/tuplet-full-length-note.ly: new file.
811
812 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
813
814         * lily/*-performer.cc: Converted try_music to listen_*
815
816         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
817         as a stream-event internally. Introduce event_cause (), deprecate
818         music_cause ().
819
820         * scm/define-music-types.scm: Removed BusyPlayingEvent
821         
822 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
823
824         * Documentation/user/advanced-notation.itely (Font selection):
825         Document how to get a list of available fonts using 'lilypond
826         -dshow-available-fonts blabla'.
827
828 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
829
830         * GNUmakefile.in: filter lily-XXX.pdf files.
831
832         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
833
834         * scm/define-grob-properties.scm (all-internal-grob-properties):
835         remove delta-pitch. Use delta-position everywhere.
836
837         * scm/output-lib.scm (fall::print): use new order.
838
839         * scm/output-ps.scm (path): reorder arguments.
840
841         * scm/output-svg.scm (path): support for path primitive.
842
843         * input/regression/bend-after.ly: new file.
844
845         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
846         recipe for eps -> pdf conversion.
847
848 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
849
850         * lily/parser.yy, lily/lexer.ll: added some simplifications by
851         Angelo Contardi.
852
853 2006-07-19  Graham Percival  <gpermus@gmail.com>
854
855         * input/manual/screech-boink.ly: moved to here.
856
857         * input/screech-boink.ly: deleted.
858
859         * scm/define-grob-properties.scm: clarify doc string.
860
861 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
862
863         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
864
865         * scm/output-ps.scm (path): define path.
866
867         * scm/define-stencil-commands.scm
868         (ly:register-stencil-expression): add path.
869
870         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
871
872         * ly/engraver-init.ly: add Fall_engraver
873
874         * lily/parser.yy (music_function_event): allow musicfunction
875         without music arg as music_function_event.
876
877         * lily/grob-scheme.cc (LY_DEFINE):
878         ly:grob-robust-relative-extent. New function.
879
880         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
881
882         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
883
884         * scm/output-lib.scm (fall::print): new function
885
886         * lily/fall-engraver.cc (stop_fall): new file.
887
888         * ly/music-functions-init.ly: alphabetise.
889
890         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
891         base.
892
893 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
894
895         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
896
897         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
898         doc pdftex usage.
899
900         * lily/translator-group.cc (connect_to_context): non const error message.
901
902         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
903
904         * scm/paper.scm (internal-set-paper-size): define landscape to #f
905         if unset.
906
907         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
908
909         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
910
911         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
912         systems.pdftex too.
913
914         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
915
916         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
917
918         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
919
920         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
921
922         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
923
924         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
925
926 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
927
928         * scm/layout-page-layout.scm: Define module, tidy code, use more
929         functions iso. a single big one.
930
931         * scm/layout-page-dump.scm: move page dump functions used in two
932         pass spacing to this file. Define module.
933
934         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
935          (separate module)
936
937         * ly/paper-defaults.ly: use module layout-page-layout.
938
939 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
940
941         * lily/music.cc: Revised MusicEvent event class. It now contains
942         event data directly instead of encapsulating it in music. The
943         previously used class is renamed to OldMusicEvent.
944
945         * lily/stream-event.cc: Stream events are now probs.
946         
947         * lily/translator-group.cc, lily/translator.cc: Translators can
948         now listen directly to stream events, by using macros
949         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
950
951         * lily/arpeggio-engraver.cc: Converted to use new event system
952
953         * THANKS: Corrected spelling mistake.
954
955 2006-07-12  Graham Percival  <gpermus@gmail.com>
956
957         * Documentation/user/SConscript, make/lilypond-vars.make,
958         input/GNUmakefile: doc build looks in input/manual instead
959         of input/test/
960
961         * input/manual/ GNUmakefile, SConscript: build files for
962         input/manual/
963
964         * input/test/ various: some files moved to input/manual/ 
965
966         * Documentation/user/basic-notation.itely: small updates;
967         thanks Kieren and Charles!
968
969 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
970
971         * VERSION (PACKAGE_NAME): release 2.9.11
972
973         * Documentation/topdocs/NEWS.tely (Top): update prop value 
974
975         * Documentation/user/basic-notation.itely (Tuplets): new property
976         value.
977
978 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
979
980         * python/convertrules.py (conv): tweaks. 
981
982         * VERSION (PATCH_LEVEL): bump version.
983
984         * python/convertrules.py (conv): add rule for
985         tupletNumberFormatFunction.
986
987         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
988         tupletNumberFormatFunction.
989
990         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
991         text through 'text callback.
992
993         * lily/time-scaled-music-iterator.cc (construct_children): copy
994         tweaks generated events.
995
996         * scm/define-context-properties.scm
997         (all-user-translation-properties): remove tupletNumberFormatFunction
998
999         * lily/tuplet-engraver.cc (process_music): don't read
1000         tupletNumberFormatFunction
1001
1002         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1003         function.
1004
1005 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1006
1007         * lily/global-context-scheme.cc: Separated ly:run-translator into
1008         smaller pieces.
1009
1010         * lily/score-engraver.cc, lily/score-performer.cc,
1011         scm/define-context-properties.scm: Make paper/midi output
1012         accessable as a context property.
1013
1014         * lily/score-translator.cc, lily/score-context.cc: Removed.
1015
1016 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1017
1018         * scm/ps-to-png.scm (Module): 
1019         * scm/framework-tex.scm (Module): 
1020         * scm/framework-ps.scm (Module): 
1021         * scm/backend-library.scm (Module): 
1022         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1023         "dDEVICEHEIGHTPOINTS".
1024
1025 2006-07-04  Graham Percival  <gpermus@gmail.com>
1026
1027         * Documentation/user/ various: general improvements to
1028         "working with lilypond files" section.
1029
1030 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1031
1032         * lily/sequential-iterator.cc: Change the default get_music_list
1033         to read elements-callback music property
1034
1035         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1036         processing of multimeasure rests. Softcoded
1037         sequential-music-iterator.
1038
1039         * lily/sequential-music-iterator.cc: Removed.
1040
1041 2006-06-28  Graham Percival  <gpermus@gmail.com>
1042
1043         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1044
1045 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1046
1047         * lily/parser.yy: Wrap non-post-events in EventChords before
1048         assigning them to identifiers.
1049
1050 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1051
1052         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1053         gives correct vertical placement of \bar ":" in all staff
1054         sizes. Thanks Martial!
1055
1056 2006-06-26  Graham Percival  <gpermus@gmail.com>
1057
1058         * Documentation/user/invoking.itely : minor update from mailist.
1059
1060 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1061
1062         * lily/ various: Introduce stream events of types Prepare,
1063         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1064         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1065
1066         * lily/global-context*.cc: Time is now -inf before iteration
1067         starts.
1068
1069         * lily/include/context.hh: Removed unique_, init_
1070
1071         * Documentation/topdocs/NEWS: Make the feathered beam example
1072         avoid triggering a bug.
1073
1074 2006-06-24  Graham Percival  <gpermus@gmail.com>
1075
1076         * Documentation/user/ various: small additions from mailist.
1077
1078 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1079
1080         * ly/performer-init.ly: Add some missing links in the context
1081         hierarchy for MIDI output. There are probably some more missing!
1082
1083 2006-06-21  Graham Percival  <gpermus@gmail.com>
1084
1085         * Documentation/user/ various: minor spelling fixes;
1086         thanks Dave Luttinen!
1087
1088         * Documentation/user/ various: small clarifications;
1089         thanks Anthony Youngman!
1090
1091 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1092
1093         * po/fr.po: add \n appropriately.
1094
1095         * lily/lexer.ll: remove ? from version-seen?  
1096
1097 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1098
1099         * po/fr.po; update translation, by Jean-Charles Malahieude and
1100         John Mandereau.
1101
1102 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1103
1104         * THANKS: add Markus Schneider.
1105
1106         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1107         Staff_symbol_engraver
1108
1109         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1110         replace staff_engraver
1111
1112         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1113         spanner.
1114
1115         * lily/staff-collecting-engraver.cc
1116         (acknowledge_end_staff_symbol): new function
1117
1118         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1119
1120         * lily/staff-collecting-engraver.cc
1121         (acknowledge_end_staff_symbol): new function.
1122
1123         * lily/main.cc: switch on relocation by default.
1124
1125 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1126
1127         * lily/spacing-spanner.cc (musical_column_spacing): set
1128         compound_fixed_note_space to 0.0. Document why.
1129
1130         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1131         range of inverse_hooke_
1132         (Simple_spacer): init completely.
1133         (fits): const
1134         (get_line_configuration): don't use cols.resize(); it introduces
1135         initialized data.
1136
1137         * scm/framework-ps.scm (dump-page): add setstrokeadjust. Backportme.
1138
1139         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1140
1141         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1142         try. Divide by beatlength.
1143
1144         * input/regression/beaming-ternary-metrum.ly: update doc.
1145         add beatLength hack.
1146
1147         * scm/music-functions.scm (make-time-signature-set): add
1148         standard-beat-grouping. 
1149
1150 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1151
1152         * input/regression/tie-whole.ly: new file.
1153
1154         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1155         cross center of note head in case of invisible stem. 
1156
1157 2006-06-16  Graham Percival  <gpermus@gmail.com>
1158
1159         * Documentation/user/ various: small fixes from mailist.
1160
1161 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1162
1163         * lily/breathing-sign.cc (offset_callback): idem.
1164
1165         * lily/align-interface.cc (align_to_fixed_distance): remove
1166         hungarian suffix.
1167
1168         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1169         x%2==0.
1170
1171 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1172
1173         * VERSION (PACKAGE_NAME): release 2.9.9
1174
1175         * ly/lilypond-book-preamble.ly: add \version
1176
1177 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1178
1179         * scripts/lilypond-book.py (PREAMBLE_LY): include
1180         lilypond-book-preamble.ly
1181
1182         * lily/stem.cc (get_beaming): return max of 0 and
1183         scm_ilength. Fixes slurring from/to beams.
1184
1185         * ly/lilypond-book-preamble.ly: new file.
1186
1187         * lily/slur.cc: add inspect-index feature.
1188
1189 2006-06-13  Graham Percival  <gpermus@gmail.com>
1190
1191         * Documentation/user/tutorial.itely: trivial fix.
1192
1193 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1194
1195         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1196         all non-event music in the parser via MAKE_SYNTAX.
1197
1198         * lily/parser-scheme.cc: Add ly:parser-error function
1199
1200         * scm/paper.scm: fix typo
1201
1202 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1203
1204         * THANKS: add RT.
1205
1206         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1207         is null.
1208
1209         * buildscripts/output-distance.py (test_compare_signatures):
1210         timing routines.
1211         (read_signature_file): use new signature format.
1212
1213         * scm/stencil.scm (write-system-signature): simpler signature
1214         format.
1215
1216         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1217         for beamed case. 
1218
1219         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1220         stem_end_position, but estimate instead. 
1221
1222         * lily/tuplet-bracket.cc (calc_positions): look at
1223         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1224         brackets narrower than beams. 
1225
1226         * lily/lexer.ll: set version-seen? even if version is
1227         INVALID. 
1228
1229         * lily/rest.cc (y_offset_callback): bugfix: decide position
1230         override based on scm_is_number(). Fixes \rest on center staff
1231         line. 
1232
1233         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1234         patterns for 16th triplets.
1235
1236 2006-06-10  Graham Percival  <gpermus@gmail.com>
1237
1238         * Documentation/user/ page.itely, global.itely: editing
1239         and reorg.
1240
1241         * Documentation/user/ various: findex -> funindex.
1242
1243 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1244
1245         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1246         insert extra tuplet events.
1247
1248 2006-06-10  Graham Percival  <gpermus@gmail.com>
1249
1250         * Documentation/user/programming-interfaces.itely: add
1251         info from NEWS.
1252
1253         * python/convertrules.py: add annotatefoo -> annotate-foo
1254         rules.
1255
1256         * Documentation/user/global.itely: start editing.
1257
1258         * Documentation/user/page.itely: major editing, new spacing
1259         docs.
1260
1261 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1262
1263         * scm/define-markup-commands.scm (wordwrap-markups): use
1264         output-def 'line-width if undefined.
1265
1266         * HACKING: trim outdated info.
1267
1268 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1269
1270         * scm/define-grobs.scm (all-grob-descriptions): Add
1271         line-spanner-interface to all grobs that already have
1272         text-spanner-interface or dynamic-text-spanner-interface
1273
1274         * scm/page.scm: Rename annotate{headers,systems,page}->
1275         annotate-*
1276
1277         * input/regression/page-spacing.ly,
1278         input/regression/page-layout-manual-position.ly: idem
1279
1280 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1281
1282         * lily/line-spanner.cc: cleanup property list.
1283
1284         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1285         generator expressions (2.3 compat). 
1286
1287 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1288
1289         * lily/vertical-align-engraver.cc: Make sure that the
1290         align{Above,Below}Context properties are included in the automatic
1291         documentation.
1292
1293 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1294
1295         * scm/paper-system.scm (paper-system-annotate): also annotate the
1296         estimated pure-Y-extent
1297
1298         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1299
1300         * lily/system.cc (break_into_pieces): set the estimated height
1301         of each child system
1302
1303         * lily/stem.cc (pure_height): new pure-Y-extent callback
1304
1305         * lily/staff-symbol-referencer.cc (callback): don't destroy
1306         the staff-position property
1307
1308         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1309         consider_suicide into two functions
1310
1311         * lily/constrained-breaking.cc (resize): use the new pure
1312         callbacks to estimate the height of a system
1313
1314         * lily/axis-group-interface.cc (pure_group_height): new
1315         side-effect-free VerticalAxisGroup height-callback
1316
1317         * lily/align-interface.cc (get_extents_aligned_translates):
1318         split align_elements_to_extents into two functions
1319         (get_pure_child_y_translation): new function
1320
1321         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1322
1323         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1324
1325         * lily/paper-score.cc: cache break_indices and columns
1326
1327         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1328         
1329 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1330
1331         * lily/font-config.cc (init_fontconfig): do the init if
1332         cache_file, but don't look at cache_file.
1333
1334         * input/regression/quote-tie.ly: new file.
1335
1336         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1337         to Head_event_tuple, so we deal gracefully with ties on
1338         cue-endings.
1339
1340         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1341         for FcChar8*
1342
1343 2006-06-08  Graham Percival  <gpermus@gmail.com>
1344
1345         * input/test/ smart-transpose.ly, reverse-music.ly:
1346         \applyMusic to music functions update, thanks Michael!
1347
1348 2006-06-07  Graham Percival  <gpermus@gmail.com>
1349
1350         * input/test/ add-staccato.ly, add-text-script.ly,
1351         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1352         music functions update, thanks to Michael Meixner.
1353
1354         * Documentation/user/music-glossary.tely: small fix
1355         from Francisco.
1356
1357         * Documentation/user/ various: minor additions from mailist.
1358
1359         * Documentation/user/lilypond.tely, basic-notation.itely:
1360         small test of @funindex.  (works here)
1361
1362         * input/test/font-table.ly: reduce size to partially
1363         de-ugly version in manual.
1364
1365         * Documentation/user/page.itely: new file (split former
1366         "global issues" into "page settings" and "non-musical
1367         output".
1368
1369         * Documentation/user/ various: fix @ref{}s to match
1370         new chapter names (above).
1371
1372 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1373
1374         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1375
1376 2006-06-06  Graham Percival  <gpermus@gmail.com>
1377
1378         * Documentation/user/advanced-notation.itely: add example
1379         for segno/coda on barline.
1380
1381         * tex/texinfo.tex: merge from upstream.
1382
1383 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1384
1385         * scripts/lilypond-book.py (process_snippets): Argument fix.
1386
1387         * SConstruct:
1388         * buildscripts/builder.py:
1389         * lily/SConscript: 
1390         * mf/SConscript: 
1391         * Documentation/user/SConscript:  More SCons fixes.
1392
1393 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1394
1395         * lily/font-config.cc (init_fontconfig): Only initialize if
1396         global cache_file is found.
1397
1398 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1399
1400         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1401         new \applyOutput.
1402
1403 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1404
1405         * VERSION (PACKAGE_NAME): release 2.9.8
1406
1407         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1408         function. Delay ledger modifying ledgered grobs to
1409         stop_translation_timestep(), to ensure that we're ledgering
1410         according to the new spanner.
1411         (acknowledge_staff_symbol): don't check for non-NULL
1412         staff_sym->get_bound()
1413
1414         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1415         creation.
1416
1417         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1418         pictures too.
1419
1420         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1421         directly from srcdir/stepmake/aclocal.m4
1422         
1423         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1424         disting MISC files.
1425
1426         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1427
1428 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1429
1430         * lily/simple-spacer.cc (get_line_configuration): add
1431         keep-inside-line rods
1432         (struct Column_desc): add constructor
1433         (struct Rod_desc): add constructor
1434         (get_line_forces): check for forced page breaks here too
1435
1436         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1437         support/elements cycles between InstrumentNames and AxisGroups
1438
1439 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1440
1441         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1442
1443         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1444         make-txt-files target.
1445
1446         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1447         make-txt-files target.
1448
1449         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1450
1451         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1452         top-build-dir.
1453
1454 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1455
1456         * Documentation/user/instrument-notation.itely,
1457         input/regression/breathing-sign-ancient.ly,
1458         input/test/divisiones.ly: Removed redundant property settings for
1459         vaticana contexts.
1460
1461         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1462         fix lyrics alignment problems.  They are implemented now as scheme
1463         functions that add the appropriate unicode char to the first lyric
1464         event rather than adding a separate lyric event.  Minor edit of
1465         comments.
1466
1467 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1468
1469         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1470         pollute src dir with built .txt files, but install directly from
1471         Documentation/topdocs/out/
1472
1473         * buildscripts/output-distance.py
1474         (ComparisonData.create_html_result_page): put version/directories
1475         in table header.
1476
1477         * Documentation/topdocs/NEWS.tely (Top): document spacing section
1478         feature.
1479
1480         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
1481         Patch by Karl Hammar
1482         
1483         * buildscripts/readlink.py: add  file.
1484         Patch by Karl Hammar
1485
1486 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1487
1488         * lily/tuplet-number.cc (print): prevent stencil from being
1489         garbage collected.
1490
1491 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1492
1493         * scm/stencil.scm (write-system-signature): explicitly 
1494         -well, superfluously- close output port.
1495
1496         * buildscripts/output-distance.py (main): oops. Add extra argument.
1497
1498 2006-06-05  Graham Percival  <gpermus@gmail.com>
1499
1500         * Documentation/user/music-glossary.tely: clarified example
1501         from Francisco Vila, thanks!
1502
1503 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1504
1505         * input/regression/spacing-section.ly: new file.
1506
1507         * lily/input.cc (programming_error): new function.
1508
1509         * lily/spacing-engraver.cc (try_music): new function. Accept
1510         spacing-section-event
1511
1512         * lily/spacing-spanner.cc (set_springs): take slices of all
1513         columns for spacing.
1514
1515         * lily/include/paper-column.hh (class Paper_column): add
1516         Paper_column::compare.
1517
1518         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
1519
1520         * scm/define-music-types.scm (music-descriptions): add
1521         SpacingSectionEvent
1522
1523         * lily/music-iterator.cc (report_event): use programming_error for
1524         sending non-event error.
1525
1526         * lily/input.cc (programming_error): new function
1527
1528         * buildscripts/output-distance.py (main): use compare-XXX for
1529         compare files.
1530         (main): --threshold option, default at 0.30
1531
1532         * output-distance.py (main): add --threshold option.
1533
1534 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1535
1536         * scm/paper-system.scm (paper-system-annotate): fix problem when
1537         annotating an empty system
1538
1539 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1540
1541         * GNUmakefile.in: reinstate old web tar/copying.
1542
1543 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1544
1545         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
1546         nothing changes. (Erik S) 
1547
1548         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
1549         count. (Erik S)
1550
1551 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1552
1553         * scm/define-markup-commands.scm (whiteout): do not force
1554         foreground color of argument markup to black.
1555
1556         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
1557         the left of the arrow, instead of below the arrow name, so that,
1558         when two little arrows are vertically stacked, their dimensions
1559         and name should not overlap. Add a color key parameter.
1560
1561         * scm/paper-system.scm (paper-system-annotate): Annotate
1562         next-space+next-padding instead of next-space. Annotate space
1563         between next-padding and next-space+padding, respectively, and
1564         following system extent and refpoint-Y-extent. Use colors.
1565
1566         * scm/page.scm (annotate-page): translate annotations slightly to
1567         the right.
1568
1569 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1570
1571         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
1572         fix for x-staff slurs. Thanks Joe!
1573
1574         * buildscripts/output-distance.py
1575         (SystemLink.output_expression_change_count): keep track of changed
1576         details, and dump in details html page.
1577  
1578         * input/regression/figured-bass-staff.ly: add note about setting
1579         properties in Staff context.
1580
1581         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
1582         add slurs and ties to support too.
1583
1584         * buildscripts/output-distance.py (main): set dest_dir
1585         argument. Add --max-count option.
1586
1587 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
1588
1589         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
1590         shortcuts for special unicode chars that are useful in chant
1591         notation.  Revised exisiting and added new comments.
1592
1593 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1594
1595         * make/mutopia-rules.make: remove duplicate recipe.
1596
1597 2006-06-02  Werner Lemberg  <wl@gnu.org>
1598
1599         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
1600         Add support for U+0132 (IJ) and U+0133 (ij).
1601
1602 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1603
1604         * buildscripts/output-distance.py (FileLink): new class. collect
1605         info systems from one .ly file. 
1606         (FileLink.link_files_for_html): further tweaks.
1607
1608 2006-06-02  Graham Percival  <gpermus@gmail.com>
1609
1610         * tex/texinfo.tex: partial fix for @funindex.
1611
1612         * Documentation/user/macros.tely: uncomment @funindex (doesn't
1613         break anything).
1614
1615 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1616
1617         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
1618
1619         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
1620         @example too. Backportme.
1621
1622 2006-06-02  Graham Percival  <gpermus@gmail.com>
1623
1624         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
1625         from Werner Lemberg.
1626
1627 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
1628
1629         * Documentation/user/music-glossary.tely: additional spanish
1630         updates and a lyrics fix in an example.
1631
1632 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
1633
1634         * scm/define-grob-properties.scm: Previous patch contained
1635         spurious line from another patch not yet committed.  Fixed.
1636
1637         * scm/define-grob-properties.scm: Add missing doc strings for
1638         ancient notation.
1639
1640 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1641
1642         * buildscripts/output-distance.py
1643         (ComparisonData.write_text_result_page): separate the scores, sort
1644         by geo_score.
1645
1646         * scm/framework-eps.scm (output-classic-framework): start at 1 for
1647         system signatures.
1648
1649         * buildscripts/output-distance.py (me_path): use argv[0] for
1650         sys.path extension
1651         (ComparisonData.img_cell): use colored borders.
1652
1653         * scm/stencil.scm (write-system-signature): escape newlines too.
1654         (write-system-signature): use (1,-1) interval for empty interval
1655
1656 2006-01-01  Graham Percival  <gpermus@gmail.com>
1657
1658         * Documentation/user/music-glossary.tely: Spanish updates
1659         from Francisco Vila.
1660
1661         * Documentation/user/lilypond-book.itely: addition from
1662         Vaclav Smilauer.
1663
1664         * Documentation/user/ various: edits, small additions
1665         from mailist, etc.
1666
1667 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1668
1669         * GNUmakefile.in (tree-lib-prefix-current):
1670         (tree-share-prefix-current): Use version number in tree, add
1671         `current' symlinks.
1672
1673 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1674
1675         * GNUmakefile.in: write VERSION, again.
1676
1677         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
1678         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
1679
1680         * stepmake/aclocal.m4: robuster version detection.
1681
1682         * buildscripts/output-distance.py
1683         (ComparisonData.create_html_result_page): copy only if file
1684         exists, fixup src paths.
1685
1686         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
1687
1688 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1689
1690         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
1691         Another datarootdir reto.
1692
1693         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
1694         available.  This should be moved to postinstall-lilypond-doc.
1695
1696 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1697
1698         * GNUmakefile.in: simplify local-WWW-post. 
1699         remove -type l from find.
1700
1701         * buildscripts/output-distance.py (ComparisonData.compare_trees):
1702         fixes. Don't follow symlinks.
1703         (ComparisonData.create_html_result_page): remove previous results.
1704         insert ../python in path.
1705
1706         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
1707
1708 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
1709
1710         * config.make.in (datadir): Add datarootdir to silence autoconf.
1711
1712         * stepmake/aclocal.m4: Update for autoconf-2.59d.
1713
1714 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
1715
1716         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
1717
1718         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
1719         slash beams too wide.
1720
1721 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1722
1723         * VERSION: release 2.9.7
1724         
1725 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1726
1727         * lily/relocate.cc (read_relocation_dir): Do not blindly
1728         dereference DIR.
1729
1730 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1731
1732         * lily/parser.yy: replace THIS by PARSER
1733
1734         * Documentation/index.html.in: add link to test-results.html page.
1735
1736         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
1737
1738         * scm/translation-functions.scm (format-bass-figure): translate
1739         digits over 10 to the left
1740
1741         * scm/define-markup-commands.scm (translate-scaled): new markup.
1742
1743         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
1744         7 glyph. 
1745
1746         * ly/engraver-init.ly: add Figured_bass_engraver
1747
1748         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
1749
1750         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
1751
1752         * lily/score-engraver.cc (announce_grob): only note START announces.
1753
1754         * lily/include/engraver-group.hh (Translator_group):
1755         acknowledge_hash_table_ is now drul.
1756
1757         * lily/engraver.cc (announce_end_grob): new method.
1758
1759         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
1760
1761         * lily/translator-dispatch-list.cc (create): take start_end argument.
1762
1763         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
1764         acknowledge_static_array_ to drul
1765
1766         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
1767
1768         * scm/define-grob-interfaces.scm
1769         (bass-figure-alignment-interface): add bass-figure-alignment-interface
1770
1771         * scm/define-grobs.scm (all-grob-descriptions): add
1772         BassFigureAlignmentPositioning
1773
1774         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
1775         number stays up to date. Backportme.
1776
1777 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
1778
1779         * Documentation/user/basic-notation.itely (Bar lines): Document
1780         the "||:" bar type. 
1781
1782 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1783
1784         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
1785
1786         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
1787         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
1788         build.
1789
1790         * Resurrect `scons lily' build.
1791
1792         * SConstruct (symlink_tree): Bugfix: link
1793         music-drawing-routines.ps to file iso directory.
1794
1795         * lily/SConscript: Remove kpath-guile from LIBS.
1796
1797         * SConstruct (libdir_package_version): Typo.
1798         (configure): Comment-out fontforge for lack of fontforge.pc .
1799         Also add libdir* to environment.
1800
1801 2006-05-30  Graham Percival  <gpermus@gmail.com>
1802
1803         * Documentation/user/ various: minor additions from mailist and
1804         editing.
1805
1806 2006-05-30  Paco <fravd@ya.com>
1807
1808         * Documentation/user/music-glossary.tely: numerous corrections and
1809         some new translations.
1810
1811 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
1812
1813         * BackportmeStart.
1814         
1815         * buildscripts/output-distance.py
1816         (ComparisonData.create_html_result_page): new routine: summarise
1817         results in HTML page with images. 
1818         (ComparisonData.create_text_result_page): create summary text files too.
1819
1820         * GNUmakefile.in (web-ext): package .signature files too. They
1821         compress well. 
1822
1823         * scm/stencil.scm (write-system-signature): typo.
1824
1825         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
1826
1827         * scm/stencil.scm (write-system-signature): better escaping.
1828         only write signature for music systems, not for markup systems.
1829
1830         * scm/framework-ps.scm (output-framework): dump-signatures support
1831         for plain output.
1832
1833         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
1834
1835         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
1836         for -dno-point-and-click
1837
1838         * lily/grob.cc (get_print_stencil): don't read
1839         point_and_click_global to determine whether to set grob-cause.
1840
1841 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
1842
1843         * buildscripts/output-distance.py (main): new function.
1844         (ComparisonData): new class.
1845
1846         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
1847         careful with generating new LedgerLineSpanners.
1848
1849         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
1850
1851         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
1852         context. This fixes double ledger lines in output. 
1853
1854         * lily/system.cc (get_paper_system): remove 3 layer limit.
1855
1856         * buildscripts/output-distance.py (SystemLink.distance): new
1857         file. Compare signatures.
1858
1859         * python/safeeval.py (SafeEval.visitUnarySub): new file.
1860
1861         * lily/grob-array.cc (remove_duplicates): rename from
1862         uniq(). Sort before calling uniq() so it actually works.
1863
1864 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1865
1866         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
1867         \version from lilypond file snippet.
1868         (Lilypond_file_snippet.ly): oops. typo.
1869         (find_toplevel_snippets): urgh. again.
1870
1871         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
1872         prevent duplicated broken items in output.
1873
1874         * scm/framework-eps.scm (output-classic-framework): only dump if
1875         dump-signatures is set.
1876
1877         * scm/lily.scm (define-scheme-options): add dump-signatures option.
1878
1879         * scm/stencil.scm (write-system-signature): new routine: write
1880         python parseable signature of a separate paper system.
1881         BackportmeEnd.
1882         
1883 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1884
1885         * lily/stanza-number-engraver.cc (process_music): use is_markup()
1886         iso is_string().
1887         include header.
1888
1889 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
1890
1891         * translator-group.cc: send music events to engravers in
1892         non-bottom contexts.
1893
1894         * tuplet-engraver.cc: process tuplet brackets in correct order.
1895
1896 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1897
1898         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
1899         arg 2 might point us to a new binary (patch by Karl Hammar)
1900         
1901 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1902
1903         * VERSION (PACKAGE_NAME): release 2.9.6
1904
1905         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
1906
1907         * Documentation/user/*.itely: 2nd
1908         attempt: replace funindex -> findex globally.
1909
1910 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1911
1912         * input/no-notation/display-lily-tests.ly: fix \applyOutput
1913         test. Add \break, \pageBreak, \pageTurn, etc, tests.
1914
1915         * scm/define-music-display-methods.scm: display methods for
1916         breaks. Fix \applyOutput.
1917
1918 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1919
1920         * Documentation/user/macros.itexi: comment out funindex expansion. 
1921
1922         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
1923         everywhere.
1924
1925         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
1926         Karl Hammar. Backportme.
1927  
1928         * Documentation/user/advanced-notation.itely (Balloon help): idem.
1929
1930         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
1931
1932         * Documentation/user/programming-interface.itely (Running a
1933         function on all layout objects): idem.
1934
1935         * Documentation/user/introduction.itely (Automated engraving):
1936         update \applyOutput syntax
1937
1938         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
1939         remove debugging hook.
1940
1941         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
1942         expansion. 
1943
1944         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
1945
1946         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
1947         TEXI2DVI_FLAGS to texi2dvi invocation. 
1948
1949 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
1950
1951         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
1952         works. More work is done by iterator now, and engraver has been
1953         very much simplified.
1954
1955         * lily/translator-group.cc: try_music is now invoked through a
1956         listener
1957
1958         * lily/*-iterator.cc: Massive cleanups. Junked
1959         try_music_in_children globally. Renamed try_music to report_event,
1960         and made that method descend to a bottom context automatically.
1961
1962         * lily/event-iterator.cc: New file.
1963
1964         * lily/output-property-iterator.cc,
1965         lily/old-lyric-combine-music-iterator.cc: Removed.
1966
1967         * python/convert-rules.py: Modified the syntax for \applyOutput.
1968
1969 2006-05-23  Graham Percival  <gpermus@gmail.com>
1970
1971         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
1972         creation.
1973
1974         * Documentation/user/ various: stuff that might have helped
1975         to fix the pdf creation, plus some minor doc additions.
1976
1977         * Documentation/user/changing-defaults.itely: remove @b from
1978         @b{ @internasref{foo}}; this breaks texi2dvi -E.
1979
1980 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1981
1982         * lily/beaming-pattern.cc (beamify): deal with negative start
1983         moments for beaming patterns.
1984
1985 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
1986
1987         * lily/beaming-info.cc (beamify): new function: read beatLength
1988         and beatGrouping from context. 
1989
1990         * input/regression/beam-beat-grouping.ly (Module): new file.
1991
1992         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
1993
1994         * lily/beam.cc (get_beam_segments): generate events for
1995         max_connect_ case too.
1996         (get_beam_segments): read Stem::max-beam-connect.
1997
1998         * input/regression/beam-single-stem.ly: new file.
1999
2000         * lily/stem.cc (set_beaming): use #f as signaling value for
2001         beamcount 0.
2002
2003         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2004
2005         * lily/beam.cc (set_beaming): read clip-edges property.
2006         (calc_direction): don't suicide for single stem.
2007
2008         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2009         argument, remove 1<<15 hack. Remove clip_edges() 
2010
2011         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2012
2013 2006-05-21  Graham Percival  <gpermus@gmail.com>
2014
2015         * Documentation/user/basic-notation.itely: reorg.
2016
2017         * Documentation/user/ various: minor fixes.
2018
2019 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2020
2021         * lily/stencil-expression.cc (register_stencil_head): opps, append
2022         to cdr of static SCM object.
2023
2024 2006-05-19  Graham Percival  <gpermus@gmail.com>
2025
2026         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2027         update framework for command index.  DOC WRITERS: use @funindex
2028         instead of @cindex @code{}.
2029
2030         * Documentation/user/ various: replace @cindex @code{} => @funindex
2031
2032 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2033
2034         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2035         case positions is set manually. 
2036
2037 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2038         
2039         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2040         rules to Scheme.
2041
2042 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2043
2044         * Documentation/user/changing-defaults.itely (Contexts explained):
2045         use absolute dimension for @image.
2046
2047         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2048         out image for illustration too.
2049         ($(outdir)/%.png): add more png <-> eps rules. 
2050
2051 2006-05-17  Graham Percival  <gpermus@gmail.com>
2052
2053         * Documentation/user/ various: remove trailing whitespace, cosmetic
2054         change to reduce changes produced by diff.
2055
2056 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2057
2058         * lily/main.cc (do_chroot_jail): correctness tweak.
2059
2060         * python/lilylib.py (system): import subprocess in system () only.
2061
2062         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2063
2064         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2065         variable. Backportme.
2066
2067 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2068         
2069         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2070
2071 2006-05-17  Werner Lemberg  <wl@gnu.org>
2072
2073         * lily/lexer.ll (init_signature_has_table): Add
2074         `scm-scm-music-music'.
2075
2076         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2077         (Generic_prefix_music_scm): Add rule for it.
2078
2079         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2080         `quoted-transposition' property.
2081
2082         * ly/music-functions-init.ly (transposedCueDuring): New function.
2083
2084         * scm/define-music-properties.scm (all-music-properties): Updated.
2085
2086         * Documenation/topdocs/NEWS.itely: Document it.
2087
2088 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2089
2090         * python/lilylib.py (system): move import subprocess to system()
2091         definition. 
2092
2093         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2094
2095         * VERSION (PATCH_LEVEL): release 2.9.5
2096         
2097         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2098         build instructions. 
2099
2100         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2101
2102 2006-05-16  Graham Percival  <gpermus@gmail.com>
2103
2104         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2105
2106         * Documentation/user/ various: minor fixes.
2107
2108 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2109
2110         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2111
2112 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2113
2114         * Documentation/user/advanced-notation.itely (Instrument names):
2115         Modified obsolete instruction on how to move instrument names away
2116         from the staves. Hmm, at second thought the bug probably has been
2117         solved, so the full bug description should probably be removed.
2118
2119 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2120
2121         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2122         currentCommandColumn. 
2123
2124         * lily/hairpin.cc (print): also add padding for non-neighbor
2125         hairpin bounds.
2126
2127         * scm/define-context-properties.scm
2128         (all-user-translation-properties): add hairpinToBarline
2129
2130         * input/regression/hairpin-to-barline.ly: new file.
2131
2132         * lily/context.cc (internal_send_stream_event): thinko fix.
2133
2134         * lily/tie.cc (set_default_control_points): robustness fix.
2135
2136         * python/musicxml.py (Part.interpret): don't complain about
2137         incomplete measures.
2138
2139         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2140         new music if last_event_chord() returned None.
2141
2142         * python/musicxml.py (Part.interpret): skip back over chord notes.
2143
2144 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2145         
2146         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2147         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2148         lily/slash-repeat-engraver.cc,
2149         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2150         iterator sends PercentEvents
2151
2152         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2153         rework tuplets: send start/stop events to engraver
2154
2155         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2156         dispatchers event-source and events-below to Context
2157         
2158 2006-05-15  Graham Percival  <gpermus@gmail.com>
2159
2160         * Documentation/user/README.txt: update info for doc writers.
2161
2162         * Documentation/user/programming-interface.itely: integrate
2163         Nicolas' fixes for chapter rewrite.
2164
2165         * Documentation/user/ various: minor fixes.
2166
2167 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2168
2169         * lily/clef-engraver.cc: cleanup.
2170
2171         * Documentation/user/GNUmakefile: dist context-example.eps too.
2172
2173         * lily/key-engraver.cc (create_key): use
2174         explicitKeySignatureVisibility for cancellation too. 
2175
2176         * lily/font-config.cc (init_fontconfig): don't close file if
2177         f==NULL. 
2178
2179 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2180
2181         * Documentation/topdocs/NEWS.tely: niente and rotation news
2182
2183 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2184
2185         * lily/include/stencil.hh
2186         * lily/stencil.cc (rotate): new function. Makes it possible
2187         to rotate a stencil around a given offset.
2188
2189         * lily/grob.cc (get_print_stencil): add rotation support
2190
2191         * lily/stencil-interpret.cc (interpret_stencil_expression):
2192         add rotation support
2193
2194         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2195
2196         * scm/define-grob-properties.scm: add 'rotation property
2197
2198         * scm/define-markup-commands.scm: add rotate markup command
2199         
2200         * scm/output-ps.scm: add rotation support in PostScript backend
2201
2202         * scm/output-svg.scm: add rotation support in SVG backend
2203
2204 2006-05-13  Graham Percival  <gpermus@gmail.com>
2205
2206         * Documentation/user/music-glossary.itely: French correction.
2207
2208         * Documentation/user/programming-interface.itely: major
2209         new docs, some reorg, some info from Nicolas.
2210
2211         * Documentation/user/ various: small fixes.
2212
2213 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2214
2215         * Documentation/user/programming-interface.itely (Markup
2216         programmer interface): Remove duplicate text.
2217
2218 2006-05-12  Graham Percival  <gpermus@gmail.com>
2219
2220         * Documentation/user/context-example.eps: new file.
2221
2222         * Documentation/user/changing-defaults.itely: set up file to
2223         use eps image.
2224
2225         * Documentation/user/programming-interface.itely: changes
2226         from mailist.
2227
2228 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2229
2230         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2231
2232 2006-05-11  Graham Percival  <gpermus@gmail.com>
2233
2234         * Documentation/user/programming-interface.itely: first round of
2235         editing and merging emails from Nicolas.
2236
2237         * Documentation/user/scheme-tutorial: minor edit.
2238
2239 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2240
2241         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2242         XML attributes.
2243         (Xml_node.message): use it.
2244
2245         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2246         oops. Add duration argument.
2247
2248 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2249
2250         * lily/paper-column-engraver.cc (make_columns):
2251         * scm/define-grobs.scm: Revert my previous change and set the default
2252         in define-grobs.scm instead.
2253
2254 2006-05-09  Graham Percival  <gpermus@gmail.com>
2255         
2256         * Documentation/user/changing-defaults.itely: general editing,
2257         info about \set and \override.
2258
2259         * Documentation/user/tweaking.itely, advanced-notation.itely:
2260         fixes from Dave Luttinen, thanks!
2261
2262 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2263
2264         * lily/paper-column-engraver.cc (make_columns): By default, a column
2265         needs to be breakable.
2266
2267 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2268
2269         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2270         Attributes methods
2271         (musicxml_time_to_lily): idem
2272         (musicxml_key_to_lily): idem
2273         (instrument_drumtype_dict): dict for supported drumtypes.
2274         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2275         moments and pending mm rests
2276         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2277         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2278         (musicxml_voice_to_lily_voice): add mode change.
2279         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2280         speed and less memory usage (factor 5 to 10).
2281         (convert): write -defs.ly  and driver file separately so people
2282         can script their own part extraction.
2283
2284         * python/musicxml.py (minidom_demarshal_node): new function:
2285         separate minidom handling.
2286         (lxml_demarshal_node): new function: support lxml.etree too.
2287         (Xml_node.message): new function: verbose error message, with XML
2288         path to offending node.
2289         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2290         (Part_list.generate_id_instrument_dict): new method: collect
2291         instrument names, to be able to set drum_type.
2292         (Part.interpret): handle underfull measures
2293         (Part.interpret): assign instrument names.
2294
2295         * python/musicexp.py (Output_printer.close): new method
2296         (MusicWrapper.print_ly): new class: support other modes,
2297         eg. \drummode
2298         (BarCheck.print_ly): new class. Support bar checks, with comments
2299         and fancy barchecks. 
2300         (NoteEvent.__init__): also set drum_type for drum notes.
2301         (MultiMeasureRest.lisp_expression): dump mm rests.
2302
2303         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2304         line-break-permission if forbidBreak is not set.
2305
2306 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2307
2308         * scm/define-context-properties.scm:
2309         * scm/define-grob-properties.scm:
2310         * scm/define-grobs.scm:
2311         * scm/define-music-display-methods.scm:
2312         * scm/define-music-properties.scm:
2313         * scm/define-music-types.scm:
2314         * scm/music-functions.scm:
2315         * ly/declarations-init.ly:
2316         * lily/include/constrained-breaking.hh:
2317         * lily/system.cc:
2318         * lily/spaceable-grob.cc:
2319         * lily/simple-spacer.cc:
2320         * lily/paper-score.cc:
2321         * lily/paper-column.cc:
2322         * lily/paper-column-engraver.cc:
2323         * lily/item.cc:
2324         * lily/gourlay-breaking.cc:
2325         * lily/constrained-breaking.cc:
2326         * python/convertrules.py:
2327         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2328         "page-break-penalty" and "line-break-permission".
2329         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2330         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2331
2332         * lily/bar-engraver.cc:
2333         * lily/beam-engraver.cc:
2334         * lily/forbid-break-engraver.cc:
2335         * lily/ligature-engraver.cc:
2336         * lily/paper-column-engraver.cc:
2337         * lily/percent-repeat-engraver.cc:
2338         * lily/score-engraver.cc:
2339         * lily/score-engraver.hh:
2340         * lily/paper-column-engraver.hh:
2341         Inter-engraver communication regarding line breaks is done through context
2342         properties (Score.forbidBreak) instead of function calls.
2343
2344 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2345
2346         * VERSION (PACKAGE_NAME): release 2.9.4
2347
2348 2006-05-08  Graham Percival  <gpermus@gmail.com>
2349
2350         * Documentation/user/working.itely: proofreading from Dave
2351         Luttinen, thanks.
2352
2353         * Doucmentation/user/README.txt: updated with manual style info.
2354
2355         * Documentation/user/ various: trim linewidth to 78 chars.
2356
2357 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2358
2359         * scm/define-grob-properties.scm (all-internal-grob-properties):
2360         remove chord-tremolo property.
2361
2362         * lily/beam.cc (get_beam_segments): don't use stem position as
2363         base for broken ends.
2364
2365 2006-05-06  Graham Percival  <gpermus@gmail.com>
2366
2367         * Documentation/user/putting.itely: proofreading from Dave
2368         Luttinen, thanks!
2369
2370         * Documentation/user/ various: more reorg and clarifications.
2371
2372 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2373
2374         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2375
2376         * ly/music-functions-init.ly: new function featherDurations
2377
2378         * lily/beam.cc: read grow-direction for feathered beaming.
2379
2380         * Documentation/topdocs/NEWS.tely (Top): typo.
2381
2382 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2383
2384         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2385         tremolo beams.
2386
2387 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2388         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2389         used by music streams.
2390
2391         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2392         lily/stream-event.cc, lily/stream-event-scheme.cc,
2393         lily/listener.cc, lily/scheme-listener.cc,
2394         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2395         lily/include/stream-event.hh, lily/include/listener.hh,
2396         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2397         Created data structures for music streams.
2398         
2399 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2400
2401         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2402         construction of a beam. 
2403         (print): rewrite. 
2404
2405         * flower/include/std-vector.hh (default_compare): use only one comparison.
2406
2407         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2408         (note-by-number): further attachment fixes.
2409
2410         * scm/lily-library.scm (ordered-cons): new function.
2411         (interval-index): new function
2412
2413         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2414
2415         * lily/note-head.cc (get_stem_attachment): new function.
2416
2417         * scm/define-markup-commands.scm (note-by-number): read 'style
2418         property. 
2419
2420         * input/regression/markup-note.ly: show note-head style option.
2421
2422         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2423         triangle head.
2424
2425 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2426
2427         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2428
2429         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2430
2431         * lily/include/constrained-breaking.hh: GCC 4 fix.
2432
2433 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2434
2435         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2436         Replace it with functions get_line_forces and get_line_configuration.
2437         (class Simple_spacer): Make data private.
2438         Rewrite compression algorithm to be faster and simpler.
2439
2440         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2441         * lily/gourlay-breaking.cc (solve):
2442         * lily/constrained_breaking.cc (space_line):
2443         Change it to the new simple-spacer code.
2444
2445         * lily/paper-score.cc (get_paper_systems):
2446         (Paper_score):
2447         (process):
2448         Delay breaking the systems until they are requested.
2449         (find_break_indices):
2450         Use vsize for indices.
2451         (calc_breaking):
2452         Move the "Calculating line breaks" message here.
2453
2454         * lily/system.cc (pre_processing):
2455         Move the "Calculating line breaks" message away from here.
2456         (break_into_pieces):
2457         Allow multiple calls to this function in sequence (with touching-but-
2458         not-overlapping breakpoints).
2459
2460         * lily/constrained-breaking.cc:
2461         Replace most of the get_XXXX functions with get_line_details.
2462         Only calculate the force for each line. Calculate configurations only
2463         for the lines we will actually use.
2464         Replace cols_ with lines_.
2465
2466 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2467
2468         * mf/GNUmakefile (depth): remove FC_FIND.
2469
2470         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2471
2472         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
2473
2474         * scm/framework-ps.scm (write-preamble): new function.
2475         (write-preamble): load mac fonts via fondu, even if gs-font-load
2476         is set.
2477
2478 2006-05-03  Werner Lemberg  <wl@gnu.org>
2479
2480         * mf/GNUmakefile (FC_FIND): Fix typo.
2481
2482 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
2483
2484         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
2485
2486 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2487
2488         * stepmake/aclocal.m4: run python-config for crosscompiling
2489         flags. 
2490
2491         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
2492         -f png for HTML, TEXINFO formats. 
2493
2494         * input/tutorial/lbook-html-test.html: new file.
2495
2496         * lily/include/tie-formatting-problem.hh (class
2497         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
2498         [column, direction]. This fixes laissez vibrer ties.
2499  
2500         * flower/include/tuple.hh (struct Tuple2): new file.
2501
2502         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
2503         $(FCMATCH), only if $(NCSB_DIR) not set. 
2504
2505         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
2506
2507         * config.make.in (DOCUMENTATION): set FCMATCH.  
2508
2509         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
2510
2511 2006-05-03  Graham Percival  <gpermus@gmail.com>
2512
2513         * Documentation/user/ various: final round of reorg.
2514
2515         * Documentation/user/instrument-notation.itely: some more
2516         fixes from Eduardo, thanks!
2517
2518 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2519
2520         * VERSION (PACKAGE_NAME): release 2.9.3
2521
2522         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
2523
2524         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
2525
2526 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
2527
2528         * scm/define-grob-properties.scm (all-user-grob-properties):
2529         Correct typo, thanks to Eduardo.
2530
2531 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2532
2533         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
2534
2535         * buildscripts/lilypond-words.py (F): indent fix.
2536
2537         * input/regression/tie-arpeggio-collision.ly: new file.
2538
2539         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
2540         function: store outlines per column rank.
2541
2542         * lily/include/tie-configuration.hh (class Tie_configuration): add
2543         column_ranks_ to specification and configuration, to distinguish
2544         between ties for different heads in arpegiated chords.
2545
2546         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
2547
2548         * *.py: more 4 space indents.
2549
2550         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
2551
2552 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
2553
2554         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
2555
2556 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2557
2558         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
2559
2560         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
2561
2562         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
2563
2564 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2565
2566         * python/convertrules.py (conv): indent 4 for python files.
2567
2568 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
2569
2570         * Documentation/user/changing-defaults.itely (Creating contexts):
2571         Clarify \new semantics.
2572
2573 2006-04-28  Graham Percival  <gpermus@gmail.com>
2574
2575         * Documentation/user/ various: major new sections in the
2576         Learning manual, slight reorg elsewhere.
2577
2578 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2579
2580         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
2581
2582         * scm/framework-ps.scm (output-framework): remove PageMedia
2583
2584 2006-04-27  Graham Percival  <gpermus@gmail.com>
2585
2586         * Documentation/user/ tweaks.itely, working.itely: new
2587         files, being more advanced "learning manual" chapters.
2588
2589         * Documentation/user/ tutorial, putting, lilypond: reorg.
2590
2591 2006-04-26  Graham Percival  <gpermus@gmail.com>
2592
2593         * input/regression/lyric-combine-polyphonic.ly: fixed test
2594         (no more "can't find context `one'" error).
2595
2596 2006-04-25  Joe Neeman <joeneeman@gmail.com>
2597
2598         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
2599
2600         * input/regression/stem-tremolo.ly: add 2 more whole note examples
2601         
2602 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2603
2604         * lily/relocate.cc (read_relocation_dir): new function.
2605
2606 2006-04-26  Graham Percival  <gpermus@gmail.com>
2607
2608         * Documentation/user/instrument-notation.itely: a few more fixes
2609         from Eduardo, thanks!
2610
2611         * Documentation/user/README.txt: new file; contains info on
2612         style that used to be in lilypond.tely.
2613
2614         * Documentation/user/ various: first round of doc reorg.
2615
2616         * Documentation/user/baer-flat-bw.png: remove alpha bit from
2617         graphic; this probably causes problems on some pdf
2618         viewers, notably Adobe Acrobat.
2619
2620 2006-04-24  Graham Percival  <gpermus@gmail.com>
2621
2622         * Documentation/user/instrument-notation.itely: many alterations
2623         to Vocal music, from Eduardo Viera.
2624
2625 2006-04-23  Graham Percival  <gpermus@gmail.com>
2626
2627         * Documentation/user/instrument-notation.itely: fix \new
2628         instead of \context problem.
2629
2630 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2631
2632         * lily/relocate.cc (expand_environment_variables): new function.
2633         (read_line): id.
2634         (read_relocation_file): id.
2635
2636         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
2637
2638 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
2639
2640         * ly/engraver-init.ly: remove old comments from TabVoice
2641
2642 2006-04-20  Graham Percival  <gpermus@gmail.com>
2643
2644         * Documentation/user/instrument-notation.itely: added Erlend's
2645         latest doc patch, thanks!
2646
2647 2006-04-19  Erlend Aasland <erlenda@gmail.com>
2648
2649         * lily/include/slur.hh:
2650         * lily/slur.cc:
2651         * lily/phrasing-slur-engraver.cc:
2652         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
2653         acknowledge_extra_object () from Phrasing_slur_engraver:: and
2654         Slur_engraver:: and putting it in
2655         Slur::auxiliary_acknowledge_extra_object ().
2656
2657         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
2658
2659         * lily/note-collision.cc: fix a comment
2660
2661 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2662
2663         * stepmake/bin/add-html-footer.py: fix footer position in
2664         generated html files: before </body> and </html> tags.
2665
2666 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2667
2668         * scripts/GNUmakefile: revert last "fix", which rather broke make.
2669         Earlier successive `make' commands finally compiled ok.
2670
2671         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
2672
2673 2006-04-18  Erlend Aasland <erlenda@gmail.com>
2674
2675         * lily/include/stem-tremolo.hh:
2676         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
2677         callers.
2678
2679         * lily/lookup.cc:
2680         * lily/include/lookup.hh: add rotated_box ()
2681
2682 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2683
2684         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
2685         been generated. Fixes "can't get `--help'" bug after make clean.
2686
2687         * THANKS: alphabetize contributors.
2688
2689 2006-04-17  Graham Percival  <gpermus@gmail.com>
2690
2691         * Documentation/user/instrument-notation.itely: added Erlend's
2692         tabs and banjo doc patch.  Thanks!
2693
2694 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
2695
2696         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
2697
2698         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
2699
2700         * scm/output-lib.scm: add some more predefined string tunings.
2701
2702         * Documentation/user/instrument-notation.itely: and doc them.
2703
2704 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
2705
2706         * ly/engraver.ly: Remove obsolete comments.
2707
2708         * ly/gregorian-init.ly: Define default layout block.
2709
2710         * input/puer-fragment.ly: Updated and extended.
2711
2712 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2713
2714         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
2715         pdf conversion behaviour.
2716
2717         * flower/file-name.cc (dir_name)
2718         (get_working_directory): Move from relocate.cc.
2719
2720         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
2721         
2722         * lily/relocate.cc: Encapsulate sys/stat.h in
2723         HAVE_STAT_H.
2724
2725 2006-04-14  Graham Percival  <gpermus@gmail.com>
2726
2727         * Documentation/user/ various: small updates from Cameron
2728         and Juergen, thanks!
2729
2730         * Documentation/user/ various: small updates of my own.
2731
2732         * THANKS: 2.7 -> 2.8.
2733
2734 2006-04-11  Graham Percival  <gpermus@gmail.com>
2735
2736         * scm/define-context-properties.scm: typo.
2737
2738         * Documentation/user/ : many more small updates.
2739
2740 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
2741
2742         * scm/define-music-types.scm: disposed "docme".
2743
2744 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
2745
2746         * lily/hairpin.cc: make niente circles a bit smaller.
2747
2748 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
2749
2750         * mf/GNUmakefile: remove redundant mftrace check. Also remove
2751         get-pfa and get-*-fonts targets.
2752
2753 2006-04-10  Graham Percival  <gpermus@gmail.com>
2754
2755         * THANKS, Documentation/user/ basic-notation, advanced-notation,
2756         music-glossary, programming-interface: more minor fixes
2757         from mailist.
2758
2759         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
2760
2761         * scm/define-context-properties.scm: another old \property update.
2762         This time tested for compiling!
2763
2764 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
2765
2766         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
2767
2768 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2769
2770         * scm/define-context-properties.scm (all-user-translation-properties): 
2771         * Documentation/user/global.itely (Page formatting): Compile fix.
2772
2773 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
2774
2775         * Documentation/user/advanced-notation.itely (Polymetric
2776         notation): Update the example to use the "+" symbol and add link
2777         to input/test/compound-time.ly.
2778
2779 2006-04-08  Graham Percival  <gpermus@gmail.com>
2780
2781         * scm/define-grob-properties.scm: clarify docs for #'direction.
2782
2783         * scm/define-context-properties.scm: update old \property override.
2784
2785         * Documentation/user/ advanced-notation, global, lilypond-book:
2786         more minor doc updates.
2787
2788 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2789
2790         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
2791
2792         * scm/backend-library.scm (search-gs): oops.
2793
2794 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2795
2796         * scripts/lilypond-book.py (output): use base, not filename for href.
2797
2798         * scm/backend-library.scm: only look for gs.
2799
2800         * scripts/lilypond-book.py (output): fix printfilename.
2801
2802         * lily/parser.yy (music_function_musicless_prefix): fold together
2803         definitions of signature (SCM*) (Music|post_event|chord_body_element)
2804
2805         * lily/slur.cc (print): only set font-size if not set yet.
2806
2807         * lily/slur-configuration.cc (add_score): improved layout of debug
2808         scoring output.
2809
2810 2006-04-05  David Feuer  <David.Feuer@gmail.com>
2811
2812         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
2813         (draw_circle): Hopefully fixed regression.
2814         Improved documentation for several procedures.
2815         
2816 2006-03-04  Werner Lemberg  <wl@gnu.org>
2817
2818         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
2819
2820 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2821
2822         * scripts/musicxml2ly.py (bindir): add dynamic
2823         relocation. 
2824
2825 2006-04-04  Graham Percival  <gpermus@gmail.com>
2826
2827         * Documentation/user/ basic-notation, advanced-notation, putting,
2828         instrument-notation, invoking, lilypond, THANKS: another ream of small
2829         fixes from the Doc Helpers.
2830
2831 2006-04-03  David Feuer  <David.Feuer@gmail.com>
2832
2833         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
2834
2835         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
2836
2837         * Cleaned up interfaces between PostScript and Scheme, and moved
2838         computations from PostScript to Scheme:
2839
2840         * music-drawing-routines.ps
2841         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
2842         with stroke_and_fill throughout.
2843         (euclidean_length, print_letter, draw_box): Deleted unused
2844         procedures.  If someone needs draw_box, implement it using
2845         draw_round_box; don't duplicate code.
2846         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
2847         Refactored/cleaned up interfaces.
2848         (mark_URI): Moved.
2849
2850         * output-ps.scm: reordered arguments to PostScript functions to
2851         match new interfaces
2852         (glyph-string): Rewrote glyph-string.
2853         (grob-cause): Replaced string-append with format.
2854         (repeat-slash): Rewrote to do computation here.
2855         (round-filled-box): Rewrote to do computation here.
2856
2857 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
2858
2859         * stepmake/stepmake/generic-targets.make: add cvs-clean target
2860
2861         * stepmake/stepmake/toplevel- targets.make: print help info about
2862         cvs-clean
2863
2864 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
2865
2866         * input/regression/hairpin-circled.ly: new file
2867
2868 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
2869
2870         * lily/hairpin.cc (print): add support for circled tip
2871
2872         * scm/define-grob-properties.scm: add circled-tip parameter
2873
2874         * scm/define-grobs.scm: init circled-tip to false
2875         
2876 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2877
2878         * scm/music-functions.scm (quote-substitute): set
2879         iterators-ctor. 
2880
2881 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2882
2883         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
2884         BSTINPUTS. 
2885
2886         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
2887
2888         * scm/output-ps.scm (glyph-string): revert cid selectfont.
2889
2890 2006-03-31  David Feuer  <david.feuer@gmail.com>
2891         
2892         * scm/framework-ps.scm:
2893         
2894         * scm/output-ps.scm: glyph-string now produces smaller, more
2895         readable, and probably faster PostScript.  Several findfont
2896         scalefont setfont instances changed to selectfont
2897         Hacked-up string-appends changed to formats.
2898
2899         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
2900         
2901 2006-03-30  Graham Percival  <gpermus@gmail.com>
2902
2903         * scm/lily-library.scm: make "no version" warning message more polite.
2904
2905         * lily/music.cc: add double quotes to failed octave check.
2906
2907         * Documentation/user/ advanced-notation, changing-defaults,
2908         instrument-notation, invoking, music-glossary: whole bunch of minor
2909         fixes from mailist.
2910
2911 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2912
2913         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
2914         $(buildscriptdir) iso. depth.
2915
2916         * VERSION (PACKAGE_NAME): release 2.9.1
2917
2918 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2919
2920         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
2921
2922         * VERSION (PATCH_LEVEL): bump version number.
2923
2924         * flower/include/guile-compatibility.hh (scm_from_uint32): add
2925         scm_from_uint32 ()
2926
2927         * lily/pango-font.cc (pango_item_string_stencil): use
2928         scm_from_uint32 ()
2929
2930         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
2931         $(outdir)/emmentaler-%.svg): remove canary.
2932
2933         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
2934         glyphnames if we have a ttf font.
2935
2936 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
2937
2938         * Documentation/user/advanced-notation.itely (Font selection):
2939         Corrected reference to the font-family-override.ly example.
2940
2941 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
2942         
2943         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
2944         stem-tremolo object in the stem (or else the stem might not be
2945         long enough).
2946
2947 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2948
2949         * lily/ttf.cc (print_trailer): only print existing glyphs.
2950
2951 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
2952
2953         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
2954         position the tremolo based on the position of the notehead.
2955
2956         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
2957         notes and update the texidoc line with the new positioning rules.
2958         
2959 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2960
2961         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
2962
2963         * scripts/lilypond-book.py (Module): set default for linewidth if
2964         preamble not found.
2965
2966 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2967
2968         * VERSION (PACKAGE_NAME): release 2.9.0.
2969
2970         * input/regression/stem-tremolo-position.ly: new file.
2971
2972         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
2973
2974 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
2975
2976         * lily/stem-tremolo.cc (print): position
2977         the tremolo depending only on the end of the stem
2978         and not on the notehead
2979         (raw_stencil): center, on the middle staff line, the
2980         flag that is closest to the end of the stem (previously
2981         the bottom flag)
2982         (calc_width): add this callback to shorten a tremolo when
2983         it is beamed or it is stemup with a flag
2984         (style): add this callback to make a tremolo rectangular when
2985         it is beamed or it is stemup with a flag
2986         (rotated_box): this is like Lookup::beam but makes a rotated
2987         rectangle instead of a parallelogram
2988
2989         * lily/stem.cc (calc_stem_info): make sure the stem
2990         is long enough to fit the tremolo
2991         (calc-length): reduce the length of tremolo stems since the
2992         tremolo code is now capable of better positioning
2993
2994         * scm/define-grobs.scm: make calc_width the default beam-width
2995         callback for stem-tremolo and add the style callback
2996                 
2997 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2998
2999         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3000         case. 
3001
3002 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3003
3004         * lily/ttf.cc (make_index_to_charcode_map): restore old
3005         cmap. 
3006
3007 2006-03-28  Werner Lemberg  <wl@gnu.org>
3008
3009         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3010
3011 2006-03-28  Graham Percival  <gpermus@gmail.com>
3012
3013         * THANKS: update for 2.9, add section for Documentation helpers.
3014
3015         * Documentation/topdocs/NEWS.tely: compile fix.
3016
3017         * Documentation/user/ basic-notation, global, advanced-notation,
3018         examples.itely: minor fixes from mailist.
3019
3020 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3021
3022         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3023         note heads. 
3024
3025         * lily/ttf.cc (print_trailer): use it.
3026
3027         * lily/pango-font.cc (get_unicode_name): new function.
3028
3029         * lily/ttf.cc (make_index_to_charcode_map): move function from
3030         open-type-font.cc
3031         (print_trailer): substitute uniXXXX name if applicable. 
3032
3033         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3034         (pango_item_string_stencil): use it to generate uniXXXX names.
3035
3036         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3037         note heads, for uniform widths in shape note output.
3038         (overdone_heads): hmm. remove them again.
3039
3040         * scripts/lilypond-book.py (output): add links to filenames.
3041
3042         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3043
3044         * lily/note-collision.cc (get_clash_groups): only consider when
3045         Note_column::dir <> CENTER. 
3046
3047         * scripts/lilypond-book.py (get_option_parser): init output_name
3048         to ''. 
3049
3050 2006-03-24  Graham Percival  <gpermus@gmail.com>
3051
3052         * Documentation/topdocs/NEWS.tely: add @end itemize
3053
3054         * Documentation/user/ global, advanced-notation: minor
3055         stuff from mailist.
3056
3057 2006-03-23  Graham Percival  <gpermus@gmail.com>
3058
3059         * Documentation/user/ lilypond.tely, music-glossary,
3060         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3061
3062 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3063
3064         * mf/GNUmakefile: don't install .enc files.
3065
3066         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3067
3068         * VERSION (PATCH_LEVEL): bump to 2.9.0
3069
3070 2006-03-22  Graham Percival  <gpermus@gmail.com>
3071
3072         * Documentation/user/advanced-notation.itely: minor fixes
3073         from mailist.
3074
3075 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3076
3077         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3078
3079         * branch lilypond_2_8
3080
3081 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3082
3083         * scripts/lilypond-book.py (samefile): new function, for windoze
3084         compatibility.
3085
3086 2006-03-21  Graham Percival  <gpermus@gmail.com>
3087
3088         * ly/engraver-init.ly: add info about StaffGroup.
3089
3090 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3091
3092         * input/regression/stem-direction-context.ly: idem.
3093
3094         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3095
3096         * THANKS: add Mats.
3097
3098         * input/regression/page-layout-twopass.ly: comment out \markup so
3099         tweak-file is left.
3100
3101         * lily/instrument-name-engraver.cc (finalize): add to instrument
3102         name global System. This also fixes chopped instrument names, but
3103         doesn't crash when there are slurs/beams.
3104
3105         * lily/slur-configuration.cc (add_score): disallow negative slur
3106         scores.
3107         
3108 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3109
3110         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3111
3112         * lily/instrument-name-engraver.cc (process_music): kludge: add
3113         InstrumentName spanner to axis group of left bound. Fixes chopped
3114         off instrument names in EPS images.
3115
3116         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3117
3118         * scripts/abc2ly.py (option_parser): update to 2.7.40
3119
3120 2006-03-20  Graham Percival  <gpermus@gmail.com>
3121
3122         * THANKS: move small doc contributors to SUGGESTIONS.
3123
3124         * Documentation/user/ basic-notation, advanced-notation,
3125         global: small changes from mailist.
3126
3127 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3128
3129         * Documentation/user/advanced-notation.itely (Text marks): update
3130         for new rehearsalMarkAlignSymbol convention.
3131
3132         * VERSION (PATCH_LEVEL): bump version.
3133
3134         * input/test/instrument-name-align.ly: new file.
3135
3136         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3137
3138         * input/test/instrument-name-align.ly: new file. Document how to
3139         align instrument names.
3140
3141         * lily/mark-engraver.cc: remove properties.
3142
3143         * scm/define-context-properties.scm
3144         (all-user-translation-properties): remove align symbol properties
3145         for barnumber/reh. mark.
3146
3147         * lily/break-align-interface.cc (self_align_callback): new
3148         interface, new function. Look at complete alignment. This handles
3149         tunable break alignments in case break-align-symbols are missing.
3150
3151         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3152
3153         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3154
3155         * python/convertrules.py (conv): mark/bar number alignment rule.
3156
3157         * lily/break-align-interface.cc (calc_positioning_done): also
3158         store offset from last visible break-alignment to its
3159         neighbor. This makes alignment on non-visible objects more reliable.
3160
3161         * po/lilypond.pot (Module): ran po-replace.
3162
3163         * input/regression/tie-single-manual.ly (Module): new file.
3164
3165         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3166         look at has_manual_position_.
3167         (from_ties): set has_manual_position_ if tie has staff-position set.
3168
3169         * lily/tuplet-bracket.cc (calc_positions): idem.
3170
3171         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3172         doesn't span time.
3173
3174 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3175
3176         * scm/define-markup-commands.scm (smallCaps): new markup command
3177         for turning a text to small caps using smaller font size and upper
3178         casing.
3179
3180 2006-03-17  Graham Percival  <gpermus@gmail.com>
3181
3182         * Documentation/user/ examples, instrument-notation,
3183         advnaced-notation: minor fixes from mailist.
3184
3185 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3186
3187         * Documentation/user/tutorial.itely (First steps): change example
3188         to verbatim.  
3189
3190 2006-03-17  Graham Percival  <gpermus@gmail.com>
3191
3192         * Documentation/user/ examples, advanced: minor changes from mailist.
3193
3194         * THANKS: add Geoff Horton, for documentation stuff.
3195
3196 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3197
3198         * python/lilylib.py (system): revert have_select kludge.
3199
3200         * Documentation/user/tutorial.itely (Commenting input files):
3201         update version numbers in doc. 
3202
3203         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3204         bound-padding to multi-measure-interface
3205
3206 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3207
3208         * input/test/engraver-example.ily: update version number.
3209
3210         * VERSION (PACKAGE_NAME): release 2.7.39
3211
3212         * lily/note-spacing.cc (get_spacing): heighten threshold where
3213         accidentals/arpeggios influence previous spacing fully.
3214
3215         * lily/rest.cc (y_offset_callback): only use direction if
3216         staff-position wasn't set before.
3217
3218         * lily/bar-number-engraver.cc: add support for
3219         barNumberAlignSymbol. 
3220         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3221
3222         * lily/pointer-group-interface.cc (set_ordered): new function. 
3223         (add_unordered_grob): new function.
3224
3225         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3226         to ordered, unless the opposite has been proved.  This fixes
3227         random reordering of large object groups across linebreaks,
3228         eg. beams.
3229
3230         * lily/main.cc (do_chroot_jail): printf format fix.
3231
3232         * lily/tie-formatting-problem.cc (generate_configuration):
3233         multiply y-shift for dot with direction.
3234  
3235         * scm/define-markup-commands.scm (note-by-number): put (magstep
3236         size) in y-attach too.
3237
3238         * Documentation/topdocs/NEWS.tely (Top): show override.
3239
3240         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3241         direction for stems.
3242         
3243 2006-03-15  Graham Percival  <gpermus@gmail.com>
3244
3245         * Documentation/user/ changing-defaults, global: minor
3246         fixes from mailist.
3247
3248 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3249
3250         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3251
3252         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3253         breakable items after uniformly stretched notes.
3254
3255         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3256         outline with outer edge of note heads. This prevents infinity
3257         problems with tied whole notes.
3258
3259         * scripts/lilypond-book.py (do_file): use os.popen
3260
3261         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3262
3263 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3264
3265         * Documentation/user/invoking.itely: Add ragged-right to bug report
3266         guidelines.
3267
3268 2006-03-14  Graham Percival  <gpermus@gmail.com>
3269
3270         * Documentation/user/global.itely: small fix from mailist.
3271
3272 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3273
3274         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3275         file descriptor returned by tempfile.mkstemp() when writing
3276         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3277         on mingw.
3278
3279 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3280
3281         * po/fi.po: newline bugfix.
3282
3283 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3284
3285         * scm/paper.scm (paper-alist): Rounding fixes.
3286
3287 2006-03-13  Graham Percival  <gpermus@gmail.com>
3288
3289         * Documentation/user/ changing-defaults, instrument-notation,
3290         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3291
3292 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3293
3294         * po/fi.po: update.
3295
3296 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3297
3298         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3299         mailto: to http:// 
3300
3301         * python/lilylib.py (print_environment): move ps_page_count to
3302         lilypond-book.py
3303
3304 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3305
3306         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3307
3308         * scm/framework-ps.scm (embed-document): new function. Use to
3309         embed PFA files.
3310
3311         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3312
3313 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3314
3315         * Documentation/user/instrument-notation.itely (Setting simple
3316         songs): Added \book{...} around the full example, so the separate
3317         markups are included in the printed example. 
3318
3319 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3320
3321         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3322         tmphandle.
3323
3324         * python/lilylib.py (system): rewrite system() using
3325         subprocess. Remove >& redirection trickery.
3326
3327 2006-03-11  Graham Percival  <gpermus@gmail.com>
3328
3329         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3330         notation-appendices.itely: minor fixes from mailist.
3331
3332 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3333
3334         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3335         unsplit man also needs images.
3336
3337         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3338
3339         * VERSION (PACKAGE_NAME): 2.7.38 released.
3340
3341 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3342
3343         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3344         log in output dir.
3345
3346 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3347
3348         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3349         respects the Score.skipTypesetting property.
3350         
3351 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3352
3353         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3354         Prolog. No %%EOF after CFF file.
3355
3356 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3357         
3358         * lily/constrained-breaking.cc (get_max_systems): used to return a
3359         much too big value
3360         (combine_demerits): use pointers to reduce copying data
3361         (calc_subproblem): idem
3362         (get_page_penalty): add page turn penalties
3363         
3364 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3365
3366         * Documentation/user/invoking.itely (Invoking lilypond): better
3367         explanation of -e usage.
3368
3369         * lily/main.cc (main_with_guile): don't append to
3370         init_scheme_code_string
3371
3372         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3373
3374         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3375
3376         * scripts/convert-ly.py (do_options): don't print help for
3377         --show-rules rule.
3378
3379         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3380         @code and @example. Update from texinfo.tex from CVS.
3381
3382 2006-03-08  Graham Percival  <gpermus@gmail.com>
3383
3384         * Documentation/user/scheme-tutorial.itely: clarifies distances
3385         measured in staff-spaces.
3386
3387 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3388
3389         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3390         consider[k] is true.
3391
3392         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3393
3394         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3395         consider columns that have originals.  Unifies spacing for mm
3396         rests around line breaks.
3397
3398         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3399         (set_text_rods): idem.
3400         (calculate_spacing_rods): new function: share code between
3401         set_text_rods and set_spacing_rods.
3402         (set_text_rods): take extents of bounds into account.  
3403
3404 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3405
3406         * Documentation/user/basic-notation.itely (Writing music in
3407         parallel): don't use relative.
3408
3409 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3410
3411         * ly/music-functions-init.ly (Module): add shiftDurations
3412
3413         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3414
3415         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3416
3417         * ly/engraver-init.ly: init vocalName to nil.
3418
3419 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3420
3421         * scm/music-functions.scm (music->make-music): bugfix,
3422         KeyChangeEvents are now handled correctly.
3423
3424         * scripts/lilypond-book.py: Add --debug option.
3425
3426 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3427
3428         * python/lilylib.py: add tempfile.
3429
3430 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3431
3432         * VERSION (PACKAGE_NAME): release 2.7.37
3433
3434         * python/lilylib.py (ps_page_count): remove make_ps_images().
3435         (ps_page_count): remove mkdir_p
3436         (system): remove cleanup_temp.
3437         (exit): remove lilypond_version_(check)
3438         (error_log): remove pseudo_filter_p
3439         remove read_pipe
3440         remove cp_to_dir
3441         remove identify
3442
3443         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3444         use __main__
3445
3446         * lily/accidental-engraver.cc (make_standard_accidental): only add
3447         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3448
3449         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3450         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3451         Make incompatibilities.
3452
3453         * scm/output-ps.scm (grob-cause): replace backslashes by /
3454         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3455
3456 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3457
3458         * cygwin/GNUmakefile: Install fixes.
3459
3460         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3461
3462         * lily/note-head.cc (head::get_balltype): Compile fix.
3463
3464         * flower/file-name.cc (dos_to_posix): Flower string fix.
3465
3466 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3467
3468         * python/lilylib.py: pychecker cleanups.
3469
3470         * scripts/lilypond-book.py
3471         (Lilypond_snippet.output_print_filename): pychecker cleanups
3472
3473         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
3474
3475         * python/lilylib.py (underscore): remove identify() , warranty()
3476
3477         * ps/music-drawing-routines.ps: change Border routine for GSView
3478         compatibility.
3479
3480         * lily/stem.cc (height): use quantize-positions.  This triggers
3481         set_stem_lengths, so scripts on beamed stems are handled correctly.
3482
3483         * lily/side-position-interface.cc (aligned_side): check if edges
3484         of script are inside staff. Fixes accent of edge of the staff.
3485
3486         * input/regression/staccato-pos.ly: more examples.
3487
3488         * stepmake/aclocal.m4 (depth): fix bashism.
3489
3490         * lily/lyric-combine-music-iterator.cc: move from
3491         new-lyric-combine-iterator.cc
3492         (process): add pending_grace_lyric_ member to delay lyrics on
3493         grace notes.
3494
3495         * lily/system-start-text.cc (print): suicide if we don't have any
3496         elements. Fixes hara kiri'd instrument names.
3497
3498         * scripts/mup2ly.py (Module): remove.
3499
3500 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3501
3502         * Documentation/user/global.itely (A single music expression):
3503         close @lilypond properly
3504
3505         * lily/volta-bracket.cc (modify_edge_height): change from
3506         after_line_breaking_callback. Suicide last bracket if appropriate.
3507  
3508         * python/lilylib.py: strip getopt support
3509
3510         * scripts/etf2ly.py (do_options): use optparse
3511
3512         * scripts/midi2ly.py: optparse, strip lilylib copy. 
3513
3514         * scripts/abc2ly.py (voices): use optparse.
3515
3516         * stepmake/stepmake/generic-vars.make: new function absdir.
3517
3518         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
3519
3520         * scripts/lilypond-book.py (find_file): use global_options for
3521         include path
3522
3523         * scm/ps-to-png.scm (ps-page-count): prevent null characters
3524         entering C code.
3525
3526 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3527
3528         * python/lilylib.py (get_global_option): ughness for extracting
3529         global options from lilylib.
3530         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
3531
3532         * scripts/lilypond-book.py (get_option_parser): use optparse for
3533         option handling.  Put options in global_options variable.
3534
3535 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
3536
3537         * Documentation/index.html.in: clarify.
3538
3539 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3540
3541         * scm/layout-page-layout.scm (write-page-breaks): add a
3542         music-system-heights property to the page layout output.
3543
3544         * scm/page.scm (make-page-stencil): take footer into account when
3545         computing the 'space-left page property
3546         (annotate-space-left): take footer into account when annonating
3547         space left.
3548
3549 2006-02-28  Graham Percival  <gpermus@gmail.com>
3550
3551         * Documentation/user/ advanced-notation, global: more (final)
3552         docs for music expressions, removed special fermatas.
3553
3554 2006-02-27  Graham Percival  <gpermus@gmail.com>
3555
3556         * Documentation/user/ basic-notation, global: minor changes
3557         from mailist.
3558
3559 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3560
3561         * scm/framework-ps.scm:         
3562         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
3563         layer for inf? and nan? from framework-ps to lily-library.
3564
3565 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3566
3567         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
3568         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
3569
3570         * buildscripts/substitute-encoding.py (Module): remove file.
3571
3572         * mf/GNUmakefile: more PFA strippage.
3573
3574         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
3575
3576         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
3577         generation
3578
3579         * scm/framework-ps.scm: remove font name munging.
3580
3581         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
3582
3583 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3584
3585         * scm/markup.scm (define-markup-command): change
3586         def-markup-command to define-markup-command
3587
3588         * scm/music-functions.scm (define-music-function): change
3589         def-music-function to define-music-function.
3590
3591         * python/convertrules.py (conv): rules for def-music-function
3592         and def-markup-commands
3593
3594         * Documentation/user/programming-interface.itely,
3595         input/no-notation/display-lily-tests.ly,
3596         input/regression/lily-in-scheme.ly,
3597         input/regression/markup-user.ly,
3598         input/regression/music-function.ly, input/regression/tie-chord.ly,
3599         scm/fret-diagrams.scm, ly/music-functions-init.ly,
3600         ly/gregorian-init.ly: use new macro names (define-music-function,
3601         define-markup-command).
3602
3603 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3604
3605         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
3606         (output): add comments to lp-book latex output.
3607
3608         * GNUmakefile.in (footifymail): use gmane address for webpage bug
3609         address.
3610
3611 2006-02-23  Graham Percival  <gpermus@gmail.com>
3612
3613         * Documentation/user/ tutorial, global: minor changes.
3614
3615 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3616
3617         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
3618         blocks (for make 3.80)
3619
3620         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
3621         \notemode so that user should not have to explicitely type it.
3622
3623         * scm/define-music-display-methods.scm: various
3624         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
3625         constructs)
3626
3627         * input/no-notation/display-lily-tests.ly: new tests for
3628         \applyOutput and \applyContext
3629
3630 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3631
3632         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
3633         changed it slightly so that the number of systems returned by
3634         solve () will be the same as the last value passed to resize
3635         (). I've also added more documentation, removed casts, fixed style
3636         problems and put in some recovery if constraints aren't satisfied."
3637
3638 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
3639
3640         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
3641         for emacs < 22 compatibility.
3642         (count-rexp): Use it.
3643         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
3644         substring juggling (Milan Zamazal).
3645
3646 2006-02-23  Graham Percival  <gpermus@gmail.com>
3647
3648         * Documentation/user/ basic-notation, advanced-notation,
3649         global.itely, invoking.itely, tutorial,itely:
3650         minor fixes from mailist.
3651
3652         * scm/define-markup-commands.scm: improve docs of \filled-box.
3653
3654 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
3655
3656         * Documentation/index.html.in: changes concern the previous release.
3657
3658         * input/regression/+.ly: cultivate typographical terminology.
3659
3660 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3661
3662         * scm/define-grob-interfaces.scm (parentheses-interface): add
3663         padding to parentheses-interface.
3664
3665         * Documentation/user/GNUmakefile: remove $(CROSS) support from
3666         Documentation/user/GNUmakefile. Use --disable-documentation for that.
3667
3668         * VERSION (PATCH_LEVEL): release 2.7.36
3669
3670         * lily/slur.cc: add avoid-slur (ugh.)
3671         
3672         * lily/slur-configuration.cc (fit_factor): oops, skip point if
3673         intersection gets smaller. This fixes slurs over extreme points.
3674
3675         * lily/melody-engraver.cc (stop_translation_timestep): ignore
3676         stems with neutral-direction set.
3677
3678         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
3679
3680         * lily/open-type-font.cc (load_table): format error.
3681
3682         * lily/change-iterator.cc (process): format fix.
3683
3684         * flower/include/international.hh (_f): idem.
3685
3686         * flower/include/std-string.hh: add format printf attribute.
3687
3688         * scm/define-grobs.scm (all-grob-descriptions): height of all
3689         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
3690
3691         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
3692         ambitus lines.
3693
3694         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
3695
3696 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
3697
3698         * input/regression/: upgraded syntax for some files.
3699
3700         * THANKS: Add bughunters.
3701
3702 2006-02-22  Graham Percival  <gpermus@gmail.com>
3703
3704         * Documentation/user/ invoking.itely, advanced-notation.itely,
3705         global.itely: long-awaited "let's make chapter 10 not suck"
3706         update.  Rearrange chapter 10; now called "global issues",
3707         addresses file structure, etc.  Some info from other files
3708         moved into global.itely.
3709
3710 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3711
3712         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
3713         catch trill-span-event notes.
3714
3715         * Documentation/user/examples.itely (Ancient notation templates): typo.
3716         (Jazz combo): typo.
3717
3718         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
3719
3720         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
3721
3722         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
3723
3724         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
3725
3726         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
3727         froum Laissez_vibrer_engraver.
3728
3729         * ly/declarations-init.ly (repeatTie): add \repeatTie
3730
3731         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
3732
3733         * scm/define-grob-properties.scm (all-user-grob-properties): add
3734         head-direction property.
3735
3736         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
3737         from_lv_ties. Take head direction argument.
3738
3739         * lily/semi-tie-column.cc: rename from
3740         laissez-vibrer-tie-column.cc. Rename class too.
3741
3742         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
3743         class too.
3744
3745         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
3746
3747         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
3748         0 case.
3749         (find_breaks): idem.
3750
3751 2006-02-21  Graham Percival  <gpermus@gmail.com>
3752
3753         * Documentation/user/advanced-notation.itely: fixed make-moment]
3754         example.
3755
3756         * Documentation/user/basic-notation.itely: more clarification to
3757         transpose.
3758
3759 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3760
3761         * lily/include/constrained-breaking.hh (class
3762         Constrained_breaking): new file.
3763
3764         * lily/constrained-breaking.cc (resize): new file.
3765
3766         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
3767
3768         * Documentation/user/advanced-notation.itely (Clusters): insert
3769         end ignore too.
3770
3771         * lily/tie-column.cc (calc_positioning_done): support for
3772         tie-score debugging
3773
3774         * lily/tie-formatting-problem.cc
3775         (generate_extremal_tie_variations): factor out.
3776         (score_ties_configuration): annotate all tie 
3777         (print_ties_configuration): new routine.
3778         (generate_configuration): nudge extremal ties outside of the head
3779         Y extents.
3780         (score_ties_configuration): oops. convert to staff-space before
3781         determining position symmetry.
3782
3783 2006-02-20  Graham Percival  <gpermus@gmail.com>
3784
3785         * Documentation/user/*-notation.itely: misc minor editing,
3786         shifting doc sections around.
3787
3788         * Documentation/user/*-notation-itely, global.itely,
3789         changing-defaults.itely: added new stuff from NEWS.
3790
3791 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
3792
3793         * po/fi.po: update.
3794
3795 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3796
3797         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
3798         lilypond --verbose for lp-book.
3799
3800         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3801         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
3802
3803         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
3804         $(buildscript-dir) iso. absolute depth.
3805
3806         * buildscripts/genicon.py (dir): thinko.
3807
3808         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
3809
3810 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
3811
3812         * scm/output-lib.scm: swap darkcyan/darkyellow
3813
3814         * THANKS: Add bughunters.
3815
3816 2006-02-19  Graham Percival  <gpermus@gmail.com>
3817
3818         * Documentation/user/programming-interfaces.itely: fixed example.
3819
3820         * Documentation/user/instrument-notation.itely: fix @{ @}.
3821
3822         * scm/script.scm: add avoid-slur for \open.
3823
3824 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3825
3826         * lily/tie-formatting-problem.cc (score_configuration): use
3827         sliding score for min-length. 
3828
3829         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
3830         spaghetti for icons.
3831
3832         * buildscripts/genicon.py (program_name): new file.
3833
3834         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
3835         in outline too.  
3836         (generate_configuration): for small ties, also look for collisions
3837         at Y + DIR*h + DELTA_Y.
3838         (get_variations): consider variation for dot positions too.
3839
3840         * lily/side-position-interface.cc (aligned_side): take abs for
3841         quantized rounded position. Fixes tenuto below staff.
3842
3843         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
3844         markers when necessary.
3845
3846         * lily/program-option.cc (internal_set_option): add
3847         strict_infinity_checking option.
3848
3849         * scm/output-lib.scm (cyan): swap yellow and cyan.
3850
3851 2006-02-19  Graham Percival  <gpermus@gmail.com>
3852
3853         * darwin.patch: trivial linenumber update.
3854
3855         * Documentation/user/ {various}: `\context foo = named' changed
3856         to `\new foo = "name"' in docs.
3857
3858 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3859
3860         * scm/stencil.scm (annotate-y-interval): use it.
3861
3862         * scm/lily-library.scm (interval-sane?): new function.
3863
3864         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
3865         tfm_checksum stuff.
3866
3867         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
3868         common refpoint.
3869
3870         * flower/include/std-vector.hh (iterof): add iterof macro.
3871
3872         * lily/enclosing-bracket.cc (width): new function.
3873
3874         * lily/align-interface.cc (align_elements_to_extents): reinstate
3875         warning.
3876
3877 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
3878
3879         * Documentation/index.html.in: fix spelling: thankyous.
3880
3881 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3882
3883         * lily/lyric-hyphen.cc: typo.
3884
3885 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3886
3887         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
3888         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
3889         builds don't work. 
3890
3891         * VERSION: release 2.7.35
3892
3893         * lily/beam.cc (get_default_dir): oops. Take abs () for
3894         extremes[DOWN].
3895         (get_default_dir): use extreme position criterion only in absence
3896         of forced stem directions.
3897
3898         * VERSION (PATCH_LEVEL): bump VERSION.
3899
3900         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
3901         dependencies. Necessary for -jX builds.  
3902
3903 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
3904
3905         * lily/relocate.cc (setup_paths): Yet another const fix.
3906
3907 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3908
3909         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
3910
3911         * lily/relocate.cc (setup_paths): oops.
3912
3913 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
3914
3915         * Documentation/index.html.in: order links: html before PDF.
3916
3917 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3918
3919         * lily/tie-column-format.cc (Module): remove.
3920
3921         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
3922
3923         * lily/text-spanner.cc (print): idem.
3924
3925         * lily/dynamic-text-spanner.cc (print): only print line if longer
3926         than dash-period.
3927
3928         * lily/auto-change-iterator.cc (change_to): formatting.
3929
3930         * lily/beam.cc (get_default_dir): take extreme note head as input
3931         for stem direction.
3932
3933         * lily/tie.cc (get_default_dir): only look directions for visible
3934         stems. 
3935
3936         * lily/side-position-interface.cc (aligned_side): oops. Don't
3937         mutiply with direction. This fixes quantized (staccato, tenuto)
3938         scripts below notes.
3939
3940         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
3941         direction. Fixes c-lyrics-center-align.ly
3942
3943 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3944
3945         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
3946         constructor.
3947
3948         * lily/std-string.cc:
3949         * lily/include/std-vector.hh (split_string): Move and rename from
3950         lily/include/misc.hh, lily/misc.cc.  Update callers.
3951
3952 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3953
3954         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
3955
3956 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3957
3958         * flower/test-file.cc: New file.
3959
3960         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
3961         libraries.
3962
3963         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
3964
3965 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3966
3967         * flower/include/file-storage.hh: remove file.
3968
3969         * lily/include/midi-item.hh (class Midi_track): idem.
3970
3971         * lily/include/source.hh (class Sources): idem.
3972
3973         * lily/include/performance.hh (class Performance): use vector
3974         iso. Cons<>
3975
3976         * flower/include/cons.hh (class Cons): remove file.
3977
3978         * flower/include/flower-proto.hh: remove template cruft.
3979
3980         * lily/include/font-metric.hh: use size_t not vsize for indices.
3981
3982         * flower/include/flower-proto.hh (Module): remove std-vector.hh
3983         from proto.
3984
3985         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
3986
3987         * lily/include/paper-book.hh (class Paper_book):
3988         make get_system_specs() public.
3989
3990         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
3991         the force=10000 case if we don't have a current-best. 
3992
3993         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
3994         vsize 
3995
3996         * flower/include/flower-proto.hh: remove outdated templates.
3997
3998         * scm/page.scm: use annotate-spacing
3999
4000 2006-02-15  Graham Percival  <gpermus@gmail.com>
4001
4002         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4003
4004         * THANKS: moved Erlend Aasland to contributors.
4005
4006 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4007
4008         * config.hh.in: remove HAVE_PANGO_16
4009
4010         * lily/tuplet-bracket.cc (calc_positions): multiply with
4011         staff-space for beam case. This fixes tuplets+beams on scaled
4012         staves.
4013
4014         * config.hh.in: remove all Kpathsea related defines.
4015
4016         * lily/dot-column.cc (side_position): reach stem via dots->
4017         head->stem. Inspect all stems for dot collisions. 
4018
4019         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4020         stem handling.
4021
4022         * lily/bar-number-engraver.cc (process_music): document function
4023         of whichBar.
4024
4025         * lily/score.cc (default_rendering): add pscore, not systems
4026         themselves.
4027
4028         * lily/paper-book.cc (get_system_specs): separate generation of
4029         titles and systems.
4030
4031         * flower/include/std-vector.hh: don't include config.hh
4032
4033 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4034
4035         * flower/include/std-vector.hh: Better wrapper compatibility with
4036         std::vector.
4037
4038         * flower/include/flower-proto.hh: Remove cheap forward declaration
4039         attempts.
4040
4041         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4042
4043 2006-02-14  Graham Percival  <gpermus@gmail.com>
4044
4045         * Documentation/user/invoking.itely: add warning about command line.
4046
4047 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4048
4049         * lily/include/lily-proto.hh: add Prob, rm Page.
4050
4051         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4052
4053         * VERSION: release 2.7.34
4054
4055         * lily/relocate.cc (framework_relocation): show canary if
4056         GHOSTSCRIPT_VERSION undefined.
4057
4058         * GNUmakefile.in: remove $(VERSION) symlink.
4059
4060         * lily/relocate.cc (setup_paths): add + 
4061
4062 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4063
4064         * Documentation/index.html.in: specify sizes for all big HTML pages.
4065
4066 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4067
4068         * config.hh.in: remove @FRAMEWORKDIR@
4069
4070         * lily/system-start-text.cc (get_stencil): new file: separate out
4071         system-start-delimiter text support.
4072
4073         * input/**ly: replace \context with \new where appropriate.
4074         
4075         * THANKS: add Don.
4076
4077         * lily/slur-scoring.cc (get_base_attachments): use
4078         robust_relative_extent. This fixes problems with empty paper-columns. 
4079
4080 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4081
4082         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4083
4084         * scm/define-music-properties.scm (all-music-properties):
4085         create-new property.
4086
4087         * lily/context-specced-music-iterator.cc (construct_children):
4088         inspect 'create-new property iso. magical $uniqueContextId context
4089         id.
4090
4091         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4092
4093         * lily/context-key-manager.cc (Module): new file. Encapsulate
4094         object key generation.
4095
4096         * lily/include/context-key-manager.hh (Module): new file.
4097
4098 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4099
4100         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4101         names vertically
4102
4103         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4104         options.
4105         (reloc_b): excise --enable-framework-dir
4106
4107         * lily/relocate.cc (framework_relocation): use getenv
4108         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4109
4110 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4111
4112         * flower/include/std-string.hh: 
4113         * flower/include/std-vector.hh: Finish std:: conversion; move
4114         flower extensions from std:: namespace.  Update users.
4115
4116         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4117         their expansion to vector<*>.  Update users.
4118
4119 2006-02-10  Graham Percival  <gpermus@gmail.com>
4120
4121         * Documentation/user/invoking.itely: add example to File structure.
4122
4123         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4124         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4125
4126 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4127
4128         * ly/paper-defaults.ly: typo.
4129
4130         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4131         set_parent() for parentheses. This will make it show up in bbox
4132         calculations.
4133
4134         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4135         ly:grob-common* functions.
4136
4137         * lily/grob-scheme.cc (LY_DEFINE):
4138         ly:grob-common-refpoint-of-array: new function 
4139         ly:grob-common-refpoint: new function 
4140         ly:grob-relative-coordinate: new function 
4141
4142         * lily/instrument-name-engraver.cc (process_music): use
4143         Text_interface::is_markup(). This fixes \markup on instrument names.  
4144
4145         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4146         for ties and slurs.
4147
4148         * lily/slur.cc (print): idem.
4149
4150         * lily/tie.cc: add line-thickness for ties. 
4151
4152 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4153
4154         * scm/output-svg.scm: Document diversion from GNU coding standards
4155         as a workaround for a bug in Microsoft Internet Explorer.
4156
4157 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4158
4159         * lily/instrument-name-engraver.cc (process_music): use
4160         is_markup() iso. is_string()
4161
4162         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4163
4164         * lily/percent-repeat-engraver.cc (process_music): only look at
4165         main_part_ for % repeats.
4166
4167         * lily/stem-tremolo.cc (get_beam_translation): new function.
4168         (calc_slope): new function.
4169         (height): don't use real slope.
4170
4171 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4172
4173         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4174         new connect-to-neighbor, control-points and staff-padding
4175         properties to make ligature brackets showing up again.
4176
4177 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4178
4179         * VERSION: release 2.7.33
4180
4181         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4182         too many.
4183
4184         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4185         remove applyOutput example.
4186         (Objects connected to the input): document \tweak, \parenthesize
4187
4188         * lily/relocate.cc (prefix_relocation): allow "current"
4189         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4190         changing VERSION in a lily tree less painful.
4191
4192         * input/regression/parenthesize.ly: new file. 
4193
4194         * scm/output-lib.scm (parenthesize-element): new function.
4195
4196         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4197
4198         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4199
4200         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4201         cause: accidentals are caused by note heads, not note events. 
4202
4203 2006-02-08  Graham Percival  <gpermus@gmail.com>
4204
4205         * darwin.patch: small patch from Erlend, thanks!
4206
4207         * Documentation/user/basic-notation.itely: add stem-neutral example.
4208
4209         * Documentation/user/putting.itely: clarifications.
4210
4211 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4212
4213         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4214         note, add more guidelines to what should go into NEWS.
4215
4216         * input/sakura-sakura.ly: document how to override font.
4217
4218         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4219
4220 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4221
4222         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4223
4224 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4225
4226         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4227         convertrules.  Add explicit grouping, needed for python2.2.
4228
4229 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4230
4231         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4232
4233 2006-02-07  Graham Percival  <gpermus@gmail.com>
4234
4235         * Documentation/user/global.itely: fix line-width in (text) docs.
4236
4237         * Documentation/user/lilypond-book.itely: same.
4238
4239 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4240
4241         * VERSION (PACKAGE_NAME): release 2.7.32
4242
4243         * Documentation/topdocs/NEWS.tely (Top): document new variable
4244         naming.
4245
4246         * flower/include/array.icc (Message): remove file.
4247
4248         * flower/include/std-vector.hh: make sure vsize and VPOS are
4249         defined for binary_search_bounds().
4250
4251         * flower/std-string.cc (std): add to_string(long unsigned).
4252
4253         * configure.in (gui_b): excise std_string option.
4254         (gui_b): excise std_vector option.
4255
4256         * flower/string.cc (Module): excise flower array & string
4257
4258         * flower/include/std-string.hh: excise flower string.
4259
4260         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4261
4262         * python/convertrules.py (lilypond_version_re_str): require
4263         only numbers and dots in \version string.
4264
4265 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4266
4267         * lily/system-start-delimiter.cc (print): allow style = text too.
4268
4269         * lily/system-start-delimiter-engraver.cc
4270         (acknowledge_system_start_text): new function, also add add to
4271         support of system-start-text (instrument names). This fixes
4272         instrument names on piano staves.
4273
4274         * lily/instrument-name-engraver.cc: rewrite. Use
4275         system-start-delimiter approach. This save memory and cpu.
4276
4277         * scm/define-grobs.scm (all-grob-descriptions): remove
4278         instrument-name from break-alignment.
4279
4280         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4281
4282 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4283
4284         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4285         jobserver going.
4286
4287         * configure.in (std_vector): On by default.
4288
4289         * lily/include/font-metric.hh:
4290         * lily/include/tfm-reader.hh: 
4291         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4292         Update users.
4293
4294         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4295
4296 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4297
4298         * VERSION (PACKAGE_NAME): 2.7.31
4299
4300         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4301         EPS edge at 0, but take minimum with left-overshoot. This fixes
4302         cut off system start delims. 
4303
4304         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4305         hack: add to axis group if not added yet. This fixes hara kiri'd
4306         piano staves.
4307
4308         * lily/hara-kiri-group-spanner.cc
4309         (force_hara_kiri_in_y_parent_callback): fix signatures.
4310
4311         * lily/hairpin.cc (print): check next hairpin to see whether or
4312         not to be continuing.
4313
4314 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4315
4316         * Remove trailing whitespace from makefiles.
4317         
4318         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4319         for earlier gcc.
4320
4321         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4322
4323         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4324
4325         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4326
4327         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4328
4329         * configure.in: Use it.
4330
4331 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4332
4333         * scm/music-functions.scm (pitch-of-note): new function.
4334
4335         * ly/music-functions-init.ly: add \octave and \addquote
4336
4337         * lily/parser.yy (music_function_chord_body): softcode \octave.
4338         (lilypond_header): softcode \addquote
4339
4340 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4341
4342         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4343         array.hh, parray.hh at all.  Getting ready to flip the
4344         configure default.
4345
4346         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4347
4348         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4349         a bit.
4350
4351         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4352
4353 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4354
4355         * flower/include/array.hh: typo. 
4356
4357 2006-02-02  Graham Percival  <gpermus@gmail.com>
4358
4359         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4360
4361 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4362
4363         * flower/include/pqueue.hh: Derive from std::vector.
4364
4365         * flower/include/parray.hh: Conform to std::vector interface.
4366         Update users.
4367
4368 2006-02-02  Graham Percival  <gpermus@gmail.com>
4369
4370         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4371
4372 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4373
4374         * flower/file-path.cc (is_file): remove if 0 section.
4375
4376         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4377         selecting afii61352.
4378
4379 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4380
4381         * flower/include/std-vector.hh (boundary): Oops, reverse.
4382
4383         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4384         remove superfluous `d'.
4385
4386         * flower/include/std-vector.hh (boundary, top): Detach from class.
4387         Remove empty vector shell.
4388
4389         * flower/include/array.hh (reverse, swap): Detach from class.
4390         Update users.
4391         
4392         * flower/include/std-vector.hh
4393         * flower/include/array.hh (concat): Globally change to insert ().
4394
4395         
4396         * flower/include/std-vector.hh
4397         * flower/include/parray.hh
4398         * flower/include/array.hh (elem, elem_ref): Globally replace by
4399         at ().
4400
4401 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4402
4403         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4404
4405         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4406         anticipate on identifier substitutions.
4407
4408 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4409
4410         * flower/include/std-vector.hh (insert): Remove, replace by
4411         std::vector interface.  Update callers.
4412
4413         * flower/include/array.icc (insert): Change signature to
4414         match std::vector interface.
4415         
4416         * flower/include/array.icc (vector_sort): Bugfix.
4417
4418 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4419
4420         * lily/parser.yy (output_def_head_with_mode_switch): new
4421         production. Result: dashes and underscores may be used in the
4422         \paper block.
4423
4424         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4425
4426         * python/convertrules.py (conv): oops. One slash too much.
4427
4428 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4429
4430         * flower/include/std-vector.hh (sort): Remove, replace by
4431         ::vector_sort.  Update callers.
4432
4433         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4434         (sort): Bugfix.
4435
4436         * flower/test-std.cc (vector_sort): New test.
4437
4438 2006-02-01  Graham Percival  <gpermus@gmail.com>
4439
4440         * Documentation/user/putting.itely: fixes from Erik.
4441
4442 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4443
4444         * flower/test-std.cc: Add simple unit test for vector migration.
4445
4446         * stepmake/stepmake/test*: Unit test support.
4447
4448         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4449         update callers.
4450
4451         * flower/include/array.hh (begin, end): Add.
4452         (del, get): Remove.
4453
4454 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4455
4456         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4457         std::string not String. 
4458
4459         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4460         iso UINT_MAX.
4461
4462         * lily/prob.cc (Prob): copy type_ too.
4463
4464         * lily/lily-guile.cc (mangle_cxx_identifier): new
4465         function. Class_bla::foo_bar_[px] ->
4466         ly:class-bla::foo-bar[?!]. Changes throughout
4467
4468 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4469
4470         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4471
4472         * lily/beam.cc (calc_direction): take dir from visible stem in
4473         degenerate case.
4474
4475 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4476
4477         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
4478         Fix -1, >=0 boundary checks for unsigned vsize.
4479
4480         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
4481         loop for unsigned vsize.
4482
4483         * configure.in (--enable-std-vector): New option.
4484         (--enable-std-string): On by default.
4485
4486         * flower/include/std-vector.hh: New file.  Enable switch to
4487         std::vector, update client code.
4488
4489 2006-01-30  Graham Percival  <gpermus@gmail.com>
4490
4491         * scm/document-translation.scm: clarify "this context is also
4492         known as".  Thanks, Werner!
4493
4494         * Documentation/user/putting.itely: small fixes from Don Blaheta.
4495
4496         * Documentation/user/invoking.itely: small fix from Don.
4497
4498 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4499
4500         * scm/lily.scm (define-scheme-options): rename option
4501         preview-include-book-title to book-title-preview
4502         (define-scheme-options): move force-eps-font-include (from paper
4503         block) to eps-font-include -d option.
4504
4505         * VERSION (PATCH_LEVEL): release 2.7.30
4506
4507         * input/bach-schenker.ly (staffPiano): new file.
4508
4509         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
4510
4511         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
4512         credits to Nicolas.
4513
4514         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
4515
4516         * ps/lilyponddefs.ps: remove start-system, stop-system,
4517         start-page fluff. This saves putting { } code on the stack, fixing
4518         stack overflows when including EPS files.
4519
4520 2006-01-29  Graham Percival  <gpermus@gmail.com>
4521
4522         * Documentation/user/putting.itely: minor fixes (comments on -devel).
4523
4524 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4525
4526         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
4527
4528 2006-01-28  Graham Percival  <gpermus@gmail.com>
4529
4530         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
4531
4532 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4533
4534         * input/mutopia/claop.py: Update.
4535
4536 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4537
4538         * input/regression/completion-heads.ly (texidoc): fix.
4539
4540         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
4541
4542         * lily/tie-formatting-problem.cc
4543         (set_ties_config_standard_directions): use abs iso fabs for ints.
4544
4545         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
4546
4547         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
4548         little less than noteheight, to prevent overlaps in chords.
4549
4550         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
4551         head, and fudge stem-attachment.
4552
4553         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
4554
4555         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
4556
4557 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
4558
4559         * lily/main.cc (main): Debugging aid: catch exceptions.
4560
4561         * flower/std-string.cc (to_string): Robustification.  Fixes midi
4562         output with std::string.
4563
4564 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4565
4566         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
4567
4568 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4569
4570         * Fix -DSTRING_UTILS_INLINED.
4571
4572 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4573
4574         * VERSION (PATCH_LEVEL): release 2.7.29
4575
4576         * lily/relocate.cc (setup_paths): mingw uses std string too.
4577
4578         * lily/*.cc: various fixes for substr(ARG).
4579
4580         * lily/sustain-pedal.cc (print): 
4581
4582         * flower/file-name.cc (slashify): use std strings.
4583
4584         * flower/string-convert.cc: remove publib.h
4585
4586         * scm/define-markup-commands.scm (verbatim-file): new markup
4587         command \verbatim-file
4588
4589         * Documentation/topdocs/NEWS.tely: fixup URLs
4590
4591         * input/regression/alignment-vertical-manual-setting.ly (Module):
4592         new file.
4593
4594         * lily/align-interface.cc (align_elements_to_extents): overwrite
4595         translations with numbers in alignment-offsets from left bound
4596
4597         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
4598         (page-translate-systems): new function: take into account Y-offset.
4599
4600         * Documentation/topdocs/NEWS.tely (Top): document new features.
4601
4602         * input/regression/page-layout-manual-position.ly (Module): new
4603         file.
4604
4605 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4606
4607         * flower/file-path.cc (path::parse_path): Oops.
4608
4609         * Finish std::string interface.  For now, use std:: marker
4610         throughout for easy s/r.
4611
4612 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4613
4614         * Documentation/user/putting.itely (Score is a single musical
4615         expression): typo.
4616         (Score is a single musical expression): more typos.
4617
4618         * scm/page.scm (annotate-space-left): thinko.
4619         (annotate-page): more thinkos.
4620
4621 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4622
4623         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
4624         for different \score blocks separately.
4625         (post-process-pages): put write-page-layout into paper block.
4626
4627         * lily/output-def.cc (get_parser): new file.
4628
4629         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
4630         file.
4631
4632         * lily/include/output-def.hh (class Output_def): add parser_ member.
4633
4634         * input/regression/page-layout-twopass.ly (Module): new file.
4635
4636         * scm/lily.scm: remove cpp hack.
4637
4638         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
4639
4640 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4641
4642         * GNUmakefile.in (c-clean): New target.
4643
4644         * flower/include/std-string.hh: String/std::string compatibility:
4645         Use NPOS for `not found' (iso -1), use ssize for length () and pos
4646         type.
4647
4648         * flower/rational.cc: 
4649         * flower/include/rational.hh: 
4650
4651         * flower/offset.cc: 
4652         * flower/include/offset.hh: 
4653
4654         * flower/interval.cc: 
4655         * flower/include/interval.hh: 
4656
4657         * flower/string-convert.cc: 
4658         * flower/include/string-convert.hh: Use std::string [interface].
4659         Update callers.
4660
4661 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
4662
4663         * Documentation/index.html.in: clean up.
4664
4665 2006-01-25  Graham Percival  <gpermus@gmail.com>
4666
4667         * Documentation/user/putting.itely: another new untested doc section.
4668
4669 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4670
4671         * scm/layout-page-layout.scm (write-page-breaks): write
4672         \spacingTweaks #ALIST. Handle grace timing.
4673
4674         * scm/: more imports.
4675
4676         * scm/page.scm (make-page): add footer/header.
4677         (annotate-space-left): revise: only take page argument.
4678         (layout->page-init): new function.
4679
4680         * scm/layout-page-layout.scm (write-page-breaks): preliminary
4681         version of the system/spacing/linebreak hack writing to the output
4682
4683         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
4684         ly:make-prob.
4685
4686         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
4687         ly:spanner-bound
4688
4689 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4690
4691         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
4692
4693         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
4694
4695         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
4696         handling to page.scm
4697
4698         * lily/prob-scheme.cc (LY_DEFINE): new file.
4699         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
4700
4701         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
4702         prob functions.
4703
4704         * lily/music.cc (derived_mark): derive Music from Prob.
4705
4706         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
4707
4708         * lily/prob.cc (Module): Implement Prob (Property Object), object
4709         with shared and r/w property alists.  
4710
4711         * lily/include/prob.hh (Module): new file. Declare Prob.
4712
4713         * flower/string.cc: remove is_empty().
4714
4715         * flower/include/string.hh (class String): remove String:: qualifier.
4716
4717         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
4718         substitute appropriate functions.
4719
4720         * flower/include/string.hh (class String): remove to_str0 and
4721         is_empty(). S&R everywhere.
4722
4723 2006-01-23  Graham Percival  <gpermus@gmail.com>
4724
4725         * Documentation/user/basic-notation.itely: add hairpin
4726         after-linebreak tweak to commonprop.
4727
4728         * Documentation/user/putting.itely: added two new sections.
4729
4730 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4731
4732         * flower/international.cc: 
4733         * flower/include/international.hh: 
4734
4735         * flower/getopt-long.cc: 
4736         * flower/include/getopt-long.hh: Use std::string [interface].
4737         Update callers.
4738
4739         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
4740
4741         * stepmake/stepmake/executable-rules.make: Add dependency on
4742         module libraries.
4743
4744 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
4745
4746         * flower/file-path.cc: 
4747         * flower/include/file-path.hh: Use std::string [interface].
4748         Update callers.
4749
4750         * flower/direction.cc: 
4751         * flower/axis.cc: Unused.  Remove.
4752
4753         * configure.in (--enable-std-string): New option.
4754
4755         * flower/std-string.cc: 
4756         * flower/include/std-string.hh: New file.
4757
4758         * flower/file-name.cc[STD_STRING]:
4759         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
4760
4761 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4762
4763         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
4764
4765         * scm/define-markup-commands.scm (with-dimensions):
4766         with-dimensions markup command.
4767
4768         * input/test/font-table.ly: use it.
4769
4770         * lily/open-type-font.cc (glyph_list): new function.
4771
4772         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
4773
4774         * lily/ttf.cc: remove ly:font-glyph-list scheme function
4775
4776 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4777
4778         * ly/music-functions-init.ly (parallelMusic): new music function
4779         for parallel music entry.
4780
4781         * scm/define-music-properties.scm (all-music-properties): new
4782         'void music property
4783
4784         * scm/music-functions.scm (ly:music-message): make public, to be
4785         used in music function definitions
4786
4787         * scm/lily-library.scm (collect-music-for-book): discard music
4788         when the 'void property is set.
4789
4790 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4791
4792         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
4793
4794         * mf/GNUmakefile: idem.
4795
4796         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
4797
4798         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
4799
4800         * Documentation/user/notation-appendices.itely (The Feta font):
4801         use it.
4802
4803         * input/test/font-table.ly: new file. Generate font table within lily.
4804
4805         * Documentation/user/notation-appendices.itely (The Feta font):
4806         use new font-table.ly file. 
4807
4808         * stepmake/stepmake/install-out-targets.make
4809         (local-install-outfiles): only create directory if
4810         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
4811
4812 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4813
4814         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
4815
4816         * VERSION (PACKAGE_NAME): release 2.7.28
4817
4818         * scm/framework-ps.scm (write-preamble): use it to pick exactly
4819         the right font from a Mac dfont.
4820         (write-preamble): don't forget directory, only look at files.
4821
4822         This fixes problems with TTF files in dfonts that don't match
4823         their PostScript names.
4824          
4825         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
4826         PS name from TTF font.
4827
4828         * input/regression/tie-manual.ly: document new feature.
4829
4830         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
4831
4832         * VERSION (MY_PATCH_LEVEL): bump to .28
4833
4834         * Documentation/user/basic-notation.itely (Ties): add tie examples
4835         refs.
4836
4837         * lily/tie-formatting-problem.cc (score_ties_configuration):
4838         symmetry penalties for outer ties.
4839
4840 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4841
4842         * lily/tie-formatting-problem.cc (generate_configuration) 
4843         (set_manual_tie_configuration): skip non-pair manual
4844         tie-configuration, so you can set individual ties as
4845
4846           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
4847
4848         * input/regression/tie-chord.ly: use generateTiePattern to
4849         simplify file.
4850
4851         * lily/tie-formatting-problem.cc (peak_around): new function.
4852         (score_configuration): use sliding criterion for staff line collisions. 
4853         (score_configuration): idem for dot collisions.
4854         (generate_configuration): use separate stem_gap for gap to stem.
4855
4856         * lily/include/tie-formatting-problem.hh (struct Tie_details):
4857         separate penalty factors for x and y distance.
4858         (struct Tie_details): separate penalties for tip and center line collisions.
4859
4860 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
4861
4862         * lily/tie-formatting-problem.cc (generate_configuration): make
4863         large ties avoid stafflines in the horizontal section.
4864         (score_configuration): use softcoded penalties
4865         (score_aptitude): idem.
4866
4867         * lily/tie-helper.cc (from_grob): softcode tie details
4868
4869         * lily/staff-symbol-referencer.cc (on_staff_line): new function
4870
4871         * lily/staff-symbol-referencer.cc (on_line): rename from
4872         on_staffline 
4873
4874 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4875
4876         * ly/music-functions-init.ly: remove duplicate tag.
4877
4878         * lily/include/*.hh: GCC 4.1 fixes.
4879
4880 006-01-16  Erlend Aasland  <erlenda@gmail.com>
4881
4882         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
4883
4884         * scm/define-music-types.scm: fix bug in desc. string
4885         for OverrideProperty
4886
4887 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
4888
4889         * scripts/lilypond-book.py: bugfix
4890
4891         * scm/define-music-types.scm: fix typos.
4892
4893 2006-01-14  Graham Percival  <gpermus@gmail.com>
4894
4895         * Documentation/user/ basic-notation.itely, global.itely,
4896         advanced-notation.itely, instrument-notation.itely: small
4897         additions (bugs and commonly tweaked properties).
4898
4899 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4900
4901         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
4902         detection of mingw build.
4903         (MINGW_BUILD): opps.
4904
4905 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4906
4907         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
4908         i686-mingw32.
4909
4910 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4911
4912         * scm/music-functions.scm (skip->rest): add skip->rest
4913
4914 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4915
4916         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
4917         explicitly.
4918
4919         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
4920         config dirs. Aids debugging. 
4921         (display_config): also display config files.
4922
4923 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4924
4925         * VERSION: release 2.7.27
4926
4927         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
4928         for determining bar size.
4929
4930         * lily/staff-symbol.cc (print): place lines at distance line-positions
4931
4932         * scm/define-grob-properties.scm (all-user-grob-properties): add
4933         line-positions.
4934
4935         * lily/staff-symbol.cc (height): new function.
4936
4937         * input/regression/staff-line-positions.ly:  new file.
4938
4939 2006-01-06  Graham Percival  <gpermus@gmail.com>
4940
4941         * input/test/add-staccato.ly: remove reference to old file.
4942
4943 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4944
4945         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
4946         lilypond binary too.
4947
4948 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4949
4950         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
4951
4952 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4953
4954         * scripts/midi2ly.py: Bugfix: Declare datadir.
4955
4956         * make/ly-rules.make:
4957         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
4958         that seems to be gone). Fixes make web.
4959
4960         * The grand 2005-2006 replace.
4961
4962         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
4963
4964 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4965
4966         * make/lilypond-vars.make: set LILYPOND_BINARY variable
4967         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
4968         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
4969         like -dgs-font-load.
4970
4971         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
4972         remove absolute path to lilypond binary.
4973         
4974 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
4975
4976         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
4977
4978 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4979
4980         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
4981
4982         * mf/GNUmakefile: remove broken dvips map symlink.
4983
4984 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4985
4986         * lily/main.cc: 
4987         * configure.in: Cosmetic fixes.
4988
4989 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
4990
4991         * Documentation/user/music-glossary.tely (Pitch names): Added
4992         Spanish pitch names and durations, thanks to Ernesto Gancedo
4993
4994 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4995
4996         * scm/lily.scm (define-scheme-options): use quasi-quote for option
4997         init. Fixes verbose printing of .scm files.
4998
4999         * stepmake/aclocal.m4: add spaces before - options.
5000         
5001 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5002
5003         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5004         of path search in local block variable.
5005
5006 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5007
5008         * configure.in (NCSB_DIR): --enable-ncsb-dir
5009         (LINK_GXX_STATICALLY): denko.
5010
5011         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5012
5013         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5014         use locate to find c059033l.pfb. 
5015         
5016 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5017
5018         * lily/tie-formatting-problem.cc
5019         (problem::generate_base_chord_configuration): Use my_round (was
5020         round).
5021
5022         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5023         do not invoke mbrtowc.
5024
5025         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5026
5027 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5028
5029         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5030
5031 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5032
5033         * Documentation/user/invoking.itely (svg): revise.
5034
5035 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5036
5037         * lily/lexer.ll: use sourcefilename iso. renameinput.
5038
5039 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5040
5041         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5042         <PostScriptName>.ttf instead of c059XXXttf.
5043
5044         * lily/program-option.cc (LY_DEFINE): special support for
5045         --verbose, so it works before option init too.
5046  
5047         * mf/GNUmakefile (local-install): oops.
5048
5049         * lily/lyric-hyphen.cc (print): oops.
5050
5051         * buildscripts/pfx2ttf.fontforge: new file.
5052         
5053         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5054         ($(outdir)/%.ttf): new rule. 
5055
5056         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5057         to LyricHyphen.
5058
5059         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5060         font-size
5061
5062 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5063
5064         * VERSION: release 2.7.26
5065         
5066         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5067
5068 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5069
5070         * lily/font-config.cc (init_fontconfig): verbosity.
5071
5072         * THANKS: add Muziekacademie Lede. 
5073
5074         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5075         (print_score_setup): new function
5076         (convert): read part definition to output staves properly.
5077
5078         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5079         Music_xml notes.
5080
5081         * python/musicexp.py (Output_printer.__init__): use _ in data
5082         members.
5083         (Output_printer.unformatted_output): new function: no formatting,
5084         but count braces.
5085         (Duration.get_length): remove isinstance() checks for
5086         Output_printer everywhere.
5087
5088         * input/regression/lyrics-bar.ly (texidoc): add
5089         Separating_line_group_engraver.
5090
5091 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5092
5093         * lily/relocate.cc (framework_relocation): New function,
5094         factored from set_relocation ().
5095         (prefix_relocation): Rename from set_relocation ().
5096         (setup_paths): Use it.
5097
5098 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5099
5100         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5101         numbers. Patch by Erlend Aasland.
5102
5103 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5104
5105         * lily/font-config.cc (init_fontconfig): print warning if cache
5106         file is not existant.
5107
5108         * lily/main.cc: don't use #ifdef but #if
5109
5110 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5111
5112         * lily/grob-property.cc (internal_set_property): don't abort on
5113         calculation-in-progress.
5114
5115         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5116
5117         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5118         connect-to-neighbor property not connect-to-other
5119
5120         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5121         (LY_DEFINE): oops. don't forget protection.
5122
5123         * flower/parse-afm.cc (Module): strip AFM handling completely.
5124
5125         * lily/stencil-expression.cc: idem.
5126
5127         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5128
5129         * lily/function-documentation.cc (ly_add_function_documentation):
5130         use static member iso. Protected_scm
5131
5132         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5133
5134         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5135
5136 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5137
5138         * lily/relocate.cc (set_env_dir): New function.
5139         (set_relocation): Use it to fix setting PANGO_PREFIX.
5140
5141 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5142
5143         * input/regression/stem-direction-context.ly: remove rest.
5144
5145         * lily/melody-engraver.cc (process_music): restart for bar lines.
5146         (acknowledge_slur): restart for slurs.
5147
5148 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5149
5150         * Documentation/user/invoking.itely: describe how to view SVG 
5151         output using Inkscape which replace embedded fonts with OTF fonts.
5152
5153 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5154
5155         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5156
5157 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5158
5159         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5160         comment.
5161
5162 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5163
5164         * VERSION (PACKAGE_NAME): release 2.7.25
5165
5166         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5167
5168         * input/regression/stem-direction-context.ly: new file.
5169
5170         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5171
5172         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5173         on rest.
5174
5175         * ly/engraver-init.ly: add Melody_engraver
5176
5177         * lily/beam.cc (calc_direction): use default-direction
5178         iso. get_default_direction()
5179
5180         * scm/define-grob-properties.scm (all-user-grob-properties): add
5181         default-direction property.
5182
5183         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5184
5185         * lily/stem.cc (calc_default_direction): remove
5186         Stem::get_default_direction, use default-direction with callback
5187         instead.
5188
5189         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5190
5191         * lily/melody-engraver.cc: new file. Acknowledge stems for
5192         interpolated stem directions. 
5193
5194         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5195
5196         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5197
5198         * lily/slur-configuration.cc (fit_factor): more robust check for
5199         point in curve X-extent.
5200
5201         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5202         (outside_slur_callback): check for 'outside avoidance.
5203
5204         * lily/slur-configuration.cc (score_extra_encompass): don't use
5205         bound->column() == avoid->column() for checking extents, as this
5206         doesn't work for accidentals. 
5207
5208         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5209         DynamicText hardcoding.
5210
5211         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5212         crash if bound stem is NULL
5213
5214         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5215         pedals.
5216
5217 2005-12-22  Graham Percival  <gpermus@gmail.com>
5218
5219         * scm/define-markup-commands.scm: typo.  @code{\raise}
5220         => @code{\\raise}.
5221
5222         * darwin.patch: now used again, includes a
5223         required patch from fink.
5224
5225 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5226
5227         * po/TODO: mention gtranslator along with kbabel.
5228         * po/fi.po: update translations.
5229
5230 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5231
5232         * lily/relocate.cc (setup_paths): Bugfix.
5233
5234 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5235
5236         * lily/slur-configuration.cc (score_extra_encompass): don't use
5237         "avoid" choice for avoid-slur.
5238
5239         * stepmake/bin/install.py (dest): don't create existing dir.
5240
5241 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5242
5243         * stepmake/bin/install.py: Remove file before copying.
5244
5245         * config.make.in: 
5246         * stepmake/aclocal.m4: Do not substitute INSTALL.
5247
5248 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5249
5250         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5251         depend on link-tree.
5252
5253         * lily/relocate.cc (setup_paths): only check path for non-absolute
5254         dir without directory part.
5255
5256         * flower/file-name.cc (is_absolute):  new method.
5257         (is_absolute): check root_ too.
5258
5259 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5260
5261         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5262         relocation code.  Oops, don't comment out too much.
5263
5264         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5265         iso itself.
5266
5267         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5268         compile.
5269
5270 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5271
5272         * .cvsignore: Add install-sh.
5273
5274         * autogen.sh (srcdir): Typo.
5275
5276 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5277
5278         * autogen.sh (srcdir): urg. Touch install-sh.
5279
5280         * stepmake/bin/install-sh (Module): remove.
5281
5282         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5283
5284         * lily/include/relocate.hh: new file.
5285
5286         * lily/relocate.cc: new file. Contain relocation logic.
5287
5288         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5289         (main): read LILYPOND_VERBOSE as the first thing.
5290
5291         * stepmake/aclocal.m4: remove INSTALL variable.
5292
5293         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5294         separate target for making font symlinks.
5295         (documentation-dir): use $(if $(findstring )) for switching off
5296         Documentation.
5297
5298         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5299         something if DOCUMENTATION is no.
5300
5301 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5302
5303         * VERSION: release 2.7.24
5304
5305         * lily/script-column-engraver.cc (stop_translation_timestep):
5306         delay adding to script-column.
5307
5308         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5309
5310         * python/convertrules.py (conv): rule for number-visibility
5311
5312         * lily/slur-configuration.cc (score_extra_encompass): different
5313         distance measure for avoid and inside avoidance.
5314         (score_extra_encompass): use 1/(distance+eps) as penalty.
5315
5316         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5317         encompass objects for generating slur curves.
5318
5319         * lily/slur.cc: use details iso. slur-details property.
5320
5321         * input/regression/slur-tuplet.ly: new file.
5322
5323         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5324
5325         * flower/include/offset.hh (class Offset): new operator /=
5326
5327         * lily/tuplet-number.cc (print): new file, new interface.
5328
5329         * scm/define-grob-properties.scm (all-user-grob-properties):
5330         remove number-visibility property.
5331
5332         * lily/tuplet-bracket.cc (calc_control_points): new function
5333         (calc_connect_to_neighbors): new function.
5334         (print): remove text handling for tuplet numberdef.
5335
5336         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5337         TupletNumbers too. 
5338
5339         * lily/lily-guile.cc (robust_scm2booldrul): new function
5340
5341         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5342
5343         * lily/tuplet-bracket.cc (calc_position_and_height): use
5344         staff-padding to control whether tuplet brackets are over staves.
5345
5346         * lily/grob.cc (suicide): clear dim_caches_.
5347
5348         * lily/dimension-cache.cc (clear): new function.
5349
5350         * lily/grob.cc (extent): swap order of min-extent and extent
5351         calculations. This fixes hara kiri staves. 
5352
5353 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5354
5355         * lily/main.cc: Nitpick: relocation is not based on path, but on
5356         directory (location).
5357
5358 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5359
5360         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5361
5362         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5363
5364         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5365
5366         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5367
5368         * stepmake/stepmake/generic-vars.make (Module): idem.
5369
5370         * stepmake/stepmake/executable-targets.make (default): use it.
5371
5372         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5373
5374         * make/GNUmakefile: don't install make rules.
5375
5376         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5377         slashes.
5378         (prepend_env_path): more verbosity.
5379
5380 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5381
5382         * GNUmakefile.in: add dir argument for find command.
5383
5384         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5385         fixes weird line numbers for point & click.
5386
5387         * lily/source-file.cc (get_counts): init line/column/char counts.
5388
5389 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5390
5391         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5392
5393 2005-12-16  Graham Percival  <gpermus@gmail.com>
5394
5395         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5396         minor fixes from Fredric.  Thanks!
5397
5398 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5399
5400         * ly/music-functions-init.ly: add \bar and \clef music function 
5401
5402         * lily/lily-lexer.cc: idem.
5403
5404         * lily/parser.yy (FIXME): remove BAR and CLEF.
5405
5406 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5407
5408         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5409
5410         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5411         function arguments too
5412
5413         * lily/main.cc (set_relocation): new function.
5414
5415         * scripts/musicxml2ly.py (convert): add \version
5416
5417         * lily/tie.cc: remove get_default_attachments()
5418
5419         * VERSION (PACKAGE_NAME): release 2.7.23
5420         
5421         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5422         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5423
5424         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5425
5426         * lily/tie-formatting-problem.cc (score_ties): new function
5427         (get_variations): new function. Try flipping dirs for collisions.
5428         (generate_optimal_chord_configuration): new function. 1-opt search
5429         for better configuration.
5430
5431         * lily/tie-configuration.cc: new file.
5432
5433         * lily/tie.cc: junk Tie::get_configuration()
5434
5435         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5436         (score_ties_configuration): new function.
5437         (generate_ties_configuration): new function.
5438         (generate_base_chord_configuration): new function.
5439         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5440         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5441
5442         * input/regression/tie-dot.ly: new file.
5443
5444         * lily/tie-formatting-problem.cc (score_configuration): score
5445         tie/dot collisions.
5446
5447         * lily/tie-helper.cc (get_transformed_bezier): new function
5448
5449         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5450
5451         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5452         -undefined suppress iso. -framework Python 
5453
5454         * scm/define-grobs.scm (all-grob-descriptions): set
5455         springs-and-rods (thanks Joe Neeman!)
5456
5457 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5458
5459         * input/no-notation/display-lily-tests.ly (test): 
5460         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5461         changed from \tag #'(a b) to \tag #'a \tag #'b
5462
5463 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5464
5465         * Documentation/topdocs/NEWS.tely: strip out-www.
5466
5467         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5468
5469         * config.make.in (AR): add AR and RANLIB
5470
5471         * flower/libc-extension.cc: include cassert
5472
5473         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
5474         darwin check.
5475
5476 2005-12-11  Graham Percival  <gpermus@gmail.com>
5477
5478         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
5479
5480         * stepmake/stepmake/python-modules-vars.make: define
5481         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
5482
5483         * THANKS: added Johannes Schindelin.
5484
5485 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5486
5487         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
5488
5489         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5490         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
5491
5492         * lily/parser.yy: reorganize file layout.
5493
5494         * ly/music-functions-init.ly: add tweak music function.
5495
5496         * lily/grob-info.cc (ultimate_music_cause): new function:
5497         recursively lookup causes. 
5498
5499         * lily/parser.yy (chord_body_element): allow music functions for
5500         post-events, allow music functions for chord elements. 
5501  
5502         * lily/font-config-scheme.cc (display_fontset): add cast.
5503
5504         * python/convertrules.py (FatalConversionError.sub_syms): \tag
5505         #'(a b) -> \tag #'a \tag #'b rule.
5506
5507         * python/musicexp.py (Output_printer.dump_version): new function
5508
5509 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5510
5511         * lily/parser.yy (FIXME): remove \tag
5512         (FIXME): remove tag_music() function.
5513
5514         * lily/lily-lexer.cc: remove \tag
5515
5516         * ly/music-functions-init.ly: define music-function "tag"
5517
5518         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
5519
5520 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5521
5522         * VERSION (PATCH_LEVEL): release 2.7.22
5523
5524         * input/regression/lyric-hyphen-retain.ly: renew.
5525
5526         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
5527         grob
5528
5529         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
5530         iso. minimum-length property for rods.
5531
5532         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
5533         LyricSpace item to keep lyrics spaced apart.
5534
5535         * ly/engraver-init.ly: remove Separating_line_group_engraver
5536
5537         * Documentation/user/music-glossary.tely: do setfilename before
5538         music-glossary.
5539
5540 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
5541
5542         * Documentation/user/lilypond-book.itely: use `,´ after xref:
5543         See xref documentation, for example.
5544
5545 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5546
5547         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
5548         pending_skip iso. ly_voice[-1]
5549         (main): add if __main__ for debugging.
5550
5551         * python/musicxml.py (Accidental.__init__): new class.
5552
5553         * scripts/musicxml2ly.py (progress): new function
5554         (musicxml_key_to_lily): don't barf on modeless keys.
5555         (create_skip_music): new function.
5556         (musicxml_spanner_to_lily_event): new function. Handle beams too.
5557         (musicxml_note_to_lily_main_event): new function.
5558
5559         * python/musicexp.py (Music.__init__): add comment field.
5560         (NestedMusic.append): new routine.
5561         (SequentialMusic.print_ly): print comment.
5562         (ArpeggioEvent.ly_expression): new class
5563         (BeamEvent.ly_expression): new class
5564         (NoteEvent.__init__): support for cautionary/forced accs.
5565
5566         * lily/lookup.cc (slur): normal order for array loop.
5567
5568         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
5569         to 0.0.
5570
5571         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
5572         collapsed.
5573
5574 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
5575
5576         * scm/music-functions.scm: Make phrasing slurs follow voice direction
5577
5578         * scripts/lilypond-book.py: Introduce option
5579             --preserve-line-breaks, for usage with srcltx
5580
5581 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5582
5583         * scm/output-lib.scm (print-circled-text-callback): draw circle
5584         around text using make-circle-markup.
5585
5586         * Documentation/user/*: strip out-www from file names.
5587
5588 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
5589
5590         * Documentation/user/lilypond.tely (direntry): remove empty lines;
5591         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
5592
5593 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5594
5595         * Documentation/user/GNUmakefile: idem.
5596
5597         * Documentation/user/macros.itexi: strip out-www
5598
5599         * python/rational.py: python 2.3 compat.
5600
5601         * VERSION (PATCH_LEVEL): release 2.7.21
5602
5603         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
5604         option formatting, lilypond style.
5605
5606         * python/musicexp.py: grab from Ikebana: a library for composing
5607         ly music expressions. 
5608         (Output_printer): class for advanced .ly printing.
5609         (eg. tupletting) 
5610
5611         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
5612         convert to pythonesque structure.
5613
5614         * python/rational.py: PD rational number class.
5615
5616         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
5617
5618 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
5619
5620         * lily/part-combine-iterator.cc: Minor bugfix
5621         
5622         * THANKS: Update bughunters
5623
5624 2005-12-02  Werner Lemberg  <wl@gnu.org>
5625
5626         * mf/README: Document process for proper mf2pt1 conversion.
5627
5628         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
5629         overlapping.
5630
5631         * mf/feta-harmonica.mf: Removed.  Unused.
5632
5633 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5634
5635         * scripts/lilypond-book.py (do_file): fix thinkos.
5636
5637 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5638
5639         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
5640         ($(outdir)/parser.cc): 
5641         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
5642
5643 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
5644
5645         * ly/titling-init.ly (tagline): it should be a space between
5646         "Music engraving by LilyPond" and the version number.
5647
5648 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5649
5650         * VERSION (PACKAGE_NAME): release 2.7.20
5651
5652 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5653
5654         * scm/define-markup-commands.scm (pad-to-box): new markup command.
5655
5656         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
5657         1.0.
5658         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
5659
5660 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5661
5662         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
5663
5664         * kpath-guile/: remove directory
5665
5666         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
5667         file. Encapsulate kpathsea using commandline tools.
5668
5669         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
5670         kpathsea) module.
5671
5672 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
5673
5674         * Documentation/user/advanced-notation.itely (Setting automatic
5675         beam behavior): Correct a few typos. Thanks to David Bobroff.
5676
5677         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
5678         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
5679
5680 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5681
5682         * scripts/*.py: gmane address for bugs.
5683
5684 2005-11-28 Pal Benko <benkop@freestart.hu>
5685         
5686         * make/ly-rules.make: add -f switch to mv
5687
5688         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
5689
5690         * lily/bar-line.cc: interpret it
5691
5692 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5693
5694         * configure.in (--disable-documentation): New switch.
5695
5696         * GNUmakefile.in: Use it.
5697
5698         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
5699
5700 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5701
5702         * scripts/lilypond-book.py (do_file): search chunks for
5703         \\begin{document}
5704
5705         * GNUmakefile.in: add copy step in between so we can lose the
5706         out-www directories.
5707
5708 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5709
5710         * lily/pango-font.cc (pango_item_string_stencil): put
5711         geometry.width into glyph-string too.
5712
5713 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5714
5715         * scm/define-music-display-methods.scm (RevertProperty):
5716         (OverrideProperty): Use grob-property-path property, a list of
5717         symbols, instead of grob-property, which used to be a single
5718         symbol.
5719         (BassFigureEvent): a figure can be a plain number, not necessarily a
5720         markup.
5721
5722 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5723
5724         * VERSION: release 2.7.19
5725         
5726         * lily/figured-bass-engraver.cc (process_music): check
5727         figuredBassCenterContinuations first.
5728
5729         * scm/translation-functions.scm (format-bass-figure): make double
5730         sharp larger. 
5731
5732         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
5733         determine X-parent.
5734
5735         * lily/system-start-delimiter-engraver.cc: move from
5736         Nested_system_start_delimiter_engraver, rename
5737         Nested_system_start_delimiter_engraver ->
5738         System_start_delimiter_engraver.
5739
5740         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
5741         bracket type from hierarchy.
5742
5743 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5744
5745         * lily/rest.cc (y_offset_callback): read staff-position.
5746
5747         * scm/define-grob-properties.scm (all-user-grob-properties): don't
5748         mark after-line-breaking-callback as internal.
5749
5750         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
5751
5752 2005-11-25  Werner Lemberg  <wl@gnu.org>
5753
5754         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
5755
5756 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5757
5758         * stepmake/bin/add-html-footer.py (do_file): add google
5759
5760         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
5761         staff if first_start_ is true.
5762
5763 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5764
5765         * scripts/midi2ly.py (split_track): add __repr__ members.
5766         (track_first_item): only return Item if not None. This fixes a
5767         problem when dumping a track that starts with an empty channel.
5768
5769         * python/midi.c: doc module.
5770
5771 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
5772
5773         * Documentation/user/global.itely (Creating MIDI files): Fix
5774         compilation problem.
5775
5776 2005-11-22  Graham Percival  <gpermus@gmail.com>
5777
5778         * Documentation/user/basic-notation.itely: clarify dynamic
5779         padding text.
5780
5781         * Documentation/user/advanced-notation.itely: add unicode
5782         escape control example, whatever that is.  :)
5783
5784         * Documentation/user/global.itely: added "removing dynamics
5785         from MIDI" code.
5786
5787 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5788
5789         * VERSION (PATCH_LEVEL): release 2.7.18
5790
5791         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
5792         System_start_delimiter_engraver by
5793         Nested_system_start_delimiter_engraver.
5794
5795         * lily/nested-system-start-delimiter-engraver.cc (struct
5796         Bracket_nesting_node): new class.
5797         (struct Bracket_nesting_group): new class
5798         (struct Bracket_nesting_staff): new class.
5799         (process_music): create hierarchy of grobs. This allows separate
5800         tuning of different SSDs. 
5801
5802         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
5803         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
5804
5805 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5806
5807         * lily/side-position-interface.cc (aligned_side): multiply
5808         staff_radius by 2.
5809
5810         * lily/script-engraver.cc (make_script_from_event): allow setting
5811         values to '()
5812
5813 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5814
5815         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
5816
5817         * scm/define-grobs.scm (all-grob-descriptions): new grob
5818         NestedSystemStartDelimiter.
5819
5820         * input/regression/system-start-heavy-bar.ly: new file.
5821
5822         * lily/nested-system-start-delimiter-engraver.cc: new file.
5823
5824         * lily/nested-system-start-delimiter.cc: new file.
5825
5826         * input/regression/system-start-nesting.ly: new file.
5827
5828         * scm/define-grobs.scm (all-grob-descriptions): use X side
5829         positioning for positioning braces for nested contexts.
5830
5831         * lily/system-start-delimiter.cc (print): don't divide extent by
5832         staff_space.
5833         (print): use style iso. glyph.
5834         (staff_bracket): translate glyph inside routine already.
5835
5836 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
5837
5838         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
5839         names.
5840
5841 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5842
5843         * scm/define-context-properties.scm
5844         (all-user-translation-properties): rename figuredBassFormatter
5845         from newFiguredBassFormatter.
5846
5847         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
5848
5849         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
5850
5851         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
5852
5853         * lily/beam.cc (calc_beaming): new function.
5854         (calc_shorten): new function.
5855
5856         * THANKS: add Edward Neeman.
5857
5858         * input/regression/accidental-clef-change.ly: new file.
5859
5860         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
5861
5862         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
5863
5864         * lily/clef-engraver.cc (inspect_clef_properties): reset
5865         localKeySignature for clef changes.
5866
5867 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
5868
5869         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
5870         add dummy definition that works in Linux and add information in
5871         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
5872
5873         * Documentation/user/changing-defaults.itely (Modifying context
5874         plug-ins): Add index for \with.
5875
5876         * Documentation/user/music-glossary.tely (dal segno): Updated
5877         example to version >=2.6.
5878
5879 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
5880
5881         * Documentation/user/instrument-notation.itely (Printing chord
5882         names): Reorder \chordmode and \repeat in one example.
5883
5884 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5885
5886         * VERSION: release 2.7.17
5887         
5888         * Documentation/topdocs/NEWS.tely (Top): add note about
5889         refactoring.
5890
5891         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
5892         new function. Search region of 3 positions for best tie.
5893         (score_configuration): new function.
5894         (score_aptitude): new function.
5895         (generate_configuration): new function.
5896         (get_configuration): new function.
5897         (Tie_formatting_problem): new function
5898
5899         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
5900
5901         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
5902
5903         * THANKS: add Eduardo Vieira & Ralph Little
5904
5905         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
5906         narrower.
5907
5908         * lily/include/tie-formatting-problem.hh (class
5909         Tie_formatting_problem): add Tie_details to
5910         Tie_formatting_problem. Update calling conventions.
5911
5912         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
5913         config.make.
5914
5915         * Documentation/user/lilypond.tely: remove musedata2ly entry.
5916
5917 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
5918
5919         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
5920         scm/define-context-properties.scm: Maintenance bugfix: make
5921         ligature brackets work again by removing obsolete ligature
5922         primitive callback push/pop.
5923
5924         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
5925         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
5926         value.
5927
5928 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5929
5930         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
5931         used and do not call it a path.
5932         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
5933
5934 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5935
5936         * lily/include/tie-formatting-problem.hh (class
5937         Tie_formatting_problem): new file.
5938
5939         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
5940
5941         * Documentation/misc/ChangeLog-2.3:  new file.
5942
5943         * lily/audio-staff.cc (output): degarianize.
5944
5945 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5946
5947         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
5948         Unset PYTHONOPTIMIZE.  Fixes install if set.
5949
5950 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5951
5952         * python/convertrules.py (conv): add warning about drums. 
5953
5954         * make/stepmake.make: include toplevel-version.make after config.make.
5955
5956         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
5957         also allow python2.4
5958
5959         * config.make.in (configure-srcdir): remove GXX GCC vars.
5960
5961         * stepmake/aclocal.m4: don't do non-srcdir build with
5962         symlinks. Use inclusion, so the src directory name can be changed.
5963
5964 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5965
5966         * make/mutopia-vars.make:
5967         * make/ly-vars.make: Use src-wildcard iso wildcard for source
5968         files.
5969
5970 2005-11-13  Werner Lemberg  <wl@gnu.org>
5971
5972         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
5973         but the affected path.  This ensures that the (overlapping) outlines
5974         have the same direction, which is a necessary prerequisite for
5975         FontForge's algorithm to remove overlaps.
5976         Formatting.
5977
5978         * mf/feta-haak.mf: Formatting.
5979         (draw_bracket): Slightly modify outline to avoid an unnecessary
5980         corner.
5981         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
5982         them from the affected paths.
5983
5984 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5985
5986         * mf/README: remove xpm / accordion notes.
5987
5988         * lily/tie-column-format.cc (set_chord_outline): add dots into
5989         skyline extents. This fixes tie formatting if the left head has dots.
5990
5991         * lily/tie.cc (get_configuration): only shift tie by a whole staff
5992         space inside the staff.
5993         (get_configuration): shift another position if necessary in case
5994         of left head tie  
5995
5996 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5997
5998         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
5999         buildscript-dir iso. $(depth)/buildscripts.
6000
6001         * tex/GNUmakefile (local-uninstall): remove
6002         music-drawing-routines.ps juggling.
6003
6004         * stepmake/stepmake/install-targets.make (local-install-files):
6005         prepend src-dir to install targets.
6006
6007         * lily/system-start-delimiter-engraver.cc
6008         (acknowledge_system_start_delimiter): use
6009         add_offset_callback(). This fixes translation of nested
6010         staffgroups.
6011
6012         * lily/grob-closure.cc (add_offset_callback): only encaps in
6013         simple_closure if it's a procedure.
6014         
6015         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6016         from bar-line.
6017
6018         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6019         remove-empty where pertinent.
6020
6021 2005-11-12  Graham Percival  <gpermus@gmail.com>
6022
6023         * Documentation/user/instrument-notation.itely: added
6024         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6025
6026 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6027
6028         * lily/GNUmakefile
6029         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6030         make picture in builddir, not srcdir.
6031
6032 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6033
6034         * VERSION: release 2.7.16
6035         
6036         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6037         shell arguments. 
6038
6039 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6040
6041         * Documentation/user/examples.itely (Piano templates): Minor
6042         modification to the Piano centered lyrics example.
6043
6044 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6045
6046         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6047         $BROWSER.
6048
6049         * Documentation/user/point-and-click.itely: simplify p&c
6050         instruction: don't configure firefox. Put lilypond-invoke-editor
6051         in front of the browser.
6052
6053         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6054         (run-browser): new function.
6055
6056         * lily/parser.yy (Lily_lexer): recognize Book
6057
6058         * lily/book.cc (clone): new function
6059
6060         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6061
6062 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6063
6064         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6065         Maintenance bugfix: reduce number of font related warnings by
6066         updating naming conventions for glyph-name.
6067
6068 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6069
6070         * scm/define-grobs.scm (all-grob-descriptions): add
6071         rhythmic-grob-interface to TabNoteHead.
6072
6073         * scm/layout-beam.scm (check-quant-callbacks): remove
6074         set_stem_lengths()
6075
6076 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6077
6078         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6079         alignment of centered divisiones.
6080
6081         * scm/scripts.scm (articulations): Maintenance bugfix:
6082         follow-into-staff -> quantize-position.
6083
6084         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6085         plica head in porrectus deminutus.
6086
6087 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6088
6089         * make/lilypond.fedora.spec.in (Group): add %clean section.
6090
6091         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6092         less then 1/5th of total length.  
6093         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6094
6095         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6096         events into EventChord. This fixes textspanners on mm rests. Fixes
6097         spanner-rest.ly
6098
6099         * lily/side-position-interface.cc (get_axis): read side-axis
6100         (set_axis): set side-axis.
6101
6102         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6103         properties everywhere.
6104
6105         * lily/spacing-spanner.cc (breakable_column_spacing): add
6106         average-spacing-wishes. Take maximum if not set.
6107         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6108
6109         * scm/define-grobs.scm (all-grob-descriptions): add
6110         average-spacing-wishes.
6111
6112         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6113         offset callbacks. This fixes alignment for Fingering objects.
6114
6115         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6116         space for key - timesig combination. 
6117
6118         * input/regression/script-stem-tremolo.ly (Module): new file.
6119
6120         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6121         to key sig.
6122
6123         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6124         Fixes: c-tremolo-script.ly.
6125         
6126         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6127
6128         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6129         
6130         * scm/define-grobs.scm (all-grob-descriptions): remove
6131         self-X-offset. Fixes alignment of octavate-8.
6132
6133         * scripts/lilypond-book.py (datadir): look in
6134         LILYPONDPREFIX/share/lilypond/current/
6135
6136         * GNUmakefile.in: symlink current to <VERSION>. 
6137
6138 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6139
6140         * lily/main.cc: eps listed as a backend.
6141
6142 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6143
6144         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6145
6146 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6147
6148         * lily/include/score.hh (class Score): remove texts_ member.
6149
6150         * lily/beam.cc (set_stem_lengths): force direction callback.
6151         (print): read quantized-positions, so we can force
6152         Beam::set_stem_lengths to occur.
6153         (rest_collision_callback): use common X parent. 
6154
6155 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6156
6157         * flower/file-path.cc (find): Bugfix: Return name of file found.
6158
6159         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6160         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6161         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6162
6163 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6164
6165         * flower/offset.cc: idem.
6166
6167         * mf/*.mf: update email address.
6168
6169         * lily/font-config-scheme.cc:  new file.
6170
6171         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6172
6173         * lily/*:  cs.uu.nl -> xs4all.nl
6174
6175         * VERSION (PATCH_LEVEL): release 2.7.15
6176
6177         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6178         spec files.
6179
6180         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6181
6182 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6183
6184         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6185
6186         * lily/staff-performer.cc (process_music): add audio
6187         elements. This makes MIDI instrument changes work once again.
6188
6189         * lily/main.cc (LY_DEFINE): add gmane address.
6190
6191         * lily/beam.cc: remove calc_positions()
6192
6193         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6194         original_ in private scope.
6195         (class Grob): drop pscore_ pointer, change to output_def pointer.
6196         (class Grob): cleanup class definition.
6197
6198         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6199
6200 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6201
6202         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6203         absolute.  Better diagnostics.
6204
6205         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6206         This makes lilypond run from the build directory using argv0
6207         relocation (without any --prefix or LILYPONDPREFIX setting).
6208
6209 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6210
6211         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6212
6213         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6214         with simple-closure.
6215
6216         * lily/self-aligment-interface.cc (set_align_self): new function
6217         (set_center_parent): new function.
6218
6219         * lily/side-position-interface.cc (set_axis): new function.
6220
6221         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6222         generic code. 
6223
6224         * scm/define-grob-properties.scm (all-user-grob-properties):
6225         remove [XY]-offset-callbacks add [YX]-offset
6226         
6227 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6228
6229         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6230         entry for time signatures after breathing signs. Bug report by
6231         Scott Russell.
6232
6233 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6234
6235         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6236         not absolute, make it absolute using PATH.
6237
6238 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6239
6240         * python/midi.c (initmidi): Fix type for mingw.
6241
6242 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6243
6244         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6245
6246         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6247         cross compiling.
6248
6249         * stepmake/aclocal.m4: Support python cross compiling.
6250
6251         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6252         Add mingw section.
6253
6254 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6255
6256         * scm/output-lib.scm (chain-grob-member-functions): replace
6257         chained-callback.cc
6258
6259         * lily/chained-callback.cc (Module): remove file.
6260
6261         * lily/rest-collision.cc (force_shift_callback_rest): change to
6262         chained callback.
6263
6264         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6265
6266         * lily/grob.cc (y_parent_positioning): remove axis argument from
6267         parent_positioning callbacks.
6268         (Grob): junk init code
6269         (get_offset): use generic property callbacks for
6270         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6271         (axis_parent_positioning): new function
6272         (axis_offset_symbol): new function
6273         (chain_offset_callback): new function
6274         (add_offset_callback): new function
6275
6276         * lily/beam.cc (rest_collision_callback): change signature; this
6277         is now a chained callback.
6278
6279         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6280         callback administration.
6281
6282         * lily/simple-closure.cc: new file. Smob type that allows "grob
6283         member functions",
6284
6285             (ly:make-simple-closure FUNC A B)
6286
6287         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6288         in various ways.
6289
6290         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6291         callbacks.
6292
6293         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6294
6295         * lily/rest.cc (polyphonic_offset_callback): remove.
6296
6297         * lily/script-engraver.cc (try_music): remove bool* argument.
6298
6299         * scm/script.scm (default-script-alist): set quantize-position
6300         appropriately.
6301
6302         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6303
6304         * lily/side-position-interface.cc (aligned_side): move staff
6305         position quantization from
6306         Side_position_interface::quantised_position().
6307         (quantised_position): remove
6308         
6309 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6310
6311         * input/regression/beam-quant-standard.ly: reindent, set
6312         debug-beam-quanting to #t.
6313
6314         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6315         10000 if this is a "hard" concave beam.
6316
6317         * lily/beam.cc (calc_least_squares_positions): change from
6318         calc_least_squares_dy
6319         (set_stem_lengths): this is now a chained callback.
6320
6321         * lily/context-property.cc (execute_general_pushpop_property):
6322         bugfix override with procedure should have effect.
6323
6324         * scm/define-grob-properties.scm (all-internal-grob-properties):
6325         remove position-callbacks.
6326
6327         * scm/define-grobs.scm (all-grob-descriptions): use
6328         ly:make-callback-chain for positions property.
6329
6330         * scm/layout-beam.scm (check-quant-callbacks): return list of
6331         chained callbacks.
6332
6333         * scm/lily.scm (type-p-name-alist): add callback-chain
6334
6335         * lily/lily-guile.cc (type_check_assignment): type check failure
6336         is warning not message.
6337
6338         * lily/grob-property.cc (try_callback): walk callback chain if
6339         appropriate.
6340
6341         * lily/chained-callback.cc: new file. new smob type.
6342
6343         * lily/lily-guile.cc (procedure_arity): new function.
6344
6345 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6346
6347         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6348
6349 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6350  
6351         * Documentation/user/instrument-notation.itely (Figured bass):
6352         describe new features
6353
6354 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6355
6356         * lily/beam.cc (calc_least_squares_dy): use property callback.
6357
6358         * lily/beam-concave.cc (calc_concaveness): use property callback.
6359
6360         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6361
6362 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6363
6364         * HACKING: Update.
6365
6366 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6367
6368         * scm/layout-page-layout.scm (page-headfoot): annotate
6369         pagetopspace too.
6370
6371         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6372
6373         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6374         doesn't take y-space.
6375
6376         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6377
6378 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6379
6380         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6381         src-wildcard, remove $(wildcard).
6382
6383         * po/GNUmakefile (PO_FILES): 
6384         * ps/GNUmakefile (PS_FILES): 
6385         * tex/GNUmakefile (TEX_FILES): 
6386         * cygwin/GNUmakefile (POSTINSTALLS):
6387         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6388         some wildcard calls.
6389
6390 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6391
6392         * THANKS: add Thomas Bushnell.
6393
6394 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6395
6396         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6397         (lilypond-main): Redirect to gui-main if 'gui is set.
6398
6399         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6400         for alternative installations kludging s/share/lib/g
6401         LILYPONDPREFIX. 
6402
6403         * SConstruct (libdir_package_version): Define.
6404
6405         * python/SConscript: 
6406         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6407         module in libdir.  
6408
6409 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6410
6411         * lily/main.cc: clarify --safe.
6412
6413 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6414
6415         * VERSION: release 2.7.14
6416         
6417         * Documentation/user/*.itely: remove minimumVerticalExtent.
6418
6419         * scm/define-grobs.scm (all-grob-descriptions): remove
6420         RemoveEmptyVerticalGroup
6421
6422         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6423
6424         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6425         compile on MOSX
6426
6427         * python/convertrules.py (conv): add rules.
6428
6429         * lily/grob.cc: remove is_empty()
6430
6431         * lily/grob-property.cc: remove add_to_list_property().
6432
6433         * scripts/convert-ly.py (datadir): add prefix switching hack to
6434         .py too.
6435
6436         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6437         space-function tweak.
6438
6439         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6440
6441         * scm/define-grob-properties.scm (all-user-grob-properties):
6442         remove callback property.
6443
6444         * lily/include/grob.hh (class Grob): remove property_callbacks_
6445         member. Properties of procedure type are assumed to be callbacks.
6446
6447         * lily/ligature-engraver.cc (override_stencil_callback):
6448         rewrite. Use noteHeadLigaturePrimitive as source.
6449
6450         * scm/define-grob-properties.scm (all-internal-grob-properties):
6451         remove ligature-primitive-callback
6452
6453         * lily/include/dimension-cache.hh (class Dimension_cache): make
6454         class, with Grob as friend.
6455
6456         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6457         has_extent_callback()
6458
6459         * scm/translation-functions.scm (format-new-bass-figure): read
6460         figuredBassPlusDirection
6461
6462         * scm/define-context-properties.scm
6463         (all-user-translation-properties): add figuredBassPlusDirection.
6464
6465         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6466
6467         * lily/align-interface.cc (set_ordered): new function.
6468
6469         * lily/grob.cc (flush_extent_cache): rewrite.
6470
6471         * lily/dimension-cache.cc (Dimension_cache): cache extent as
6472         Interval pointer directly.
6473
6474         * lily/main.cc (setup_paths): insert extra / .
6475         (setup_paths): junk cff entry.
6476
6477         * lily/font-config.cc (init_fontconfig): only add type1 / otf
6478         directories.
6479
6480         * lily/axis-group-engraver.cc (finalize): remove
6481         extraVerticalExtent, minimumVerticalExtent verticalExtent.
6482
6483         * lily/grob.cc (Grob): don't set extent from ctor.
6484         (extent): use property callbacks. 
6485
6486         * lily/axis-group-interface.cc: remove set_axes() function.
6487
6488         * lily/grob-property.cc (del_property): new function.
6489
6490 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6491
6492         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
6493         
6494 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6495
6496         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
6497
6498 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6499
6500         * mf/SConscript: Updates.
6501
6502         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
6503
6504         * stepmake/stepmake/*:
6505         * */GNUmakefile:
6506         * config.make.in:
6507         * GNUmakefile.in:
6508         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
6509         from any directory in build-dir.  Cleanups.
6510
6511         * make/srcdir.make.in: Remove.
6512
6513         * lily/main.cc (setup_paths): Fix and document build-dir hack.
6514
6515         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
6516         main).
6517
6518         * lily/SConscript: Remove ttftools.
6519
6520         * SConstruct: Resurrect.
6521
6522 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6523
6524         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
6525         Y coordinate. 
6526
6527         * lily/paper-book.cc (add_score_title): put Paper_score title into
6528         systems_ list.
6529
6530         * scm/translation-functions.scm (format-new-bass-figure): also
6531         allow plus in combination with _
6532
6533 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6534
6535         * VERSION: 2.7.13 released.
6536
6537         * lily/note-collision.cc (check_meshing_chords): don't wipe
6538         stencil, merely set transparent.
6539
6540         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
6541         (Top): document #'callbacks.
6542         (Top): document nested \override.
6543
6544         * input/regression/figured-bass.ly: update for slash and pluses.
6545
6546         * input/regression/figured-bass-continuation-forbid.ly (Module):
6547         new file.
6548
6549         * scm/translation-functions.scm (format-new-bass-figure): use
6550         slashed-digit if diminished is set.
6551         (format-new-bass-figure): add + if 'augmented is set.
6552
6553         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
6554
6555         * input/test/piano-staff-distance.ly: remove file.
6556
6557         * Documentation/user/advanced-notation.itely (Formatting cue
6558         notes): use length-fraction for making stems/beams smaller.
6559
6560         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
6561         modifications.
6562
6563         * lily/new-figured-bass-engraver.cc: new property
6564         centerFiguredBassContinuations
6565
6566         * Documentation/user/changing-defaults.itely (Difficult tweaks):
6567         use callbacks.
6568
6569         * lily/context-property.cc (execute_general_pushpop_property):
6570         robustness checks.
6571
6572         * input/regression/override-nest.ly: new file.
6573
6574         * python/convertrules.py (FatalConversionError.subber): conversion
6575         rule for #'callbacks
6576
6577         * input/regression/override-nest.ly: new function.
6578
6579         * lily/parser.yy (music_property_def): allow \override #'a #'b =
6580         #c too. 
6581
6582         * lily/context-property.cc (lookup_nested_property): new function.
6583         (evict_from_alist): new function.
6584         (general_pushpop_property): new function.
6585         (execute_general_pushpop_property): rewrite. Support nested
6586         properties too.
6587
6588 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6589
6590         * lily/beam.cc: use length-fraction too.
6591
6592         * scm/define-grob-properties.scm (all-user-grob-properties):
6593         remove property flag-width-function
6594         (all-user-grob-properties): remove space-function.
6595
6596         * scm/layout-beam.scm: remove flag-width-function.
6597
6598         * lily/beam.cc: remove flag-width-function
6599
6600         * scm/layout-beam.scm: remove beam dir functions.
6601
6602         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
6603
6604         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
6605         for easier grace tweaks.
6606
6607         * lily/beam.cc: remove dir-function.
6608
6609         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
6610
6611         * lily/grob.cc: remove spacing-procedure.
6612
6613         * lily/note-head.cc (calc_stem_attachment): new function.
6614         (internal_print): use callback to get glyph-name.
6615
6616         * lily/grob-property.cc (get_interfaces): new function.
6617
6618         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
6619
6620         * lily/stem.cc (calc_stem_end_position): new function.
6621         (calc_length): new function.
6622         document details for stem.
6623         remove Stem::get_direction()
6624
6625         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
6626
6627         * lily/grob-property.cc (set_callback): new function.
6628
6629         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
6630
6631         * lily/item-scheme.cc: new file.
6632
6633         * lily/bar-line.cc (before_line_breaking): remove function.
6634         remove bar-size-procedure, break-glyph-function
6635
6636         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
6637
6638         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
6639
6640         * lily/system-start-delimiter.cc (print): suicide from
6641         here. Remove after_line_breaking_callback.
6642
6643         * lily/script-interface.cc (calc_direction): use callback for direction.
6644
6645         * lily/side-position-interface.cc (aligned_side): don't use
6646         Side_position_interface::get_direction directly. Use callback. 
6647
6648         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
6649         calculate stencil.
6650         (get_print_stencil): rename from get_stencil: create stencil with
6651         transparency, color and cause. 
6652
6653         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
6654
6655         * python/convertrules.py (conv): insert temporary warning rule.
6656
6657         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
6658
6659         * lily/grob-property.cc (try_callback): remove marker if applicable.
6660
6661         * lily/grob.cc: elucidate doc about after/before-line-breaking
6662
6663         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
6664
6665         * lily/stem.cc (height): idem.
6666
6667         * lily/stem-tremolo.cc: idem.
6668
6669         * lily/slur.cc (height): don't use get_uncached_stencil()
6670
6671         * lily/rest.cc (y_offset_callback): use offset callback
6672         iso. after-line-breaking callback.
6673
6674         * lily/grob.cc: change after/before-line-breaking-callback to
6675         after/before-line-breaking dummy properties.
6676
6677         * lily/include/grob.hh: remove Grob_status.
6678
6679         * scm/define-context-properties.scm
6680         (all-user-translation-properties): remove verticalAlignmentChildCallback
6681
6682         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
6683         (calc_direction): use callback
6684         (calc_positions): use callback.
6685
6686         * lily/tie.cc (calc_direction): use callback. Only call parent
6687         positioning for more than one tie.
6688
6689         * lily/tie-column.cc (calc_positioning_done): use callback
6690
6691         * lily/slur-scoring.cc (calc_control_points): use callback
6692
6693         * lily/slur.cc (calc_direction): use callback.
6694
6695         * lily/note-collision.cc (force_shift_callback): remove.
6696
6697         * lily/dot-column.cc (force_shift_callback): remove. Use
6698         other_axis_parent_positioning.
6699
6700         * lily/grob.cc (other_axis_parent_positioning): new function.
6701         (same_axis_parent_positioning): new function
6702
6703         * lily/align-interface.cc (alignment_callback): remove function.
6704
6705         * lily/note-collision.cc (calc_positioning_done): use callback.
6706
6707         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
6708         (calc_direction): idem.
6709         remove print function.
6710
6711         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
6712
6713         * lily/dot-column.cc (calc_positioning_done): use callback.
6714
6715         * lily/break-align-interface.cc (calc_positioning_done): use callback.
6716
6717         * lily/beam.cc (calc_direction): use pseudo-property for beam
6718         direction callback.
6719         (calc_positions): use callback 
6720
6721         * lily/align-interface.cc (calc_positioning_done): use
6722         callback. Fold fixed  distance and normal alignment in one function.
6723
6724         * lily/stem.cc (calc_stem_end_position): use callback.
6725         (calc_positioning_done): idem.
6726         (calc_direction): idem.
6727         (calc_stem_end_position): idem
6728         (calc_stem_info): idem.
6729
6730         * lily/grob-property.cc (get_property_data): new function: 
6731         (try_callback): new function.
6732
6733         * scm/define-grob-properties.scm (all-user-grob-properties): doc
6734         callbacks property.
6735
6736         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
6737
6738 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6739
6740         * lily/tie.cc (get_position): robustness fix. Don't crash if a
6741         tie
6742         has no heads.
6743         
6744         * lily/include/*.hh (Module): compile fixes.
6745
6746 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
6747
6748         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
6749         as an argument for char-syntax: use (char-syntax (or nil 0)) 
6750         instead of (char-syntax nil), thanks to Milan Zamazal.
6751
6752 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6753
6754         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
6755         dist.
6756
6757         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
6758         themselves.
6759
6760 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6761
6762         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
6763         add class_name() method.
6764
6765         * lily/music-scheme.cc: remove ly:music-name.
6766
6767 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6768
6769         * cygwin/postinstall-lilypond.sh: Remove cruft.
6770
6771         * cygwin/postremove-lilypond.sh: Remove.
6772
6773         * cygwin/GNUmakefile (default): Remove postremove rules.
6774
6775 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6776
6777         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
6778         even header too.
6779         
6780         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
6781         MacOS 9 users.
6782
6783         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
6784         consider break index for broken spanner.
6785
6786         * scm/define-markup-commands.scm (wordwrap-string): remove \r
6787         characters from string before splitting.
6788
6789 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6790
6791         * scm/framework-ps.scm (output-preview-framework): use
6792         is-book-title to determine whether to chop off the booktitle.
6793
6794         * lily/paper-book.cc (systems): init from book-title-properties
6795         (add_score_title): init score-title-properties.
6796
6797         * ly/paper-defaults.ly: add {score,book}-title-properties.
6798
6799         * scm/document-backend.scm (lookup-interface): error message if
6800         using unknown interface.
6801
6802         * lily/volta-bracket.cc (after_line_breaking): new function. Set
6803         edge-height.
6804
6805         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
6806         make_bracket.
6807         (make_bracket): new function.
6808
6809         * scm/lily.scm (define-scheme-options): add paper-size option.
6810
6811         * ly/declarations-init.ly (laissezVibrer): get paper size from
6812         -dpaper-size
6813
6814         * scm/translation-functions.scm: use \fontsize for changing the
6815         fontsize.
6816
6817         * scm/define-grobs.scm (all-grob-descriptions): set
6818         between-length-limit to 1.0
6819
6820         * lily/tie-helper.cc: add between_length_limit_ detail property.
6821
6822         * mf/feta-bolletjes.mf: typos.
6823
6824         * lily/note-head.cc (internal_print): don't shadow idx
6825         parameter. This fixes wrong attachment for do shape heads.
6826
6827 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6828
6829         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
6830
6831         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
6832
6833         * scm/layout-slur.scm: rename from slur.scm
6834
6835         * scm/layout-page-layout.scm: rename from page-layout.scm
6836
6837         * scm/layout-beam.scm: rename from beam.scm
6838
6839         * scm/define-grob-interfaces.scm (bass-figure-interface): add
6840         bass-figure-interface
6841
6842         * lily/new-figured-bass-engraver.cc (process_music): add
6843         implicitBassFigures property.
6844         
6845         * scm/define-markup-commands.scm (pad-x): new markup.
6846
6847         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
6848         minimumVerticalExtent on FiguredBass context.
6849
6850         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
6851         case the continuation crosses a line break.
6852
6853 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6854
6855         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
6856         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
6857         absolute file name bug.  
6858
6859 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6860
6861         * VERSION (PACKAGE_NAME): release 2.7.12
6862
6863         * input/regression/figured-bass-continuation-center.ly: new file.
6864
6865         * input/regression/beam-outside-beamlets.ly: new file.
6866
6867         * lily/beam.cc (set_beaming): don't clip edges.
6868         (connect_beams): don't clip edges.
6869
6870         * lily/beaming-info.cc (clip_edges): new function.
6871
6872         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
6873
6874         * Documentation/user/instrument-notation.itely (Figured bass):
6875         demonstrate extenders, update seealso links.
6876
6877         * scm/titling.scm (marked-up-headfoot): change tagline
6878         handling. tagline = ##f will blank the tagline as well.
6879
6880 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6881
6882         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
6883
6884         * lily/new-figured-bass-engraver.cc (struct
6885         New_figured_bass_engraver): add new_music_found_ member.
6886
6887         * lily/lilypond-version.cc (Lilypond_version): deal with
6888         incorrectly formatted version strings. 
6889
6890         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
6891         New_figured_bass_engraver by default.
6892
6893         * lily/ttf.cc (print_trailer): only define glyph names when
6894         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
6895
6896 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6897
6898         * lily/horizontal-bracket.cc (make_bracket): new function.
6899
6900         * scm/define-grobs.scm (all-grob-descriptions): new grobs
6901         NewBassFigure, BassFigureBracket, BassFigureContinuation,
6902         BassFigureLine, BassFigureAlignment
6903
6904         * lily/new-figured-bass-engraver.cc (process_music): new file.
6905
6906         * lily/figured-bass-continuation.cc: new file.
6907
6908         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
6909         new file.
6910
6911 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
6912
6913         * scripts/lilypond-book.py: Bug fix, put the quote around the
6914         actual score for LaTeX documents.
6915
6916         * scm/define-grobs.scm (all-grob-descriptions): Change
6917         collapse-height of the SystemStartBracket grob to 5.0, 
6918         so the bracket disappears for single stave score lines (similarly
6919         to SystemStartBraces). 
6920
6921         * Documentation/user/advanced-notation.itely (Polymetric
6922         notation): Clarify the use of compressMusic.
6923
6924         * Documentation/user/basic-notation.itely (Grace notes): Clarify
6925         that the grace spacer note in other staves need the same duration
6926         and document the stroke-style property.
6927
6928 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6929
6930         * Documentation/user/global.itely (Vertical spacing): document
6931         alignment-extra-space and fixed-alignment-extra-space.
6932
6933         * Documentation/topdocs/NEWS.tely (Top): add entry.
6934
6935         * input/regression/alignment-vertical-spacing.ly: new file.
6936
6937         * python/convertrules.py (conv): add rule.
6938
6939         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
6940
6941         * lily/align-interface.cc (stretch_after_break): new
6942         function. Read fixed-alignment-extra-space property.
6943         (align_elements_to_extents): read alignment-extra-space property.
6944
6945         * lily/lily-guile.cc (robust_scm2dir): new function.
6946
6947         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
6948         (annotate-space-left): new function. Annotate space left on page. 
6949         (annotate-y-interval): new function.
6950         (paper-system-annotate-last): new function. Annotate bottom-space.
6951
6952         * mf/feta-beugel.mf (y): 
6953
6954 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6955
6956         * VERSION (PACKAGE_NAME):  release 2.7.11
6957
6958         * scm/lily-library.scm (interval-translate): new function
6959         (interval-center): new function. 
6960
6961         * scm/page-layout.scm (paper-system-annotate): new function. Add
6962         arrows for dimensions.
6963  
6964         * scm/stencil.scm (dimension-arrows): new function.
6965
6966         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
6967
6968         * input/regression/page-spacing.ly: add annotatespacing
6969
6970         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
6971         (LY_DEFINE): new function ly:paper-system-set-property!
6972
6973         * Documentation/user/global.itely (Paper size): explain how to add
6974         sizes.
6975
6976         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
6977         correspond to GS's definition.
6978
6979         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
6980         tuplet bracket.
6981         (print): only connect to next bracket if the next one is alive.
6982         (print): set padding to 0.0 if the bound is a breakable
6983         column. This makes tupletFullLength brackets reach up to the staff
6984         line if it doesn't connect to the next line.
6985
6986 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6987
6988         * lily/bar-number-engraver.cc: correct docs.
6989
6990         * scm/output-lib.scm (first-bar-number-invisible): rename from
6991         default-bar-number-visibility
6992
6993 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6994
6995         * scm/define-music-properties.scm (all-music-properties): remove
6996         predicate property.
6997
6998 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
6999
7000         * po/fi.po: refresh.
7001
7002 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7003
7004         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7005         superfluous s1.
7006         (disappear): bugfix.
7007
7008         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7009
7010         * lily/include/paper-system.hh (class Paper_system): remove
7011         staff_extents_ member.
7012
7013         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7014
7015         * lily/include/paper-system.hh (class Paper_system): remove
7016         number_ variable. Remove is_title_. Remove break_before_penalty_
7017
7018         * lily/paper-book.cc (systems): use 'number property iso. number_
7019         member.
7020
7021         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7022         remove ly:paper-system-number.
7023
7024         * scm/lily-library.scm (paper-system-title?): new function.
7025
7026         * lily/book.cc (process): bugfix: flip ?: cases. 
7027
7028         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7029         add outputProperty.
7030
7031         * ly/music-functions-init.ly: add outputProperty music function.
7032
7033         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7034
7035         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7036         and next-padding.
7037         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7038
7039         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7040
7041         * lily/paper-system.cc (internal_get_property): new function.
7042
7043         * Documentation/user/global.itely (Vertical spacing): refer to
7044         page-spacing.ly
7045
7046         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7047         pagetopspace
7048
7049         * input/regression/page-spacing.ly: new file.
7050
7051         * input/regression/page-top-space.ly: new file.
7052
7053         * lily/spacing-spanner.cc: cmath -> math.h
7054
7055         * lily/paper-system.cc (read_left_bound): new function. Read
7056         line-break-system-details from left bound to determine extents.
7057  
7058         * Documentation/user/programming-interface.itely (Using LilyPond
7059         syntax inside Scheme): change applyxxx -> applyXxx.
7060
7061         * ly/music-functions-init.ly: add outputProperty music function.
7062
7063         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7064
7065         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7066
7067         * python/convertrules.py (conv): rule
7068
7069         * ly/music-functions-init.ly: applyxxx -> applyXxx
7070
7071         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7072         TabVoice to Voice.
7073
7074 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7075
7076         * flower/include/real.hh: include <math.h> iso. <cmath>
7077
7078         * flower/include/offset.hh: include real.hh
7079
7080 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7081
7082         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7083         fix example, now that 'interfaces is no longer directly available.
7084
7085         * lily/book.cc (process): don't crash if paper == NULL.
7086
7087         * po/fr.po: update.
7088
7089 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7090
7091         * scm/define-music-types.scm (music-descriptions): set length and
7092         start-callback for QuoteMusic
7093
7094 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7095
7096         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7097         arguments. Fixes compilation error with gcc 3.3.
7098
7099 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7100
7101         * VERSION: release 2.7.10
7102
7103         * stepmake/stepmake/python-module-rules.make
7104         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7105
7106         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7107         real.hh
7108
7109 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7110
7111         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7112         -Werror. Otherwise GCC barfs over various optimizations.
7113
7114         * scm/define-grob-properties.scm (all-internal-grob-properties):
7115         add note-head property
7116
7117         * Documentation/user/instrument-notation.itely (Laissez vibrer
7118         ties): new node.
7119
7120         * input/regression/laissez-vibrer-ties.ly: new file.
7121
7122         * lily/laissez-vibrer-engraver.cc: new file.    
7123
7124         * lily/include/tie-column-format.hh: new file.
7125
7126         * lily/tie-column-format.cc: new file. 
7127
7128         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7129
7130         * lily/laissez-vibrer-tie.cc: new file.
7131
7132         * lily/include/laissez-vibrer-tie.hh: new file.
7133
7134         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7135
7136         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7137
7138         * scm/define-grobs.scm (all-grob-descriptions): add
7139         LaissezVibrerTie, LaissezVibrerTieColumn
7140
7141         * lily/tie-column.cc (set_tie_config_directions): new function
7142         (final_shape_adjustment): new function.
7143         (shift_small_ties): new function.
7144
7145         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7146
7147         * lily/include/tie.hh (struct Tie_details): add x_gap_
7148         (struct Tie_configuration): add head_position_
7149
7150         * lily/tie-column.cc (set_chord_outline): new function.
7151
7152         * mf/cmr.enc.in:  remove file.
7153
7154 2005-09-11  Graham Percival  <gpermus@gmail.com>
7155
7156         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7157
7158 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7159
7160         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7161         reduce aliasing effects.
7162
7163         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7164         box in skyline.
7165
7166 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7167
7168         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7169
7170         * flower/include/real.hh: std::fabs too.
7171
7172 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7173
7174         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7175
7176         * lily, flower: Include C++ iso C headers.  Import namespace std
7177         throughout.
7178
7179         * lily/side-position-interface.cc: 
7180         * lily/scm-hash.cc: 
7181         * lily/note-head.cc: 
7182         * lily/include/includable-lexer.hh: 
7183         * flower/include/string-data.icc: Remove using std::*.
7184
7185         * lily, flower: Include C++ iso C headers.  Import namespace std
7186         throughout.
7187
7188         * lily/side-position-interface.cc: 
7189         * lily/scm-hash.cc: 
7190         * lily/note-head.cc: 
7191         * lily/include/includable-lexer.hh: 
7192         * flower/include/string-data.icc: Remove using std::*.
7193
7194         * Documentation/user/instrument-notation.itely (Entering lyrics):
7195         Multiple latin-1->utf-8 conversion fix.
7196
7197         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7198
7199 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7200
7201         * lily/tie.cc (get_configuration): also avoid dots for non-space
7202         situations.
7203
7204 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7205
7206         * Documentation/user/instrument-notation.itely: Bugfix.
7207
7208 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7209
7210         * tex/GNUmakefile: don't install texinfo.tex
7211
7212         * tex/ : cleanup: remove unused files.
7213
7214         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7215
7216         * flower/include/real.hh: using std::{isnan,isinf}
7217         
7218         * VERSION (PATCH_LEVEL): release 2.7.9
7219
7220 2005-09-05  Graham Percival  <gpermus@gmail.com>
7221
7222         * Documentation/user/ instrument-notation.itely,
7223         advanced-notation.itely: minor tweaks.
7224
7225         * input/test/script-chart.ly: add item padding.
7226
7227 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7228
7229         * flower/offset.cc: use math.h iso. <cmath>
7230
7231         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7232         of IE users.
7233
7234         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7235         (widen-left-stencil-edges): new function. Fix alignment problems
7236         with LaTeX includegraphics.
7237
7238         * lily/text-interface.cc (interpret_markup): use abort().
7239
7240 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7241
7242         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7243
7244         * lily/tie.cc (get_configuration): update bezier shape as we
7245         change Y positions.
7246         (get_configuration): don't move large ties if we're outside of the
7247         staff.
7248
7249 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7250
7251         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7252         
7253 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7254
7255         * .cvsignore: Add auto-generated configure files and then some.
7256
7257 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7258
7259         * scm/define-grobs.scm (DynamicLineSpanner): Add
7260         X-extent-callback.  Fixes hairpin-slur collision.
7261
7262 2005-08-31  Graham Percival  <gpermus@gmail.com>
7263
7264         * Documentation/user/advanced-notation.itely,
7265         basic-notation.itely: minor changes.
7266
7267 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7268
7269         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7270         \linebreak between each .eps file if \betweenLilyPondSystem is
7271         undefined. 
7272
7273         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7274         music): Document the \linebreak
7275
7276         * Documentation/user/lilypond-book.itely,
7277         input/tutorial/lbook-latex-test.tex,
7278         Documentation/user/examples.itely: Remove \usepackage{graphics}
7279
7280 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7281
7282         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7283
7284         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7285         compat bugfix.
7286
7287         * scripts/lilypond-book.py (PREAMBLE_LY): define
7288         inside-lilypond-book
7289         (modify_preamble): new function. Insert \RequirePackage{graphics}
7290         when no {graphics found in preamble.  
7291
7292 2005-08030  Graham Percival  <gpermus@gmail.com>
7293
7294         * Documentation/user/basic-notation.itely, global.itely,
7295         tutorial.itely: misc small changes.
7296
7297 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7298
7299         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7300         VERSION.
7301
7302 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7303
7304         * lily/tie-column.cc (new_directions): put Tie down on center
7305         staff line. 
7306
7307         * lily/script-interface.cc (before_line_breaking): use
7308         Grob::programming_error
7309
7310         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7311
7312         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7313         of splitext.
7314
7315 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7316
7317         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7318
7319 2005-08-29  Werner Lemberg  <wl@gnu.org>
7320
7321         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7322         the `*.scale.pfa' files to avoid warnings.
7323
7324 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7325
7326         * lily/tempo-performer.cc (process_music): idem.
7327
7328         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7329
7330 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7331
7332         * Documentation/user/advanced-notation.itely (Text markup): not a
7333         fragment.
7334
7335         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7336
7337         * lily/staff-performer.cc (initialize): add tempo/name to
7338         audio_staff_
7339
7340
7341 2005-08-26  Graham Percival  <gpermus@gmail.com>
7342
7343         * Documentation/user/advanced.itely: add text-only example.
7344
7345         * Documentation/user/invoking.itely: add index entries for
7346         convert-ly.
7347
7348         * Documentation/user/ tutorial.itely, basic-notation.itely:
7349         small fixes suggested by Steve D.  Thanks!
7350
7351 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7352
7353         * input/regression/markup-bidi-pango.ly: new file.
7354
7355         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7356         standard. Remove #ifdef. Remove memleak.
7357         (text_stencil): use text_dir to decide how to composite items.
7358         (text_stencil): determine uniform text direction for the entire
7359         string.
7360
7361         * scripts/lilypond-book.py (output_name): remove
7362         latex_filter_cmd. Non-portable to non-Unix systems. 
7363         (get_latex_textwidth): use File.write and os.unlink() instead.
7364
7365         * THANKS: add Vicente & Trevor.
7366
7367         * lily/grob.cc (discretionary_processing): look up origin for
7368         programming_error too. 
7369
7370         * input/regression/tie-broken.ly: new file.
7371
7372         * lily/tie-column.cc (set_chord_outlines): set outline for line
7373         break case too.
7374         
7375 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7376
7377         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7378         unscaled transform, just translate stencils.
7379
7380         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7381         MIDI.
7382
7383         * scm/define-markup-commands.scm (wordwrap-string): use
7384         text-direction
7385         (wordwrap-stencils): idem.
7386         (line): idem.
7387         (fill-line): idem.
7388         (wordwrap-stencils): translate last line to right for
7389         text-direction = LEFT.
7390
7391         * scm/define-grob-properties.scm (all-user-grob-properties): add
7392         text-direction.
7393
7394 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7395
7396         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7397         when copying a Lily_parser object.
7398
7399 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7400
7401         * scm/define-markup-commands.scm (null): add null markup.
7402
7403 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7404
7405         * lily/item.cc: Add documentation of center-invisible
7406
7407 2005-08-24  Graham Percival  <gpermus@gmail.com>
7408
7409         * Documentation/user/advanced-notation.itely: add info about
7410         raising text.
7411
7412         * Documentation/user/programming-interface.itely: fix example
7413         involving raised text.
7414
7415 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7416
7417         * lily/beam.cc (print): fix X start/end points of isolated
7418         beamlets.
7419
7420         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7421
7422         * lily/multi-measure-rest.cc (set_text_rods): new function.
7423
7424         * lily/vertical-align-engraver.cc (process_music): call
7425         Align_interface::set_axis(). This forces #'elements to be ordered,
7426         preventing random vertical reordering of staves.
7427
7428         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7429         add avoid-slur property. 
7430
7431         * Documentation/user/basic-notation.itely (Measure repeats): add
7432         countPercentRepeats example.
7433
7434         * Documentation/user/advanced-notation.itely (Other text markup
7435         issues): remove remark about normal-font.  We have \normal-text
7436
7437         * input/regression/tie-chord.ly: add note about remaining bugs.
7438
7439         * lily/tie.cc (print): try Tie_column::set_directions () if
7440         control-points not yet defined.
7441
7442 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7443
7444         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7445         extent. This fixes braces falling out of the EPS bbox.
7446
7447         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7448         exactly to bbox.
7449
7450 2005-08-23  Graham Percival  <gpermus@gmail.com>
7451
7452         * {various} : change #up->#UP and #down->#DOWN.
7453
7454         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7455
7456         * Documentation/user/advanced-notation.itely: clarify
7457         what objects handles text on a multimeasure rest.
7458
7459 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7460
7461         * VERSION (PATCH_LEVEL): release 2.7.7
7462
7463 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7464
7465         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7466
7467         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7468
7469         * input/regression/*.ly: formatting clean-up. Default layout
7470         before music expression.
7471
7472         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
7473         romanze28-2 example.
7474
7475         * scm/ps-to-png.scm: remove dir-re function.
7476         (make-ps-images): generate page names, instead of globbing them.
7477         This brings down LilyPond memory usage for make web by a factor
7478         10. 
7479
7480         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
7481         don't use glob. With 3000 files, globbing
7482         Documentation/user/out-www/ can take too much time. 
7483         
7484         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
7485
7486         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
7487
7488         * input/regression/tie-manual.ly: new file
7489
7490         * input/regression/tie-chord.ly: update.
7491
7492         * flower/include/interval.hh (struct Interval_t): 
7493
7494         * lily/tie.cc (distance): new function 
7495         (height): new function.
7496         (init): new function
7497         (Tie_details): new struct.
7498
7499         * lily/skyline.cc (skyline_height): new function.
7500
7501         * lily/tie-column.cc (set_chord_outlines): new function.
7502         (new_directions): read tie-configuration
7503
7504         * lily/skyline.cc: fix ASCII art.
7505         
7506 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
7507
7508         * python/convertrules.py (string_or_scheme): Fix spelling error
7509
7510 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7511         
7512         * lily/tie-column.cc (set_directions): set directions only once.
7513         (add_configuration): new function.
7514
7515         * lily/tie.cc (set_control_points): new function
7516
7517         * lily/tie-column.cc (new_directions): new function.
7518
7519         * ly/music-functions-init.ly: set 'pitch property
7520         iso. trill-pitch. This makes \relative work with \pitchedTrill
7521
7522         * lily/tie.cc (get_configuration): new function. Don't generate
7523         control points, rather, generate configuration.
7524         remove head-pair property.
7525
7526         * lily/include/tie.hh (struct Tie_configuration): new struct.
7527
7528 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
7529
7530         * Documentation/topdocs/NEWS.tely: clarify.
7531
7532 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7533
7534         * lily/tie.cc: remove minimum-length
7535
7536         * scm/define-grob-properties.scm (all-user-grob-properties):
7537         remove staffline-clearance, y-offset 
7538
7539         * input/regression/tie-dots.ly (Module): remove.
7540
7541         * lily/tie.cc (get_control_points): rewrite. Put short ties in
7542         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
7543
7544         * input/regression/tie-single.ly: new file.
7545
7546 2005-08-21  Graham Percival  <gpermus@gmail.com>
7547
7548         * ly/bagpipe.ly: fix compile problem.
7549
7550 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7551
7552         * lily/midi-item.cc (name): new method.
7553
7554         * lily/staff-performer.cc (acknowledge_audio_element): use
7555         signature of baseclass.
7556
7557         * lily/engraver-group.cc (do_announces): move recursion call out
7558         of while loop. 
7559
7560         * lily/drum-note-performer.cc (class Drum_note_performer): use
7561         process_music everywhere.
7562
7563         * ly/performer-init.ly: add default children everywhere.
7564
7565         * lily/paper-book.cc (output): call paper-book-write-midis
7566         directly: always write MIDI, even if no \layout {} block. 
7567
7568 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7569
7570         * VERSION (PACKAGE_NAME): release 2.7.6
7571
7572         * lily/percent-repeat-engraver.cc (try_music): don't print warning
7573         about not being able to handle repeat.
7574
7575 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7576
7577         * Documentation/user/examples.itely (Piano templates):
7578         * lily/include/performer-group.hh: Remove last traces of
7579         Performer_group_performer.  Fixes make web.
7580
7581 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7582
7583         * Documentation/user/examples.itely (Piano templates): change
7584         Engraver_group_engraver -> Engraver_group
7585
7586         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
7587         scm_stand_in_procs is not weak_any.
7588
7589         * lily/volta-bracket.cc (print): don't use strcmp().
7590
7591         * lily/volta-engraver.cc (process_music): use
7592         Text_interface::is_markup() for setting the 'text property of the
7593         volta bracket.
7594
7595         * input/mutopia/claop.py (accents): update syntax to 2.6
7596
7597         * scm/define-context-properties.scm
7598         (all-user-translation-properties): add countPercentRepeats.
7599
7600         * Documentation/user/basic-notation.itely (Measure repeats): add
7601         isolated percent example.
7602
7603 2005-08-18  Graham Percival  <gpermus@gmail.com>
7604
7605         * input/ {various}: change direction #1, #-1 to
7606         #up/#down or \fooUp, \fooDown.
7607
7608         * Documentation/user/music-glossary.tely: #-1 to #down.
7609
7610         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
7611         to #up, #-1 to #down.
7612
7613 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7614
7615         * lily/include/engraver-group.hh: rename.
7616
7617         * lily/include/performer-group.hh: rename.
7618
7619 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
7620
7621         * input/test/script-abbreviations.ly: Removed some old LaTeX
7622         left overs.
7623
7624 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7625
7626         * python/convertrules.py (conv): inside-slur -> avoid-slur.
7627         Remove functions.  Remove if 1: constructs, reindent.
7628
7629         * scripts/convert-ly.py (add_version): Add functions from
7630         convertrules.py
7631
7632         * scm/script.scm (default-script-alist):
7633         s/priority/script-priority.  Fixes script stacking.  Backportme.
7634         (Fermata): Very low priority.
7635
7636 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7637
7638         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
7639
7640         * input/regression/slur-script.ly: remove padding tweaks. Add
7641         comment strings.
7642
7643         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
7644         time sigs and related stuff.
7645
7646         * scm/define-grob-properties.scm (all-user-grob-properties): add
7647         @code{} tags to property description.
7648
7649         * lily/include/line-group-group-engraver.hh (Module): remove file.
7650
7651         * python/convertrules.py (conv): add rule for
7652         Engraver_group_engraver -> Engraver_group.
7653
7654         * lily/include/performer-group-performer.hh: analogous.
7655
7656         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
7657
7658         * lily/context-def.cc (instantiate): check for
7659         Engraver_group_engraver and Performer_group_performer not
7660         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
7661  
7662 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7663
7664         * input/les-nereides.ly: Remove three fingering tweaks, update
7665         remaining one.
7666
7667         * input/regression/slur-script-inside.ly: Update, fix doc.
7668
7669         * scm/script.scm: Update to avoid-slur.
7670
7671         * scm/define-grob-properties.scm (avoid-slur): New property.
7672
7673         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
7674         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
7675         outside_slur_callback if avoid-slur != #'inside.
7676
7677         * scm/define-grobs.scm (Fingering, Textscript): No
7678         inside-slur/outside-slur preference.
7679         (DynamicLineSpanner): Always outside slur.
7680
7681         * input/regression/slur-script.ly: More tests.
7682
7683 2005-08-17  Graham Percival  <gpermus@gmail.com>
7684
7685         * Documentation/user/lilypond-book: fix notime entry.
7686
7687         * Documentation/user/advanced-notation.itely: add info on
7688         getting an I rehearsal mark.
7689
7690         * Documentation/user/putting.itely: reinstate "I", re-enforce
7691         the fact that \override numbers are the result of
7692         experimentation and personal taste.
7693
7694         * Documentation/user/invoking.itely: update convert-ly bugs.
7695
7696 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7697
7698         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
7699         to #t.
7700
7701         * lily/timing-translator.cc (initialize): don't initialize timing.
7702
7703         * input/regression/stem-spacing.ly (Module): remove file.
7704
7705         * input/regression/spacing-stick-out.ly: specify Score context for
7706         \override
7707
7708         * input/regression/clefs.ly: remove spurious {}s 
7709
7710 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
7711
7712         * Documentation/topdocs/NEWS.tely,
7713         input/regression/repeat-percent-count.ly: clarify a bit.
7714
7715 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7716
7717         * input/no-notation/display-lily-tests.ly: delete
7718         display-lily-init call.
7719
7720         * ly/music-functions-init.ly (displayLilyMusic): move
7721         display-lily-init call at top level, so that the user should not
7722         have to call it.
7723
7724         * scm/define-music-display-methods.scm (note-name->lily-string):
7725         retrieve note names directly from pitchnames using new function `rassoc'.
7726         (display-lily-init): note names list construction removed.
7727
7728 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7729
7730         * THANKS: spello.
7731
7732         * lily/lily-parser.cc (get_header): copy module, instead of
7733         returning it.
7734
7735         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
7736         counters.
7737
7738         * Documentation/user/basic-notation.itely (Measure repeats): add
7739         links to Counter grobs.
7740
7741         * scm/define-grobs.scm (all-grob-descriptions): add
7742         DoublePercentRepeatCounter
7743         (all-grob-descriptions): add PercentRepeatCounter
7744
7745         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
7746         also create counter grobs.
7747
7748         * lily/separation-item.cc (extremal_break_aligned_grob): don't
7749         return grob without space-alist.
7750
7751         * input/proportional.ly: tune staff-padding.
7752
7753         * input/regression/repeat-percent-count.ly: new file. 
7754
7755 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7756
7757         * input/no-notation/display-lily-tests.ly: moved from
7758         input/regression/ to input/no-notation. Be sure to call
7759         `display-lily-init' before trying to use the display function.
7760
7761 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
7762
7763         * scripts/lilypond-book.py (option_definitions): Don't localize
7764         the empty string. Fixes bug when --psfonts was used with
7765         non-English locale.
7766
7767 2005-08-15  Graham Percival  <gpermus@gmail.com>
7768
7769         * lily/tuplet-bracket.cc: simple build fix.
7770
7771         * Documentation/user/putting.itely: use "we" instead of "I".
7772
7773         * Documentation/user/basic-notation.itely: cautionary accidentals
7774         work with naturals, too.
7775
7776 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7777
7778         * lily/tuplet-bracket.cc (calc_position_and_height): add
7779         staff-padding support.
7780
7781         * input/proportional.ly: set staff-padding.
7782         
7783         * VERSION (PATCH_LEVEL): release 2.7.5
7784
7785         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
7786         fixes. Remove tweaks.
7787
7788         * input/regression/tuplet-slope.ly: add a test case.
7789
7790         * lily/tuplet-bracket.cc (calc_position_and_height): revert
7791         erroneous fix. Add spanner bounds to offset array with relative X
7792         positions.
7793
7794         * ly/engraver-init.ly: add Rest_engraver only once.
7795
7796         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
7797         (*parser*) lookup if (*parser*) != #f.
7798
7799 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
7800
7801         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
7802         Cut-and paste update.
7803
7804         * input/regression/slur-script.ly: Add example of reverting
7805         inside-slur for fingering.
7806
7807         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
7808         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
7809
7810         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
7811         outside_slur_callback if inside-slur == #f (as opposed to unset).
7812
7813 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7814
7815         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
7816         encoding files are already removed.
7817
7818 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
7819
7820         * Documentation/user/advanced-notation.itely (Instrument names):
7821         Document a workaround for instrument names that collide with
7822         system start braces/brackets.
7823
7824 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7825
7826         * lily/rest-collision.cc (do_shift): spello.
7827
7828         * input/proportional.ly: use #'used property. Set break-overshoot
7829         property.
7830
7831         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
7832
7833         * lily/paper-column.cc: add #'used property
7834
7835         * lily/mark-engraver.cc (stop_translation_timestep): set grob
7836         array for staves found.
7837
7838         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
7839         array for stavesFound.
7840
7841         * lily/staff-spacing.cc (next_note_correction): add fixed and
7842         space to calling convention. This fixes spacing of accidentals
7843         after barlines.
7844
7845         * input/regression/spacing-accidental-stretch.ly: add barline -
7846         accidental case.
7847
7848         * scm/framework-ps.scm (page-header): add version number to
7849         creator
7850         (eps-header): idem.
7851
7852         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
7853         
7854 2005-08-13  Graham Percival  <gpermus@gmail.com>
7855
7856         * Documentation/user/global.itely: add "fit as much as
7857         possible onto this page" example (Vertical spacing).
7858
7859 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7860
7861         * *: Nitpick run.
7862
7863         * buildscripts/fixcc.py: Fixes.
7864
7865 2005-08-12  Graham Percival  <gpermus@gmail.com>
7866
7867         * Documentation/user/advanced-notation.itely: add markup
7868         example to Text spanners.
7869
7870 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
7871
7872         * Documentation/user/basic-notation.itely (Ties): Add example of
7873         tying a tremolo to a chord. Thanks to Steve Doonan. 
7874
7875         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
7876         properties and move tieMelismaBusy to the list of written
7877         properties. 
7878
7879 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
7880
7881         * po/TODO: suggest to use a dedicated tool like kbabel.
7882
7883         * po/fi.po: update using kbabel.
7884
7885 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7886
7887         * *: Remove obsolete files.  Nitpick run.
7888
7889         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
7890
7891 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7892
7893         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
7894         too.
7895
7896         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
7897
7898         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
7899         whitespace as symbol separator.
7900
7901         * lily/side-position-interface.cc: Add slur-padding.
7902
7903         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
7904         quite a large fix, and it never worked in a stable release; so not
7905         really a regression.
7906
7907         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
7908         Update cut and paste code from Slur_engraver.
7909
7910         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7911         Add.
7912
7913         * scm/define-grobs.scm (DynamicLineSpanner): Add
7914         dynamic-line-spanner-interface.
7915         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
7916
7917 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7918
7919         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
7920         to_boolean () so that non-set 'inside-slur means false.
7921
7922         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
7923         slur has control-points.  Skip script without direction.  Always
7924         do_shift if script inside slur, even if slur not contained in
7925         script y-extent.  Increment k in loop.
7926
7927 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
7928
7929         * scm/define-markup-commands.scm: Improved regexp to search for
7930         EPS bounding boxes and corrected call to ly:warning.
7931
7932 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7933
7934         * Documentation/user/programming-interface.itely (Displaying music
7935         expressions): doc for \displayLilyMusic. Also some precisions in
7936         "Markup construction in Scheme"
7937
7938 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
7939
7940         * scm/define-markup-commands.scm (normal-text): Added 2 new
7941         markup commands, \normal-text and \medium (the latter thanks to
7942         Bruce Fairchild). 
7943
7944 2005-08-08  Graham Percival  <gpermus@gmail.com>
7945
7946         * Documentation/user/programming-interface.itely: fix @{ @}.
7947
7948         * scm/define-markup-commands.scm: add linewidth info to
7949         \justify and \wordwrap, add "upright is the opposite of italic".
7950
7951         * Documentation/user/advanced-notation.itely: shaped->shape,
7952         add (cons (markup "foo")) type of example to text markup,
7953         reword multi-measure rests section.
7954
7955         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
7956         comment.  No actual code was touched.
7957
7958         * Documentation/user/invoking.itely: add more info about
7959         \include.  Thanks, Bruce!
7960
7961         * THANKS: add Bruce Fairchild, alphabetise.
7962
7963         * Documentation/user/global.itely: document \score{\header{}}
7964         behavior.
7965
7966         * Documentation/user/basic-notation.itely: reword multi-measure
7967         rest discussion in Rests.
7968
7969 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
7970
7971         * Documentation/user/programming-interface.itely (Markup
7972         construction in Scheme): Corrected example and tried to clarify
7973         the implicit \line in the table.
7974
7975 2005-08-07  Graham Percival  <gpermus@gmail.com>
7976
7977         * Documentation/user/instrument-notation.itely: moved
7978         some bagpipe info back into the bagpipe section.  Somehow
7979         it ended up in the "other vocal issues" section?!  :o_O
7980
7981 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7982
7983         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
7984         directories, not paths).
7985
7986 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7987
7988         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
7989         plain emmentaler/aybabtu.  Backportme.
7990
7991         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
7992         missing dir correction.
7993
7994 2005-08-05  Graham Percival  <gperlist@shaw.ca>
7995
7996         * scm/define-markup-commands: fix reversed justify/wordwrap
7997         doc strings.
7998
7999 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8000
8001         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8002         lily/gregorian-ligature-engaver.cc,
8003         lily/include/ligature-engraver.hh,
8004         lily/include/coherent-ligature-engraver.hh,
8005         lily/include/gregorian-ligature-engraver.hh: make these classes
8006         truely abstract.  This should fix some internal oddities such as
8007         duplicate as well as dead translator/property declarations, and
8008         also some dead code.
8009
8010         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8011         bugfix: avoid message "junking empty ligature" on ligature
8012         brackets by collecting dummy grobs.
8013
8014 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8015
8016         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8017
8018         * input/proportional.ly (staffKind): bugfix.
8019         (staffKind): updates by Trevor Baca.
8020
8021         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8022         default layout. 
8023
8024         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8025         pair.
8026
8027         * lily/beam.cc (rest_collision_callback): call position_beam() if
8028         necessary.
8029
8030         * VERSION: release 2.7.4
8031
8032         * input/regression/spacing-uniform-stretching.ly: new file.
8033
8034         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8035
8036         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8037         contributor.
8038
8039         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8040
8041         * input/proportional.ly: new file.
8042
8043         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8044         columns is empty
8045
8046         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8047         bounds to currentCommandColumn for the last step.
8048         (start_translation_timestep): if tupletFullLength is set, set
8049         bound to Paper Column
8050
8051         * input/regression/tuplet-full-length.ly (indent): new file.
8052
8053         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8054         clique of loose columns, eg. a set of grace notes in strict
8055         notespacing.
8056
8057         * input/regression/spacing-strict-spacing-grace.ly: new file.
8058
8059         * lily/key-signature-interface.cc: change property name to
8060         alteration-alist
8061
8062         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8063         keyAccidentalOrder
8064
8065         * python/convertrules.py (conv): keyAccidentalOrder ->
8066         keyAlterationOrder
8067
8068         * lily/key-engraver.cc (create_key): always print a cancellation
8069         for going to C-major/A-minor, regardless of printKeyCancellation.
8070         (create_key): remove typecheck for visibility. This fixes key
8071         signature not being printed.
8072
8073         * lily/spacing-determine-loose-columns.cc: new file.
8074
8075         * input/regression/spacing-strict-notespacing.ly: new file.
8076
8077         * lily/spacing-spanner.cc (generate_springs): rename from
8078         do_measure. 
8079         (generate_pair_spacing): new function.
8080         (init, generate_pair_spacing): set between-cols for floating
8081         nonmusical columns.
8082
8083         * lily/spaceable-grob.cc (get_spring): new function. 
8084
8085         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8086         relative to the right edge of the prefatory matter.
8087
8088         * lily/beam.cc (print): read break-overshoot to determine where to
8089         stop/start broken beams.
8090
8091         * input/regression/spanner-break-overshoot.ly: new file.
8092
8093 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8094
8095         * ly/bagpipe.ly: updated.
8096
8097         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8098
8099 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8100
8101         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8102         support: now (de)crescs avoid slurs as well.
8103
8104         * Documentation/user/instrument-notation.itely (Bagpipe example):
8105         comment out non-functioning bagpipe example.
8106         (Bagpipe definitions): idem.
8107
8108         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8109         (Top): add proportionalNotationDuration example.
8110
8111         * input/regression/spacing-proportional.ly: new file.
8112
8113         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8114         synched to a beam.
8115
8116         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8117         fixes beams with a single stem (eg. beams across linebreaks.)
8118
8119         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8120
8121         * flower/rational.cc (operator +): prevent overflow. This fixes
8122         heavily nested tuplets.
8123
8124         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8125         have to protect even those unlikely to be corrupted data members.  
8126
8127 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8128
8129         * ly/bagpipe.ly: new file.
8130
8131         * THANKS: added Sven Axelsson.
8132
8133 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8134
8135         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8136         copy proportionalNotationDuration into currentMusicalColumn if
8137         set.
8138
8139         * lily/spacing-spanner.cc (musical_column_spacing): if
8140         uniform-stretching set, fixed space is 0.0
8141
8142         * input/regression/spacing-multi-tuplet.ly: show
8143         uniform-stretching property.
8144
8145         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8146
8147         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8148         (struct Spacing_options): new struct.
8149
8150         * lily/spacing-basic.cc: new file.
8151
8152         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8153         delta_t doesn't have to be smaller than shortest_playing_len
8154
8155 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8156
8157         * input/regression/markup-arrows.ly:  new file.
8158
8159         * lily/tuplet-bracket.cc: document new behavior.
8160
8161         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8162         with line breaks.
8163
8164         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8165
8166         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8167         default 
8168
8169         * lily/tuplet-bracket.cc: add edge-text property.
8170         add break-overshoot.
8171         (print): read break-overshoot.
8172         (print): read edge-text, add stencils.
8173
8174         * mf/feta-arrow.mf: new file.
8175
8176         * mf/feta-generic.mf: add feta-arrow.
8177
8178 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8179
8180         * Documentation/user/lilypond-book.itely (An example of a
8181         musicological document): Added flag -o to dvips for people who use
8182         the default setting in teTeX where output is sent to the printer. 
8183
8184         * Documentation/user/global.itely (Vertical spacing): Added
8185         reference to the Axis_group_engraver which documents the *Extent
8186         properties.
8187
8188 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8189
8190         * Documentation/user/basic-notation.itely (Tuplets): add note
8191         about nested tuplets. Remove BUG. 
8192
8193         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8194
8195         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8196         (print): manually call print() for subtuplets.
8197         (calc_position_and_height): add subtuplets to the
8198         support. Vertically shift outer tuplet 
8199
8200         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8201         remove-first for Lyrics, ChordNames and FiguredBass
8202
8203         * scm/define-grob-properties.scm (all-internal-grob-properties):
8204         use ly:grob-array? iso. grob-list?
8205         (all-internal-grob-properties): add tuplets grob-array.
8206
8207         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8208         new function
8209
8210 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8211
8212         * input/test/time-signature-staff.ly: new file.
8213
8214         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8215         spurious #<Music FingerEvent> errors. Backportme.
8216
8217 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8218
8219         * Documentation/user/programming-interface.itely (Markup
8220         construction in Scheme): Corrected markup syntax in the
8221         translation table.
8222
8223 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8224
8225         * Documentation/user/instrument-notation.itely: small update
8226         to bagpipe notation docs; thanks Sven!
8227
8228         * Documentation/user/basic-notation.itely: add link about trills.
8229
8230 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8231
8232         * Documentation/user/music-glossary: remove accidentally committed
8233         fink patch.
8234
8235 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8236
8237         * lily/lily-parser.cc (get_header): new function. Enable multiple
8238         \header definitions.
8239
8240         * lily/parser.yy (lilypond_header_body): use get_header.
8241
8242         * ly/init.ly:
8243         * scm/lily-library.scm (print-score-with-defaults): renamed
8244         $globalheader to $defaultheader
8245             
8246         * Documentation/user/global.itely (Creating titles): added short
8247         explanation that multiple headers are useable.
8248
8249
8250 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8251
8252         * lily/module-scheme.cc (LY_DEFINE): new file. 
8253
8254         * Documentation/user/advanced-notation.itely (Font selection): add
8255         doco for make-pango-font-tree.
8256
8257 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8258
8259         * Documentation/user/music-glossary: more languages
8260         for tenuto.
8261
8262         * Docuemntation/user/instrument-notation.itely: minor
8263         update for bagpipe example.
8264
8265 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8266
8267         * input/regression/+.ly (TODO): add some text.
8268
8269 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8270
8271         * Documentation/user/invoking.itely: \score begins with music.
8272
8273         * Documentation/user/ basic-notation.itely,
8274         instrument-notation.itely: minor changes.
8275
8276         * Documentation/user/music-glossary.itely: began tenuto entry.
8277
8278 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8279
8280         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8281
8282         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8283
8284 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8285
8286         * Documentation/user/examples.itely: remove bagpipe template.
8287
8288         * Documentation/user/instrument-notation.itely: add bagpipe
8289         section, maybe fix quotes in lyrics.  I hate text encoding.
8290         Clarify chord durations, more bagpipe stuff.
8291
8292 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8293  
8294         * lily/accidental-engraver.cc: formatting fixes.
8295
8296         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8297         grob-array.
8298
8299         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8300
8301         * lily/note-column.cc (arpeggio): new function.
8302
8303         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8304         account for spacing.
8305
8306 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8307
8308         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8309         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8310         mingw build.
8311         
8312 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8313
8314         * scm/lily.scm (lilypond-all): clear anonymous modules after
8315         processing files.
8316
8317 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8318
8319         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8320         SCM_I_CONSP
8321
8322         * VERSION: 2.7.3 released
8323
8324         * Documentation/user/invoking.itely (Invoking lilypond): add
8325         LILYPOND_GC_YIELD documentation.
8326
8327         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8328         scm_from_real / scm_make_real.
8329
8330         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8331         higher. This increases memory footprint, but provides overall
8332         speedup of 15 to 20%. 
8333
8334         * lily/include/translator.hh (class Translator): remove
8335         PRECOMPUTED_VIRTUAL everywhere.
8336
8337         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8338
8339         * lily/context.cc (now_mom): non-recursive now_mom() 
8340
8341         * lily/include/profile.hh: new file.
8342
8343         * lily/profile.cc: new file.
8344
8345         * lily/grob.cc (Grob::Grob): look properties up directly.
8346
8347         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8348         lookups.
8349
8350         * lily/include/box.hh (class Box): smob Box type.
8351
8352         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8353
8354         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8355         protect() and unprotect(). Use throughout.
8356
8357 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8358
8359         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8360
8361         * scm/define-music-display-methods.scm (markup->lily-string):
8362         markup elements can also be strings (without simple-markup
8363         appended)
8364
8365 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8366
8367         * lily/context.cc (where_defined): also assign value in
8368         where_defined().
8369
8370         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8371         (curve_coordinate): new function
8372
8373         * lily/simple-spacer.cc (add_columns): only add rods between
8374         column i and begin/end if keep-inside-line is set (this repleces
8375         allow-outside-line as default)
8376
8377 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8378
8379         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8380         tupletSpannerDuration if applicable.
8381
8382         * lily/font-size-engraver.cc (process_music): read fontSize only
8383         once per timestep.
8384
8385         * lily/engraver*cc: use throughout.
8386         
8387         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8388
8389         * lily/translator.cc (add_acknowledger): new file. Directly jump
8390         into an Engraver::acknowledge_xxx () method based on a grobs
8391         interface-list.
8392
8393         * lily/include/translator-dispatch-list.hh (class
8394         Engraver_dispatch_list): new struct, new file.
8395
8396         * scm/define-context-properties.scm
8397         (all-internal-translation-properties): remove acceptHashTable,
8398         acknowledgeHashTable
8399
8400         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8401
8402         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8403         change acknowledgeHashTable to C++ member. 
8404
8405         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8406
8407 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8408
8409         * scm/display-lily.scm: new file. Define a `display-lily-music'
8410         function, that displays the music expression given as an argument,
8411         using LilyPond notation.
8412
8413         * scm/define-music-display-methods.scm: new file. Implementation
8414         of display methods for each music type.
8415
8416         * ly/music-functions-init.ly (displayLilyMusic): new function for
8417         displaying music with LilyPond notation.
8418
8419         * input/regression/display-lily-tests.ly: new regression test file
8420         for `display-lily-music'.
8421
8422         * scm/markup.scm: remove obsolete debugging code (for printing
8423         markups with LilyPond notation).
8424
8425         * scm/define-music-types.scm (music-name-to-property-table):
8426         * scm/clef.scm (supported-clefs): export, in order to be accessible
8427         from the (scm display-lily) module.
8428
8429 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8430
8431         * Documentation/topdocs/NEWS.tely (Top): Typo.
8432
8433 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8434
8435         * Documentation/index.html.in, Documentation/texinfo.css,
8436           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8437           Documentation/bibliography/index.html.in,
8438           Documentation/bibliography/html-long.bst: revert css-width patch,
8439           it does not work with IE6.
8440
8441 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8442
8443         * Documentation/texinfo.css: revert 760px hack. 
8444
8445         * VERSION: release 2.7.2
8446
8447         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8448
8449         * Documentation/user/basic-notation.itely (Barnumber check): add
8450         section.
8451
8452         * scm/music-functions.scm (skip-to-last): new function. Show only
8453         last showLastLength part of the \score.
8454
8455         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8456
8457         * python/convertrules.py (conv): add ly:x-moment rule
8458
8459         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8460
8461         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8462
8463         * Documentation/user/instrument-notation.itely (Flexibility in
8464         alignment): options in subsections.
8465
8466         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8467         syllable text. Instead, assume that the previous lyric text is a
8468         melismated text.
8469
8470         * Documentation/index.html.in: revert 800x600 change.
8471
8472 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8473
8474         * lily/main.cc (main): Remove invalid handle kludge.
8475
8476         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
8477         (lambda): add gui define.
8478
8479 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8480
8481         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
8482
8483         * Documentation/user/instrument-notation.itely (Musica ficta
8484         accidentals): add section Musica ficta accidentals
8485
8486         * lily/accidental-engraver.cc (make_suggested_accidental): new
8487         function.
8488         (make_standard_accidental): move into new function.
8489         (create_accidental): new function.
8490
8491         * scm/define-grobs.scm (all-grob-descriptions): new Grob
8492         AccidentalSuggestion
8493
8494         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
8495
8496         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
8497         undefined.
8498
8499         * Documentation/user/global.itely (Page formatting): document
8500         horizontalshift.
8501
8502         * scm/page-layout.scm (default-page-music-height):
8503         horizontalshift: new variable, shift all systems by
8504         horizontalshift to the right, to make space for instrument names.
8505
8506         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
8507
8508         * lily/input-scheme.cc (LY_DEFINE): take format commands.
8509
8510 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8511
8512         * lily/note-column.cc (dir): idem.
8513
8514         * lily/spacing-spanner.cc (Module): idem.
8515
8516         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
8517
8518         * lily/include/paper-column.hh (class Paper_column): add
8519         non-static get_rank() member.
8520
8521         * VERSION: release 2.7.1
8522         
8523         * scm/framework-null.scm: new file, used for benchmarking.
8524
8525 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
8526
8527         * Documentation/topdocs/INSTALL.texi, configure.in: fix
8528         version dependencies for fontforge and gs.
8529
8530         * Documentation/index.html.in, Documentation/texinfo.css,
8531         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8532         Documentation/bibliography/index.html.in, 
8533         Documentation/bibliography/html-long.bst: optimize width of
8534         html for a 800x600 screen (width:760), increases printability
8535         when 'fit to page' is not set and readability in wide screens.
8536
8537         * stepmake/bin/add-html-footer.py: add missing </p>.
8538
8539 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8540
8541         * scm/define-markup-commands.scm (beam): use polygon in beam
8542         command.
8543
8544         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
8545         all acknowledged grobs, and do potentially expensive merge and
8546         write in one go.
8547
8548         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
8549
8550         * configure.in (reloc_b): add --enable-static-gxx to statically
8551         link to libstdc++
8552
8553         * lily/GNUmakefile (static-gxx-libs): new target
8554         static-gxx-libs. Create symlink to libstdc++.a
8555
8556         * lily/new-lyric-combine-music-iterator.cc: rename to
8557         Lyric_combine_music_iterator
8558
8559         * lily/lyric-combine-music-iterator.cc
8560         (Old_lyric_combine_music_iterator): rename to
8561         Old_lyric_combine_music_iterator
8562
8563         * lily/*-engraver.cc (various): remove double use of
8564         PRECOMPUTED_VIRTUAL function: only use
8565         start_translation_timestep() and stop_translation_timestep(), not
8566         both.
8567
8568         * lily/break-substitution.cc (fast_substitute_grob_array): do
8569         fast_substitute_grob_array for all unordered grob_arrays.
8570         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
8571         (substitute_grob_array): optimize.
8572
8573         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
8574
8575         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
8576
8577         * lily/parser.yy: revert $globalheader patch.
8578         
8579         * lily/include/translator.icc
8580         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
8581         Translator methods, without _static helper.
8582  
8583         * lily/grob-smob.cc (derived_mark): rename from
8584         do_derived_mark(). Return void.
8585
8586         * scm/define-context-properties.scm
8587         (all-internal-translation-properties): remove tweakCount/tweakRank.
8588
8589         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
8590         predefined break-visibilities.
8591
8592         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
8593         booleans for break-visibility.
8594
8595         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
8596
8597         * python/convertrules.py (conv): rule for Timing_translator. 
8598
8599         * lily/include/translator.icc: new file. 
8600
8601         * lily/paper-column-engraver.cc (process_music): new
8602         file. Separate Paper_column factory from Score_engraver.
8603
8604         * lily/vertically-spaced-context-engraver.cc: administer
8605         spaceable-staves property of System.
8606
8607         * lily/translator-group-ctors.cc: new file.
8608
8609         * lily/context-property.cc (make_grob_from_properties): construct
8610         the right Grob class programmatically, looking at the class entry
8611         for the meta property.
8612
8613         * lily/break-align-engraver.cc (stop_translation_timestep): call
8614         Break_align_interface::add_element() directly.
8615
8616         * lily/context.cc (measure_position): measure_position() is now a
8617         normal function.
8618
8619         * lily/include/translator.hh (class Translator): rename
8620         process_acknowledged_grobs() to process_acknowledged() and move to
8621         Translator.
8622
8623         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
8624         field for each grob description.
8625
8626         * lily/include/translator-group.hh (class Translator_group):
8627         change to base class. Separate class from Translator. This gets
8628         rid of virtual inheritance for Engravers/Performers.
8629
8630         * lily/staff-performer.cc (class Staff_performer): derive
8631         Staff_performer from Performer, not Performer_group_performer 
8632
8633         * Lily/translator-group.cc (precomputed_recurse_over_translators):
8634         new function.
8635         (precompute_method_bindings): new function. Precompute lists of
8636         Translators, so we only call methods (process_music,
8637         start_translation_timestep, etc.) for Translators needing
8638         it. Also: dispose of pointer-to-member-function calls.
8639
8640         * lily/engraver-group-engraver.cc: remove engraver_each,
8641         recurse_down_engravers ()
8642
8643         * lily/note-head.cc (internal_print): only call
8644         glyph-name-procedure if style != default. 
8645
8646 2005-07-16  Graham Percival  <gperlist@shaw.ca>
8647
8648         * ly/titling-init.ly: add printallheaders option.
8649
8650         * Documentation/user/global.itely: document printallheaders.
8651
8652 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8653
8654         * lily/system.cc (do_derived_mark): don't mark from object_alist_
8655         anymore, but do it centrally.  
8656
8657         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
8658         hammer hack.
8659
8660         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
8661
8662         * scm/output-lib.scm: remove hammer-print-function.
8663
8664         * lily/include/pointer-group-interface.hh (extract_grob_set): new
8665         macro. Declare a Link_array<Grob> and fill it from a grob.
8666         (extract_item_set): idem for item.
8667
8668         * lily/break-substitution.cc: add header.
8669         (fast_substitute_grob_array): rewrite for Grob_arrays.
8670         (substitute_grob_array): idem.
8671
8672         * lily/group-interface.cc (add_thing): remove file.
8673
8674         * flower/include/parray.hh (class Link_array): slice() is const.
8675
8676         * lily/include/grob-array.hh: new file.
8677
8678         * lily/grob-array.cc (spanner): new file.
8679
8680         * lily/beam-quanting.cc (fill): read details property from beam.
8681
8682         * lily/beam.cc: support details property.
8683
8684         * total speedups below: approx 10%.
8685
8686         * lily/include/beam.hh: new struct, softcode beam quanting parameters
8687
8688         * lily/include/grob.hh (class Grob): add interfaces_ member.
8689
8690         * lily/bezier.cc (init_polynomial_cache): new function: cache
8691         binom(3,j) t^j (1-t)^{3-j}
8692         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
8693
8694         * lily/*.cc: substitution throughout.
8695
8696         * lily/grob-property.cc (internal_get_object): new routine.
8697         (internal_set_object): idem. Store grob refrences in separate
8698         alist. This saves processing time, since properties aren't
8699         break-substituted, and the per grob namespace is smaller, both for
8700         grobs and non-grob properties.
8701
8702         * scm/define-grob-properties.scm (all-internal-grob-properties):
8703         remove center-element.
8704
8705         * lily/grob.cc: remove tweak-count, tweak-rank.
8706
8707 2005-07-15  Graham Percival  <gperlist@shaw.ca>
8708
8709         * Documentation/user/lilypond-book.itely: fixes example.
8710
8711 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8712
8713         * Documentation/user/global.itely (Creating titles):    
8714         * Documentation/user/examples.itely (All headers): change the
8715         place of \header in \score blocks (after music block) to make
8716         examples compile (cf. changes on parser.yy on 2005-07-10)
8717
8718 2005-07-13  Graham Percival  <gperlist@shaw.ca>
8719
8720         * python/convertrules.py: add exc -> ecc rule.
8721
8722         * scripts/convert-ly.py: add location of convertrules.py
8723         in a comment.
8724
8725         * Documentation/user/changing-defaults.itely: fix language.
8726
8727 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8728
8729         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
8730
8731 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8732
8733         * scm/output-socket.scm (grob-bbox): don't use inf? 
8734
8735         * flower/include/rational.hh: add operator bool() 
8736
8737         * scm/define-music-types.scm (music-descriptions): remove
8738         internal-class-name properties.
8739
8740         * lily/include/event.hh: remove file.
8741
8742         * lily/include/music-constructor.hh: remove file.
8743
8744         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
8745         in 'types property.
8746
8747         * lily/music.cc (duration_length_callback): new function.
8748
8749         * lily/event.cc: remove file.
8750
8751         * lily/music-constructor.cc: remove file.
8752
8753         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
8754
8755         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
8756         (get_context_key): idem.
8757
8758         * scm/lily.scm (lambda): new option object-keys (default to #f)
8759
8760         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
8761
8762         * scm/output-gnome.scm: remove beam routine.
8763
8764         * scm/output-ps.scm (scm): idem.
8765
8766         * scm/output-svg.scm: remove beam.
8767
8768         * ps/music-drawing-routines.ps: remove draw_beam.
8769
8770         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
8771
8772         * flower/include/guile-compatibility.hh (scm_from_locale_string):
8773         add scm_from_locale_string compatibility glue. 
8774
8775 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8776
8777         * scripts/lilypond-book.py: Prevent occuring error when
8778         'lilypond-book --output=foo/ somefile.ly' is executed multiple
8779         times and target file shoud be overwritten.  (Error message said
8780         'input file and output file is same'.)
8781
8782 2005-07-13  Graham Percival  <gperlist@shaw.ca>
8783
8784         * input/regression/slur-extreme.ly,
8785         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
8786         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
8787         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
8788         "excentricity" to "eccentricity".
8789
8790         * Documentation/user/converters.itely: fix URL for Noteedit and
8791         Rosegarden.
8792
8793         * THANKS: added Yoshinobu Ishizaki.
8794
8795 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8796
8797         * scm/define-markup-commands.scm (justify-field): add. 
8798
8799         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
8800
8801 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8802
8803         * lily/lookup.cc (filled_box): express filled_box with
8804         round_filled_box
8805
8806         * scm/midi.scm (paper-book-write-midis): new function. Write all
8807         performances in numbered MIDI files.
8808
8809         * lily/performance-scheme.cc (LY_DEFINE): new file.
8810         (LY_DEFINE): new function ly:performance-write.
8811
8812         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
8813         new function.
8814         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
8815
8816         * scm/framework-*.scm: use port arguments throughout.
8817
8818         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
8819
8820         * lily/paper-outputter.cc (Paper_outputter): take port argument.
8821
8822         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
8823
8824         * scm/framework-texstr.scm (output-framework): 
8825
8826         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
8827
8828         * scm/output-lib.scm (tablature-stem-attachment-function):
8829         tablature stem attachment fix. 
8830
8831 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8832
8833         * lily/bezier.cc: hardcode binomial coefficients of order 3.
8834
8835         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
8836
8837         * scm/define-music-types.scm (music-descriptions): don't use
8838         Music_wrapper type.
8839
8840         * lily/paper-column.cc (print): print moment too.
8841
8842         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
8843         remove compatibility cruft.
8844
8845         * lily/parser.yy (score_body): \score can only begin with Music. 
8846
8847         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
8848         make-score. Take music argument only. Move parser interaction to
8849         Scheme.
8850
8851         * scm/lily-library.scm (scorify-music): new function.
8852
8853         * python/lilylib.py (datadir): remove 2.1 compat kludge.
8854         (datadir): remove resource import.
8855         (print_environment): remove get_bbox()
8856         (cp_to_dir): remove pre 1.5.2 compat glue.
8857
8858 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8859
8860         * lily/include/simple-spacer.hh (Module): idem.
8861
8862         * lily/include/spring.hh (struct Spring): store inverse
8863         strength. This prevents division by zero.
8864
8865         * VERSION: release 2.7.0
8866         
8867         * lily/include/music.hh (class Music): remove Music::duration_log()
8868
8869         * lily/stem-engraver.cc (make_stem): take duration log from event.
8870
8871         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
8872
8873 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8874
8875         * scm/lily.scm (ly:load): load autochange.scm
8876
8877         * Documentation/user/tutorial.itely (Running LilyPond for the
8878         first time): remove reference to DVI/TeX
8879
8880         * scm/define-markup-commands.scm (text): add \text markup command.
8881
8882         * configure.in (reloc_b): bump requirement to Python 2.2.
8883
8884         * lily/include/dots.hh (class Dots): make has_interface() static.
8885
8886         * python/convertrules.py (conv): add rule for ly:grob-default-font
8887
8888         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
8889         alphabetical order.
8890
8891         * input/regression/trill-spanner-pitched.ly: new file.
8892
8893         * lily/font-interface-scheme.cc (LY_DEFINE): function
8894         ly:grob-default-font (changed from get-default-font).
8895
8896         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
8897
8898         * lily/note-head.cc (internal_print): if style is not a symbol,
8899         set style to 'default. 
8900         (internal_print): no style suffix if glyph-name-procedure not
8901         set. Default to quarter head.
8902
8903         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
8904
8905         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
8906
8907         * ly/music-functions-init.ly: \pitchedTrill
8908
8909         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
8910
8911         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
8912
8913         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
8914
8915         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
8916
8917         * po/fr.po: update
8918
8919         * po/de.po: update.
8920
8921 2005-07-06  Graham Percival  <gperlist@shaw.ca>
8922
8923         * Documentation/user/changing-defaults.itely: add link
8924         to grob-iterface.
8925
8926         * Documentation/user/advanced-notation.itely: add material
8927         to Setting automatic beam behaviour.  Thanks, Joe!
8928
8929         * Documentation/user/lilypond.itely: change encoding to utf-8.
8930
8931 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
8932
8933         * Documentation/user/advanced-notation.itely (Setting automatic
8934         beam behavior): Correct the documentation of
8935         revert-auto-beam-setting (backportme)
8936
8937 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8938
8939         * lily/ly-module.cc (ly_make_anonymous_module): define
8940         %module-public-interface of module. 
8941
8942         * lily/lily-parser.cc (print_smob): allow printing of parser smob
8943         without lexer.
8944
8945 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8946
8947         * input/regression/fret-diagrams.ly: stretch example.
8948
8949 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8950
8951         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
8952         Fodor).
8953
8954 2005-06-30  Graham Percival  <gperlist@shaw.ca>
8955
8956         * Documentation/topdocs/AUTHORS.texi: update personal web address.
8957
8958         * Documentation/user/examples.itely, lilypond-book.itely:
8959         change \RequirePackage to \usepackage.
8960
8961         * Documentation/user/global.itely: document copyright and tagline.
8962
8963 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8964
8965         * Documentation/user/basic-notation.itely (Transpose): remove link
8966         to nonexistent UntransposableMusic.
8967
8968         * scm/output-svg.scm: remove old definitions.
8969
8970         * scripts/lilypond-book.py (do_file): search for kpsewhich before
8971         invoking.
8972
8973         * python/lilylib.py (search_exe_path): new function.
8974
8975 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8976
8977         * python/lilylib.py (mkdir_p): remove setup_environment()
8978         (backportme)
8979
8980         * buildscripts/mutopia-index.py (headertext): trim text.
8981
8982         * Documentation/topdocs/NEWS.tely (Top): refresh.
8983
8984         * scm/define-markup-commands.scm (wordwrap-string): new function:
8985         split string in paras and words.
8986         (wordwrap-markups): new function.
8987         (wordwrap-stencils): new function. 
8988         (justify): use it.
8989         (wordwrap): use it.
8990         (wordwrap-string): use it
8991         (justify-string): use it.
8992
8993         * scm/lily-library.scm (regexp-split): new function.
8994
8995         * scm/define-markup-commands.scm: remove encoded-simple. 
8996         remove font-markup.
8997         (fontsize): remove old version  of fontsize.
8998         (wordwrap): new markup function. Wrap into paragraphs.
8999
9000         * VERSION: Branch lilypond_2_6
9001         (MINOR_VERSION): go to 2.7.0
9002
9003 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9004
9005         * po/zh_TW.po: update from translation project.
9006
9007 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9008
9009         * scm/midi.scm: compile fix.
9010
9011 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9012
9013         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9014         patch. Now, the tempfile module is loaded too, not only used.
9015
9016 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9017
9018         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9019         0.05 - 1.00 to 0.25 - 1.00
9020
9021         * scm/midi.scm: moved the default-instrument-equalizer procedure
9022         to just under the insturment-equalizer-alist it takes as an
9023         argument.
9024
9025 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9026
9027         * Documentation/user/advanced-notation.itely (Font selection):
9028         remove CMR note.
9029
9030         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9031
9032 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9033
9034         * THANKS: Add UTF-8 marker.
9035
9036         * Documentation/user/point-and-click.itely (http): Update: use
9037         lilypond-invoke-editor.  Fix: instruct to use user.js.
9038
9039 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9040
9041         * ly/titling-init.ly: implements printpagenumber, increases
9042         space between dedication and title (to avoid collisions with
9043         "g" and "q" in dedication), and nicer logic about copyright
9044         and instrument fields being printed on the first page.
9045         Thanks Vincent!
9046
9047         * Documentation/user/global.itely: document printpagenumber.
9048
9049 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9050
9051         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9052
9053 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9054
9055         * THANKS: update to 2.6
9056
9057         * VERSION: 2.6.0 released.
9058
9059 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9060
9061         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9062         rule, errorneously removed probably because of misleading comment.
9063
9064 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9065
9066         * python/lilylib.py (datadir): py2exe comments.
9067
9068         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9069
9070         * configure.in (reloc_b): make fontconfig REQUIRED.
9071
9072 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9073
9074         * po/fi.po: add latest translations.
9075
9076 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9077
9078         * ChangeLog: recode utf-8
9079
9080         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9081         logo.
9082
9083         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9084
9085         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9086
9087         * python/convertrules.py (do_conversion): don't print program_name
9088         from within a module
9089
9090         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9091
9092         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9093
9094 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9095
9096         * Documentation/user/lilypond-book.itely,
9097         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9098
9099         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9100         fixes baseline-skip.  Thanks Vincent!
9101
9102         * Documentation/user/advanced-notation.itely, global.itely:
9103         moved "Selecting font sizes" to global, since it deals with
9104         notation font size, not text fonts.
9105
9106 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9107
9108         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9109         to fonts.
9110
9111 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9112
9113         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9114         workaround since /dev/stdin doesn't work on Cygwin. Using a
9115         temporary file in the current directory since latex doesn't
9116         understand the path name to the default TMP in Cygwin (at least on
9117         win XP).
9118         
9119         * Documentation/user/global.itely (Creating titles): Correct
9120         misprint in example. Thanks to Rob Vlasaty.
9121
9122 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9123
9124         * VERSION (PATCH_LEVEL): release 2.5.32
9125
9126         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9127         variable in lily module
9128
9129         * scm/framework-ps.scm (output-classic-framework): error message
9130         regarding the classic framework.
9131
9132         * Documentation/user/henle-flat-gray.png (Module): new file.
9133
9134         * Documentation/user/baer-flat-gray.png (Module): new file.
9135
9136         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9137         whiteout for markups.
9138
9139         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9140         regex too. This fixes change clef appearance in PDF. 
9141
9142         * ttftool/include/*: remove.
9143
9144         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9145
9146         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9147
9148         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9149
9150         * ttftool/*: remove ttftool subdirectory.
9151
9152         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9153
9154         * lily/ttf.cc (print_header): new file. Convert to type42, using
9155         FreeType to parse the TTF. 
9156
9157         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9158         and post table may differ. Pass around post_nglyphs as well.
9159
9160 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9161
9162         * ly/music-functions-init.ly (musicMap): new music function
9163         musicMap. 
9164         
9165 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9166
9167         * make/mutopia-rules.make: anti-alias-factor = 2
9168
9169         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9170         page switch.
9171
9172         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9173         anti-alias-factor for lilypond-book runs.
9174
9175         * scm/ps-to-png.scm (scale-down-image): new function.
9176         (my-system): new function.
9177         (make-ps-images): blow up GS resolution by anti-alias-factor,
9178         scale down image by anti-alias-factor.  This improves appearance
9179         of bitmaps
9180         (make-ps-images): remove showpage. Fixes spurious empty png at
9181         end.
9182
9183         * scm/framework-ps.scm (write-preamble): downcase filename before
9184         string-matching. Should fix .TTF files (as opposed to ttf files)  
9185
9186         * Documentation/user/tutorial.itely (Running LilyPond for the
9187         first time): separate subsections for windows, macos and unix.  
9188
9189         * Documentation/user/invoking.itely (Updating files with
9190         convert-ly): add MacOS X note.
9191
9192 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9193
9194         * Documentation/user/introduction.itely (Engraving): don't include
9195         file optical-spacing, add directly.
9196
9197         * lily/paper-outputter.cc (file): open file in binary mode. This
9198         fixes OTF embedding on windows.
9199
9200 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9201
9202         * scm/framework-ps.scm (write-preamble): remove debugging output.
9203
9204         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9205
9206         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9207         outdir.
9208         (install-fc-cache): install font cache in installation directories.
9209
9210 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9211
9212         * scm/editor.scm (editor-command-template-alist): Use char iso
9213         column, except for Emacs.
9214         (get-editor-command): Substitute char too (Bertalan Fodor).
9215
9216 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9217
9218         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9219         quoted ~s.  This should fix PNG output on Windows; single quotes
9220         are regular characters on Windows.
9221
9222 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9223
9224         * Documentation/user/basic-notation.itely: include ChoirStaff
9225         in System start delimiters.
9226
9227         * Documentation/user/putting.itely: new doc section on
9228         fixing overlapping notation.
9229
9230 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9231
9232         * Documentation/user/global.itely (Paper size): \paper is in
9233         \book, not \score.
9234
9235         * make/mutopia-rules.make: -ddelete-intermediate-files
9236
9237         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9238
9239 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9240
9241         * ChangeLog: Recode utf-8.
9242
9243         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9244         datadir with .py modules.
9245
9246 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9247
9248         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9249
9250 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9251
9252         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9253         
9254         * scm/framework-ps.scm (write-preamble): remove status check.
9255
9256         * Documentation/user/invoking.itely (Updating files with
9257         convert-ly): remove -o option.
9258
9259         * VERSION (PACKAGE_NAME): release 2.5.31
9260
9261         * scm/framework-ps.scm (write-preamble): use ly:system.
9262         (write-preamble): verbosity.
9263
9264         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9265
9266         * python/convertrules.py: new file. Store conversion rules
9267         separately.
9268
9269 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9270
9271         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9272
9273 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9274
9275         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9276         \musicDisplay 
9277
9278         * Documentation/user/instrument-notation.itely (More stanzas): Add
9279         reference to StanzaNumber.
9280
9281 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9282
9283         * THANKS: separate section for website translators.
9284
9285 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9286
9287         * Documentation/topdocs/INSTALL.texi: update vim info;
9288         thanks Simon Bailey!
9289
9290         * Documentation/user/advanced-notation.itely: included
9291         color names.
9292
9293         * Documentation/user/advanced-notation.itely,
9294         Documentation/usr/notation-appendices.itely: moved
9295         color names into an appendix.
9296
9297 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9298         
9299         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9300
9301         * scm/lily.scm (lambda): initialize program options from here.
9302
9303         * scm/framework-*.scm: add header info.
9304
9305         * lily/main.cc (parse_argv): only set output format to pdf if no
9306         other format specified.
9307
9308         * scm/backend-library.scm (postprocess-output): process
9309         'delete-intermediate-files after running convert-to-*. This fixes
9310         PNG generation when 'delete-intermediate-files is set.
9311         
9312 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9313
9314         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9315         links on website. 
9316
9317 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9318
9319         * Documentation/topdocs/INSTALL.texi,
9320         Documentation/user/lilypond-book.itely: typos.
9321
9322 2005-06-12  Pal Benko  <benkop@freestart.hu>
9323
9324         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9325         added between program name and switch; -b changed to -f not
9326         to generate pdf
9327
9328 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9329
9330         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9331         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9332
9333         * input/sakura-sakura.ly: add \midi.
9334
9335         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9336         iso. python find. 
9337
9338         * ttftool/test.c (main): cosmetics.
9339
9340         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9341
9342         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9343         create a ttf2ps binary.
9344
9345         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9346
9347         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9348         true.
9349
9350 2005-06-11  Graham Percival <gperlist@shaw.ca>
9351
9352         * Documentation/user/lilypond-book.itely: add warning about
9353         the font warnings in dvips.
9354
9355 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9356
9357         * THANKS: typo
9358
9359         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9360
9361         * GNUmakefile.in: remove links for .map, .enc
9362         don't fail if out/ doesn't exist yet.
9363
9364 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9365
9366         * ttftool/util.c (surely_read): return nbytes
9367
9368         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9369
9370         * VERSION (PACKAGE_NAME): release 2.5.30
9371
9372         * flower/string-convert.cc (precision_string): >? fix.
9373
9374         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9375         (make-ps-images): add verbose -q too.
9376
9377         * lily/default-actions.cc (Module): new file. default
9378         {book,score}-print functions.
9379
9380         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9381         pass results via parseStringResult, lookup via ly:parser-lookup.  
9382
9383         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9384         constructors.
9385         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9386         (parse_string): idem.
9387
9388         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9389
9390         * lily/main.cc (main_with_guile): copy be_verbose_global into
9391         ly_set_option()
9392
9393 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9394
9395         * scm/backend-library.scm (postscript->pdf):
9396         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9397         verbose mode.  Search for several names of gs executable.
9398
9399 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9400
9401         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9402         directly. This fixes a massive memory leak, provided you use CVS
9403         GUILE.
9404
9405 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9406
9407         * ly/property-init.ly: Added tieDashed.
9408
9409         * THANKS: Added some bughunters for 2.5.
9410
9411 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9412
9413         * lily/program-option.cc: add debug-gc option.
9414
9415         * lily/include/lily-guile-macros.hh: don't protect exported module
9416         objects.
9417
9418         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9419
9420         * scm/backend-library.scm (postscript->pdf): use
9421         delete-intermediate-files iso. running-from-gui? 
9422
9423         * ttftool/util.c (surely_read): robustness. Allow read() to return
9424         less bytes than requested, as per posix standards.
9425
9426         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9427         program option.
9428
9429         * ttftool/include/ttftool.h ("C"): rename verbosity to
9430         ttf_verbosity. Add to public interface.
9431
9432         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9433
9434         * lily/program-option.cc: rename from scm-option.cc
9435
9436         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9437         (get_help_string): Print pretty help string.
9438
9439         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9440         to snippet preamble.
9441
9442         * lily/scm-option.cc: remove command-line-settings option. Fold
9443         all command-line options plus default settings in a generic
9444         interface. 
9445
9446         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9447         texts too.
9448
9449 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9450
9451         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9452         or EXT_ components non-empty.
9453
9454 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9455
9456         * scm/lily.scm (running-from-gui?): Export.
9457
9458         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9459         output in .ly source directory.
9460
9461 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9462
9463         * ttftool/util.c (surely_lseek): more verbosity.
9464
9465         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9466         compile.
9467
9468         * lily/parser.yy (Repeated_music): remove >? 
9469
9470         * scm/backend-library.scm (postscript->pdf): Support for
9471         -dgs-font-load=1
9472
9473         * scm/framework-ps.scm (write-preamble): make font loading
9474         switchable to GS via --define-default gs-font-load=1
9475
9476 2005-06-09  Graham Percival  <gperlist@shaw.ca>
9477
9478         * Documentation/user/global.itely: added \layout docs.
9479
9480 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9481
9482         * lily/lily-parser-scheme.cc: add unistd.h
9483
9484 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9485
9486         * scm/editor.scm: add char argument.
9487
9488         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
9489
9490         * ttftool/util.c (syserror): use errno for better error reporting.
9491
9492         * lily/source-file.cc (get_counts): new function. Calc column,
9493         line and char count in one go.
9494
9495         * lily/binary-source-file.cc (quote_input): rename to quote_input
9496
9497         * lily/input.cc (set): new function.
9498
9499 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9500
9501         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
9502         directory part of file name to search directory.
9503
9504         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
9505         search path and chdir to DIR if --outname=DIR used.
9506
9507         * lily/main.cc (prepend_env_path): Bugfix: Check directory
9508         existence before appending original path.
9509
9510 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9511
9512         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
9513         file" massage.
9514
9515         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
9516         texinfo.tex is always used.
9517         
9518 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9519
9520         * flower/include/axis.hh: rename from axes.hh
9521
9522         * lily/include/text-interface.hh (Module): rename from text-item.hh
9523
9524         * VERSION (PATCH_LEVEL): release 2.5.29
9525
9526         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
9527
9528         * scm/framework-ps.scm (font-file-as-ps-string): new function.
9529         (handle-macfont): new function. Call fondu for Native mac fonts.
9530
9531         * scm/define-markup-commands.scm (fill-line): handle text-widths =
9532         '() case.
9533
9534 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9535
9536         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
9537         multi-page.  Fix .eps regular expression.
9538
9539 2005-06-07  Graham Percival  <gperlist@shaw.ca>
9540
9541         * Documentation/user/putting.itely: add info on modifying templates.
9542
9543         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
9544         misc small changes.
9545
9546 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9547
9548         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
9549
9550         * scripts/lilypond-ps2png.scm
9551
9552         * VERSION (PACKAGE_NAME): release 2.5.28
9553
9554 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9555
9556         * lily/main.cc (prepend_env_path): Do not append /, that does not
9557         work.  Localedir lives in datadir, not in prefix.
9558
9559         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
9560         hack for windows.
9561
9562         * flower/include/file-cookie.hh: Compile fix.
9563
9564 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9565
9566         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
9567
9568         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
9569         system primitives.
9570         (gulp-port): using read-string!/partial. We don't want to read an
9571         entire PS file  (GUILE 1.6 limits strings to 16M) 
9572
9573         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
9574         properties. Add font-interface. 
9575
9576         * scm/define-grob-properties.scm (all-user-grob-properties):
9577         remove old bracket properties.
9578
9579         * scm/x11-color.scm: reformat. 
9580
9581         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
9582         LedgerLineSpanner if new StaffSymbol is found. 
9583
9584         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
9585         staff-symbol for finishing staff. 
9586
9587         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
9588
9589         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
9590         change black to currentColor everywhere. This fixes color support
9591         in SVG.
9592
9593 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
9594
9595         * input/regression/fret-diagrams.ly: new file to test fret diagram
9596         capability
9597
9598         * scm/output-tex.scm: remove white-dot and white-text
9599
9600         * scm/output-ps.scm: remove white-dot and white-text
9601
9602         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
9603         using ly:stencil-in-color instead
9604         (draw-dots) : remove call to white-dot
9605
9606 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9607
9608         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
9609         support.
9610
9611         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
9612
9613         * flower/include/file-cookie.hh: new file. lily_cookie extension 
9614
9615         * flower/file-cookie.cc: new file. lily_cookie extension.
9616         
9617 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9618
9619         * scm/editor.scm (editor-command-template-alist): Add syn
9620         editor (Jaap [de Vos]).
9621
9622 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
9623
9624         * scripts/lilypond-ps2png.scm:
9625         * scm/ps-to-png.scm: New file.
9626
9627         * scm/backend-library.scm (postscript->png): Use it.
9628
9629         * scripts/lilypond-ps-to-png.py: Remove file.
9630
9631         * python/lilylib.py (get_bbox, make_ps_images): Remove.
9632
9633 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9634
9635         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
9636
9637         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
9638         start on grace moment. Fixes autobeam-grace.ly.
9639
9640         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
9641         process anything unless we're at the end of a pending beam. Fixes
9642         syncopated 8ths beamed across a beat.
9643
9644 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
9645
9646         * scm/editor.scm (editor-command-template-alist): Start emacs if
9647         emacslient fails.
9648
9649         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
9650
9651         * flower/file-path.cc (is_file, is_dir): Export.
9652
9653         * lily/main.cc (prepend_env_path, set_env_file): Use them.
9654
9655 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
9656
9657         * lily/easy-notation.cc: Added include cctype to correct
9658         compilation error.
9659
9660 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9661
9662         * scm/backend-library.scm (postscript->pdf): set resolution to
9663         1200, so bitmap fonts aren't that ugly. 
9664
9665         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
9666
9667         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
9668         parent if we have a notehead. Fixes incorrect offsets when
9669         Paper_column is very wide in the X direction.
9670
9671         * input/regression/font-family-override.ly (Module): new file.
9672
9673         * scm/font.scm (make-pango-font-tree): new function.
9674
9675         * lily/beam.cc (before_line_breaking): remove warning about less
9676         than 2 visible stems. We still get a warning when there is only
9677         one stem.
9678
9679 2005-06-01  Werner Lemberg  <wl@gnu.org>
9680
9681         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
9682         correctly.
9683
9684 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9685
9686         * lily/slur-scoring.cc (generate_avoid_offsets): new
9687         function. Generate avoid offsets once per slur.
9688
9689         * lily/slur.cc (add_extra_encompass): add dependency to
9690         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
9691
9692         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
9693         too. Fixes inf error with added bass notes.
9694
9695         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
9696         argument anymore.
9697
9698         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
9699
9700         * input/tutorial/lbook-latex-test.tex: add line length test.
9701
9702         * scripts/lilypond-book.py (set_default_options): new
9703         function. Call this before dissecting snippets, so linewidth
9704         settings reach the snippets.
9705
9706 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9707
9708         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
9709
9710 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9711
9712         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
9713
9714 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9715
9716         * stepmake/aclocal.m4: More autopackage friendliness.
9717
9718 2005-05-31  Graham Percival  <gperlist@shaw.ca>
9719
9720         * Documentation/index.html.in: remove link to LSR.
9721
9722         * Documentation/user/global.itely: remove duplicate
9723         "dedication" \header{} section.
9724
9725 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9726
9727         * VERSION (PACKAGE_NAME): release 2.5.27.
9728
9729         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
9730         too. Plugs memory leak.
9731
9732         * make/lilypond.fedora.spec.in (Group): remove
9733         lilypond-pdfpc-helper.
9734
9735         * scripts/GNUmakefile (SEXECUTABLES): remove
9736         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
9737
9738         * scm/font.scm (make-century-schoolbook-tree): add Mono as
9739         'typewriter family.
9740
9741         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
9742         memory leak.
9743
9744         * lily/parser.yy (score_body): don't clone Score, that's done in
9745         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
9746
9747         * lily/score-engraver.cc (derived_mark): new function.
9748         (initialize): unprotect Paper_score. This fixes a memory leak.
9749
9750         * lily/score-performer.cc (derived_mark): new function.
9751
9752         * lily/score-translator.cc (get_output): use SCM for get_output() call.
9753
9754         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
9755         spurious warning.
9756
9757         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
9758         serif.
9759
9760 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9761
9762         * configure.in (reloc_b): Add --enable-relocation.
9763
9764 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9765
9766         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
9767
9768         * input/regression/alignment-order.ly: add Staff example.
9769
9770 2005-05-31  John Mandereau   <john.mandereau@free.fr>
9771
9772         * po/fr.po: update.
9773
9774 2005-05-31  Graham Percival  <gperlist@shaw.ca>
9775
9776         * Documentation/index.html.in: add link to LSR.
9777
9778 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9779
9780         * scm/define-stencil-commands.scm (Module): new file. Register all
9781         allowed stencil expression heads in a central place.
9782
9783         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
9784         ly:make-stencil
9785
9786         * lily/stencil-expression.cc (all_stencil_heads): registering
9787         stencil expressions.
9788
9789         * lily/stencil-interpret.cc: new file. Stencil expression
9790         interpreting.
9791
9792         * input/xiao-haizi-guai-guai.ly: move file back.
9793
9794 2005-05-30  Graham Percival  <gperlist@shaw.ca>
9795
9796         * Documentation/user/advanced.itely, converters.itely,
9797         instrument-notation.itely, lilypond-book.itely: misc small
9798         changes.
9799
9800 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9801
9802         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
9803
9804         * make/lilypond.fedora.spec.in: Fix source url.
9805
9806         * cygwin: Update from mingw patches.
9807
9808         * scm/editor.scm (editor-command-template-alist): Use jedit
9809         -reuseview (Bertalan), add uedit (Patrick Huberts).
9810
9811         * input/xiao-hai-zi-guai-guai.ly: Rename from
9812         xiao-haizi-guai-guai.ly.
9813
9814         * input/*: Reindent, do not use TAB.
9815
9816         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
9817         white background.
9818
9819 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
9820
9821         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
9822         numerical overflow error.
9823
9824 2005-05-29 Laura Conrad <lconrad@laymusic.org>
9825         
9826         * abc2ly.py: fix to syntax error in multi-part output.
9827
9828 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9829
9830         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
9831         with disappearing span bars when alignAboveContext is active
9832
9833         * lily/property-iterator.cc (check_grob): use is-grob?
9834         object-property. Fixes crash-key-sig-font-size.ly. 
9835
9836 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9837
9838         * lily/bar-line.cc (print): don't round barlines; this produces
9839         odd aliasing effects in Acroread.
9840
9841         * lily/timing-engraver.cc (process_music): robustness fix.
9842
9843         * lily/context-def.cc (filter_engravers): bugfix.
9844
9845 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9846
9847         * lily/lilypond.rc.in: Add ly-icon.
9848
9849         * lily/GNUmakefile: 
9850         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
9851         rules.
9852
9853 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9854
9855         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
9856
9857         * ps/music-drawing-routines.ps: 
9858
9859         * scm/output-ps.scm: remove draw ez_ball.
9860
9861         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9862         EasyNotation context definition.
9863
9864         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
9865         Text_interface and color for making easy note heads.
9866
9867         * lily/stencil.cc (with_color): new function.
9868
9869         * ps/music-drawing-routines.ps: remove draw_zigzag_line
9870
9871         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
9872         output routine. Zigzag now works in SVG too.
9873
9874         * scm/output-tex.scm (filledbox): idem.
9875
9876         * scm/output-svg.scm (filledbox): idem.
9877
9878         * scm/output-ps.scm (lily-def): remove horizontal-line. 
9879
9880         * lily/lookup.cc (horizontal_line): use draw-line. 
9881
9882         * lily/system-start-delimiter.cc: remove old staff bracket code.
9883
9884         * mf/feta-haak.mf: further tweaks.
9885
9886         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
9887
9888         * mf/feta-generic.mf: include feta-haak.
9889
9890         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
9891
9892         * scm/framework-ps.scm (write-preamble): only load fonts if their
9893         filename is a string. 
9894
9895 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9896
9897         * scm/output-svg.scm (circle): support circle.
9898         (bracket): stub for bracket.
9899
9900         * scripts/lilypond-book.py (main): make sure --psfonts warning is
9901         correct.
9902
9903 2005-05-26  Graham Percival  <gperlist@shaw.ca>
9904
9905         * Documentation/user/lilypond.tely, advanced-notation.itely,
9906         basic-notation.itely, instrument-notation.itely, global.itely,
9907         introduction.itely, tutorial.itely: rearranging, editing,
9908         clean-up.
9909
9910         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
9911         for compiling on FreeBSD.
9912
9913 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9914
9915         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
9916         otf files.
9917
9918         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
9919         bugfixes.
9920
9921         * VERSION: 2.5.26 released.
9922
9923         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
9924
9925 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
9926
9927         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
9928         if printpagenumber is false.
9929
9930 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9931
9932         * lily/font-config.cc (init_fontconfig): comment out FontConfig
9933         cache warning.
9934
9935         * lily/tie.cc (print): support dotted ties.
9936         
9937 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9938
9939         * scm/define-grobs.scm (all-grob-descriptions): switch off
9940         debugging
9941         (all-grob-descriptions): Arpeggio has Y-extent.
9942
9943         * scm/define-music-properties.scm (all-music-properties): document
9944         length-callback and start-callback as "read-only".
9945
9946         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
9947         length-callback after creation. 
9948
9949         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
9950         compressmusic -> compressMusic.
9951
9952         * ly/music-functions-init.ly (oldaddlyrics): idem.
9953
9954         * lily/parser.yy: NewLyricCombineMusic ->
9955         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
9956
9957 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
9958
9959         * ly/Welcome_to_LilyPond.ly: typo.
9960
9961 2005-05-24  Graham Percival  <gperlist@shaw.ca>
9962
9963         * Documentation/user/lilypond.tely: move changing-defaults to be
9964         before global issues.
9965
9966         * Documentation/user/basic-notation.itely: move Transpose section
9967         here from advanced/Other.
9968
9969         * Documentation/user/changing-defaults.itely,
9970         advanced-notation.itely: move Fonts to advanced, edit.
9971
9972 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9973
9974         * lily/parser.yy (bare_int): remove rule.  From now on, we require
9975         # before negative integers.
9976
9977 2005-05-23  Graham Percival  <gperlist@shaw.ca>
9978
9979         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
9980
9981         * Documentation/user/lilypond.tely: change Unified index to
9982         LilyPond index.
9983
9984         * Documentation/user/advanced-notation.itely,
9985         instrument-notation.itely: editing.
9986
9987 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
9988
9989         * scm/lily.scm (lilypond-all): Bugfix: return failed.
9990
9991         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
9992
9993 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
9994
9995         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
9996         ly:port-move.  Needs to be stderr-specific on mingw.
9997         Run fixcc.
9998
9999 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10000
10001         * lily/general-scheme.cc (ly:port-move): Remove.
10002
10003         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10004         windows.
10005
10006         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10007         variables.  This eliminates the need for a gs.bat wrapper, which
10008         opens a console.
10009
10010         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10011         * scm/lily.scm (running-from-gui?): 
10012         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10013         artifact of not compiling with -mwindows.
10014
10015         * scm/editor.scm: Define PLATFORM.
10016
10017 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10018
10019         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10020         can start to cut & paste lilypond-book fragments.  
10021
10022         * scm/define-music-types.scm (music-descriptions): remove
10023         UntransposableMusic
10024
10025 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10026
10027         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10028
10029 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10030
10031         * Documentation/user/instrument-notation.itely: remove *Engraver.
10032
10033         * Documentation/user/advanced-notation.itely: edit, rearrange.
10034
10035 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10036
10037         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10038         findresource iso. findfont for CID CFF fonts.
10039
10040         * VERSION (PACKAGE_NAME): release 2.5.25
10041
10042         * ly/Welcome_to_LilyPond.ly: add  \version
10043
10044 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10045
10046         * Documentation/user/programming-interface.itely: move
10047         \displayMusic into its own section.
10048
10049         * Documentation/user/basic-notation.itely: finish editing.
10050
10051 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10052
10053         * flower/file-path.cc (find): don't throw away file_name.dir, but
10054         append to it. Fixes \include with directories.
10055
10056         * flower/include/file-path.hh (class File_path): don't derive from
10057         Array<String>.
10058
10059         * flower/include/file-name.hh (class File_name): remove to_str0()
10060
10061         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10062         Hara_kiri_engraver in separate file.
10063
10064         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10065         translation went wrong. Fixes vertically translated slurs.
10066
10067 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10068
10069         * Documentation/user/basic-notaton.itely: editing.
10070
10071 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10072
10073         * Documentation/user/macros.itexi, basic-notation.itely:
10074         add @commonprop (commonly used properties) macro.
10075
10076 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10077
10078         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10079
10080         * scripts/lilypond-book.py (invokes_lilypond): new function
10081         (main): only run fontextract if invokes_lilypond() is true.
10082
10083         * lily/function-documentation.cc (ly_add_function_documentation):
10084         duh, use !=
10085
10086         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10087
10088         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10089
10090         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10091
10092         * lily/function-documentation.cc (ly_add_function_documentation):
10093         use scm_hash_table_p() for checking.
10094
10095 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10096
10097         * Documentation/user/advanced-notation.itely (Text scripts):
10098         Change nonexisting @internalsref{Text markup} to @ref{Text
10099         markup}.  Change @internalsref{Text script} to
10100         @internalsref{TextScript}.
10101
10102         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10103
10104 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10105
10106         * Documentation/user/tutorial.itely, basic-notation.itely,
10107         changing-defaults.itely: remove duplicate cindex entries
10108         that appear on the same page.
10109
10110         * scm/define-grobs.scm: change default padding for TextSpanner.
10111
10112         * Documentation/topdocs/AUTHORS.texi: update email address.
10113
10114         * Documentation/user/global.itely: add info about \include.
10115
10116 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10117
10118         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10119         when running-from-gui.
10120
10121         * scm/editor.scm (get-editor): Add platform defaults.
10122
10123         * scm/backend-library.scm (postscript->pdf): Typo.
10124
10125 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10126
10127         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10128
10129         * lily/font-config.cc (init_fontconfig): add warning about cache.
10130
10131 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10132
10133         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10134
10135 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10136
10137         * lily/horizontal-bracket.cc (print): Take care of the direction
10138         property so brackets above the stave point downwards. 
10139
10140         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10141         for HorizontalBracket so it doesn't end up within the stave.
10142
10143 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10144
10145         * lily/GNUmakefile (default): Typo.
10146
10147         * scm/lily.scm (PLATFORM): Export.
10148
10149         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10150         load-font-via-GS, ttftool or fopencookie is broken on windows.
10151         
10152         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10153         -dSAFER, that is broken on windows.
10154
10155 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10156
10157         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10158         for FlexLexer.h
10159
10160         * scripts/lilypond-invoke-editor.scm: remove stray -
10161
10162 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10163
10164         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10165         Fixes deprecation warning.
10166
10167         * flower/include/string.icc (to_string): Only inline if
10168         -DSTRING_UTILS_INLINED.
10169
10170         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10171         name.  Remove windows comment.
10172
10173         * scm/editor.scm (slashify): New function.
10174         (get-editor-command): Use it.
10175         (get-command-template): Do not alter editor command if
10176         environment value includes `%(file)s' magic.
10177
10178         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10179         (dissect-uri): Use it.
10180         (unquote-uri): Bugfix.
10181
10182 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10183
10184         * scm/framework-ps.scm (write-preamble): add TTF rule.
10185
10186         * Documentation/topdocs/README.texi (Top): remove note about
10187         xdelta.
10188
10189         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10190         requirement.
10191
10192         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10193         function. Figure out where FlexLexer.h lives
10194
10195         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10196         
10197 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10198
10199         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10200         with Windows root in file name.
10201
10202         * scm/backend-library.scm (ly:system): Only redirect output (using
10203         system and shell, ugh) if /dev/null is writable.
10204
10205         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10206         windows icon.
10207
10208         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10209         on Mingw.
10210
10211         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10212         click.
10213
10214         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10215         use result of stat when available.
10216
10217         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10218         absolute file name and root.
10219
10220         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10221
10222         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10223
10224         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10225         slashes in file name.
10226
10227 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10228
10229         * Documentation/user/preface.itely (Preface): Run
10230         texinfo-all-menus-update.
10231
10232         * scm/editor.scm (get-editor-command): Bugfix: allow full
10233         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10234
10235         * Documentation/pictures/lilypond-48.xpm: New file.
10236
10237         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10238
10239         * ly/Welcome_to_LilyPond.ly: New file.
10240
10241         * lily/main.cc (main): Only identify if we have a terminal.
10242
10243         * scm/backend-library.scm (postscript->png)
10244         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10245         non-/bin/sh).
10246
10247 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10248
10249         * Documentation/topdocs/AUTHORS.texi: polish, update.
10250
10251 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10252
10253         * Documentation/user/preface.itely (Notes for version 2.6): new
10254         notes for 2.6
10255
10256         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10257         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10258         is not fully contained" warnings.
10259
10260         * lily/slur-scoring.cc (get_bound_info): remove warning.
10261
10262         * lily/staff-symbol-engraver.cc (process_music): start initial
10263         spanner in process_music(). This fixes overrides of StaffSymbol
10264         properties.
10265
10266         * scm/framework-pdf.scm (Module): remove.
10267
10268         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10269
10270         * lily/ambitus-engraver.cc: formatting cleanups.
10271
10272         * mf/feta-solfa.mf (Module): remove.
10273
10274         * ChangeLog: more details about contributions.
10275
10276 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10277
10278         * lily/align-interface.cc (align_elements_to_extents): warn if
10279         called too early. Fixes: disappearing-staff-lines.ly
10280
10281         * VERSION (PACKAGE_NAME): release 2.5.24
10282
10283 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10284
10285         * stepmake/aclocal.m4: Typo.
10286
10287         * flower/string.cc (substitute): Take two strings or two
10288         characters.  Update callers.
10289
10290 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10291
10292         * flower/file-name.cc (File_name): Slashify.
10293
10294         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10295
10296         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10297
10298         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10299
10300         * configure.in (gui_b): Use it.
10301
10302         * lily/lilypond.rc.in: New file.
10303
10304         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10305
10306 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10307
10308         * Documentation/user/advanced-notation.itely: edit of Text
10309         section; clarify text scripts vs. text markup.
10310
10311 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10312
10313         * lily/multi-measure-rest-engraver.cc
10314         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10315         separation items on start. Fixes mm rests in start of score.
10316
10317         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10318         don't access StaffSymbol if not there.
10319         Fixes: crash-staff-symbol-engraver.ly.
10320
10321         * lily/instrument-name-engraver.cc (class
10322         Instrument_name_engraver): data member first_. Create
10323         InstrumentName on start. 
10324
10325 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10326
10327         * Documentation/user/instrument-notation.itely: add guitar
10328         position.
10329
10330         * Documentation/user/introduction.itely,
10331         Documentation/user/lilypond.tely,
10332         Documentation/user/tutorial.itely: begin pruning
10333         unused (duplicated) cindex entries and misc cleanup.
10334
10335 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10336
10337         * input/test/volta-chord-names.ly: Bring the explanation up to
10338         date.
10339
10340 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10341
10342         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10343         Specify `@documentencoding utf-8' for html, ignore warnings.
10344
10345 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10346
10347         * THANKS: Added bughunters.
10348
10349 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10350
10351         * lily/main.cc: update help string for `lilypond -H'.
10352
10353         * po/fi.po: update.
10354         
10355 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10356
10357         * Documentation/user/advanced-notation.itely: minor fixes.
10358
10359 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10360
10361         * scm/editor.scm: New module.
10362
10363         * scm/lily.scm (gui-main): Use it.
10364
10365         * scm/framework-gnome.scm (spawn-editor): Use it.
10366
10367         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10368
10369 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10370
10371         * scm/framework-ps.scm (load-font-via-GS):  new function.
10372
10373         * lily/pango-font.cc (pango_item_string_stencil): add support for
10374         CID keyed font.
10375
10376         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10377
10378 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10379
10380         * Documentation/user/basic-notation.itely: add @ref.
10381
10382         * Documentation/user/advanced-notation.itely: add example
10383         of 5/8 beaming.
10384
10385 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10386
10387         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10388
10389         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10390         going through ps2pdf wrappers.
10391
10392 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10393
10394         * Documentation/user/instrument-notation.itely: petrucci note
10395         heads: updated docu
10396
10397         * input/regression/note-head-style.ly: updated regression test;
10398         indentation fixes
10399
10400         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10401         heads as default
10402
10403         * mf/parmesan-heads.mf: minor editing; use musicological names
10404         (rather than optical description) as note head names
10405
10406         * scm/output-lib.scm: complete petrucci heads
10407
10408 2005-05-09  Pal Benko  <benkop@freestart.hu>
10409
10410         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10411         heads, but bigger)
10412
10413 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10414
10415         * lily/main.cc (main_with_guile): Remove no files check.
10416
10417         * lily/main.cc (ly:usage): Export to Scheme.
10418
10419         * scm/lily.scm (no-files-handler): New function.
10420
10421         * scm/lily.scm (lilypond-main): Use it.
10422
10423         * configure.in (gui_b): Add mbrtowc checking.
10424         Resurrect [utf8/]wchar.h checking.
10425
10426 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10427
10428         * Documentation/user/advanced-notation.itely (Metronome marks):
10429         Add link to the program reference for MetronomeMark
10430
10431         * Documentation/user/lilypond-book.itely (An example of a
10432         musicological document): Correct the example using psfonts 
10433
10434 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10435
10436         * po/fi.po: update after a lesson how to update entries against
10437         source.
10438         
10439         * po/TODO: document the lesson.
10440
10441 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10442
10443         * configure.in (gui_b): remove wcrtomb checking.
10444
10445         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10446         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10447
10448 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10449
10450         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10451         keep Scheme expressions and strings unmodified when doing the
10452         conversion to postfix notation for slurs and beams. Should
10453         hopefully solve most related conversion problems. 
10454
10455         * Documentation/user/lilypond-book.itely : Clarify and correct how
10456         to call dvips with -h psfonts.
10457
10458 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10459
10460         * Documentation/user/instrument-notation.itely (Entering lyrics):
10461         Typo.  Fixes build.
10462
10463 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10464
10465         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10466
10467         * Documentation/user/lilypond.tely, lilypond-book.itely,
10468         tutorial.itely: change references to 2.5.x to 2.6.x.
10469
10470         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10471         vs \lyricmode.
10472
10473         * Documentation/user/invoking.itely: remove old info about
10474         lilypond-profile.
10475
10476         * Documentation/topdocs/INSTALL.texi: remove old info about
10477         lilypond-profile, add warning about needing international fonts
10478         to build docs.
10479
10480 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10481
10482         * lily/include/grob-info.hh (class Grob_info): make data member
10483         private. Changes throughout.
10484
10485         * input/regression/alignment-order.ly: new file. 
10486
10487         * lily/vertical-align-engraver.cc (acknowledge_grob): read
10488         alignAboveContext and alignBelowContext
10489
10490 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10491
10492         * lily/pfb.cc (LY_DEFINE): add cast.
10493
10494         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
10495         matches .otf
10496         (write-preamble): warn about unknown fonts.
10497
10498         * lily/pfb.cc (Module): new function ly:otf->cff
10499
10500         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
10501         (get_otf_table): new function.
10502
10503 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10504
10505         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
10506         iso. ps2png.
10507
10508 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
10509
10510         * po/fi.po: apply second round of update.
10511
10512 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10513
10514         * scm/x11-color.scm (make-x11-color-handler): don't use
10515         #\sp. Apparently doesn't work on all platforms. 
10516
10517 2005-05-06  Graham Percival  <gperlist@shaw.ca>
10518
10519         * Documentation/user/advanced-notation.itely, putting.itely,
10520         tutorial.itely, global.itely, introduction.itely: really minor fixes.
10521
10522 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10523
10524         * VERSION (PACKAGE_NAME): release 2.5.23
10525
10526 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10527
10528         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
10529         convert to utf-8.
10530
10531         * THANKS: Add translators for this release, convert to utf-8.
10532
10533         * mf/GNUmakefile (MFTRACE_FLAGS):
10534         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
10535         outdir as option (WAS: hardcoded).
10536
10537 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10538
10539         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
10540         finished_span_
10541
10542         * THANKS: add Hans Forbrich.
10543
10544         * Documentation/topdocs/NEWS.tely (Top): document new feature.
10545
10546         * Documentation/user/basic-notation.itely (Staff symbol): document
10547         start/stop staff. Reference to ossia.ly
10548
10549         * input/test/ossia.ly: new example using stop and startStaff.
10550
10551         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
10552         in other words, don't create "|" barline at start of the score.
10553         (start_translation_timestep): don't set whichBar for start of score.
10554
10555         * input/regression/staff-halfway.ly: use new functionality.
10556
10557         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
10558         start and stop staff based on events.
10559
10560         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
10561
10562         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
10563
10564 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10565
10566         * Documentation/user/programming-interface.itely (How markups work
10567         internally ): remove \encoding reference.
10568
10569 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
10570
10571         * scripts/convert-ly.py: Attempt to do a smarter update of 
10572         text markups from versions < 1.9.0 with arbitrary nesting.
10573
10574 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
10575
10576         * po/fi.po: convert to utf-8, and update.
10577
10578 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10579
10580         * make/lilypond.suse.spec.in: update from suse 2.4 package.
10581
10582         * lily/*.cc: more <? >? to min/max changes
10583
10584         * lily/include/interpretation-context-handle.hh: rename
10585         Interpretation_context_handle to Context_handle.
10586
10587 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
10588
10589         * input/regression/GNUmakefile (local_delete): use `find` together 
10590         with `xargs` to avoid too long argument-lists in cmd line.
10591
10592 2005-05-04  Graham Percival  <gperlist@shaw.ca>
10593
10594         * Documentation/user/introduction.itely: updates "About this manual".
10595
10596         * Documentation/user/advanced-notation.itely,
10597         invoking.itely: minor fixes.
10598
10599 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10600
10601         * COPYING: add font exception. Update FSF address. 
10602
10603         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
10604         should be taken without child context.
10605
10606         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
10607
10608         * scm/define-markup-commands.scm (triangle): new command, as
10609         robust replacement for unicode Delta/Triangle.
10610
10611 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10612
10613         * ps/music-drawing-routines.ps: add fillp argument.
10614
10615         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
10616
10617         * lily/font-config.cc (init_fontconfig): don't add cff/
10618
10619         * VERSION (PACKAGE_NAME): release 2.5.22
10620
10621         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
10622
10623         * lily/grace-engraver.cc (consider_change_grace_settings): use
10624         is_alias(). Fixes problem with CueVoice grace notes. 
10625
10626         * lily/simultaneous-music-iterator.cc (construct_children): call
10627         Music_iterator::quit() for iterators that start out invalid. This
10628         fixes indefinitely continuing contexts.
10629
10630         * buildscripts/substitute-encoding.py: new file
10631
10632         * Documentation/user/basic-notation.itely (Basic polyphony): fix
10633         missing @end 
10634
10635         * scripts/lilypond-book.py (write_if_updated): print file name.
10636
10637         * Documentation/user/basic-notation.itely (Explicitly
10638         instantiating voices): idem.
10639
10640         * Documentation/user/advanced-notation.itely (Text spanners):
10641         remove stray { } 
10642
10643         * lily/context.cc (default_child_context_name): the default child
10644         is now first in accepts_list_.
10645
10646         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
10647         \defaultchild to all relevant contexts.  This fixes:
10648         drums-pitch.ly.
10649
10650         (Probably also fixes similar problems with ancient
10651         transcriptions getting CueVoices instead of the desired voices.)
10652  
10653         * lily/context-def.cc (get_default_child): new function.
10654         (get_accepted): place default child in front of list.
10655
10656         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
10657
10658         * lily/include/context-def.hh (struct Context_def): add
10659         default_accept_
10660
10661 2005-05-03  Graham Percival  <gperlist@shaw.ca>
10662
10663         * scm/define-grobs.scm: remove "remove-first" line, since
10664         the absent property is set to #f anyway.
10665
10666         * Documentation/user/basic-notation.itely,
10667         advanced-notation.itely, instrument-notation.itely: minor
10668         fixes.
10669
10670         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
10671
10672         * Documentation/user/advanced-notation.itely,
10673         changing-defaults.itely: consolidate Text stuff in
10674         advanced notation.
10675
10676         * Documentation/user/global.itely: better docs for \header.
10677
10678         * Documentation/user/putting.itely: new chapter; placeholder
10679         for future expansion.
10680
10681         * Documentation/user/examples.itely: moved "suggestions for
10682         writing LP files" section into putting.itely.
10683
10684         * Documentation/user/lilypond.itely: added new chapter,
10685         fixed the short table of contents.
10686
10687 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10688
10689         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
10690         infinity for unfeasible beams.
10691
10692         * make/lilypond.fedora.spec.in (Group): idem.
10693
10694         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
10695
10696         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
10697
10698         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
10699         fonts directly.
10700
10701         * buildscripts/gen-emmentaler-scripts.py (i): idem.
10702
10703         * mf/GNUmakefile: remove all CFF rules.
10704
10705         * scm/framework-ps.scm (ps-embed-cff): reinstate.
10706
10707         * lily/open-type-font-scheme.cc (LY_DEFINE):
10708         new function ly:otf-font-table-data.
10709         (LY_DEFINE): new function otf-font?
10710
10711 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10712
10713         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
10714         ($(outdir)/Fontmap.lily): idem.
10715
10716         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
10717         for PFAEmmentaler-XXX.pfa. 
10718
10719         * Documentation/user/music-glossary.tely (accidental): NL
10720         translation of accidental.
10721
10722 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
10723
10724         * flower/include/international.hh: Bugfix: include "string.hh".
10725
10726         * lily/include/mingw-compatibility.hh: New file.
10727
10728         * flower/include/libc-extension.hh (memrev): Rename from strrev.
10729
10730         * configure.in: Search for mingw wcrtomb library.
10731
10732 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
10733
10734         * scripts/convert-ly.py: Bug fix
10735
10736         * Documentation/user/changing-defaults.itely (Common tweaks):
10737         Added example where the context has to be specified explicitly
10738         (MetronomeMark). 
10739
10740 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10741
10742         * scripts/lilypond-book.py (ly_options): set timing to #f for
10743         notime option.
10744
10745         * scripts/convert-ly.py (conv): typo.
10746
10747         * flower/*.cc: remove <? and >?
10748         
10749         * lily/*.cc: remove <? and >?
10750
10751         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
10752         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
10753         editor.
10754
10755 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10756
10757         * lily/part-combine-engraver.cc: add space to variable list.
10758
10759 2005-04-30  Graham Percival  <gperlist@shaw.ca>
10760
10761         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
10762         remove-first to false (matches docs)
10763
10764         * Documentation/user/advanced-notation.itely: corrected docs
10765         concerning remove-first.
10766
10767 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
10768
10769         * lily/part-combine-engraver.cc: make sure that the relevant
10770         properties are included in the documentation.
10771
10772 2005-04-28  Graham Percival  <gperlist@shaw.ca>
10773
10774         * Documentation/user/lilypond-book.itely: Bernard's docs
10775         for \betweenLilyPondSystem.
10776
10777 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10778
10779         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
10780         remarks.
10781
10782 2005-04-28  Pal Benko  <benkop@freestart.hu>
10783
10784         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
10785         only on vertical lines of flexa shape, and use a constant
10786         thickness value for horizontal lines (patch slightly modified by
10787         Jürgen Reuter)
10788
10789         * lily/include/mensural-ligature.hh: make 2 comments clearer
10790
10791 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
10792
10793         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
10794         to need_extra_horizontal_space; bugfix: use class scope to avoid
10795         global namespace pollution
10796
10797         * Documentation/user/instrument-notation.itely (ligatures): added
10798         comment on possible future syntax change and how to work around
10799
10800         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
10801         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
10802         intervals (fixes agnus dei example)
10803
10804         * Documentation/user/instrument-notation.itely (white mensural
10805         ligatures): selected a more illustrative example
10806
10807 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
10808
10809         * Documentation/index.html.in: specify utf-8 charset in meta content.
10810
10811 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10812
10813         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
10814         empty 2nd page for single page.
10815
10816         * scm/lily.scm: remove p&c definitions.
10817
10818         * po/zh_TW.po (Module): new translation.
10819
10820         * lily/lily-guile.cc (ly_chain_assoc): remove.
10821
10822         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
10823         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
10824
10825 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10826
10827         * lily/beaming-info.cc: remove infinity_i
10828
10829         * scripts/abc2ly.py (out_filename): fix thinko with \version.
10830
10831 2005-04-26  Graham Percival  <gperlist@shaw.ca>
10832
10833         * Documentation/user/basic-notation.itely,
10834         instrument-notation.itely, advanced-notation.itely,
10835         changing-defaults.itely: minor fixes.  Added docs
10836         for colors to advanced-notation.itely.
10837
10838         * Documentation/user/advanced-notation.itely: fixed compile
10839         problem and added Bernard's x11-color doc patch.
10840
10841 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
10842
10843         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
10844         alright this time round.
10845
10846 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10847
10848         * Documentation/topdocs/INSTALL.texi (Top): idem.
10849
10850         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
10851
10852         * VERSION (MAJOR_VERSION): release 2.5.21
10853
10854         * scm/output-ps.scm (grob-cause): bugfix.
10855
10856 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
10857
10858         * cygwin/*: Update.
10859
10860         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
10861         stuff.
10862
10863         * scm/output-ps.scm (grob-cause): Bugfix.
10864
10865         * scm/lily.scm (ly:load): Remove x11-color.
10866
10867         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
10868         quote executable, fixes getting version from program --with
10869         --options.
10870         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
10871         $ac_exeect.
10872
10873         * Documentation/user/GNUmakefile: Only build music-glossary with
10874         rendered lilypond snippets during web.
10875
10876 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10877
10878         * po/de.po: update.
10879
10880         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
10881
10882 2005-04-22  Laura Conrad <lconrad@laymusic.org>
10883  
10884         * scripts/abc2ly:
10885         second title line append with punctuation dash character;
10886         encode abc2ly python strings in utf-8
10887        
10888 2005-04-21  Laura Conrad <lconrad@laymusic.org>
10889
10890         * scripts/abc2ly fix chords (again)
10891  
10892 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
10893
10894         * scm/x11-color.scm: new file
10895         All x11 color names can be accessed with:
10896         #(x11-color 'ColorName),
10897         #(x11-color "ColorName") or:
10898         #(x11-color "color name")
10899         If the x11 color name is not recognised then it defaults
10900         to black
10901
10902         * scm/lily.scm: amended to call scm/x11-color.scm
10903
10904 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10905
10906         * Documentation/user/invoking.itely (Reporting bugs): comment out
10907         reference to online PNG bug repository.
10908
10909 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10910
10911         * lily/translator-scheme.cc (ly:translator-property): Remove.
10912         Update callers.
10913
10914         * lily/context-scheme.cc (ly:context-now): Move from translator.
10915         Update callers.
10916
10917 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10918
10919         * input/regression/grid-lines.ly (skips): refine example.
10920
10921         * scm/define-context-properties.scm
10922         (all-user-translation-properties): doc autoBeamCheck
10923
10924         * input/regression/grid-lines.ly (Module): new file.
10925
10926         * lily/grid-point-engraver.cc (Module): new file.
10927
10928         * lily/grid-line.cc (Module): new file.
10929
10930         * lily/grid-line-span-engraver.cc (Module): new file.
10931
10932         * lily/grid-line-interface.cc (Module): new file.
10933
10934 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10935
10936         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
10937         missing parameter, actualy cdr through list.  Actually return a
10938         list with ENTRY removed (was '()).
10939
10940         * scripts/convert-ly.py: Update.  Print warning if file cannot be
10941         opened.
10942         (do_conversion): Fix printing of continuation comma.
10943
10944         * Documentation/user/advanced-notation.itely (Beam formatting):
10945         Remove refbugs about compound time and mixed duration.
10946
10947         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
10948         modulo moments explicitely.
10949
10950         * lily/moment.cc (operator %): New function.
10951
10952         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
10953
10954         * lily/translator-scheme.cc (ly:translator-now,
10955         ly:translator-property): New function.
10956
10957         * scm/auto-beam.scm (default-auto-beam-check): New function.
10958
10959         * lily/auto-beam-engraver.cc (test_moment): Use it.
10960
10961         * flower/rational.cc (operator %): Bugfix.
10962
10963 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
10964
10965         * scripts/abc2ly: Bugfix
10966
10967 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10968
10969         * python/fontextract.py (write_extracted_fonts): bugfix, too many
10970         %'s on EndFont comment.
10971
10972         * lily/ledger-line-spanner.cc: some more words of explanation.
10973
10974 2005-04-20  John Williams <williams@tni.com>  
10975         
10976         * scripts/lilypond-book.py: htmlquote bugfix.
10977         Allow snippets to be given distinct filenames.
10978         Allow the default alt text to be overridden.
10979
10980 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
10981
10982         * ly/performer-init.ly: Bugfix
10983
10984         * THANKS: Added bughunters.
10985
10986 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10987
10988         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
10989
10990         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
10991         position (was: use modulo measure length).
10992
10993         * configure.in (no gui_b): Remove optional gtk+ requirement.
10994
10995 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10996
10997         * Documentation/user/basic-notation.itely (Pitches): add
10998         LedgerLineSpanner.
10999
11000         * lily/dynamic-engraver.cc (process_music): set right bound to
11001         script if present. Else, do not set.
11002         (acknowledge_grob): only set right bound of finished spanner to
11003         note column if no other bound is set.
11004
11005         * python/lilylib.py (make_ps_images): switch back to png16m.
11006         
11007 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11008
11009         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11010         writing up to date file.  Add dvips usage suggestion.
11011
11012         * scripts/convert-ly.py: Fix error message.
11013         Print usage if no files on command line.
11014         (usage): Add example usage.
11015
11016         * input/test/compound-time.ly: New file.
11017
11018         * input/test/circle.ly: New file.
11019
11020         * Documentation/topdocs/NEWS.tely: Use them.
11021
11022         * input/test/boxed-stencil.ly: Remove \score.
11023
11024         * buildscripts/mf-to-table.py (base): Add .log dependency.
11025
11026         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11027         pfa's.  Add .log dependency
11028
11029         * scm/define-markup-commands.scm (lower): New command.
11030
11031         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11032         make it default.
11033
11034 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11035
11036         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11037         also to finished cresc as right bound. This fixes:
11038         skip-string-decresc.ly
11039
11040         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11041         relative_coordinate if extent is empty.
11042
11043         * lily/stem.cc (width_callback): determine correct extent if flag
11044         is not there. This fixes slur-no-flag.ly
11045
11046         * lily/grace-engraver.cc (consider_change_grace_settings): new
11047         function.
11048         (initialize): also consider_change_grace_settings() on
11049         initialization. Fixes large grace notes at start of score.
11050
11051         * lily/break-align-interface.cc (do_alignment): don't translate if
11052         total_extent is empty.
11053
11054         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11055
11056 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11057
11058         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11059         with slash.
11060
11061 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11062
11063         * stepmake/aclocal.m4: Remove tfm_path.
11064
11065 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11066
11067         * scm/music-functions.scm (markup-expression->make-markup): fix
11068         bug with cons arguments of markup commands.
11069         (music->make-music): fix music expression property list building
11070
11071 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11072
11073         * aclocal.m4: Massage package names.
11074
11075         * SCons updates.
11076
11077 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11078
11079         * VERSION (PACKAGE_NAME): release 2.5.20
11080
11081         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11082         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11083
11084         * lily/percent-repeat-engraver.cc (try_music): add measure before
11085         next_moment to future processing moment. Fixes:
11086         percent-repeat-mm-rest.ly
11087         (process_music): don't add moment for 2nd time.
11088
11089         * input/regression/repeat-percent.ly: add mmrests as extra test.
11090
11091         * lily/axis-group-engraver.cc (acknowledge_grob): read
11092         keepAliveInterfaces to decide what to kill.
11093
11094         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11095         percent-repeat-interface to keepAliveInterfaces. This fixes
11096         percent-repeat-harakiri.
11097
11098 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11099
11100         * SCons updates.
11101
11102 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11103
11104         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11105
11106         * aclocal.m4: remove --enable-tfm-path configure option
11107
11108         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11109
11110         * scm/backend-library.scm (postscript->png): newline after
11111         finishing command.
11112
11113         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11114         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11115
11116         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11117
11118         * lily/score.cc (default_rendering): use Music_output too.
11119
11120         * input/test/chord-names-languages.ly (Module): rename file.
11121
11122         * lily/text-spanner.cc: add bound-padding.
11123
11124         * lily/paper-book.cc (systems): accept Paper_score
11125         iso. Paper_system vector. 
11126
11127         * input/regression/line-arrows.ly: new file.
11128
11129         * lily/paper-score.cc (process): run get_paper_systems() only once.
11130
11131         * lily/line-spanner.cc (line_stencil): add arrows.
11132
11133 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11134
11135         * lily/line-interface.cc (make_arrow): new function. 
11136         (arrows): idem.
11137
11138 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11139
11140         * input/test/chord-names-german.ly: update for italian/french
11141         chords.
11142         
11143         * Documentation/user/instrument-notation.itely (Printing chord
11144         names): update.
11145
11146 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11147
11148         * lily/include/paper-score.hh (class Paper_score): remove unused
11149         prototypes.
11150
11151         * lily/book.cc (process): add -COUNT to midi output.
11152
11153         * lily/score.cc (book_rendering): remove outname argument
11154         (book_rendering): return list of Music_outputs. 
11155
11156         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11157
11158         * lily/book.cc (process): loop over Music_outputs returned from
11159         Score::book_rendering().
11160
11161         * lily/*.cc (width_callback): remove spurious "unused" warnings
11162         for assert (axis==[XY]_AXIS); 
11163
11164         * lily/include/music-output.hh (class Music_output): smobify class.
11165
11166         * lily/include/paper-score.hh (class Paper_score): make members
11167         private.
11168
11169         * lily/performance.cc (process): return #f iso. #<undefined>. This
11170         prevents #<undefined> leaking into GUILE-userspace.
11171
11172 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11173
11174         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11175
11176 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11177
11178         * scm/chord-name.scm : support for italian and french
11179         chords names.
11180
11181         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11182         a space defined by chordPrefixSpacer when the root name is
11183         direclty followed by a prefix.
11184
11185         * ly/engraver-init.ly : chordPrefixSpacer       
11186         * scm/define-context-properties.scm : chordPrefixSpacer
11187         * ly/property-init.ly : italianChords, frenchChords 
11188
11189 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11190
11191         * mf/feta-din.mf: Remove.
11192
11193         * mf/GNUmakefile (fontdir): Bugfix.
11194
11195         * mf/SConstruct: Some updates.
11196
11197         * SConstruct: Require pkg-config.
11198         (test_program): Bugfix for double digit version compares, use
11199         integer (not string-) compare.
11200         Optionally require gs 8.14.
11201
11202         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11203
11204         * lily/*: s/ifdef HAVE_*/if have/.
11205
11206         * SConstruct (test_lib): New function.  Update pkg-config and some
11207         other requirements.
11208
11209         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11210         freetype, pangof2t.
11211
11212 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11213
11214         * po/lilypond.pot, ...: Update using bison-CVS.
11215
11216         * python/lilylib.py (make_ps_images): Fixo.
11217
11218 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11219
11220         * python/lilylib.py (make_ps_images): typo.
11221
11222         * configure.in (gui_b): make bison optional.
11223
11224         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11225
11226 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11227
11228         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11229         with one parameter can be defined in a LaTeX file when processed
11230         by lilypond-book this will be evaluated between the systems of
11231         a multi-system score. The parameter is the number of systems processed.
11232
11233 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11234
11235         * python/lilylib.py (make_ps_images): Escape newline.
11236
11237         * Documentation/user/music-glossary.tely: Run
11238         texinfo-all-menus-update.
11239
11240 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11241
11242         * scm/lily-library.scm (old-relative-not-used-message)
11243         (version-not-seen-message): Add input-file-name-location to message.
11244
11245         * lily/parser.yy (lilypond): Add token aliases.
11246
11247         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11248         not confuse with alteration.
11249         (alteration): Add.
11250
11251 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11252
11253         * python/lilylib.py (make_ps_images): use -dEPSCrop
11254
11255         * VERSION (PACKAGE_NAME): release 2.5.19 
11256
11257         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11258         only put xrefs in info documentation.
11259
11260         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11261         .pdf rule to tex-rules.make.
11262
11263         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11264         from -systems.* output.
11265
11266         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11267         directly, remove -$(PAGESIZE) target.
11268
11269         * input/test/embedded-postscript.ly: update.
11270
11271 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11272
11273         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11274
11275         * Documentation/user/changing-defaults.itely (Font selection):
11276         document font-name.
11277
11278         * input/regression/font-name.ly: show Pango fonts for
11279         font-name. Update example. 
11280
11281         * lily/pango-select.cc (properties_to_pango_description): don't
11282         convert symbol font-size to number, but use to lookup.
11283
11284         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11285
11286         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11287         (NAME . FILE-NAME) tuples for font descriptions. 
11288         (write-preamble): display BeginFont DSC comments.
11289
11290         * python/fontextract.py (write_extracted_fonts): new file. Extract
11291         font resources from a PS file.
11292
11293         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11294         (Compile_error.process_include): do_file returns chunks.
11295
11296         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11297
11298         * make/lysdoc-targets.make: .texi is .PRECIOUS
11299
11300         * scripts/lilypond-book.py (write_if_updated): new function.
11301
11302 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11303
11304         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11305
11306 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11307
11308         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11309
11310         * input/regression/markup-syntax.ly: remove \score.
11311
11312         * scm/define-markup-commands.scm (draw-circle): add fill argument
11313
11314         * scm/stencil.scm (make-circle-stencil): add fill argument
11315
11316         * ps/music-drawing-routines.ps: add fill argument.
11317
11318         * ly/performer-init.ly: add CueVoice to MIDI too.
11319
11320         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11321         EndEPSF.
11322
11323         * input/regression/markup-eps.ly: new file.
11324
11325         * scm/framework-ps.scm (write-preamble): change order: vars should
11326         be inited before procedures.
11327
11328         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11329         for EPS files.
11330
11331         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11332
11333 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11334
11335         * configure.in (gui_b): add check for ghostscript 8.15
11336
11337 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11338
11339         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11340         start of line. Fixes cresc-after-newline.ly
11341
11342         * lily/source-file.cc (file_line_column_string): use get_column().
11343
11344 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11345
11346         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11347
11348 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11349
11350         * lily/*: use message () iso progress_indication () for messages.
11351         Revise/uniformise user messages.
11352
11353         * flower/warn.cc (progress_indication): New function.
11354         (message): Use it.  Fixes newline problems.
11355
11356         * config.make.in (webdir): Sort out install dirs.
11357
11358         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11359
11360         * python/lilylib.py (command_name): Bugfix.
11361         (make_ps_images):
11362
11363 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11364
11365         * lily/main.cc: --help says what types of backends are availabe
11366
11367 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11368
11369         Fix ./VERSION dependency, and without need to reconfigure.
11370
11371         * lily/main.cc (setup_paths): Update.
11372
11373         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11374
11375         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11376
11377         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11378         Add \line for some simplistic cases.
11379
11380         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11381
11382 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11383
11384         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11385         to compile LY files (useful for adding eg. "-I" args)
11386         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11387         2Gnome command for gnome backend.
11388         (LilyPond-command-formatgnome): call the 2Gnome command. key
11389         binding: C-c C-g
11390
11391 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11392
11393         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11394         depend on all PNG images.
11395
11396 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11397
11398         * GNUmakefile.in: Bugfix: also link .map files.
11399
11400 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11401
11402         * scm/music-functions.scm (music->make-music): generate 
11403         a (make-music ...) sexpr from a music expression.
11404         (display-scheme-music): use guile pretty printer to display the
11405         make-music sexpr.
11406
11407 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11408
11409         * ly/engraver-init.ly: reindent.
11410         Add CueVoice.
11411
11412         * scm/music-functions.scm (music-pretty-string): handle moments
11413         too.
11414         (music-pretty-string): only print non-empty lists.
11415         (cue-substitute): create CueVoice context, which has smaller type.
11416
11417         * lily/moment-scheme.cc (LY_DEFINE): new methods
11418         ly:moment-grace-{numerator,denominator}
11419
11420         * lily/context-handle.cc: remove quit() method. 
11421
11422         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11423         (init_fontconfig): success is 0, not !0
11424
11425 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11426
11427         * mf/feta-nummer-code.mf (code): add plus glyph.
11428
11429         * lily/tie.cc (print): idem.
11430
11431         * lily/slur.cc (print): don't use thickness property for
11432         slur shape-thickness.
11433
11434         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11435         while adding stencils.
11436
11437         * scm/define-markup-commands.scm (with-color): with-color markup
11438         command.
11439         (whiteout): new markup command 
11440         (filled-box): new markup command
11441
11442 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11443
11444         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11445         test for PDF docs.
11446
11447         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11448         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11449         
11450         Notes for tetex-3.0 make web:
11451            psclean.map: s/uhv8a/uhvr8a/
11452            config.ps add:
11453                 p +psfonts_t1.map
11454                 p +psclean.map
11455                 p +typeface.map
11456
11457 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11458
11459         * scm/music-functions.scm (music-pretty-string): fix bug with
11460         string argument.
11461
11462 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11463
11464         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11465
11466 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11467
11468         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11469         only process options if they're there.
11470         (write_file_map): add version-seen? to snippet-map.ly
11471
11472 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11473
11474         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
11475         formatting cleanups.
11476
11477         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
11478         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
11479
11480 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11481
11482         * scm/framework-ps.scm (ps-font-command): don't hash, just use
11483         name directly.
11484
11485         * lily/main.cc (setup_paths): either add mf/out to search path or 
11486         fonts/{otf,type1,etc}
11487         
11488         * lily/font-config.cc (init_fontconfig): either add mf/out to
11489         FontConfig or fonts/{otf,type1,etc}
11490
11491         * GNUmakefile.in: don't put mf/ link in share/ dir.
11492
11493         * lily/staff-spacing.cc: move same-direction-correction to
11494         note-spacing-interface
11495
11496         * scm/lily.scm (lilypond-main): use variable argument count for
11497         exception handler.
11498
11499         * lily/font-config.cc (init_fontconfig): add operator pacification
11500         message.
11501
11502         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
11503
11504         * buildscripts/gen-emmentaler-scripts.py (i): generate
11505         PFAEmmentaler as well.
11506
11507         * scm/framework-ps.scm (munge-lily-font-name): new function
11508         (write-preamble): hack: insert PFA equivalent of CFF into
11509         .PS. This makes LilyPond output printable on normal PS printers
11510         again.
11511
11512         * buildscripts/gen-emmentaler-scripts.py (i): generate
11513         PFAEmmentaler.pfa aswell.
11514
11515 2005-04-06  John Williams <williams@tni.com>  
11516         
11517         * scripts/lilypond-book.py: refactor the compose_ly procedure.
11518         
11519 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11520
11521         * scm/page-layout.scm (default-page-make-stencil): always combine
11522         the header stencil, even if empty. This prevents the body text to
11523         reach up to the margins.
11524
11525         * po/rw.po (Module): new file, for Kinyarwanda.
11526
11527         * input/test/spacing-optical.ly (Module): new file.
11528
11529         * lily/staff-spacing.cc: add same-direction-correction
11530
11531 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11532
11533         * Documentation/user/introduction.itely (Engraving): Comment-out
11534         non-existent file.
11535
11536 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11537
11538         * scm/define-grob-properties.scm (all-user-grob-properties): add
11539         same-direction-correction
11540
11541         * VERSION: release 2.5.18
11542
11543 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
11544
11545         * lily/grob.cc (mark_smob): Check pscore->layout_ before
11546         dereferencing.  Fixes make web.
11547
11548         * lily/midi-stream.cc: Handle unwritable midi file.  Include
11549         errno.h.
11550
11551         * Documentation/user/: Fix links.
11552
11553 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11554
11555         * lily/text-interface.cc (Module): rename from text-item.cc
11556
11557         * input/regression/apply-output.ly (texidoc): function naming fix.
11558
11559         * lily/time-signature-performer.cc (derived_mark): new function.
11560
11561         * lily/lily-parser-scheme.cc:  print mapped file name for progress
11562
11563         * scripts/lilypond-book.py (find_linestarts): new function.
11564         (find_toplevel_snippets): keep track of line numbers.
11565
11566         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
11567         all key changes.
11568
11569         * ly/declarations-init.ly (partCombineListener): use
11570         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
11571
11572         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
11573
11574 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
11575
11576         * lily/text-item.cc: Fix link.
11577
11578         * Documentation/user/changing-defaults.itely (Changing defaults):
11579         Fix programs reference links.
11580
11581         * Documentation/user/music-glossary.tely: Convert to utf-8.
11582
11583 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11584
11585         * make/lilypond-vars.make: remove TEXMF from variables.
11586         remove DEB_BUILD pk font variables.
11587         remove GUILE_LOAD_PATH
11588         remove TeX memory vars.
11589
11590 2005-04-04  Werner Lemberg  <wl@gnu.org>
11591
11592         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
11593
11594 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11595
11596         * ps/lilyponddefs.ps: remove reencode-font
11597
11598         * lily/simple-spacer.cc (add_columns): also compare
11599         directly. Column rank doesn't distinguish between broken and
11600         unbroken columns. This fixes large spaces before time sig changes.
11601
11602         * Documentation/user/point-and-click.itely: document ly:set-option.
11603
11604         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
11605         point_and_click_global is set.
11606
11607         * lily/scm-option.cc (LY_DEFINE): add point-and-click
11608         ly:set-option argument.
11609
11610 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11611
11612         * GNUmakefile.in: Include symlinks in webball.
11613
11614         * Documentation/user/GNUmakefile (source-links): Add symlinks to
11615         source dir for split and non-split manuals.
11616
11617         * Documentation/user/*y: Fix @uref/@inputfile links for
11618         split/non-split HTML documents.
11619
11620         * Documentation/user/GNUmakefile (local-WWW): Do not generate
11621         .ps.gz.
11622         
11623 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11624
11625         * GNUmakefile.in: Add newline.
11626
11627 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
11628
11629         * tex/lilyponddefs.tex: use color instead of xcolor
11630         * scm/output-tex.scm: minor editing
11631
11632 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11633
11634         * scm/music-functions.scm (display-scheme-music): pretty printer
11635         for music expressions.
11636
11637 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11638
11639         * buildscripts/install-info-html.sh (index_file): Fix link.
11640
11641 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
11642
11643         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
11644
11645         * Documentation/index.html.in: Add size estimates with some big pages.
11646
11647         * Documentation/user/tutorial.itely (Running LilyPond for the
11648         first time): Add/replace some @rglos links.  TODO: add more
11649         @rglos links in tutorial, test non-intrusiveness (.css).
11650
11651         * stepmake/bin/add-html-footer.py (do_file): Remove info's
11652         annoying's indication of referencing external document.
11653
11654         * Documentation/user/GNUmakefile: Split version of glossary too.
11655         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
11656         links, not only for html.
11657
11658         * Documentation/user/introduction.itely: Fix some links for other
11659         than html, do not use `here' as link name.
11660
11661 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
11662
11663         * scm/documentation-generate.scm (string-append): Fix @usermanref,
11664         @glossaryref.
11665
11666 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11667
11668         * scm/page-layout.scm (default-page-make-stencil): only add header
11669         if existing and not empty. Fixes spurious programming error.
11670
11671         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
11672
11673 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
11674
11675         * scm/output-tex.scm: implement {re,}setcolor
11676         * tex/lilyponddefs.tex: use color package
11677
11678 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
11679
11680         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
11681         additions to website.
11682
11683         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
11684
11685         * Documentation/user/macros.itexi: Fix @usermanref html links in
11686         split documents: use @inforef.
11687
11688 2005-03-30  Graham Percival  <gperlist@shaw.ca>
11689
11690         * Documentation/user/programming-interface.itely: minor fix.
11691
11692         * Documentation/user/advanced-notation.itely: added info to
11693         Metronome markings.
11694
11695 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
11696
11697         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
11698         use box-stencil.  Remove y-padding argument.
11699         (make-stencil-circler): New function.
11700
11701         * buildscripts/lilypond-words.py (F): 
11702         * elisp/SConscript (a): 
11703         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
11704         * vim/SConscript (a): 
11705         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
11706
11707         * lily/general-scheme.cc: Build fix.
11708
11709         * scm/markup.scm:
11710         * input/regression/markup-scheme.ly: 
11711         * input/regression/markup-syntax.ly: Drop 'new-' from name.
11712
11713         * scm/stencil.scm (make-circle-stencil): New function.
11714
11715         * scm/define-markup-commands.scm (draw-circle): Use it.  New
11716         name (was cicle).  Update callers.
11717         (circle): New markup command, similar to box.
11718
11719         * scm/stencil.scm (circle-stencil): New function.
11720
11721 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
11722
11723         * configure.in: Detect libutf8/wchar.h variant.
11724
11725         * stepmake/aclocal.m4: Modify shared size test.
11726
11727 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11728
11729         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
11730
11731 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11732
11733         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
11734         
11735         * VERSION (PACKAGE_NAME):  release 2.5.17
11736
11737 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
11738
11739         * scm/backend-library.scm (postscript->png): Fix comment and png
11740         message.
11741
11742         * GNUmakefile.in (link-tree): Fix locales.
11743
11744 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11745
11746         * lily/stencil-scheme.cc (LY_DEFINE): change to
11747         ly:stencil-aligned-to, non mutating.
11748
11749         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
11750
11751         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
11752
11753         * lily/quote-iterator.cc (derived_mark): call
11754         Music_wrapper_iterator::derived_mark() too.
11755
11756         * lily/grace-engraver.cc (derived_mark): change signature, add
11757         const.
11758
11759 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11760
11761         * SConstruct (symlink): 
11762         * GNUmakefile.in (link-tree): Add scripts to prefix.
11763
11764         * lily/general-scheme.cc (ly:effective-prefix): New function.
11765
11766         * scm/backend-library.scm (postscript->png): Use it.
11767
11768 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11769
11770         * lily/paper-score.cc (process): don't delete grobs after
11771         producing stencils. 
11772
11773         * scm/part-combiner.scm (determine-split-list): switch off
11774         debugging info.
11775
11776         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
11777         if available.
11778
11779         * scm/define-context-properties.scm
11780         (all-user-translation-properties): add stringNumberOrientations.
11781
11782         * lily/new-fingering-engraver.cc (position_scripts): make generic,
11783         so fingering and string-numbers are separately controlled.
11784
11785 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11786
11787         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
11788         not use debugging.
11789
11790 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11791
11792         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
11793
11794         * config.hh.in: add HAVE_FONTCONFIG.
11795
11796         * Documentation/user/instrument-notation.itely (String number
11797         indications): new node.
11798
11799         * input/regression/new-markup-syntax.ly (texidoc): add circle.
11800
11801         * lily/new-fingering-engraver.cc (add_string): new function. 
11802         (acknowledge_grob): accept string-number-event as well.
11803
11804         * scm/define-markup-commands.scm (circle): new markup command.
11805
11806         * scm/output-lib.scm (print-circled-text-callback): new function.
11807
11808         * lily/GNUmakefile: move ifeq after include stepmake.make.
11809
11810 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11811
11812         * config.make.in (HAVE_LIBKPATHSEA_SO):
11813         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
11814
11815         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
11816         add KPATHSEA_LIBS.
11817
11818         * debian/watch: 
11819         * debian/control: Update.
11820
11821 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11822
11823         * input/test/title-markup.ly (spaceTest): remove.
11824
11825         * input/test/embedded-tex.ly (Module): remove.
11826
11827         * input/test/music-box.ly: use 'name property, not ly:music-name.
11828
11829         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
11830
11831         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
11832
11833 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11834
11835         * Documentation/topdocs/INSTALL.texi (Top): Remove information
11836         about xdeltas.  Add information about CVS.
11837
11838         * scm/lily.scm (lilypond-main): Fix invocation of handler,
11839         gracefully handle failed files.
11840
11841         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
11842
11843         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
11844         small fixes.
11845
11846         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
11847         No unnecessarily specific i18n messages.  Remove stray `1'.
11848
11849 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11850
11851         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
11852         documentencoding
11853
11854         * scm/documentation-lib.scm (texi-file-head): set utf-8
11855         documentencoding.
11856
11857         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
11858         Delta, not the Symbol one. 
11859
11860         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
11861         for the .map file.
11862
11863         * Documentation/topdocs/INSTALL.texi (Top): add running
11864         requirement as compilation requirement.
11865
11866 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11867
11868         * buildscripts/mutopia-index.py (headertext): add h1 header and
11869         utf-8 charset meta field.
11870
11871         * input/GNUmakefile: prune example list.
11872
11873         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
11874         options.
11875
11876         * lily/slur-scoring.cc (get_base_attachments): only look at stem
11877         extent for visible stems.
11878
11879         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
11880
11881 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
11882
11883         * Documentation/topdocs/INSTALL.texi (Top): Updates.
11884
11885         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
11886
11887 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11888
11889         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
11890         pass inf/nan into slur scoring.
11891
11892         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
11893         page.
11894
11895         * scripts/abc2ly.py (dump_voices): use alphabet().
11896
11897 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
11898         
11899         * mf/GNUmakefile (depth): use $(FONTFORGE). 
11900
11901 2005-03-27 Matthias Neeracher <neeracher@mac.com>
11902         
11903         * flower/include/virtual-methods.hh: simplify. Patch by
11904
11905 2005-03-25  John Williams <williams@tni.com>  
11906
11907         * scripts/lilypond-book.py (main): add png for HTML too, guess
11908         only if necessary. 
11909
11910 2005-03-25  Graham Percival  <gperlist@shaw.ca>
11911
11912         * Documentation/topdocs/INSTALL.texi: now recommends
11913         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
11914
11915         * Documentation/user/basic-notation.itely,
11916         Documentation/user/tutoria.itely: warn about
11917         only one (phrasing) slur at once.
11918
11919 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
11920
11921         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
11922
11923 2005-03-23  Graham Percival  <gperlist@shaw.ca>
11924
11925         * Documentation/user/basic-notation.itely: fixed info about
11926         ending a (de)cresc.
11927
11928         * Documentation/user/lilypond-book.itely: fixed
11929         lilypond-book filter example and warned about not doing
11930         --filter and --process at the same time.
11931
11932 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
11933
11934         * lily/parser.yy (bass_number),
11935         Documentation/user/instrument-notation.itely (Figured bass): 
11936         Add the possibility to use text markup in figured bass. 
11937
11938 2005-03-19  Graham Percival  <gperlist@shaw.ca>
11939
11940         * Documentation/user/global.itely: added info about naming
11941         identifiers and breakbefore.
11942
11943         * Documentation/user/invoking.itely: added info about batch
11944         processing files with convert-ly, removed references to TeX
11945         in the jail section.
11946
11947         * Documentation/user/examples.itely: possibly fixed piano
11948         dynamics.
11949
11950         * Documentation/user/advanced-notation.itely: added info
11951         about removing other types of Staff.
11952
11953         * Documentation/user/instrument-notation.itely: possibly
11954         fixed piano staff line switch.
11955
11956         * Documentation/user/changing-defaults.itely: added info
11957         about using normal font in titles.
11958
11959 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11960
11961         * VERSION (PATCH_LEVEL): release 2.5.16
11962
11963         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
11964         explicitly.
11965
11966 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11967
11968         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
11969         whitespace.
11970
11971         * python/lilylib.py (make_ps_images):
11972         * scm/backend-library.scm (postscript->pdf, postscript->png):
11973         Quote file name.  Use format rather than string-append juggling.
11974
11975 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11976
11977         * python/lilylib.py (make_ps_images): add x to -g argument. 
11978
11979         * lily/key-performer.cc (create_audio_elements): don't use
11980         scm_eval_string. Check for minor 3rd directly.
11981   
11982         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
11983         (sarabandeCelloGlobal): key is D minor, not F major.
11984
11985 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11986
11987         Fix truncated --png output (Peter Danenberg).
11988         
11989         * python/lilylib.py (make_ps_images):
11990         * scripts/ps2png.py (copyright): Grok --papersize option.
11991
11992         * scm/backend-library.scm (postscript->png): Add parameter
11993         PAPERSIZE.  Update callers.
11994
11995         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
11996         Fixes symbol placement.
11997
11998         * lily/spanner.cc: 
11999         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12000         <libc-extension.hh>).
12001
12002 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12003
12004         * Nitpick run.
12005
12006         * buildscripts/fixcc.py: Update.
12007
12008         Builddir run fixes.
12009
12010         * HACKING (datadir): Add VERSION.
12011
12012         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12013         higher up.
12014
12015 2005-03-15  Werner Lemberg  <wl@gnu.org>
12016
12017         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12018         diagonal stem doesn't become thinner.
12019
12020 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12021
12022         * buildscripts/fixcc.py: Fixes (Werner).
12023
12024 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12025
12026         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12027         Emmentaler/Aybabtu.
12028
12029         * GNUmakefile.in: fix lilypond-words path.
12030
12031         * po/tr.po: update to 2.3.21
12032
12033         * lily/new-fingering-engraver.cc (position_scripts): take priority
12034         from head position.
12035
12036         * input/regression/finger-chords-order.ly (texidoc): new file.
12037
12038 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12039
12040         * make/ly-rules.make: 
12041         * stepmake/aclocal.m4: 
12042         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12043
12044         * buildscripts/fixcc.py (rules): Leave space after operator.
12045
12046 2005-03-14  Werner Lemberg  <wl@gnu.org>
12047
12048         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12049         top of the glyph with smooth curve.
12050
12051 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12052
12053         * Documentation/user/global.itely (Page layout): remove
12054         printpagenumber.
12055
12056 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12057
12058         * input/regression/mensural-ligatures.ly: new file (with examples
12059         compiled by Pal Benko).
12060
12061         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12062         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12063         musicglyph access.  Many small beautifications in ancient
12064         examples.
12065
12066         * input/test/divisiones.ly: fixed indentation; small
12067         beautifications
12068
12069         * ly/engraver-init.ly: added FIXME comment
12070
12071         * scripts/lilypond-book.py,
12072         Documentation/user/lilypond-book.itely: added music fragment
12073         option "packed" to lilypond-book
12074
12075         * Documentation/user/instrument-notation.itely: Bugfix: added
12076         missing LedgerLineSpanner color setting in several places.  Added
12077         music fragment option "packed" to VaticanaContext example.
12078
12079 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12080
12081         * scm/define-grobs.scm (all-grob-descriptions): switch off
12082         Hyphen_spanner::set_spacing_rods 
12083
12084         * lily/lyric-hyphen.cc (print): add padding between syllable and
12085         hyphen.
12086         (print): shorten hyphen in tight situations (determine using
12087         minimum-length)
12088
12089         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12090         0.4pt.
12091
12092 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12093
12094         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12095
12096         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12097         header/footer markings for regression-test.
12098
12099         * scm/backend-library.scm (output-scopes, header-to-file): Move
12100         from framework-tex.scm.
12101
12102         * scm/framework-ps.scm (output-framework)
12103         (output-preview-framework):
12104         * scm/framework-eps.scm (output-classic-framework)
12105         (output-framework): Use it.  Fixes collated files.
12106
12107 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12108
12109         * input/sakura-sakura.ly: 
12110         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12111
12112         * buildscripts/guile-gnome.sh: Update.
12113
12114         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12115
12116         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12117
12118 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12119
12120         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12121         culprit: always exit the loop if we find a rod, even if it has
12122         distance < 0. 
12123
12124         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12125         algorithm.
12126
12127         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12128         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12129
12130         * scm/output-svg.scm (dashed-line): new  function body.
12131         
12132         * GNUmakefile.in: create .htaccess.
12133
12134 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12135
12136         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12137
12138 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12139
12140         * VERSION (PACKAGE_NAME): release 2.5.15
12141
12142         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12143
12144         * scm/framework-svg.scm (output-framework): put scaling in
12145         document header. Apply scaling only once.
12146         (output-framework): dump page size in px, not mm. 
12147
12148         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12149         from font-size.
12150
12151         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12152         ly:outputter-output-scheme, new function.
12153
12154         * scm/output-svg.scm (pango-description-to-svg-font): new function
12155
12156 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12157
12158         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12159         target.
12160
12161         * input/typography-demo.ly: new file.
12162
12163 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12164
12165         * Documentation/user/global.itely (File structure): Add markup blocks
12166         to toplevel expressions.
12167         (Multiple movements, Creating titles): Add markup blocks.
12168
12169         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12170         <libc-extension.hh>).
12171
12172         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12173
12174         * flower
12175         * lily
12176         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12177
12178 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12179
12180         * lily/accidental.cc: special bboxes for natural. 
12181
12182         * mf/feta-toevallig.mf: make stems heavier.
12183
12184         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12185         texts as well.
12186
12187         * mf/feta-klef.mf: revise. 
12188
12189         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12190
12191         * mf/feta-klef.mf: add rounded curve at top. 
12192         make thinnib a little heavier.
12193
12194 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12195
12196         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12197
12198         * buildscripts/fixcc.py: New file.
12199
12200         * input/regression/utf8.ly: Update Debian font description.
12201
12202 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12203
12204         * stepmake/aclocal.m4: Fix test.
12205
12206 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12207
12208         * Documentation/user/invoking.itely: added Sebastino Vigna's
12209         docs for the --jail option.
12210
12211 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12212
12213         * lily/stem.cc (print): only produce stemlets if there are no
12214         noteheads on this stem.
12215
12216         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12217         don't crash on stemlet (visible stem without heads).
12218
12219         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12220         unbroken situations. 
12221
12222         * scm/output-lib.scm (center-invisible): new function.
12223
12224         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12225         wishes to determine loose column space.
12226
12227         * lily/font-config.cc (init_fontconfig): add
12228         fonts/{otf,type1,cff}  to path.
12229
12230         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12231
12232         * mf/GNUmakefile (Module): install all fonts under otf/
12233
12234         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12235         replace /fonts/otf/ by /ps/ 
12236
12237         
12238 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12239
12240         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12241
12242         * lily/book.cc (process): Oops, add score_.header_.
12243
12244         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12245
12246         * lily/parser.yy: Handle toplevel and book texts as score.
12247
12248         * scm/page-layout.scm (default-page-make-stencil):
12249         Bugfix: (page-properties rename.
12250
12251         * scm/backend-library.scm (ly:system): Typo.
12252
12253 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12254
12255         * stepmake/stepmake/executable-targets.make (installexe): don't
12256         strip installed executables
12257
12258         * lily/font-select.cc (get_font_by_design_size): revert
12259         pango_description_string as well.
12260
12261         * lily/system.cc (set_loose_columns): put loose column just left
12262         of next column.
12263
12264         * lily/include/group-interface.hh (extract_grob_array): rename
12265         from Pointer_group_interface__extract_grobs
12266
12267         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12268
12269         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12270         function. Keep ledgered note heads at a minimum distance.
12271         Introduce minimum-length-fraction
12272         (print): introduce length-fraction property.
12273
12274 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12275
12276         * tex/GNUmakefile: remove latin1.enc rules.
12277
12278 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12279
12280         * scm/titling.scm: Typo.
12281
12282         * input/regression/score-text.ly: Really add.
12283
12284         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12285
12286 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12287
12288         * lily/open-type-font-scheme.cc:  new file.
12289
12290 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12291
12292         * scm/titling.scm (layout-extract-page-properties): Rename from
12293         page-properties.  Update callers.
12294
12295         * lily/lexer.ll (Lily_lexer):
12296         * lily/parser.yy: Junk lyric_markup state.
12297
12298         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12299
12300         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12301         Add texts parameter.
12302
12303 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12304
12305         * lily/lexer.ll (lyric_markup): New mode.
12306         (Lily_lexer::push_lyric_markup_state): New method.
12307         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12308
12309         * lily/parser.yy (book_body):
12310         (toplevel_expression): Grok \markup texts.
12311
12312         * lily/score-scheme.cc (ly:music-scorify): 
12313         * scm/lily-library.scm (collect-music-for-book): Take texts
12314         parameter.
12315
12316         * lily/score.cc (texts_): New member.
12317
12318         * lily/paper-book.cc (systems): Format score texts.
12319
12320         * score-text.ly: New file.
12321
12322         * ttftool/SConscript:
12323         * kpath-guile/SConscript: New file.
12324
12325         * lily/SConscript:
12326         * SConstruct: Update.
12327
12328 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12329
12330         * VERSION (PACKAGE_NAME): release 2.5.14
12331
12332 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12333
12334         * lily/main.cc: Add dummy xgettext markers.
12335
12336 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12337
12338         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12339         requirements
12340
12341         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12342         executable is < 40k
12343
12344         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12345         hack.
12346
12347 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12348
12349         * flower/libc-extension.cc:
12350         * flower/include/libc-extension.hh: [Open]BSD simply cast
12351         cookie/funopen declarations.
12352
12353         * stepmake/aclocal.m4: Check for libkpathsea.so.
12354
12355         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12356         dl_kpse_find_file.
12357
12358 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12359
12360         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12361         (open_library): alternative for static library.
12362
12363 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12364
12365         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12366
12367         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12368
12369         Drop run-time dependency on teTeX.
12370
12371         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12372
12373         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12374         KPATHSEA_LIBS in LIBS.
12375         (STEPMAKE_DLOPEN): New function.
12376
12377         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12378         not path.
12379
12380         * flower/file-path.cc (directories): Rename from paths, as this
12381         return an array of directories (a single path).
12382
12383 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12384
12385         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12386
12387         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12388         new ly:kpathsea-find-file
12389
12390         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12391
12392         * kpath-guile/GNUmakefile: new file
12393
12394         * buildscripts/gen-emmentaler-scripts.py (i): generate
12395         emmentaler-X.fontname as well.
12396
12397         * buildscripts/ps-embed-cff.py: new script
12398
12399         * scm/lily-library.scm: remove ps-embed-cff.
12400
12401         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12402         font loading. 
12403
12404         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12405         fontconfig as well.
12406
12407         * lily/font-config.cc (init_fontconfig): add cff/ too.
12408
12409         * ly/generate-embedded-cff.ly: capitalize.
12410
12411         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12412         so as to register the pango font.
12413
12414         * lily/font-config.cc (init_fontconfig): add
12415         prefix/{otf,type1,mf/out} to fontconfig path.
12416
12417         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12418         overrides all. 
12419
12420         * configure.in (gui_b): remove ec mftrace check
12421
12422         * config.hh.in: use lilypond-Major.Minor as data directory.
12423
12424         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12425
12426         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12427         name.
12428
12429 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12430
12431         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12432         error messages.
12433
12434         * flower/libc-extension.cc:
12435         * flower/include/libc-extension.hh: [Open]BSD fixes for
12436         cookie/funopen declarations.
12437
12438 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12439
12440         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12441         emmentaler.
12442
12443         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12444         lcrm10.
12445
12446         * scm/define-markup-commands.scm (fontsize): new markup
12447         command. Also set baseline-skip
12448
12449 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12450         
12451         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12452         use.
12453
12454 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12455
12456         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12457
12458         * lily/pdf.cc: remove PDF related files
12459
12460 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12461
12462         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12463         <hamamatsu@gmx.de>
12464
12465 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12466
12467         * Documentation/user/advanced-notation.itely: first draft
12468         of reorg done.
12469
12470         * Documentation/user/global.itely: fixed (sub)section
12471         bits of MIDI.
12472
12473 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12474
12475         * cygwin/mknetrel (extras): Bufix (Bertalan).
12476
12477         * Documentation/user/basic-notation.itely (Chords): @ref fix.
12478         * Documentation/user/instrument-notation.itely (Introducing chord
12479         names): Compile fix: must have unique name.
12480
12481 2005-03-02  Graham Percival  <gperlist@shaw.ca>
12482
12483         * Documentation/user/instrument-notation.itely: reorg.
12484
12485 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12486
12487         * scm/output-gnome.scm:
12488         * scm/output-svg.scm: Fix font scaling.
12489
12490 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12491
12492         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
12493         what link to use best.
12494
12495         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
12496         * Documentation/user/tutorial.itely (Automatic and manual beams):
12497         Fix @ref.
12498
12499         * lily/tweak-registration.cc (replace_grob_tweak): New function.
12500         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
12501         * scm/framework-gnome.scm (tweak): Use it.
12502
12503 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12504
12505         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
12506
12507         * scm/output-ps.scm (white-text): reinstate white-text
12508
12509 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12510
12511         * scm/output-ps.scm (offset-add): Remove.
12512
12513         * scm/lily-library.scm (offset-flip-y): New function.
12514         * scm/framework-gnome.scm (tweak): Use it.
12515
12516         * scm/output-gnome.scm (grob-cause): Add parameter.
12517
12518         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
12519         * scm/output-ps.scm (url-link): Move.
12520         (white-text): Warn user about brokenness.
12521
12522         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
12523         wrt ghostscript.
12524
12525 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12526
12527         * lily/slash-repeat-engraver.cc (try_music): always make slashes
12528         if body length smaller than measure length.
12529
12530         * scm/define-markup-commands.scm (with-url): oops. use Y extent
12531         for Y.
12532
12533         * ly/titling-init.ly (tagline): put default tagline in \paper
12534
12535 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12536
12537         * lily/kpath.cc: 
12538         * lily/pdf.cc (Pdf_file): Use more generic error messages.
12539
12540         * scm/lily-library.scm (version-not-seen-message): New function.
12541         * ly/init.ly: Use it.
12542
12543         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
12544         breaks as progess.
12545
12546         * scripts/lilypond-book.py (do_process_cmd): Do not lump
12547         whitespace with l10n message.
12548
12549         * scm/framework-tex.scm (convert-to-ps):
12550         (convert-to-dvi): Do not use overly specific l10n messages.
12551
12552         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
12553
12554         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
12555         merge stderr with stdout.  
12556
12557 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12558
12559         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
12560         Neeracher).
12561
12562 2005-02-29  Graham Percival  <gperlist@shaw.ca>
12563
12564         * Documentation/user/instrument-notation.teily: moved
12565         \arpeggio to Basic.
12566
12567         * Documentation/user/advanced-notation.itely: Articulation to
12568         Basic, a bunch of stuff from Basic moved to Advanced.
12569
12570         * Documentation/user/basic.itely: swapped various sections,
12571         reorganized Basic.
12572
12573 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12574
12575         * flower/memory-stream.cc: 
12576         * flower/libc-extension.cc: Remove obsolete #undefs.
12577
12578         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
12579         more carefully.
12580
12581 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12582
12583         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
12584         dependency.
12585
12586         * VERSION (PACKAGE_NAME): release 2.5.13
12587
12588         * GNUmakefile.in (web-ext): don't ship ps.gz
12589
12590         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
12591         stdout
12592
12593 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12594
12595         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
12596         without libintl.  Now it compiles too.
12597
12598 2005-02-28  Graham Percival  <gperlist@shaw.ca>
12599
12600         * Documentation/user/basic-notation.itely,
12601         instument-notation.itely, advanced-notation.itely:
12602         split up contents of notation.itely.
12603
12604         * Documentation/user/notation.itely: file removed.
12605
12606         * Documentation/user/invoking.itely, converters.itely:
12607         moved convert-ly info to invoking.itely.
12608
12609         * Documentation/user/global.itely, changing-defaults.itely,
12610         sound-output.itexi: moved global settings, file layout, and
12611         sound into global.itely.
12612
12613         * Documentation/user/sound-output.itexi: file removed.
12614
12615         * Documentation/user/lilypond.tely: removed links to
12616         notation.itely and sound.itely.
12617
12618 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12619
12620         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
12621
12622         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
12623  
12624         * THANKS: add sponsor.
12625
12626         * scm/define-markup-commands.scm (with-url): new markup command.
12627
12628         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
12629         tagline.
12630         
12631         * scm/output-tex.scm (url-link): stub.
12632
12633         * scm/output-ps.scm (url-link): new function.
12634
12635         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
12636         ly:set-point-and-click
12637
12638 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12639
12640         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
12641         based on pdf-viewer setting.
12642
12643         * scm/framework-ps.scm (write-preamble): Find and set preferred
12644         pdf-viewer.
12645
12646 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12647
12648         * Documentation/user/point-and-click.itely: update for PDF point &
12649         click.
12650
12651         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
12652         editors based on EDITOR setting.
12653
12654 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12655
12656         * scm/*: Oops, more grand 2005 replace bits.
12657
12658 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12659
12660         * ps/music-drawing-routines.ps: new routine: insert PDF mark
12661
12662         * scm/output-ps.scm (grob-cause): point & click support for
12663         PostScript
12664
12665 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12666
12667         * lily/input-scheme.cc (LY_DEFINE): rename to
12668         ly:input-file-line-column
12669
12670 2005-02-26  Graham Percival  <gperlist@shaw.ca>
12671
12672         * Documentation/user/examples.itely: small fix from Steve Doonan.
12673
12674         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
12675
12676         * THANKS: added Yuval Harel.
12677
12678         * Documentation/user/{various}: inserted two spaces after a period.
12679
12680         * Documentation/user/lilypond.tely: added framework for reorg.
12681
12682         * Documentation/user/basic-notation.itely, instrument-notation.itely,
12683         advanced-notation.itely, global.itely: new files, placeholder for
12684         future reorg.
12685
12686 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
12687
12688         * Documentation/user/notation.itely: revamped Polyphony section
12689         
12690 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12691
12692         * Documentation/user/lilypond-book.itely (Music fragment options):
12693         doc fontload.
12694
12695         * Documentation/user/changing-defaults.itely (Text encoding): add
12696         fontload option to utf8 include
12697
12698         * scripts/lilypond-book.py (compose_ly): add fontload option
12699
12700         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
12701         force-eps-font-include option.
12702
12703         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
12704         black triangle
12705
12706         * Documentation/user/invoking.itely (Editor support): remove
12707         lilypond-latex section.
12708
12709         * scripts/lilypond-latex.py (Module): remove script.
12710
12711         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
12712         overwrite .log. 
12713
12714         * lily/main.cc: remove -m, --no-layout
12715
12716         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
12717         to define. We don't want to override fprintf everywhere.
12718
12719 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
12720
12721         * cygwin/lilypond.hint: 
12722         * cygwin/README.in: Update dependencies.
12723
12724         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
12725         Bugfix: do not pollute CPPFLAGS, LIBS.
12726
12727         * cygwin/mknetrel (extras): Cross compile fixes.
12728
12729         * ttftool/util.c: 
12730         * ttftool/ttfps.c: 
12731         * ttftool/ps.c: #include libc-extension.hh
12732
12733         * flower/include/libc-extension.hh:
12734         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
12735         wrapper using funopen.
12736         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
12737         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
12738
12739         * config.hh.in:
12740         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
12741         (AC_CHECK_HEADERS): Add libio.h
12742
12743         * scripts/convert-ly.py: Uniformize, internationalize.
12744         (2.5.2): Remove fatal encoding rule.
12745         (2.5.13): Handle latin1 encoding gracefully.
12746
12747 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
12748
12749         * HACKING: Fix line breaks.
12750
12751 2005-02-23  Werner Lemberg  <wl@gnu.org>
12752
12753         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
12754         contains those two files.
12755
12756 2005-02-21  Werner Lemberg  <wl@gnu.org>
12757
12758         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
12759         to improve overlap removal process.
12760
12761         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
12762         left and right ending.  This ensures better overlapping.
12763         Update all callers.
12764         ("lineprall"): Don't use draw_gridline to get better overlapping.
12765
12766 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12767
12768         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
12769
12770         * Documentation/topdocs/NEWS.tely (Top): oops.
12771
12772 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
12773
12774         * HACKING: new file.
12775
12776         * input/regression/utf8.ly (portuguese): added a portuguese example
12777         to show latin1 accents.
12778
12779 2005-02-21  Pal Benko  <benkop@freestart.hu>
12780
12781         * lily/mensural-ligature-engraver.cc:
12782         * lily/mensural-ligature.cc:
12783         * lily/include/mensural-ligature.hh: new algorithm implemented
12784
12785         * scm/define-grob-properties.scm: join-left killed (add-join may
12786         be used); join-left-amount changed to join-right-amount
12787
12788 2005-02-21  Graham Percival  <gperlist@shaw.ca>
12789
12790         * Documentation/user/notation.itely: small but urgent fix.
12791
12792 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
12793
12794         * lily/duration-scheme.cc: bugfix: correct parameters to
12795         SCM_ASSERT_TYPE.
12796
12797         * THANKS: added Pal.
12798
12799         * Documentation/user/notation.itely: bugfix: unTeXified
12800         $\\backslash$.  Bugfix: yet another glyph renaming victim:
12801         "timesig.*x/y" -> "timesig.*xy".
12802
12803 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12804         
12805         * VERSION (PACKAGE_NAME): release 2.5.12
12806
12807 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12808
12809         * ly/engraver-init.ly: set tieWaitForNote to #t by default
12810
12811         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
12812
12813         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
12814
12815         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
12816
12817 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
12818
12819         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
12820         latin1..utf-8.
12821
12822         * input/regression/stanza-number.ly:
12823         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
12824
12825         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
12826
12827 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12828
12829         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
12830         NEWS. Refer to website for older news.  
12831
12832         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
12833         .HTML. This should be done for specific servers only.
12834
12835         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
12836         .ly image examples.
12837
12838         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
12839         in layer 0 too.
12840
12841         * scm/define-context-properties.scm
12842         (all-user-translation-properties): add tieWaitForNote
12843
12844         * scm/define-grobs.scm (all-grob-descriptions): add
12845         Tie_column::before_line_breaking
12846
12847         * lily/tie.cc (get_column_rank): new function
12848
12849         * lily/tie-column.cc (before_line_breaking): new function.
12850         (werner_directions): take into account ties that start on
12851         different columns.  
12852
12853         * lily/score-engraver.cc (set_columns): move add_column() so we
12854         have column rank available.
12855
12856         * lily/tie.cc (get_column_rank): new function.
12857
12858         * input/regression/utf8.ly (japanese): add japanese lyrics.
12859
12860         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
12861
12862         * THANKS: add Steve D
12863
12864         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
12865         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
12866
12867 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
12868
12869         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
12870         to show harmonic notes
12871         * scm/define-markup-commands.scm: in \markup-by-number
12872         "dots-dot" -> "dots.dot" to show dotted notes
12873
12874 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12875
12876         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
12877
12878         * flower/memory-stream.cc (writer): new file.
12879
12880         * configure.in: add endian test.
12881
12882 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
12883
12884         * Documentation/user/examples.itely: small
12885         simplification/beautification
12886
12887         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
12888         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
12889         notation manual.
12890
12891         * lily/mensural-ligature.cc: bugfix: another few victims of the
12892         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
12893
12894         * ly/gregorian-init.ly: commit some experimental code for hi-level
12895         ligature input language lying around here for several months.
12896
12897         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
12898         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
12899
12900         * lily/vaticana-ligature-engraver.cc: bugfix: another few
12901         "x-y-z"->"x.y.s-z" fixes.
12902
12903 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12904
12905         * scm/framework-pdf.scm (scm): new file
12906
12907         * lily/include/pdf.hh (class Pdf_file): new file.
12908
12909         * lily/pdf.cc (write_trailer): new file.
12910
12911 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
12912
12913         * input/regression/color.ly: new file
12914
12915         * lily/stencil.cc (interpret_stencil_expression):
12916         when a color expression is encountered: save current color,
12917         process the rest of the expression, and restore previous color.
12918
12919         * lily/system.cc (get_line): check all grobs for color property and
12920         prepare the stencil scheme expressions for further processing.
12921         Fix layer-loop.
12922
12923         * scm/define-grob-properties.scm: introduce the color property.
12924
12925         * scm/output-lib.scm: color helper functions.
12926
12927         * scm/output-ps.scm: introduce setcolor/resetcolor.
12928
12929 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
12930
12931         * ly/*.ly, input/regression/*.ly: Added missing \version
12932         statements in some files.
12933
12934 2005-02-15  Graham Percival  <gperlist@shaw.ca>
12935
12936         * Documentation/user/notation.itely: minor editing.
12937
12938         * Documentation/user/converters.itely: updated convert-ly bugs.
12939
12940         * Documentation/user/lilypond-book.itely: add info about using
12941         feta characters in latex.
12942
12943 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12944
12945         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
12946
12947 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12948
12949         * scm/define-grob-properties.scm (all-user-grob-properties):
12950         removed 'dashed property.
12951
12952 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12953
12954         * scm/lily.scm (define-safe-public): new macro for defining
12955         variables that can be used in --safe mode. Use it in *.scm
12956         instead of manually setting safe-objects in safe-lily.scm.
12957
12958 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12959         
12960         * lily/slur.cc: Slur-dash patch by Bertalan.
12961
12962         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
12963
12964         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
12965
12966 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12967
12968         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
12969
12970 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12971
12972         * mf/GNUmakefile: teTeX-3.0 install fix.
12973
12974         * Cygwin patch from Bertalan.
12975
12976         * stepmake/stepmake/metafont-rules.make: Remove bashism.
12977
12978 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12979
12980         * GNUmakefile.in: 
12981         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
12982
12983         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
12984         2.0.x compatibility.
12985
12986 2005-02-08  Werner Lemberg  <wl@gnu.org>
12987
12988         * mf/feta-din-code.mf: Format; clean up code.
12989         Replace `---' with `--' plus explicit path directions.
12990         (linethickness#, stafflinethickness#): Remove.
12991         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
12992         ("dynamic s"): Improve shape.
12993         ("dynamic p"): Improve shape.
12994         Replace `draw' with better outline approximation.
12995         ("dynamic r"): Improve shape.
12996         Don't call `fill' and `draw' at the same time.
12997
12998 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12999
13000         * SConstruct (symlink):
13001         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13002         build fix: add enc symlink.
13003
13004         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13005
13006         Support for DESTDIR besides prefix=/foo
13007
13008         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13009
13010         * stepmake/stepmake/*.make:
13011         * */GNUmakefile:
13012         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13013
13014         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13015
13016         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13017         mawk in fontforge (date) test.
13018
13019 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13020
13021         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13022         font-family=roman. Add Luxi Sans as sans
13023
13024 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13025
13026         * Documentation/user/notation.itely: add warning about
13027         percent repeats and Voice contexts.
13028
13029         * Documentation/user/lilypond-book.itely: clarified the
13030         necessity of dvips -u arguments.
13031
13032 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13033
13034         * THANKS: Added a bunch of bug hunters.
13035
13036 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13037
13038         * scm/framework-ps.scm (output-preview-framework): bugfix.
13039
13040         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13041         o/ for chord modifier..
13042
13043         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13044
13045         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13046         Welsh Duggan). 
13047
13048 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13049
13050         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13051
13052         * ly/titling-init.ly: Do not also print intstrument in header on
13053         first page.  Do not print page number on first and only page.
13054
13055 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13056
13057         * input/regression/*.ly: remove old-relative everywhere
13058
13059         * lily/music-sequence.cc (simultaneous_relative_callback): do
13060         what-if analysis on copy, not on original. Fixes old-relative
13061         compatibility.
13062
13063         * scm/backend-library.scm (postscript->png): space before
13064         --verbose.
13065         
13066 2005-02-05  Werner Lemberg  <wl@gnu.org>
13067
13068         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13069         is defined.
13070
13071         * mf/feta-alphabet.mf: Define `staffsize#'.
13072         Include `feta-params.mf'.
13073         s/staffheight/design_size/.
13074
13075         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13076
13077         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13078
13079         * mf/feta-nummer-code.mf: Reformatted.
13080         (draw_six): Use outline intersection to avoid a self-intersecting
13081         path.
13082         ("Numeral comma"): Fix serious outline glitches.  This slightly
13083         changes the glyph shape.
13084         ("Numeral dash"): Use `draw_rounded_block'.
13085         ("Numeral dot"): Use `drawdot'.
13086         ("Numeral 1"): Assure identical tangent directions for the
13087         intersection points of paths.  The glyph shape improvement is only
13088         visible at very high magnifications.
13089         ("Numeral 2"): Use `solve' macro to make the lower right part of
13090         the glyph outline touch the x axis exactly.  This changes the
13091         glyph shape.
13092         Minor fixes for better overlap removal support.
13093         ("Numeral 4"): Make lefter corner `rounder'.
13094         ("Numeral 5"): Assure identical tangent directions for the
13095         intersection points of paths.  This improves the glyph shape at
13096         high magnifications.
13097         ("Numeral 7"): Use `solve' macro to make the upper right part of
13098         the glyph outline touch the metrics box exactly.  This changes the
13099         glyph shape.
13100         Avoid corner in the upper left part of the glyph (causing a minor
13101         shape change).
13102
13103         * mf/feta-ital-*.mf: Removed.  Unused.
13104
13105 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13106
13107         * VERSION (PATCH_LEVEL): release 2.5.11
13108
13109         * input/regression/fill-line-test.ly: new file.
13110
13111         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13112         emmentaler name, eg. emmentaler-23. 
13113
13114 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13115
13116         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13117         alignment with centered texts
13118
13119         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13120         list of paddings
13121
13122 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13123
13124         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13125
13126         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13127         of parents when translating rests. Fixes: c-chord-rest.ly 
13128
13129         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13130         dimension_callback_ member.
13131
13132         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13133         of extents.
13134
13135 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13136
13137         * all but lily/*: The grand 2004/2005 replace.
13138
13139 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13140
13141         * lily/*: add space after ,  
13142
13143         * scm/music-functions.scm (has-request-chord): don't use
13144         ly:music-name anywhere. Fixes <<\\>> notation. 
13145
13146         * scm/define-markup-commands.scm (box): use font-size for
13147         padding. Fixes boxed-rehearsal-marks.ly
13148
13149         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13150         identifier definition too, so foo = \lyrics { ...   } bar = #1
13151         doesn't complain about "bar" being LYRICS_STRING.
13152
13153         * lily/paper-def.cc (find_pango_font): new routine; Store
13154         pango_fonts in hash tab too. This is necessary for retrieving
13155         Pango_fonts::physical_font_tab() later on.
13156  
13157         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13158         crash if psname is null.
13159
13160         * lily/lily-guile.cc (ly_hash2alist): new function
13161
13162         * Documentation/user/changing-defaults.itely (Text encoding):
13163         rewrite. 
13164
13165         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13166         -> font_filename mapping.
13167
13168         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13169         ly_pango_font_physical_fonts
13170
13171         * scm/framework-ps.scm (supplies-or-needs): extract names from
13172         physical Pango_fonts.
13173
13174         * utf8.ly: new file.
13175
13176 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13177
13178         * Documentation/user/changing-defaults.itely (Page layout): add
13179         doco about systemSeparatorMarkup.
13180
13181         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13182         function.
13183         (default-page-make-stencil): insert system separators.
13184
13185         * scm/define-markup-commands.scm (hcenter): add
13186         (beam): add.
13187
13188 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13189
13190         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13191
13192 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13193
13194         * lily/main.cc: Spell backend consistently.  Sort options.
13195
13196 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13197
13198         * scripts/lilypond-book.py (Module): revert @include.
13199         
13200 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13201
13202         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13203         Bugfix: @include .tex (not .texi).  Small cleanups.
13204
13205         * stepmake/bin/add-html-footer.py (i18n): New function.
13206
13207 2005-01-31  Werner Lemberg  <wl@gnu.org>
13208
13209         * mf/feta-nummer.mf: Removed.  Unused.
13210
13211 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13212
13213         * lily/ : 2004 -> 2005 s&r
13214
13215         * scm/file-cache.scm (cached-file-contents): add file. Read each
13216         file only once.
13217
13218         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13219         now default.
13220
13221         * VERSION: release 2.5.10
13222         
13223         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13224
13225         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13226
13227         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13228         that both X and Y extents of bbox are non-nil.
13229
13230 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13231
13232         * scm/chord-name.scm (alteration->text-accidental-markup): change
13233         - to . 
13234
13235         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13236
13237         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13238
13239         * Documentation/user/invoking.itely (Invoking lilypond): add note
13240         about EPS backend.
13241
13242         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13243         files for inclusion in lilypond-book document.
13244
13245         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13246
13247         * input/tutorial/lbook-texi-test.texi: new file.
13248
13249         * scm/safe-lily.scm (safe-objects): add
13250         {begin,end}-of-line-(in)?visible as safe.
13251  
13252 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13253
13254         * Documentation/user/changing-defaults.itely: fixed example
13255         of (dynamics).
13256
13257 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13258
13259         * lily/main.cc: fix info about -o=FILE.
13260
13261 2005-01-29  Werner Lemberg  <wl@gnu.org>
13262
13263         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13264         construction to assure smooth transition from straight to curved
13265         lines.
13266
13267 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13268
13269         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13270         stencils.
13271
13272         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13273         translate to top of page. Fixes alignment problems of
13274         lilypond-generated EPS files.
13275
13276 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13277
13278         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13279         crescendo-end as well, since Decrescendo maybe ended with Stop
13280         Crescendo.). Fixes: partcombine-diminuendo.ly
13281
13282         * scm/script.scm (default-script-alist): swap portato symbols.
13283
13284         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13285
13286         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13287         ly:outputter-port. New function.
13288
13289         * scm/framework-ps.scm (output-classic-framework): dump a
13290         -systems.texi too
13291         (output-classic-framework): dump multiple systems on an "infinite"
13292         page EPS including fonts. 
13293
13294         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13295         .eps files for both texi and tex formats. Use PNG coming from
13296         lilypond.
13297         
13298 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13299
13300         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13301
13302         * scripts/lilypond-latex.py: fix info about -o=FILE.
13303
13304 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13305
13306         * ly/generate-embedded-cff.ly: write .cff.ps files.
13307
13308         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13309
13310         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13311         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13312
13313 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13314
13315         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13316
13317 2005-01-28  Werner Lemberg  <wl@gnu.org>
13318
13319         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13320         macros.
13321         (draw_bulb): Improved.
13322
13323         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13324         metapost bug.
13325         (draw_pedal_P): Use soft_end_penstroke.
13326         (draw_pedal_d): Use soft_start_penstroke.
13327
13328         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13329         path.
13330         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13331         doesn't change the glyph shape.
13332
13333         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13334         changing the shape) to avoid fontforge warnings.
13335
13336         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13337         soft_end_penstroke and fix glyph shape.
13338
13339 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13340
13341         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13342
13343 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13344
13345         * scm/define-markup-commands.scm (line): filter out empty stencils
13346         from line command.
13347
13348         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13349         amount.
13350
13351 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13352
13353         * Documentation/user/notation.itely: added info about what
13354         \voiceFoo does.  Also rewrote warning about marks at
13355         a line break.
13356
13357         * Documentation/user/changing-defaults.itely: added info
13358         about putting dynamics in parenthesis and brackets.
13359
13360 2005-01-27  Werner Lemberg  <wl@gnu.org>
13361
13362         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13363
13364 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13365
13366         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13367         portato-direction.ly
13368
13369         * lily/beam.cc (consider_auto_knees): add beam height to
13370         threshold. Fixes: knee-multiple-beam.ly
13371
13372         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13373         pedal line spanners. Fixes: instrument-center-pedal.ly
13374
13375         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13376         if encountering barline. Fixes: auto-beam-repeat.ly
13377
13378 2005-01-26  Werner Lemberg  <wl@gnu.org>
13379
13380         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13381         overlapping.
13382
13383         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13384         with inflections for the 1/2 sharp glyph.
13385
13386         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13387         connection between `t' and `r'.
13388         Unify bulb with the rest of `r' to avoid grazing outlines which
13389         confuses the overlap removal algorithm of fontforge.
13390
13391         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13392         inflections.
13393         (draw_cross): Fix shape to have uniform thickness in corners.
13394
13395         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13396         to avoid an uneven number of self-intersections; this confuses
13397         fontforge.
13398         Fix a slight bug in the shape at left bottom (which is visible only
13399         at high magnifications).
13400         `Center' the stem horizontally to avoid overlapping.
13401
13402 2005-01-24  Werner Lemberg  <wl@gnu.org>
13403
13404         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13405         to `asis'.
13406         (fet_begingroup): Save group name in string `feta_group'.
13407         (fet_endgroup): Updated.
13408         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13409
13410         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13411
13412         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13413         in metapost.
13414
13415 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13416
13417         * Documentation/user/notation.itely: really minor editing.
13418
13419 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13420
13421         * Documentation/user/examples.itely: minor editing.
13422
13423         * Documentation/user/changing-defaults.itely: minor editing.
13424
13425         * Documentation/user/notation.itely: clarified info on polyphony
13426         and \addlyrics.
13427
13428 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13429
13430         * scm/output-gnome.scm: 
13431         * scm/output-svg.scm:
13432         * scm/lily-library.scm (font-name-style): Update font name
13433         kludging for fontconfig use.
13434
13435 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13436
13437         * scm/define-markup-commands.scm: Document right-align and
13438         larger markup commands. Remove "TODO" from the topmost comment
13439         "each markup function should have a doc string." More consistent
13440         use of new-lines.
13441
13442 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13443
13444         * Documentation/user/changing-defaults: removed info about
13445         copyright symbol, since it's likely to change soon.
13446         Added info about betweensystemspace.
13447
13448         * Documentation/user/notation.itely: minor fixes.
13449
13450         * Documentation/user/lilypond.tely,
13451         Documentation/user/music-glossary.tely: changed copyright
13452         date to 2005 instead of 2004.
13453
13454         * input/test/volta-chord-names.ly: added old example back.
13455
13456 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13457
13458         * mf/feta-beugel.mf: use design size 20 (not 15).
13459
13460         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13461         change name to aybabtu completely
13462
13463 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13464
13465         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13466         design_size to fontname
13467
13468 2005-01-19  Werner Lemberg  <wl@gnu.org>
13469
13470         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13471         mf/feta-schrift.mf: s/p/pat/ if a path variable.
13472
13473         * mf/feta-autometric.mf (set_char_box): Add code which emits
13474         specials for mf2pt1 if run with metapost.
13475         (to_bp): New macro for mf2pt1.
13476
13477 2005-01-18  Graham Percival  <gperlist@shaw.ca>
13478
13479         * Documentation/user/changing-defaults: added info on
13480         creating a copyright symbol.
13481
13482 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13483
13484         * VERSION: release 2.5.9
13485         
13486 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
13487
13488         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
13489
13490         * Documentation/user/notation.itely: Document
13491         score-override-auto-beam-setting Fix documentation for
13492         revert-auto-beam-setting.
13493
13494 2005-01-18  Werner Lemberg  <wl@gnu.org>
13495
13496         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
13497         (procset): New function to define a procset resource.
13498         (ps-embed-pfa): New function to define a font resource.
13499         (setup): New function to define a `Setup' environment.
13500         (preamble): Use new functions.
13501
13502         * ps/lilypond.defs (init-lilypond-parameters): New function to
13503         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
13504
13505 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13506
13507         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
13508
13509 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
13510
13511         * scm/define-markup-commands.scm: Change number->markletter-string
13512         to take two arguments (vector number). Add number->mark-alphabet-vector
13513         and markalphabet markup command.
13514
13515         * scm/translation-functions.scm: Add format-mark-box-alphabet,
13516         format-mark-alphabet, format-mark-box-barnumbers and
13517         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
13518
13519 2005-01-17  Graham Percival  <gperlist@shaw.ca>
13520
13521         * Documentation/user/examples.itely: add SATB automatic piano
13522         reduction template.
13523
13524         * Documentation/user/notation.itely: added info about changing
13525         partcombine texts.  Also adds examples of alternate lyrics.
13526
13527         * Documentation/user/changing-defaults.itely: added warning
13528         about \RemoveEmptyStaffContext overriding previous changes.
13529
13530 2005-01-17  Werner Lemberg  <wl@gnu.org>
13531
13532         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
13533         feta-alphabet*.
13534
13535 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13536
13537         * python/lilylib.py (make_ps_images): don't do final showpage for
13538         multi-page documents.
13539         
13540         * VERSION (MY_PATCH_LEVEL): release 2.5.8
13541
13542 2005-01-16  Graham Percival  <gperlist@shaw.ca>
13543
13544         * Documentation/user/lilypond.tely: changed order of appendices;
13545         unified index should be last.
13546
13547         * Documentation/user/notation.itely: add example of key signatures
13548         and info about Staff.printKeyCancellation.
13549
13550 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13551
13552         * lily/include/repeated-music.hh (class Repeated_music): change
13553         into "namespace" class.
13554
13555         * lily/event.cc: remove Key_change_event.
13556
13557         * lily/include/transposed-music.hh (class Transposed_music): remove.
13558
13559         * lily/transposed-music.cc: remove
13560
13561         * lily/include/relative-music.hh: remove.
13562
13563         * lily/include/music-sequence.hh (struct Music_sequence): change
13564         into "namespace" class.
13565
13566         * lily/untransposable-music.cc (Module): remove
13567
13568         * lily/include/un-relativable-music.hh (Module): remove
13569
13570         * lily/include/untransposable-music.hh (Module): remove
13571
13572         * lily/include/music-list.hh (Module): remove file
13573
13574         * lily/un-relativable-music.cc: remove file.
13575
13576 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13577
13578         * lily/parser.yy: Compile fix.
13579
13580 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13581
13582         * lily/include/music.hh (class Music): unvirtualize transpose().
13583
13584         * lily/sequential-music.cc: remove file.
13585
13586         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
13587
13588         * lily/slur-scoring.cc (get_best_curve): only switch on
13589         DEBUG_SLUR_SCORING for non NDEBUG builds.
13590
13591         * lily/include/music.hh (class Music): replace Music::start_mom()
13592         by start-callback property
13593
13594         * lily/include/grace-music.hh: remove file. 
13595
13596         * lily/stem.cc (height): robustness fix.
13597
13598         * lily/time-scaled-music.cc: remove file.
13599
13600         * lily/include/music.hh (class Music): include SCM init argument.
13601         (class Music): replace Music::get_length() virtual by
13602         length-callback property everywhere.
13603
13604         * scripts/convert-ly.py (conv): add  # to \property scalar value.
13605
13606         * mf/GNUmakefile: don't install *list.ly
13607
13608 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13609
13610         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
13611
13612 2005-01-12  Werner Lemberg  <wl@gnu.org>
13613
13614         This patch addresses the following problems in the feta sources
13615         files which contribute to the fetaXX fonts.
13616
13617         . Many fixes for rasterization at low resolutions (consistent use of
13618           `vround' and `hround', integer shift values for paths, applying
13619           `eps' for mirrored paths, use of `define_whole_pixels' and
13620           friends, etc.) -- while this probably looks like a waste of time
13621           it has revealed deficiencies in some glyph shapes.  See comment at
13622           the end of feta-params.mf how vertical symmetry is achieved.
13623
13624         . The `---' operator has been replaced everywhere with `--'; this
13625           both improves and considerably reduces the font size after
13626           conversion with mf2pt1.
13627
13628         These change aren't explicitly mentioned below since virtually all
13629         glyphs are affected.
13630
13631         Other notable differences:
13632
13633         . Glyphs from feta-accordion.mf now have charboxes around the
13634           outline.
13635
13636         . Fixed incorrect charbox for `accDot'.
13637
13638         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
13639
13640         . Fixed position of the bow in the `upprall' glyph and its siblings.
13641
13642         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
13643           dependent on the staff line thickness to avoid touching the middle
13644           staff line at smaller sizes.
13645
13646         . Largely extended output for feta-testXX: Where useful, glyphs
13647         are shown both between and on staff lines.
13648
13649
13650         * mf/feta-params.mf (staff_space_rounded,
13651         stafflinethickness_rounded, linethickness_rounded,
13652         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
13653         Update all code which uses them where appropriate.
13654         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
13655         New variables used to control rasterization at low resolutions.  Set
13656         to zero if feta code is processed with metapost.
13657
13658         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
13659         (draw_rounded_block, draw_square_block): Updated to use `--' only.
13660         (flare_path): Updated.
13661         Make it work with `filldraw' (but only circular pens).
13662         (hfloor, vfloor, hceiling, vceiling): New macros.
13663
13664         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
13665         Use `draw' again in mf mode to have good pixel dropout control.
13666         Fix intersection points of horizontal lines with circle.
13667         ("accDot"): Fix parameters for set_char_box.
13668         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
13669         control.
13670
13671         * mf/feta-banier.mf: Updated.
13672
13673         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
13674         testing.
13675         (undraw_inside_ellipse): Remove `center' argument.  Update all
13676         callers.
13677         (draw_brevis): New macro, called by "Brevis notehead".
13678         (draw_whole_triangle_head): New macro, called by "Whole
13679         trianglehead".
13680         (draw_small_triangle_head): Use `filldraw'.
13681
13682         * mf/feta-eindelijk.mf: Remove useless global group.
13683         Updated.
13684
13685         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
13686         `filldraw'.
13687
13688         * mf/feta-pendaal.mf: Updated.
13689
13690         * mf/feta-puntje.mf: Updated.
13691
13692         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
13693         less points.
13694         ("Flageolet"): Use `draw' again in mf mode to have good pixel
13695         dropout control.
13696         ("Varied Coda"): Use `draw_block'.
13697         (draw_comma): Fix typo.
13698         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
13699         pixel dropout control.
13700
13701         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
13702         position of bow.
13703
13704         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
13705         sizes.
13706
13707         * mf/feta-toevallig.mf (remember_pic): New variable, used for
13708         testing.
13709         (draw_meta_sharp): Much simplified.
13710         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
13711
13712         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
13713
13714 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
13715
13716         * Documentation/user/notation.itely (Ancient rests): Fix typo
13717         (thanks Anthony)
13718
13719 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
13720
13721         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
13722
13723         * lily/main.cc (setup_paths): Add cff.
13724
13725         * mf/GNUmakefile (foe): Include actual target %.cff.
13726         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
13727
13728 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13729
13730         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
13731         suffix for main_input_b_.
13732
13733         * scm/music-functions.scm (toplevel-music-functions):
13734         precompute music lengths for music expressions.  
13735
13736 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13737
13738         * lily/include/input.hh (class Input): new `end_' slot for end of
13739         input. Renamed defined_str0_ to start_.
13740
13741         * lily/input.cc (Input): Add Input::Input (Input const &) and
13742         remove Input::Input (Source_file*, char const *). Use the new
13743         slots.
13744         (set_location): method used by bison to propagate input
13745         locations (YYLLOC_DEFAULT).
13746         (end_line_number, end_column_number, step_forward): new methods
13747         
13748         * lily/input-scheme.cc (ly:input-both-locations): new function,
13749         similar to ly:input-location, but also return the end line and
13750         column.
13751
13752         * lily/include/includable-lexer.hh: 
13753         * lily/includable-lexer.cc: 
13754         * lily/include/lily-lexer.hh (class Lily_lexer): 
13755         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
13756         Includable_lexer to Lily_lexer, in order to update lexloc (the
13757         yylloc), a new slot of Lily_lexer.
13758         (here_input, LexerError): simplify by using the lexloc slot (aka
13759         yylloc)
13760
13761         * lily/lexer.ll: #define yylloc to use input locations (it may
13762         be useless here?). Fixed the #embedded_scm rule (step the location
13763         forward in order to skip the sharp sign before parsing the scheme
13764         expression)
13765
13766         * lily/include/lily-parser.hh (class Lily_parser): 
13767         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
13768         here_input()
13769         (parser_error): overload for more precise locations of errors.
13770
13771         * lily/parser.yy (YYLTYPE): set location type to Input
13772         (YYLLOC_DEFAULT): use Input::set_location()
13773         (yylex): add the YYLTYPE* location parameter.
13774         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
13775         Give an Input parameter to THIS->parser-error() for more accurate
13776         messages.
13777
13778 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13779
13780         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
13781
13782         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
13783         on BEAMQUANTING for non-NDEBUG builds.
13784
13785         * lily/stem.cc (head_count): performance: avoid String::String()
13786         inside oft called function.
13787
13788 2005-01-09  Graham Percival  <gperlist@shaw.ca>
13789
13790         * Documentation/user/examles.itely: attempted fix for broken
13791         string quartet template.
13792
13793         * Documentation/user/notation.itely: remove unnecessary broken
13794         link.
13795
13796 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13797
13798         * VERSION (PACKAGE_NAME): release 2.5.7
13799
13800 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13801
13802         * config.make.in (METAFONT): Append -progname=mf, fixes use with
13803         mf-nowin for teTeX-3.0.  Backportme.
13804
13805         * scm/output-svg.scm (utf8-string): New function.
13806
13807         * scm/output-gnome.scm (utf8-string): New function.
13808         (otf-name-mangling): Remove.
13809
13810         * lily/pango-font.cc (Pango_font): Use font string iso font
13811         filename for utf8-text.
13812
13813         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
13814         name.
13815
13816 2005-01-08  Graham Percival  <gperlist@shaw.ca>
13817
13818         * Documentation/user/notation.itely: add info about
13819         Staff.extraNatural = ##f in Pitches section.  Also
13820         fixed some minor issues in the Vocal music section.
13821
13822 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13823
13824         * scm/output-ps.scm (white-text): comment out Helvetica font,
13825         which is broken for my GS install.
13826
13827         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
13828         which provides a tighter bbox.
13829
13830         * scm/define-grobs.scm (all-grob-descriptions): remove all
13831         extra-offsets from definitions.
13832
13833 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
13834
13835         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
13836         add tuning for 4-string bass and some common 4/5-string banjo
13837         tunings.  New function (four-string-banjo) turns a 5-string tuning
13838         into a 4-string tuning.  New function
13839         (fret-number-tablature-format-banjo) computes correct fret numbers
13840         on 5-string banjos.
13841
13842         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
13843         Add beam correction to TabVoice.
13844
13845         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
13846         using bold font; makes tabs more readable.
13847
13848 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13849
13850         * lily/font-select.cc (get_font_by_design_size): don't make
13851         Modified_font_metric; this causes trouble, since we don't know the
13852         font magnification from inside Pango_font::text_stencil()
13853
13854         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
13855
13856         * Documentation/user/notation.itely (The Lyrics context): comment out
13857         broken {Small ensembles} link.
13858
13859         * scm/framework-svg.scm (output-framework): change calling convention.
13860
13861         * lily/object-key-dumper-scheme.cc: new file.
13862
13863         * lily/object-key-undumper-scheme.cc: new file.
13864
13865         * lily/tweak-registration-scheme.cc: new file.
13866
13867         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
13868
13869         * Documentation/user/examples.itely (String quartet): uncomment
13870         broken example.
13871
13872         * lily/font-config.cc: new file.
13873
13874 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13875
13876         * scm/output-svg.scm: 
13877         * scm/output-gnome.scm: s/bigcheese/emmentaler.
13878
13879         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
13880
13881 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13882
13883         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
13884         Add headers.
13885
13886         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
13887
13888 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13889
13890         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
13891
13892         * lily/include/main.hh: lose _b hungarian suffixes for global
13893         variables.
13894
13895         * lily/include/lily-guile-macros.hh: new file.
13896
13897         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
13898
13899         * lily/general-scheme.cc: new file. 
13900
13901         * lily/font-select.cc (get_font_by_design_size): retrieve
13902         PangoFont for (designsize . "pango-descr") entries.
13903
13904         * lily/lily-parser-scheme.cc: new file.
13905
13906         * lily/output-def-scheme.cc: new file.
13907
13908         * lily/paper-book-scheme.cc: new file.
13909
13910         * lily/duration-scheme.cc (LY_DEFINE): new file.
13911
13912         * lily/pitch-scheme.cc:  new file.
13913
13914         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
13915
13916 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13917
13918         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
13919
13920 2005-01-06  Graham Percival  <gperlist@shaw.ca>
13921
13922         * Documentation/user/notation.itely: minor editing.
13923
13924         * Documentation/user/changing-defaults: minor editing.
13925
13926         * Documentation/user/examples.itely: add template for
13927         string quartet part extraction; demonstrates tag.
13928
13929 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
13930
13931         * Documentation/user/notation.itely: documents
13932         format-mark-box-letters and format-mark-box-numbers
13933
13934         * scm/define-context-properties.scm: change comment.
13935
13936 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13937
13938         * scm/framework-ps.scm (output-classic-framework): new function:
13939         dump systems as separate .eps files (without fonts) and write a
13940         single collecting .tex file.
13941
13942 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
13943
13944         * Documentation/user/notation.itely (Setting simple songs):
13945         Correct several errors in the equivalent formulation of
13946         \addlyrics. 
13947         (The Lyrics context): Corrected link to the SATB example.
13948
13949 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13950
13951         * scm/lily.scm (completize-formats): new function
13952         (postprocess-output): new function
13953
13954         * lily/paper-book.cc (classic_output): change calling
13955         convention. Give basename as first argument. 
13956         remove Paper_book::post_processing().
13957
13958         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
13959
13960 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13961
13962         * lily/paper-outputter.cc (LY_DEFINE): new function
13963         ly:outputter-close.
13964
13965         * lily/main.cc: change --format,-f to --backend,-b
13966
13967         * lily/include/main.hh: rename format to backend.
13968
13969         * scm/translation-functions.scm (format-mark-box-numbers): add.
13970         patch by Erlend Aasland
13971
13972 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13973
13974         * lily/pango-font.cc (text_stencil): dump string as
13975         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
13976
13977 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
13978
13979         * configure.in (gui_b): Remove handy developer-only
13980         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
13981         CVS source installations (but break other non-default but correct
13982         PKG_CONFIG_PATH setups), as this is no longer developer-only.
13983
13984         * SConstruct: 
13985         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
13986         compatibility (backportme).
13987
13988         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
13989
13990 2005-01-03  Werner Lemberg  <wl@gnu.org>
13991
13992         Prepare glyph shapes for mf2pt1 conversion.
13993
13994         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
13995         (accDiscant, accFreebase, accStdbase): Replace `draw' with
13996         `penstroke'.
13997         (accDot): Use `drawdot'.
13998         (accBayanbase): Replace `draw' with `draw_gridline'.
13999         (print_penpos): Moved to feta-macros.mf.
14000         (accOldEE): Replace `filldraw' with `penstroke'.
14001         Replace `draw' with `penstroke' and `drawdot'.
14002
14003         * mf/feta-banier.mf: Code clean-up.
14004         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14005         `fill'.
14006
14007         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14008
14009         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14010         paremeter to control drawing of labels.  Update all callers.
14011
14012         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14013         (new_bulb): Return a bulb as a single path.  To do that, it now
14014         takes some more parameters.  Updated all callers.
14015         (draw_gclef): Major clean-up.  `draw' has been replaced with
14016         `penstroke', unnecessary outlines have been removed.
14017         Remove (unused) gnome-canvas code.
14018
14019         * mf/feta-macros.mf (print_penpos): New macro (from
14020         feta-accordion.mf).
14021         Other minor fixes.
14022
14023         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14024         ("Pedal dot"): Use `drawdot'.
14025         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14026         all callers.
14027         Fix shape at top.
14028         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14029         all callers.
14030         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14031         all callers.
14032         Revert drawing direction.
14033
14034         * mf/feta-schrift.mf (draw_fermata): Use single path.
14035         (draw_short_fermata): Replace `filldraw' with `fill'.
14036         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14037         `draw_rounded_block' with a single path.
14038         ("Thumb"): Draw full circle instead of mirroring segments.
14039         (draw_accent): New macro.
14040         ("> accent", "espr"): Use it.
14041         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14042         ("open (unstopped)"): Draw full circle instead of mirroring
14043         segments.
14044         (draw_vee): Removed.
14045         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14046         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14047         path.
14048         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14049         partial pieces drawn with `fill' -- these do still overlap with the
14050         stem of the `t' but just once, not multiple times so that fontforge
14051         can handle it gracefully.
14052         Change other parts of the glyph so that fontforge's overlapping
14053         algorithm reliably works.
14054         (draw_heel): Replace `draw' with `fill'.
14055         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14056         ("Flageolet"): Replace `draw' with `penstroke'.
14057         ("Segno"): Replace `filldraw' with `penstroke'.
14058         Replace `draw' with `drawdot'.
14059         ("Coda"): Replace `fill' with `penstroke', using a single path.
14060         ("Varied Coda"): Use less overlapping paths.
14061         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14062         single path.
14063
14064         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14065         group to better control the `labels' command.
14066         Rename argument to `offset' and use it actually.  Update all
14067         callers.
14068         Replace `filldraw' with `fill'.
14069         ("mordent", "prallmordent", "upmordent", "downmordent",
14070         "lineprall"): Replace `draw' with `draw_gridline'.
14071         ("upprall", "downprall"): Replace `draw' with `fill'.
14072
14073         * mf/feta-timesig.mf: Formatting.
14074
14075         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14076         to...
14077         ("Flat"): Here.
14078         (draw_paren): Move code to draw labels to...
14079         ("Right Parenthesis"): Here.
14080
14081 2005-01-02  Graham Percival <gperlist@shaw.ca>
14082
14083         * Documentation/user/notation.itely: add example of \setTextDecresc
14084         and \setTextDim.
14085
14086 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14087
14088         * scm/define-markup-commands.scm :  fix glyph-strings of
14089         accidentals and \note-by-number
14090
14091 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14092
14093         * VERSION: 2.5.6 released.
14094         
14095         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14096
14097         * input/regression/new-markup-scheme.ly: oops. font-family=music
14098         -> font-encoding fetaMusic.  
14099
14100         * lily/main.cc: put default to PS.
14101
14102         * lily/tfm.cc: idem.
14103
14104         * lily/afm.cc: idem.
14105
14106         * lily/include/modified-font-metric.hh (struct
14107         Modified_font_metric): remove coding_scheme() method.
14108
14109         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14110
14111         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14112
14113         * input/les-nereides.ly: convert to utf8
14114
14115         * lily/modified-font-metric.cc (text_dimension): idem.
14116
14117         * lily/parser.yy (TODO): idem.
14118
14119         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14120
14121         * lily/lexer.ll: remove encoding
14122
14123         * scm/framework-ps.scm (output-variables): separately scale the
14124         page to mm 
14125
14126         * lily/pango-font.cc (Pango_font): fix scaling.
14127
14128         * lily/font-metric.cc (design_size): design_size returns a
14129         dimension now as well.
14130
14131 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14132
14133         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14134         brace generation. 
14135
14136         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14137
14138 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14139
14140         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14141         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14142
14143 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14144
14145         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14146         in first run as well.
14147
14148         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14149         dimension less points (ie. 12 = 12 point)
14150
14151         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14152
14153         * lily/all-font-metrics.cc (find_pango_font): set description_
14154
14155         * lily/pango-font.cc (text_stencil): export size as well.
14156         (text_stencil): fix scaling and extents box.
14157
14158 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14159
14160         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14161
14162         * Documentation/user/invoking.itely (Invoking lilypond): document
14163         texstr
14164
14165         * scripts/convert-ly.py (conv): add ancient rules.
14166
14167         * scm/clef.scm (c0-pitch-alist): replace - with .
14168
14169         * scripts/lilypond-book.py (process_snippets): add texstr support.
14170
14171         * scm/framework-texstr.scm (header): change extension to .textmetrics
14172
14173         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14174         -f tex.
14175
14176         * lily/text-metrics.cc: new file.
14177         (try_load_text_metrics): new function
14178
14179         * lily/include/text-metrics.hh: new file.
14180
14181 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14182
14183         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14184         ly_scheme_function to ly_lily_module_constant.
14185
14186         * lily/modified-font-metric.cc (text_dimension): try
14187         lookup_tex_text_dimension() first.
14188
14189         * lily/tfm.cc: new function ly:load-text-dimensions
14190
14191 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14192
14193         * scm/output-texstr.scm (text): use \lilygetmetrics
14194
14195         * scm/framework-texstr.scm (header): dump in new format.
14196
14197         * tex/lilypond-tex-metrics: new file.
14198         
14199 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14200
14201         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14202         mapping.
14203         (index_to_charcode): New method.
14204
14205         * scm/output-ps.scm (glyph-string): 
14206         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14207
14208 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14209
14210         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14211         implement fully, need FONT to get to charcode.
14212
14213         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14214
14215         * scm: Cleanups.
14216
14217         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14218         {Tunable context properties},
14219         {All layout objects},
14220         {Music definitions}.
14221
14222 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14223
14224         * VERSION: release 2.5.5
14225         
14226         * lily/main.cc: use TeX as default output format.
14227
14228         * flower/file-path.cc (find): try to open directly as well, so we
14229         find absolute path files. 
14230
14231         * lily/pango-select.cc: new file.
14232
14233         * scm/framework-ps.scm: remove all encoding code. 
14234         load pfb/pfa for PangoFont too.
14235         
14236         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14237
14238 2004-12-22  Werner Lemberg  <wl@gnu.org>
14239
14240         Prepare glyph shapes for mf2pt1 conversion.
14241
14242         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14243
14244         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14245         (define_triangle_shape): Use it to replace `draw' with `fill' and
14246         `unfill'.  Update all callers.
14247         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14248         (draw_cross): Ditto.
14249         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14250         Use penrazor for better conversion with mf2pt1.
14251         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14252         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14253         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14254         draw_la_head, draw_ti_head): Replace `filldraw' with
14255         `fill'.  Update all callers.
14256
14257 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14258
14259         * lily/paper-book.cc (output): revert: only allow a single output
14260         format.
14261
14262         * lily/include/pango-font.hh: new file.
14263
14264         * lily/pango-font.cc: new file.
14265
14266         * lily/font-metric.cc (text_stencil): new routine
14267
14268         * lily/all-font-metrics.cc (find_pango_font): new routine.
14269
14270         * lily/include/font-metric.hh (struct Font_metric): add
14271         text_stencil()
14272
14273         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14274
14275 2004-12-22  Werner Lemberg  <wl@gnu.org>
14276
14277         Prepare glyph shapes for mf2pt1 conversion.
14278
14279         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14280
14281         * mf/feta-toevallig.mf: Formatting.
14282         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14283         ("Natural"): Fix paths to allow better postprocessing.
14284         (draw_meta_flat): Use `z3l' as additional point in path to get
14285         better conversion with mf2pt1.
14286         Other minor cleanups.
14287         ("3/4 Flat"): Add auxiliary points and modify path to replace
14288         `draw' with `fill'.
14289         ("Double Sharp"): Mirror path segments instead of picture elements
14290         to get a single outline.
14291         Modify path to replace `filldraw' with `fill'.
14292
14293 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14294
14295         * input/test/unfold-all-repeats.ly: added file back.
14296
14297         * Documentation/user/notation.itely,
14298         Documentation/user/programming-interface.itely
14299         Documentation/user/changing-defaults.itely: fixed misc broken
14300         links to input/test/ files.
14301
14302 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14303
14304         * tex/texinfo.tex: Update.  We should not be distributing this,
14305         but since we do, use latest version.
14306
14307         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14308         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14309         macros for feta glyphs.
14310
14311 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14312
14313         * Documentation/user/changing-defaults.itely: fix index for set.
14314
14315         * Documentation/user/converters.itely: added convert-ly bugs list
14316         from CVS.
14317
14318 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14319
14320         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14321         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14322         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14323         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14324
14325         * mf/GNUmakefile (pfa_warning): Use less broken check.
14326
14327         * python/lilylib.py (setup_environment): Remove cruft from
14328         GS_FONTPATH.
14329
14330         * configure.in: Bump mftrace requirement to 1.1.1.
14331
14332 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14333
14334         * scm/output-svg.scm (beam): Use polygon.
14335
14336         * scm/lily-library.scm: Bugfix.
14337
14338         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14339
14340         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14341
14342 2004-12-19  Werner Lemberg  <wl@gnu.org>
14343
14344         Prepare glyph shapes for mf2pt1 conversion.
14345
14346         * mf/feta-eindelijk: Some formatting.
14347         (multi_rest_x, multi_beam_height): Removed.  Unused.
14348         ("Quarter rest"): Use `intersectiontimes' to create a single
14349         outline.
14350         (rest_crook): Removed.  Unused.
14351         (draw_rest_bulb): Return path (without filling).  Update callers.
14352         Simplified.
14353         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14354         "128th rest"): Simplify `pat'.
14355         Create single outline.
14356
14357 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14358
14359         * mf/GNUmakefile (ALL_GEN_FILES):
14360         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14361
14362         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14363         function.
14364
14365 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14366
14367         * scm/output-texstr.scm (placebox): add routine
14368
14369         * VERSION (PACKAGE_NAME): release 2.5.4
14370
14371         * scm/framework-texstr.scm (output-framework): new file.  
14372
14373         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14374         processing.
14375
14376         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14377
14378         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14379         rule.
14380
14381         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14382
14383         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14384
14385         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14386
14387 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14388
14389         * scm/framework-svg.scm (dump-page): Implement landscape.
14390
14391 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14392
14393         * lily/main.cc (setup_paths): Add svg to search path.
14394
14395         * scm/output-svg.scm:
14396         * scm/framework-svg.scm: Add pageSet.  Update.
14397         (dump-fonts): New function.
14398         (output-framework): Use it.
14399
14400         * mf/GNUmakefile: 
14401         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14402
14403 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14404
14405         * tex/lilyponddefs.tex: comment out new ifpdf code.
14406
14407 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14408
14409         * GNUmakefile.in: 
14410         * SConstruct (symlink): Replace afm by otf.
14411
14412         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14413         ly:pango-add-afm-decoder.
14414
14415         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14416
14417 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14418
14419         * scm/output-ps.scm (new-text): don't access t glyph for getting
14420         space dimension.
14421
14422         * ly/init.ly: warn about \version
14423
14424         * lily/lexer.ll: set version-seen?
14425
14426 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14427
14428         * scm/output-svg.scm (string->entities): Update.
14429
14430 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14431
14432         * lily/main.cc (setup_paths): replace afm by otf for path. 
14433
14434         * lily/pangofc-afm-decoder.cc: remove.
14435
14436         * lily/include/pangofc-afm-decoder.hh: remove.
14437
14438         * scm/framework-scm.scm (output-framework): new file.
14439
14440         * mf/GNUmakefile: remove SAUTER_FONTS.
14441         remove SVG/sodipodi hacks.
14442
14443         * scm/lily-library.scm (stderr): move stderr.
14444
14445         * mf/GNUmakefile: remove AFM support.
14446
14447         * buildscripts/mf-to-table.py (base): remove AFM support.
14448
14449         * lily/open-type-font.cc (design_size): use design_size
14450
14451 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14452
14453         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14454
14455 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14456
14457         * mf/GNUmakefile: Generate combined aybabtu info.
14458         * mf/aybabtu.pe.in (i): Load it.
14459
14460         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14461         are not symbols.
14462
14463         * lily/include/open-type-font.hh (count): New method.
14464
14465         * mf/aybabtu.pe.in: Typo.
14466
14467         * Documentation/user/out/lilypond-internals.nexi (Scheme
14468         functions): Typo.
14469
14470         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14471
14472 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14473
14474         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
14475         subfonts.
14476
14477         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
14478
14479         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
14480         (tex-font-command-raw): new function.
14481
14482         * lily/include/virtual-font-metric.hh (Module): remove file
14483
14484         * lily/virtual-font-metric.cc (Module): remove file.
14485         
14486
14487         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
14488         (get_indexed_char): read bbox from lily table if present.
14489
14490 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14491
14492         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
14493         aybabtu.subfonts
14494
14495         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
14496         global glyphname. Enables more than 64 glyphs in the OTF.
14497
14498 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
14499
14500         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
14501         braces.
14502
14503         * lily/open-type-font.cc (design_size): Use 12 as default for
14504         design size.
14505
14506         * mf/aybabtu.pe.in: New file.  Merge all our braces.
14507
14508         * mf/GNUmakefile: Generate aybabtu.
14509
14510         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
14511
14512 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14513
14514         * scm/lily-library.scm (char->unicode-index): Remove.
14515
14516         * scm/output-gnome.scm (text): Bugfix for plain string input.
14517         Updates.
14518
14519         * scm/output-svg.scm (svg-font): Add weight to font selection.
14520
14521 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
14522
14523         * Documentation/topdocs/INSTALL.texi (Top): Point to
14524         buildscripts/out/clean-fonts instead of
14525         buildscripts/clean-fonts.sh. 
14526
14527 2004-12-13  Graham Percival  <gperlist@shaw.ca>
14528
14529         * input/regression/figured-bass.ly: attempt to clarify text.
14530
14531         * Documentation/user/notation.tely: add cindex for tag, attempt to
14532         add figured bass example.
14533
14534         * Documentation/user/changing-defaults: basic editing.
14535
14536 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14537
14538         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
14539
14540         * lily/open-type-font.cc (LY_DEFINE): new function
14541         ly:font-sub-fonts
14542
14543         * lily/include/font-metric.hh (struct Font_metric): new method
14544         sub_fonts()
14545
14546         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
14547         . with - in add.stem.
14548         
14549 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14550
14551         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
14552         and fetaDynamic.
14553
14554         * lily/rest.cc (glyph_name): Change - to . .
14555
14556         * scm/output-gnome.scm (text): Hello world, again.
14557
14558         * scm/output-svg.scm (named-glyph): New function.  Hello world!
14559
14560         * lily/modified-font-metric.cc (index_to_charcode): New method.
14561
14562         * lily/include/font-metric.hh (index_to_charcode): New function.
14563
14564         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
14565         new function.
14566         (ly:font-glyph-to-index): Remove.
14567
14568 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14569
14570         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
14571
14572         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
14573
14574         * lily/open-type-font.cc (load_scheme_table): new function
14575
14576         * lily/dots.cc (print): replace - 
14577
14578         * lily/open-type-font.cc (attachment_point): new function.
14579         (load_table): read LILC table
14580
14581         * buildscripts/gen-bigcheese-scripts.py (Module): new
14582         file. Generate FF scripts.
14583
14584         * mf/feta-din10.mf: idem.
14585
14586         * mf/feta-nummer10.mf: remove mf files.
14587
14588         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
14589
14590 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14591
14592         * lily/lily-guile.cc: Use scm_from_locale_stringn.
14593
14594         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
14595         compatibility.
14596
14597 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14598
14599         * lily/open-type-font.cc (get_indexed_char): scale metrics by
14600         design-size and units_per_EM.
14601
14602         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
14603
14604 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14605
14606         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
14607         does not crash fontforge.
14608
14609         * scm/lily-library.scm (char->unicode-index): Hack to map onto
14610         PUA.
14611
14612 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14613
14614         * scm/framework-ps.scm (ps-embed-cff): new function.
14615
14616         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
14617
14618 2004-12-12  Werner Lemberg  <wl@gnu.org>
14619
14620         * mf/bigcheese.pe.in: Add PUA mapping.
14621         Don't create Type 42 but bare CFF font.
14622
14623 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14624
14625         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
14626         within canvas boundaries.
14627
14628         * mf/merge.pe.in: Set font names, version, license GPL.
14629
14630         * make/substitute.make: Add FONTFORGE.
14631
14632         * config.make.in (FONTFORGE): Add.
14633
14634         * configure.in (gui_b): Use PATH_PROG for fontforge.
14635
14636 2004-12-11  Graham Percival  <gperlist@shaw.ca>
14637
14638         * scm/define-markup-commands.scm: add baseline-skip to info
14639         about \column.
14640
14641 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
14642
14643         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
14644
14645         * scm/output-gnome.scm (named-glyph): Use it.
14646
14647         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
14648
14649         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
14650         (upper_string, lower_string, reverse_string): Remove.
14651
14652         * configure.in (fontforge): Reinstate version check.
14653
14654         * ly/engraver-init.ly: Fix clef glyph names.
14655
14656         * lily/time-signature.cc (special_time_signature): Fix fraction
14657         glyph names.
14658
14659 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14660
14661         * mf/merge.pe: new file.
14662
14663         * lily/freetype.cc: new file.
14664
14665         * lily/include/open-type-font.hh (class Open_type_font): new file.
14666
14667         * lily/include/freetype.hh: new file.
14668
14669         * lily/open-type-font.cc: new file.
14670
14671         * lily/all-font-metrics.cc (find_otf): new function.
14672
14673 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
14674
14675         * lily/time-signature.cc (special_time_signature): Fix.
14676
14677         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
14678         GTK2 before checking for pango.  Fixes -fgnome.
14679
14680         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
14681         Scheme name.
14682
14683         * scm/define-markup-commands.scm:
14684         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
14685
14686         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
14687
14688         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
14689         date versions.  Fixes configure.
14690         (STEPMAKE_CHECK_VERSION): Support optional actual program version
14691         argument.
14692
14693 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14694
14695         * buildscripts/mf-to-table.py (write_ps_encoding): write real
14696         names in .enc
14697
14698         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
14699
14700 2004-12-09  Graham Percival  <gperlist@shaw.ca>
14701
14702         * Documentation/user/changing-defaults.itely: add info about
14703         make-dynamic-script
14704
14705         * Documentation/user/notation.itely: add link in dynamics to
14706         section about make-dynamic-script.
14707
14708 2004-12-09  Christian hitz  <chhitz@gmx.net>
14709
14710         * lily/lily-guile.cc: change MACOS_X to __APPLE__
14711
14712 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14713
14714         * buildscripts/mf-to-table.py (parse_logfile): use . for
14715         concatting name and group.
14716         (parse_logfile): use M for Minus (negative.)
14717
14718         * lily/include/type-swallow-translator.hh
14719         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
14720
14721         * lily/*.cc: cosmetics around = sign.
14722
14723         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
14724         lyric spacing on the penultimate column.
14725
14726 2004-12-05  Christian Hitz  <chhitz@gmx.net>
14727
14728         * configure.in:
14729         * lily/accidental-placement.cc:
14730         * lily/bar-line.cc:
14731         * lily/beam-concave.cc:
14732         * lily/beam-quanting.cc:
14733         * lily/beam.cc:
14734         * lily/bezier-bow.cc:
14735         * lily/bezier.cc:
14736         * lily/break-align-interface.cc:
14737         * lily/custos.cc:
14738         * lily/dimension-cache.cc:
14739         * lily/dot-column.cc:
14740         * lily/font-metric.cc:
14741         * lily/font-select.cc:
14742         * lily/gourlay-breaking.cc:
14743         * lily/grob-property.cc:
14744         * lily/grob.cc:
14745         * lily/lily-guile.cc:
14746         * lily/line-spanner.cc:
14747         * lily/lookup.cc:
14748         * lily/lyric-extender.cc:
14749         * lily/lyric-hyphen.cc:
14750         * lily/mensural-ligature.cc:
14751         * lily/midi-def.cc:
14752         * lily/misc.cc:
14753         * lily/note-collision.cc:
14754         * lily/note-column.cc:
14755         * lily/note-head.cc:
14756         * lily/paper-outputter.cc:
14757         * lily/percent-repeat-item.cc:
14758         * lily/rest-collision.cc:
14759         * lily/side-position-interface.cc:
14760         * lily/simple-spacer.cc:
14761         * lily/slur-configuration.cc:
14762         * lily/slur-scoring.cc:
14763         * lily/slur.cc:
14764         * lily/spaceable-grob.cc:
14765         * lily/spacing-spanner.cc:
14766         * lily/spanner.cc:
14767         * lily/staff-symbol-referencer.cc:
14768         * lily/stem.cc:
14769         * lily/stencil.cc:
14770         * lily/system-start-delimiter.cc:
14771         * lily/system.cc:
14772         * lily/text-item.cc:
14773         * lily/tie.cc:
14774         * lily/tuplet-bracket.cc:
14775         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
14776         <cmath> beacause isinf/isnan is undefined in <cmath>
14777
14778 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
14779
14780         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
14781
14782 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14783
14784         * VERSION: release 2.5.3
14785         
14786 2004-11-29  Arno Waschk <arno@arnowaschk.de>
14787
14788         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
14789
14790 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14791
14792         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
14793
14794         * lily/note-head.cc (internal_print): always try the "s" head if
14795         u/d not found.
14796
14797         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
14798
14799 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14800
14801         * mf/parmesan-heads.mf (overdone_heads): typos.
14802
14803 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14804
14805         * lily/parser.yy (markup): in markups, { .. } without command
14806         before are also flattened, ie \line must be explicitely used.
14807
14808         * Documentation/user/changing-defaults.itely:
14809         * Documentation/user/notation.itely: 
14810         * input/wilhelmus.ly: 
14811         * input/regression/instrument-name-markup.ly: 
14812         * input/regression/markup-score.ly: 
14813         * input/regression/new-markup-scheme.ly: 
14814         * input/regression/new-markup-syntax.ly: 
14815         * input/test/coriolan-margin.ly: use \line in markups where
14816         appropriate
14817         
14818 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14819
14820         * scm/new-markup.scm (map-markup-command-list): helper function
14821         used in parser.yy to map markup commands on a markup list.
14822
14823         * lily/parser.yy: get rid off < > in markups by treating { } as
14824         real lists.
14825
14826         * lily/lexer.ll: remove < > from markup lexer mode.
14827
14828         * scripts/convert-ly.py (conv): add rule for converting 
14829         \markup < > to \markup { }
14830
14831         * ly/titling-init.ly: 
14832         * input/test/coriolan-margin.ly: 
14833         * input/regression/new-markup-syntax.ly: 
14834         * input/regression/new-markup-scheme.ly: 
14835         * input/regression/multi-measure-rest-text.ly: 
14836         * input/regression/markup-stack.ly: 
14837         * input/regression/markup-score.ly: 
14838         * input/regression/instrument-name-markup.ly: 
14839         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
14840         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
14841         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
14842         * input/wilhelmus.ly: 
14843         * Documentation/user/notation.itely: 
14844         * Documentation/user/music-glossary.tely: 
14845         * Documentation/user/changing-defaults.itely: change < > to { } in
14846         markups
14847
14848 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14849
14850         * lily/accidental-placement.cc (position_accidentals): shortcut if
14851         no accidentals to place.
14852
14853 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14854
14855         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
14856         typo s/ly:dimension ?/ly:dimension?/
14857
14858         * input/regression/lily-in-scheme.ly: 
14859         * input/regression/music-function.ly: 
14860         * ly/spanners-init.ly (assertBeamSlope): 
14861         * scm/music-functions.scm (def-grace-function): add the paper
14862         argument to music function definitions.
14863
14864 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14865
14866         * lily/moment.cc (LY_DEFINE):
14867         ly:moment-main-{denominator,numberator}, new function.
14868
14869         * lily/score-engraver.cc (typeset_all): assign to column on basis
14870         of axis-group-parent-X setting.
14871
14872         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
14873         add_element() on basis of axis-group-parent-Y setting.
14874
14875         * lily/grob.cc: add axis-group-parent-{XY} properties.
14876
14877         * input/regression/spacing-stick-out.ly: new file.
14878
14879         * lily/simple-spacer.cc (add_columns): use binary search for
14880         setting column rods. Changes O(n^2) to O(n log(n)) for
14881         constructing spacing problem from columns.
14882         (add_columns): read allow-outside-line to make sure no texts stick
14883         out.
14884         (solve): Simple_spacer::is_active() only determines
14885         satisfies_constraints_ for non-ragged typesetting.
14886
14887         * lily/simultaneous-music.cc (to_relative_octave): only set
14888         old_relative_used if return pitch actually changed.
14889
14890         * scm/define-context-properties.scm
14891         (all-user-translation-properties): change to match implementation.
14892
14893         * python/lilylib.py: Replace re.match by re.search and adds "-c
14894         showpage" to the gs command line (Johannes Schindelin)
14895
14896         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
14897         before processing. Prevents crash when inf is in the extent.
14898
14899         * scm/define-markup-commands.scm (note-by-number): add "s" to
14900         "noteheads-" glyphname.
14901  
14902         * lily/parser.yy (Generic_prefix_music): supply parser argument to
14903         music function as well.
14904         
14905 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14906
14907         * VERSION: release 2.5.2
14908
14909         * Documentation/user/changing-defaults.itely (Creating titles):
14910         add breakbefore variable.
14911
14912         * lily/paper-book.cc (set_system_penalty): new function. Set
14913         penalty_ based on breakBefore setting
14914
14915         * lily/context-specced-music-iterator.cc (construct_children):
14916         interpret special context id $uniqueContextId 
14917
14918         * lily/context.cc (create_unique_context): new method. Move
14919         creation of unique (\new) contexts into interpreting phase. This
14920         makes
14921
14922           foo= \new Staff ..
14923           << \foo \foo >>
14924
14925         produce 2 staves.
14926         
14927
14928         * scm/define-music-properties.scm (all-music-properties): add
14929         quoted-voice-direction
14930
14931         * ly/music-functions-init.ly: killCues function.
14932
14933         * scm/music-functions.scm (cue-substitute): move creation of voice
14934         contexts further to the back. 
14935
14936 2004-11-25  Werner Lemberg  <wl@gnu.org>
14937
14938         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
14939         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
14940
14941 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
14942
14943         * buildscripts/guile-gnome.sh: Fixed typo.
14944
14945 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14946
14947         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
14948
14949         * scripts/abc2ly.py (dump_slyrics): add ord(). 
14950
14951         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
14952         to regular engraver. 
14953
14954 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14955
14956         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
14957
14958 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14959
14960         * scm/define-markup-commands.scm (fill-line): Typo.
14961
14962         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
14963         and newer.
14964
14965 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
14966
14967         * ly/dynamic-scripts-init.ly: Fixed typo.
14968
14969 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14970
14971         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
14972         note-head, to have different attachment points for up and down.
14973
14974         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
14975
14976         * mf/feta-generic.mf (else): remove solfa.
14977
14978         * mf/feta-bolletjes.mf (tishape): remove unicode test.
14979
14980         * scm/define-context-properties.scm
14981         (all-user-translation-properties): add shapeNoteStyles property.
14982
14983         * lily/shape-note-heads-engraver.cc (process_music): new file.
14984
14985         * lily/event.cc (transpose): call Event::transpose() for
14986         transposing the tonic.
14987
14988 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14989
14990         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
14991         Unicode/OpenType and AFM.
14992
14993         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
14994
14995 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14996
14997         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
14998
14999         * lily/context.cc (Context): unprotect key from ctor.
15000
15001         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15002         is '()
15003         (stack-stencils): idem.
15004
15005         * Documentation/user/changing-defaults.itely (Creating titles):
15006         document new title layout options.
15007
15008         * lily/parser.yy (lilypond_header_body): copy previous
15009         $globalheader if present.
15010
15011         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15012         ly:module-copy
15013         
15014         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15015
15016         * scm/titling.scm: remove old titling functions
15017
15018         * lily/stencil.cc (translate): remove absolute dimension.
15019
15020         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15021         via markup.
15022
15023         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15024         field from user-supplied markup
15025
15026         * scm/define-markup-commands.scm (on-the-fly): new markup
15027         command. Enter SCM markup procedure directly in Scheme.
15028         (fromproperty): new markup command. Read markup from props argument.
15029
15030         * scm/titling.scm (marked-up-title): create title via
15031         user-specified markup. 
15032
15033         * scm/define-markup-commands.scm (column): remove empty stencils
15034         from column.
15035
15036         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15037         not have side-effect of creating variable stub.
15038
15039         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15040
15041 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15042
15043         * scm/encoding.scm (coding-alist): 
15044         * scm/font.scm (add-ec-fonts):
15045         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15046         Extended-TeX-Font-Encoding---Latin.
15047
15048         * lily/side-position-interface.cc (general_side_position): Add
15049         actual offset to error message (avoid constant error messages).
15050
15051         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15052         block.
15053
15054         * lily/font-select.cc (select_encoded_font)
15055         (get_font_by_mag_step, get_font_by_design_size): 
15056         * lily/modified-font-metric.cc (Modified_font_metric): 
15057         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15058
15059         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15060         (read-encoding-file): Bugfix: do not require space after bracket.
15061
15062         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15063         these do not exist.
15064
15065 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15066
15067         * Documentation/user/notation.itely: added info about typesetting
15068         boxed bar numbers.
15069
15070 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15071
15072         * flower/interval.cc (T_to_string): gcc4 fixes.
15073
15074         * scm/define-markup-commands.scm (fill-line): use
15075         stack-stencils. This fixes problems with putting already centered
15076         stencils in a line.
15077
15078         * VERSION: release 2.5.1
15079
15080         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15081
15082 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15083
15084         * input/example-[1-3].ly: simplify.
15085
15086         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15087
15088         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15089         show glyphs.
15090
15091         * scm/encoding.scm (decode-byte-string): new function.
15092
15093         * scripts/convert-ly.py (conv): add warning about
15094         set-global-staff-size.
15095
15096         * Doxyfile: add. 
15097
15098         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15099         (conv): warn for TextSpanner split.
15100         (conv): warn for textheight.
15101
15102 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15103
15104         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15105         building the documentation, info with images are installed.
15106         (final-install): Fix description.  Mention sourcing of login
15107         scripts (instead of running).
15108
15109 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15110
15111         * Debian lmodern support.  Note that LilyPond will issue warnings
15112         
15113             no such encoding: "FontSpecific"
15114
15115           The font selection mechanism wants to get the encoding from the
15116           font itself, but the idea of lmodern is that it is usable with
15117           different encodings, ie, Lily should get the encoding from the
15118           font tree, rather than the font itself.  This would require some
15119           more work.
15120         
15121         * configure.in: Test for and accept lmodern if EC fonts not found.
15122
15123         * scm/framework-tex.scm (font-load-command): TeX font name
15124         mangling for latin1 encoded cork-lm fonts.
15125         (convert-to-ps): Load lm.map if available.
15126
15127         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15128         available.
15129
15130         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15131
15132         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15133         available.
15134
15135         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15136         path for absolute file name, that is silly.
15137
15138         * lily/score-engraver.cc (initialize): 
15139
15140         * Documentation/user/GNUmakefile (local-install-info): Invoke
15141         install-info --remove first.
15142
15143         * #include cleanup (Andreas Scherer).
15144
15145 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15146
15147         * input/test/script-abbreviations.ly: fix typos.
15148
15149 2004-11-17  Werner Lemberg  <wl@gnu.org>
15150
15151         * python/lilylib.py (options_help_str): Support pretty-printing of
15152         newlines in fourth element of option description.
15153
15154         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15155         feature.
15156         Sort options.
15157
15158         * Documentation/user/lilypond-book.itely: Finish update.
15159
15160 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15161
15162         * Documentation/user/macros.itexi: Add comment about \command.
15163
15164         * Documentation/user/lilypond.tely:
15165         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15166         and lilypond-book nodes, so that `info lilypond' visits the manual
15167         at top level, and `info lilypond-book' visits the lilypond-book
15168         section.
15169
15170         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15171         and packager messages.
15172
15173         * lily/pangofc-afm-decoder.cc: Update test.
15174
15175 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15176
15177         * scm/lily-library.scm (char->unicode-index): New function.
15178
15179         * scm/output-gnome.scm: 
15180         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15181
15182         * Proper naming of file name throughout; s/filename/file[-_]name/.
15183
15184         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15185
15186         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15187
15188 2004-11-16  Werner Lemberg  <wl@gnu.org>
15189
15190         * scripts/lilypond-book.py: The Lord has commanded me to use only
15191         tabs for indentation.  Your humble servant obeys.
15192
15193 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15194
15195         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15196         including font, if LilyPond-feta font is only feta font in path.
15197
15198         * scm/output-gnome.scm (text): Revert to file name of font if font
15199         has no name.  Fixes ec font selection.
15200         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15201
15202         * scm/framework-svg.scm:
15203         * scm/output-svg.scm: New file.  TODO: figure out how to
15204         do character by index in font.
15205
15206         * scm/output-sodipodi.scm: Remove.
15207
15208         * scm/output-ps.scm (stem): Remove.
15209
15210 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15211
15212         * scm/output-gnome.scm (beam): New function.
15213         (slur): Round corners.
15214         (round-filled-box): Round corners.
15215
15216 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15217
15218         * scm/output-gnome.scm (beam): add function.
15219         (draw-line): new routine.
15220         (dashed-line): stub; call draw-line
15221         (polygon): new routine.
15222
15223 2004-11-15  Werner Lemberg  <wl@gnu.org>
15224
15225         * Documentation/user/lilypond-book.itely: Revise section on
15226         lilypond-book options.
15227         Other minor fixes.
15228
15229         * scripts/lilypond-book.py: Change indentation to 4.
15230         Minor formatting.
15231
15232 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15233
15234         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15235         grobs that have tweaks specced.
15236         
15237 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15238
15239         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15240
15241 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15242
15243         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15244         actual char #, not 0 based index.
15245
15246         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15247
15248         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15249         Warning: do make -C mf clean.
15250
15251         * lily/context-property.cc: Compile fix.
15252
15253         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15254         Grok ec-fonts, braces and dynamics.
15255
15256         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15257
15258 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15259
15260         * lily/include/tweak-registration.hh: new file.
15261
15262         * lily/tweak-registration.cc: new file.
15263
15264         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15265         saving tweaks.
15266
15267         * scm/output-gnome.scm (text): comment dribble.
15268
15269 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15270
15271         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15272
15273         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15274         path-def before using.  Fixes muchtomany slurs in wrong places
15275         bug.
15276
15277 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15278
15279         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15280
15281         * lily/include/object-key-undumper.hh (Module): new file.
15282
15283         * lily/object-key-undumper.cc (Module): New file. Deserialize
15284         keys. SCM bindings
15285
15286         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15287         Provide SCM bindings.
15288
15289         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15290         new file. Serialize object keys.
15291         
15292         * lily/object-key.cc (dump): new function.
15293         (as_scheme): new virtual function
15294         (undump): new function
15295         (undumpers): new table.
15296
15297         * lily/include/global-context.hh (Context): take \score key upon init.
15298
15299         * lily/object-key-dumper.cc (serialize_key): new file.
15300
15301         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15302
15303         * lily/lily-lexer.cc: remove \quote.
15304
15305         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15306
15307         * lily/context.cc (Context): take key argument in ctor.
15308         (create_context): new function
15309
15310         * lily/grob.cc (Grob): take key argument in ctor.  
15311
15312         * lily/lilypond-key.cc (do_compare): new file.
15313
15314         * lily/object-key.cc (Object_key): new file.
15315
15316         * lily/include/object-key.hh (class Object_key): new file.
15317
15318         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15319
15320 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15321
15322         * Documentation/user/lilypond-book.itely: add small warning about
15323         noindent default in lilypond-book.
15324
15325         * Documentation/user/converters.itely: add examples for convert-ly.
15326
15327         * Documentation/user/examples.itely: change version string in templates
15328         to 2.4.0.
15329
15330 2004-11-12  Karl Hammar  <karl@aspodata.se>
15331
15332         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15333         cmdline, use xargs instead (backportme)
15334
15335 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15336         
15337         * Documentation/user/: Numerous fixes in the user manual.
15338
15339 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15340
15341         * lily/parser.yy (re_rhythmed_music): search music expression for
15342         context-id, surround by \new Voice if not found. Fixes:
15343         addlyrics-second-staff.ly
15344
15345         * VERSION: 2.5.0 released.
15346         
15347 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15348
15349         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15350
15351         * Documentation/user/GNUmakefile: Separate rules for split and
15352         unsplit html documents.  Remove perl massaging.  (backportme)
15353
15354 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15355
15356         * Documentation/user/lilypond-book.itely: add short warning about
15357         \lilypond{} in LaTeX docs.
15358
15359 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15360
15361         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15362         found.  (backportme)
15363
15364         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15365         version requirement.  (backportme)
15366
15367         * configure.in: Be explicit about old versions of
15368         ec-fonts-mtraced.  (backportme)
15369
15370         * lily/context-selector.cc (set_tweaks): New function.
15371         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15372         web with -DTWEAK.
15373
15374         * Documentation/user/introduction.itely (Automated engraving):
15375         Remove fragment option.  Fixes web.
15376
15377         * lily/context-property.cc (make_item_from_properties):
15378         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15379         #ifdef.
15380
15381         * scm/define-context-properties.scm
15382         (all-internal-translation-properties): Add tweakRank and tweakCount.
15383
15384         * lily/grob.cc: 
15385         * scm/define-grob-properties.scm (all-internal-grob-properties):
15386         Add tweak-rank and tweak-count.
15387
15388 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15389
15390         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15391         New function.
15392         (text): Use them.
15393
15394         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15395         animated/opaque grob dragging tweaks.
15396
15397         * buildscripts/guile-gnome.sh: Update.
15398
15399 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15400
15401         * scm/define-grobs.scm (all-grob-descriptions): Added
15402         line-interface to the LigatureBracket object.
15403
15404 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15405
15406         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15407         dragging tweaks.
15408
15409         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15410
15411         * lily/context-selector.cc (store_context): New function.
15412
15413         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15414         (store_grob): New function.
15415         (identify_grob): Add Moment parameter.
15416
15417         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15418         exists.
15419
15420         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15421
15422 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15423
15424         * scm/framework-gnome.scm (item-event): Print grob id.
15425         (save-tweaks): New function.
15426         (tweak): New funtion.
15427         (item-event): Use it, bound to arrow keys.
15428
15429         * lily/context-property.cc (make_item_from_properties): Register grob.
15430         * lily/context.cc (add_context): Register context.
15431
15432         * lily/include/context-selector.hh:
15433         * lily/include/grob-selector.hh:
15434         * lily/context-selector.cc:
15435         * lily/grob-selector.cc: New file.
15436
15437 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15438
15439         * lily/slur.cc: add 'positions to interface
15440
15441         * lily/main.cc: reinstate PS as standard output format. 
15442
15443         * scm/framework-tex.scm (output-preview-framework): print systems
15444         up to first non title system.
15445
15446         * lily/grace-engraver.cc (start_translation_timestep): split
15447         scm_cadddr
15448         
15449 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15450
15451         * lily/quote-iterator.cc (Module): remove old quote-iterator
15452
15453         * scm/define-music-types.scm (music-descriptions): move
15454         NewQuoteMusic over QuoteMusic
15455
15456         * Documentation/user/notation.itely (Formatting cue notes): use
15457         \cueDuring.
15458
15459         * lily/new-quote-iterator.cc (quote_ok): new function.
15460
15461         * input/regression/quote-cue-during.ly: new file.
15462
15463         * input/regression/quote-grace.ly: new file.
15464
15465         * scm/define-context-properties.scm (Module): change definition of
15466         graceSettings
15467
15468         * lily/context-property.cc (Module): rename from
15469         translator-property.cc
15470
15471         * lily/context.cc (context_name_symbol): new function
15472
15473         * lily/grace-engraver.cc: new file. Set properties for grobs based
15474         on the grace-ness of now_moment().
15475
15476         * scm/music-functions.scm (add-grace-property): use list
15477         iso. vector for graceSettings
15478         remove set-{start,stop}-grace-properties. 
15479
15480         * lily/new-quote-iterator.cc (construct_children): set
15481         quote_outlet_ if no quoted-context-{id,type} specified.
15482
15483         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
15484
15485         * lily/parser.yy (command_element): remove \quote.
15486
15487         * ly/music-functions-init.ly (location): add quoteDuring music
15488         function. 
15489
15490         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
15491         optional semicolon. (backportme)
15492
15493 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15494
15495         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
15496         need to link to GUILE et al.
15497
15498 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15499
15500         * scm/define-music-properties.scm (all-music-properties): add
15501         quoted-context-type, quoted-context-id.
15502
15503         * scm/lily.scm (type-check-list): new function.
15504         
15505         * scm/lily-library.scm: new file. Generic library routines.
15506
15507         * lily/parser.yy (Generic_prefix_music): move typechecking out of
15508         parser.
15509
15510         * ly/music-functions-init.ly: add quoteDuring function.
15511
15512         * lily/include/music-iterator.hh (class Music_iterator): rename
15513         set_translator -> set_context
15514
15515         * lily/parser.yy (Generic_prefix_music_scm): add
15516         MUSIC_FUNCTION_SCM_SCM_MUSIC
15517
15518         * scm/lily.scm (sanitize-command-option): new function. (backportme)
15519
15520         * scm/framework-tex.scm (header): sanitize TeX paper size.
15521         (backportme)
15522
15523 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15524
15525         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
15526
15527         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
15528
15529         * scm/framework-tex.scm (font-load-command): Use T1 if no
15530         font-encoding set.  (backportme)
15531
15532         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
15533         exists before converting.  (backportme)
15534
15535         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
15536         exists before converting.  (backportme)
15537         (convert-to-ps): Remove .ps file if it exists before
15538         converting.  (backportme)
15539
15540         * lily/lexer.ll: Remove extra progress newline, use present tense.
15541
15542         * scm/paper.scm (paper-alist): public.
15543         * scm/framework-tex.scm (convert-to-ps):
15544         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
15545         command line.
15546
15547 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15548
15549         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
15550
15551         * lily/recording-group-engraver.cc (derived_mark): mark
15552         now_events_. (backportme)
15553
15554 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15555
15556         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
15557
15558         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
15559         invoking latex. (backportme.)
15560
15561         * lily/stem.cc (off_callback): center stems for all rest stems.
15562
15563 2004-11-05  Werner Lemberg  <wl@gnu.org>
15564
15565         * Documentation/user/lilypond.tely: Add more guidelines for writing
15566         lilypond texinfo documents.
15567
15568 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
15569
15570         * Documentation/index.html.in: remove <hr>.
15571
15572         * THANKS: change 2.3 to 2.4.
15573
15574 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
15575
15576         * scm/output-gnome.scm: More fontconfig comment.
15577
15578 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
15579
15580         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
15581         <package> directory in $(builddir)/share according with
15582         PACKAGE_NAME defined in the VERSION file.
15583
15584 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15585
15586         * lily/beam.cc (rest_collision_callback): use local beam
15587         multiplicity.
15588
15589         * input/regression/stem-stemlet.ly: new file.
15590
15591         * lily/stem.cc (add_head): store rests as well.
15592
15593         * scm/define-grob-properties.scm (all-user-grob-properties): add
15594         stemlet-length
15595
15596         * lily/stem.cc: store rests as well.
15597         
15598         * input/regression/new-slur.ly: mention forcing.
15599
15600 2004-11-04  Werner Lemberg  <wl@gnu.org>
15601
15602         * Documentation/user/*: A new round of layout fixes and document
15603         structure cleanup.
15604
15605 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
15606
15607         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
15608
15609 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
15610
15611         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
15612
15613 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
15614
15615         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
15616
15617         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
15618
15619         * lily/main.cc (main): Invoke identify.
15620
15621         * scm/lily.scm (postscript->pdf): Remove progress newline.
15622         Write progress to stderr.
15623
15624         * lily/paper-book.cc (output): Remove progress newline.
15625
15626         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
15627         gettext on user messages, and remove whitespace.
15628
15629         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
15630
15631         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
15632         argv[0] (Thomas Scharkowski).
15633
15634         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
15635         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
15636         for ec-fonts-mtraced.
15637
15638         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
15639         --srcdir build (Bertalan).
15640
15641         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
15642         headers and library too (Laura Conrad).
15643
15644         * Documentation/topdocs/INSTALL.texi (Top): Mention development
15645         package for guile too (Laura Conrad).
15646
15647         * lily/main.cc (usage): Typo.
15648
15649 2004-11-02  Werner Lemberg  <wl@gnu.org>
15650
15651         * Documentation/user/notation.ly: More fixes to improve appearance.
15652
15653         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
15654         better output for multicolumn tables.
15655
15656 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
15657
15658         * lily/main.cc (dir_info): Fixed typo in the printouts.
15659
15660 2004-11-01  Werner Lemberg  <wl@gnu.org>
15661
15662         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
15663         of output.
15664         Set `per_line' to 2; replace hard-coded value with it.
15665
15666         * Documentation/user/*: Many fixes to improve appearance of
15667         printed manual.
15668
15669 2004-11-01  Werner Lemberg  <wl@gnu.org>
15670
15671         * Documentation/user/changing-defaults.itely,
15672         Documentation/user/notation.ly,
15673         Documentation/user/programming-interface.itely: Use @/.
15674         Fix formatting of some lilypond snippets and tables.
15675
15676         * scripts/lilypond-book.py (compose_ly): Provide useful default
15677         for LINEWIDTH in `override'.
15678
15679 2004-10-31  Graham Percival  <gperlist@shaw.ca>
15680
15681         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
15682
15683 2004-10-31  Werner Lemberg  <wl@gnu.org>
15684
15685         Resetting @exampleindent to `5' gives ugly results with texinfo's
15686         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
15687         (if not quoting) to change @exampleindent only locally.
15688
15689         * scripts/lilypond-book.py (NOQUOTE): New variable.
15690         (output) [LATEX]: Remove AFTER and BEFORE.
15691         [TEXINFO]: Remove AFTER and BEFORE.
15692         Fix QUOTE and VERBATIM pattern.
15693         Add NOQUOTE pattern.
15694         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
15695         and BEFORE.
15696         [output_texinfo]: Use NOQUOTE.
15697
15698 2004-10-31  Graham Percival  <gperlist@shaw.ca>
15699
15700         * Documentation/user/changing-defaults.itely: clarify paper
15701         size commands with correct info.
15702
15703         * Documentation/user/lilypond-book.itely: add more docs for
15704         filename extensions.
15705
15706 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15707
15708         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
15709         (PATCH_LEVEL): start 2.5.0.
15710
15711 #Local variables:
15712 #coding: utf-8
15713 #End:
15714