]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* scm/framework-ps.scm (output-preview-framework): use new name.
[lilypond.git] / ChangeLog
1 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * scm/framework-ps.scm (output-preview-framework): use new name.
4
5         * lily/program-option.cc (internal_set_option): use new names.
6
7         * Documentation/user/SConscript (lilypond_book_flags): update -d
8         variable names.
9
10         * Documentation/user/lilypond-book.itely (Inserting LilyPond
11         output into other programs): new variable names.
12
13         * scm/lily.scm (define-scheme-options): uniformize var names.
14
15         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
16         tuplets_ is non-empty before popping.
17
18 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
19
20         * lily/spanner.cc (find_broken_piece): 
21         * lily/spacing-spanner.cc (get_columns): 
22         * lily/source-file.cc (get_line): 
23         * lily/simple-spacer.cc (get_column_description): 
24         * lily/keyword.cc (lookup): 
25         use the new binary search.
26
27         * flower/include/std-vector.hh: replace binary_search with
28         a more STL-like version
29
30 2006-09-05  Joe Neeman  <joeneeman@gmail.com>
31
32         * lily/page-turn-engraver.cc (penalty): minPageTurnLength ->
33         minimumPageTurnLength
34
35         * scm/define-context-properties.scm (all-user-translation-properties):
36         add minimumPageTurnLength and minimumRepeatLengthForPageTurn
37
38         * Documentation/user/page.itely: update page breaking documentation
39
40 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
41
42         * lily/tie-performer.cc: remove unused last_event_ property.
43         (class Tie_performer): add now_tied_heads_ property for
44         partially-tied heads.
45         (acknowledge_audio_element): when adding an Audio_note, put the
46         note in now_tied_heads_ if the audio note is partially tied.
47         (stop_translation_timestep): always include entries in
48         now_tied_heads_ in heads_to_tie_.
49
50         * lily/drum-note-performer.cc (process_music): look for tie-events
51         in the articulations; pass to Audio_note constructor.
52
53         * lily/note-performer.cc (process_music): look for tie-events in
54         the articulations; pass to Audio_note constructor.
55
56         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
57         constructor.
58
59         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
60         include initializer in constructor.
61
62 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
63
64         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
65         unless they are breakable. This fixes discrepancies between the forces
66         calculated here and the forces calculated in get_line_configuration.
67
68         * lily/grob.cc (pure_relative_y_coordinate): fix some
69         mis-estimation that was happening with piano staves.
70
71         * lily/constrained-breaking.cc (resize): don't choke if we get a
72         measure that won't fit on a line.
73         (combine_demerits): don't consider uniformity when ragged
74
75         * lily/page-spacing.cc (solve): why the f* were there two of these?
76         (calc_subproblem): properly handle the case where a system is taller
77         than the page.
78
79         * lily/system.cc (get_paper_system): ensure that all the permissions
80         and penalties are passed to the paper systems.
81
82         * lily/page-breaking.cc (create_system_list): support system-count.
83
84         * scm/define-grobs.scm (pure-print-callbacks): add
85         ly:script-interface::print
86
87         * lily/page-spacing.cc (min_page_count): fix calculation of min
88         pages if we are ragged and there are non-zero springs.
89
90         * scm/layout-page-layout.scm: if the pure-height estimates are under
91         the real height, allow space-systems to ignore padding if it is
92         needed in order to fit the systems on one page
93
94         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
95         ragged properties
96         (solve): fix performance problem. Make sure we always get at least
97         one solution
98
99         * lily/page-breaking.cc (make_pages): include write-page-breaks
100         and page-stencil
101
102         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
103
104         * scm/define-grobs.scm: add the new slur-callback
105         fix pure-relevant to not exclude grobs whose extent is already
106         calculated
107
108         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
109         page breaker
110
111         * lily/slur.cc (pure_height): new callback to estimate the height
112         of a slur
113
114 2006-09-02  Graham Percival  <gpermus@gmail.com>
115
116         * Documentation/user/invoking.itely: small update on
117         MacOS X notes; thanks Trevor!
118
119 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
120
121         * VERSION (MY_PATCH_LEVEL): release 2.9.17
122
123         * lily/lexer.ll: accept EOF in all states.
124
125         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
126
127         * lily/source-file.cc (Source_file): always 0-terminate character
128         array, to prevent Flex from barfing.
129
130         * lily/global-context.cc (get_output): robustness: don't crash if
131         no Score context found.
132
133         * lily/include/book.hh (class Book): idem.
134
135         * lily/include/context-def.hh (struct Context_def): idem.
136
137         * lily/include/score.hh (class Score): don't derive from Input.
138
139         * lily/book.cc (Book): add a copy ctor. 
140
141         * buildscripts/output-distance.py (FileLink.calc_distance): count
142         orphans in distance too.
143
144         * python/midi.c (midi_parse_track): robustness: don't read past
145         end of string.
146
147         * ly/performer-init.ly: add Control_track_performer, move
148         Tempo_performer and Time_signature_performer to Score.        
149
150         * lily/score-performer.cc (acknowledge_audio_elements): override
151         from base class: add to audio-columns
152
153         * lily/control-track-performer.cc (add_text): new file: generate
154         the control track.
155
156         * lily/performance.cc: move output_header_track to
157         Control_track_performer ()
158
159         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
160
161         * lily/include/midi-item.hh (class Midi_channel_item): insert
162         class into hierarchy, for items that can have a channel setting. Dehungarify.
163
164         * lily/include/performer.hh (class Performer): remove
165         play_element();  move functionality into announce/acknowledge.
166
167         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
168
169         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
170         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
171
172 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
173
174         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
175         ambituses.
176
177         * lily/all-font-metrics.cc: remove TFM support.
178
179         * lily/include/tfm.hh: remove TFM support, TFM reader.
180
181         * lily/include/binary-source-file.hh: remove Binary_source_file.
182
183 2006-08-27  Graham Percival  <gpermus@gmail.com>
184
185         * Documentation/topdocs/NEWS.itely: add @c marker for
186         stuff I've processed.
187
188         * Documentation/user/ various: info from NEWS.
189
190 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
191
192         * lily/paper-column-engraver.cc (finalize): Oops, this change
193         should have gone in on 2006-08-23
194
195 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
196
197         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
198         quotes to quote arguments. Fixes Windows problem.
199
200         * python/lilylib.py (progress): idem
201
202 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
203
204         * scripts/musicxml2ly.py: fix for importing
205         minor key signatures from MusicXML.  (Phillip Kirlin)
206
207 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
208
209         * python/musicxml.py: 
210         (Attributes.get_key_signature): now correctly retrieves mode from 
211         MusicXML. 
212
213 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
214
215         * lily/parser.yy (output_def_body): take ownership of identifier
216         back to C++.
217
218         * Documentation/user/advanced-notation.itely (Metronome marks):
219         update use of \tempo in \midi.
220
221         * VERSION: release 2.9.16
222         
223 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
224
225         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
226         web partially)
227
228 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
229
230         * input/regression/tie-chord-partial.ly: clarify example.
231
232         * scm/define-music-properties.scm (all-music-properties): remove
233         untied.
234
235         * ly/music-functions-init.ly: remove \untied.
236
237         * lily/tie-engraver.cc (struct Head_event_tuple): store both
238         stream events and music events.
239         (stop_translation_timestep): search acknowledged heads for
240         tie-event.
241
242         * input/regression/tie-chord-partial.ly: new file.
243
244         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
245         for \char markup command.
246
247         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
248
249         * scm/define-music-types.scm (music-descriptions): consistency:
250         Use solo-{one,two}-event iso. solo-[12]-event.
251
252         * lily/part-combine-engraver.cc (process_music):
253         Use solo-{one,two}-event iso. solo-[12]-event.
254
255         * ly/declarations-init.ly (partCombineListener): add Timing as
256         alias
257
258         * flower/std-string.cc (string_copy): use copy ()
259
260         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
261
262 2006-08-24  Graham Percival  <gpermus@gmail.com>
263
264         * Documentation/user/changing-defaults.itely, global.itely,
265         lilypond-book.itely, page.itely: minor changes from mailist.
266
267 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
268
269         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
270         snippet-map
271
272         * scm/define-context-properties.scm
273         (translator-property-description): robustness: detect type errors
274         in property definitions.
275
276         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
277         after getting it from SCM. 
278
279         * lily/smobs.cc (protect_smob): switch off fancy smob protection
280         for now. 
281
282         * lily/include/performer.hh (class Performer): strip get_tempo()
283         method.
284
285         * lily/midi-def.cc: strip file.
286
287         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
288
289         * lily/include/context-def.hh (struct Context_def): use
290         VIRTUAL_COPY_CONSTRUCTOR().
291
292         * lily/source-file.cc: smobification.
293
294         * lily/include/source-file.hh (class Source_file): smobify
295         Source_file. Trim redundant members.
296
297         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
298         clones after creation. This plugs a huge memory leak.
299
300         * python/convertrules.py (FatalConversionError.sub_tempo):
301         complete rule for \midi{ \tempo }
302
303         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
304
305         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
306
307 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
308
309         * input/regression/optimal-page-breaking-hstretch.ly: test for
310         ragged-last-bottom also
311
312         * lily/paper-column-engraver.cc (finalize): make the end of a score
313         breakable by default. This is to balance out a change in behaviour
314         of the page-turn-breaker which no longer makes the end of a score
315         breakable.
316
317         * lily/paper-book.cc (pages): set the systems_ once the pages are
318         broken
319
320         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
321         Page_breaking interface.
322
323         * lily/page-breaking.cc (class Page_breaking): make the interface
324         more consistent and provide abstractions for dealing with
325         Line_divisions.
326
327         * lily/optimal-page-breaking.cc (solve): use a more straightforward
328         algorithm. Use the new interface to Page_breaking.
329
330         * lily/page-spacing.cc: better support for ragged-bottom and
331         ragged-last-bottom
332
333 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
334
335         * python/convertrules.py (conv): warning on \tempo{}
336
337         * ly/performer-init.ly: set tempoWholesPerMinute.
338
339         * ly/midi-init.ly: remove \midi
340
341         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
342         MIDI tempo.
343
344         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
345         tempoUnitDuration for determining what to print.
346
347         * lily/lyric-extender.cc: typo.
348
349         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
350
351         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
352         function.
353
354         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
355
356         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
357         eps-pad-boxes is set.
358
359         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
360
361         * THANKS: update sponsors.
362
363         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
364
365         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
366
367         * input/regression/tie-chord-untied.ly: new file.
368
369         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
370
371         * scm/define-music-properties.scm (all-music-properties): add
372         'untied property.
373
374         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
375         than .ly.txt.
376         (headertext_nopics): sanitize no-examples text.
377
378         * scm/page.scm (make-page-stencil): don't rely on extents of
379         page-stencil. This fixes spurious space around .EPS files produced
380         with the EPS backend.
381
382 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
383
384         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
385
386         * lily/hara-kiri-engraver.cc (process_music): remember
387         keepAliveInterfaces after processing \set
388
389         * lily/lyric-extender.cc (print): support left/right-padding for
390         extenders.
391
392         * scm/documentation-generate.scm (string-append): revert lilypond/
393         path, doc why.
394
395 2006-08-20  Graham Percival  <gpermus@gmail.com>
396
397         * Documentation/user/lilypond.tely: clarification to
398         license presentation (not to actual license).
399
400         * Documentation/user/basic-notation.itely,
401         instrument-notation.itely: minor changes.
402
403         * input/ {regression, test}/+.ly: clarification to
404         text (you can click on examples).  Thanks, Mats!
405
406         * input/manual/bar-lines.ly: adds ||: repeats.
407
408 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
409
410         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
411
412         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
413
414         * Documentation/user/lilypond.tely: strip lilypond/ from info
415         links, rename to category LilyPond
416
417         * lily/pango-font.cc (description_string): new function.
418
419         * VERSION: release 2.9.15
420
421         * lily/spacing-engraver.cc (stop_translation_timestep): use
422         Dscho's fix for spacing spanner. 
423
424         * scm/define-music-types.scm (music-descriptions): use
425         apply-output-event for ApplyOutputEvent
426
427         * lily/output-property-engraver.cc (listen_apply_output): rename
428         from listen_layout_instruction.
429
430         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
431         function protect()
432
433 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
434
435         * scm/lily.scm (lilypond-all): option read-file-list: substitute
436         commandline args with contains, split by \n.
437
438         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
439         write snippet-names file, call with -dread-file-list. Fixes
440         command limitations on 64-bit systems.
441
442         * input/regression/stencil-color-rotation.ly: new file.
443
444         * lily/include/translator.hh (struct Acknowledge_information):
445         revert: don't use Protected_scm in global objects, as GUILE can't
446         handle gc_unprotect from automated destructors on MacOS X.
447  
448         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
449         color, not the original stencil. Fixes combinations of
450         color/transparency/rotation. Backportme.
451
452         * scripts/lilypond-book.py (main): add --formats=eps for
453         texinfo/latex.
454
455         * lily/spacing-engraver.cc (stop_translation_timestep): don't
456         crash if spacing_ is nonexistent.
457
458 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
459
460         * scripts/lilypond-book.py (output): Remove obsolete(!?)
461         \catcode`\@=12 in the LaTeX output.
462
463 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
464
465         * scm/define-music-types.scm (music-descriptions):
466         use sustain-event iso. sustain-pedal-event.
467
468 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
469
470         * scripts/convert-ly.py: honour the -n command-line switch
471
472 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
473
474         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
475         break specification.
476
477 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
478
479         * Documentation/user: convert-ly the user manual
480
481 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
482
483         * stepmake/aclocal.m4: version check patch (thanks MWD)
484
485         * ly/music-functions-init.ly: robustness. Don't crash if
486         currentBarNumber is not a number.
487
488         * VERSION (PATCH_LEVEL): bump.
489
490 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
491
492         * stepmake/aclocal.m4: better version check; handle fooX.Y
493         binaries too.
494
495         * ly/performer-init.ly: instrument name fixup.
496
497         * input/manual/chord-names-jazz.ly (banterProperties):
498         instrumentName update
499
500         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
501
502         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
503
504         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
505         function. Use hash tables to check membership.
506
507         * lily/general-scheme.cc (LY_DEFINE): new function.
508
509         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
510
511         * lily/include/translator.hh (struct Acknowledge_information): add
512         Protected_scm
513
514         * ly/music-functions-init.ly: change name to BreathingEvent
515
516         * input/regression/*.ly: apply it.
517
518         * python/convertrules.py (conv): better instrumentName conversion
519         rule.
520
521         * scm/define-music-types.scm (music-descriptions): add
522         line-break-event to LineBreakEvent music
523
524         * lily/music.cc (to_event): don't crash if music type not set.
525
526         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
527         spacing not set.
528
529         * lily/spacing-engraver.cc (stop_translation_timestep): set
530         spacing for proportional notation too.
531
532         * scm/translation-functions.scm (format-bass-figure): inspect
533         stream-event.
534
535         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
536
537 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
538
539         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
540
541         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
542
543         * scm/layout-page-layout.scm (make-page-from-systems): new function
544         (optimal-page-breaks): use the new page-breaking calling convention
545
546         * scm/define-context-properties.scm (all-user-translation-properties):
547         add revokePageTurns
548
549         * lily/paper-column-engraver.cc (stop_translation_timestep): add
550         revokePageTurns  functionality. If there is a special barline within
551         the breakable region, break there instead of at the end of the region.
552
553         * lily/paper-book.cc (pages): use the new page-breaking calling
554         convention
555
556 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
557
558         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
559
560         * scripts/lilypond-book.py: insert \sourcefileline command in
561         output, so lilypond error messages refer to the spot in the
562         original .lytex / .itely sourcefile.
563
564 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
565
566         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
567         space to next column for distance to fixed col.
568
569         * VERSION (PACKAGE_NAME): release 2.9.14
570
571         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
572         if no accidental.
573
574         * lily/accidental-engraver.cc (process_acknowledged): don't create
575         accidental for trill span event. This fixes spurious accidentals
576         on trills.
577
578 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
579
580         * scm/define-grob-properties.scm (all-user-grob-properties):
581         Clarify documentation of side-axis and direction. Thanks to Paul
582         for the inspiration.
583
584         * lily/bar-line.cc: Add documentation for "||:" also in the
585         interface documentation.
586
587 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
588
589         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
590
591         * lily/paper-column.cc (set_system): new function.
592
593         * lily/spacing-engraver.cc (stop_translation_timestep): store
594         SpacingSpanner refs in Paper_column.
595
596         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
597         compute loose clique spacing using GraceSpacing/SpacingSpanner.
598
599 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
600
601         * lily/beam-engraver.cc (listen_beam): add method for
602         Grace_beam_engraver too.
603
604 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
605
606         * python/convertrules.py: Fix indentation bug that broke
607         conversion of files older than 1.3.117.
608         Fix escape error in the description for 2.9.6.
609
610 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
611
612         * lily/*-engraver.cc: convert all try_music functions to listen_*
613         functions.
614
615         * lily/piano-pedal-engraver.cc: some additional cleanups: use
616         enums to represent pedal types, and calculate more data statically.
617
618         * scm/part-combiner.scm (recording-group-emulate): create a
619         softcoded substitute for recording-group-engraver.cc.
620
621         * lily/music.cc: make a common transpose function for events and
622         music
623
624         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
625         ManualMelismaEvent, and obsoletes Melisma_translator.
626
627 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
628
629         * input/test/instrument-name-align.ly: update version.
630
631 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
632
633         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
634         Doc the --pdf flag to lilypond-book.
635
636 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
637
638         * Documentation/topdocs/NEWS.tely (Top): add description.
639
640         * input/regression/tuplet-full-length-note.ly: add file.
641
642         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
643         always store axis group.
644
645 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
646
647         * input/regression/instrument-switch.ly: new file.
648
649         * lily/instrument-switch-engraver.cc (process_music): new file.
650
651         * ly/engraver-init.ly: add Instrument_switch_engraver
652
653         * ly/music-functions-init.ly: \instrumentSwitch
654
655         * scm/define-context-properties.scm
656         (all-user-translation-properties): add instrumentCueName
657
658         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
659
660 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
661
662         * ly/music-functions-init.ly: music function \transposition.
663
664         * lily/parser.yy (command_element): softcode \transposition.
665
666         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
667         (process_music): oops.
668
669         * lily/instrument-name-engraver.cc (start_spanner): new
670         function. Create spanner when property changes.
671         (stop_spanner): new function.
672
673         * python/convertrules.py (conv): add rule.
674
675         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
676         shortInstrumentName iso. instr.
677
678         * scm/output-ps.scm (dashed-line): add phase argument to
679         dashed-line.
680
681         * lily/bar-line.cc (dashed_bar_line): new function.
682         (compound_barline): support \bar "dashed". 
683
684         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
685         --output=DIR to DIR/BASE if it is a dir. 
686
687         * flower/file-name.cc (file_part): new function
688         (dir_part): new function
689
690         * lily/lily-parser-scheme.cc (LY_DEFINE): 
691
692         * DEDICATION: update
693
694 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
695
696         * lily/instrument-name-engraver.cc: formatting.
697
698         * python/convertrules.py (conv): bugfix for \epsfile.
699
700 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
701
702         * lily/grob.cc:
703         
704         * lily/gourlay-breaking.cc: Oops, these should have been included
705         in my last commit
706
707 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
708
709         * scripts/*.py (program_name): cleanup relocation snippets.
710
711         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
712
713 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
714
715         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
716         page-breakable by default
717
718         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
719         correctly calculated for a single-system page
720
721         * scm/lily-library.scm (interval-sane?): also check that the first number is no
722         bigger than the second number
723
724         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
725         acknowledge that we aren't satisfying constraints)
726
727         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
728         non-Items
729
730         * lily/grob.cc (pure_height): add minimum-Y-extent
731
732         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
733         ragged
734
735         * lily/constrained-breaking.cc: convert code to use new Matrix class
736         (get_best_solution): new function
737
738         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
739         is a page with no systems
740
741 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
742
743         * VERSION (PACKAGE_NAME): release 2.9.13
744
745         * scm/define-grobs.scm (all-grob-descriptions): remove stray
746         assignment.
747
748 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
749
750         * Documentation/topdocs/NEWS.tely (Top): doc new features.
751
752         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
753         function.
754
755         * scm/define-grob-properties.scm (all-user-grob-properties):
756         remove grace-space-factor.
757
758         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
759         grace-spacing-interface
760         (spacing-options-interface): add.
761
762         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
763
764         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
765
766         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
767         GraceSpacing object.
768
769         * lily/note-spacing.cc: fix prop list formatting
770
771         * lily/beaming-pattern.cc (de_grace): new function. Sensible
772         beaming for grace notes too.
773
774         * input/regression/spacing-grace.ly: update.
775
776         * lily/grace-spacing-engraver.cc: new file.
777
778         * lily/spacing-spanner.cc: add strict-grace-spacing.
779
780 2006-07-20  Graham Percival  <gpermus@gmail.com>
781
782         * lily/parser.yy: compile fix.
783
784 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
785
786         * scm/define-grobs.scm (all-grob-descriptions): typo.
787
788         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
789         .eps extension from includegraphics.
790
791         * scripts/lilypond-book.py (main): add support for --pdf. 
792
793         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
794         callback to compute common shortest duration.
795         (set_springs): typo.
796
797         * scm/define-grob-properties.scm (all-user-grob-properties): add
798         strict-grace-spacing.
799
800         * lily/spacing-determine-loose-columns.cc (is_loose_column):
801         support float_grace_columns_.
802
803         * lily/spacing-options.cc (init_from_grob): new file.
804
805         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
806
807         * input/regression/spacing-loose-grace.ly: new file.
808
809         * Documentation/topdocs/NEWS.tely (Top): document new feature.
810
811         * lily/tuplet-engraver.cc (struct Tuplet_description): read
812         tupletFullLengthNote too. Choose right bound depending on value.
813
814         * input/regression/tuplet-full-length-note.ly: new file.
815
816 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
817
818         * lily/*-performer.cc: Converted try_music to listen_*
819
820         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
821         as a stream-event internally. Introduce event_cause (), deprecate
822         music_cause ().
823
824         * scm/define-music-types.scm: Removed BusyPlayingEvent
825         
826 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
827
828         * Documentation/user/advanced-notation.itely (Font selection):
829         Document how to get a list of available fonts using 'lilypond
830         -dshow-available-fonts blabla'.
831
832 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
833
834         * GNUmakefile.in: filter lily-XXX.pdf files.
835
836         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
837
838         * scm/define-grob-properties.scm (all-internal-grob-properties):
839         remove delta-pitch. Use delta-position everywhere.
840
841         * scm/output-lib.scm (fall::print): use new order.
842
843         * scm/output-ps.scm (path): reorder arguments.
844
845         * scm/output-svg.scm (path): support for path primitive.
846
847         * input/regression/bend-after.ly: new file.
848
849         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
850         recipe for eps -> pdf conversion.
851
852 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
853
854         * lily/parser.yy, lily/lexer.ll: added some simplifications by
855         Angelo Contardi.
856
857 2006-07-19  Graham Percival  <gpermus@gmail.com>
858
859         * input/manual/screech-boink.ly: moved to here.
860
861         * input/screech-boink.ly: deleted.
862
863         * scm/define-grob-properties.scm: clarify doc string.
864
865 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
866
867         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
868
869         * scm/output-ps.scm (path): define path.
870
871         * scm/define-stencil-commands.scm
872         (ly:register-stencil-expression): add path.
873
874         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
875
876         * ly/engraver-init.ly: add Fall_engraver
877
878         * lily/parser.yy (music_function_event): allow musicfunction
879         without music arg as music_function_event.
880
881         * lily/grob-scheme.cc (LY_DEFINE):
882         ly:grob-robust-relative-extent. New function.
883
884         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
885
886         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
887
888         * scm/output-lib.scm (fall::print): new function
889
890         * lily/fall-engraver.cc (stop_fall): new file.
891
892         * ly/music-functions-init.ly: alphabetise.
893
894         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
895         base.
896
897 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
898
899         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
900
901         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
902         doc pdftex usage.
903
904         * lily/translator-group.cc (connect_to_context): non const error message.
905
906         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
907
908         * scm/paper.scm (internal-set-paper-size): define landscape to #f
909         if unset.
910
911         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
912
913         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
914
915         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
916         systems.pdftex too.
917
918         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
919
920         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
921
922         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
923
924         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
925
926         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
927
928         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
929
930 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
931
932         * scm/layout-page-layout.scm: Define module, tidy code, use more
933         functions iso. a single big one.
934
935         * scm/layout-page-dump.scm: move page dump functions used in two
936         pass spacing to this file. Define module.
937
938         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
939          (separate module)
940
941         * ly/paper-defaults.ly: use module layout-page-layout.
942
943 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
944
945         * lily/music.cc: Revised MusicEvent event class. It now contains
946         event data directly instead of encapsulating it in music. The
947         previously used class is renamed to OldMusicEvent.
948
949         * lily/stream-event.cc: Stream events are now probs.
950         
951         * lily/translator-group.cc, lily/translator.cc: Translators can
952         now listen directly to stream events, by using macros
953         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
954
955         * lily/arpeggio-engraver.cc: Converted to use new event system
956
957         * THANKS: Corrected spelling mistake.
958
959 2006-07-12  Graham Percival  <gpermus@gmail.com>
960
961         * Documentation/user/SConscript, make/lilypond-vars.make,
962         input/GNUmakefile: doc build looks in input/manual instead
963         of input/test/
964
965         * input/manual/ GNUmakefile, SConscript: build files for
966         input/manual/
967
968         * input/test/ various: some files moved to input/manual/ 
969
970         * Documentation/user/basic-notation.itely: small updates;
971         thanks Kieren and Charles!
972
973 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
974
975         * VERSION (PACKAGE_NAME): release 2.9.11
976
977         * Documentation/topdocs/NEWS.tely (Top): update prop value 
978
979         * Documentation/user/basic-notation.itely (Tuplets): new property
980         value.
981
982 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
983
984         * python/convertrules.py (conv): tweaks. 
985
986         * VERSION (PATCH_LEVEL): bump version.
987
988         * python/convertrules.py (conv): add rule for
989         tupletNumberFormatFunction.
990
991         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
992         tupletNumberFormatFunction.
993
994         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
995         text through 'text callback.
996
997         * lily/time-scaled-music-iterator.cc (construct_children): copy
998         tweaks generated events.
999
1000         * scm/define-context-properties.scm
1001         (all-user-translation-properties): remove tupletNumberFormatFunction
1002
1003         * lily/tuplet-engraver.cc (process_music): don't read
1004         tupletNumberFormatFunction
1005
1006         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1007         function.
1008
1009 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1010
1011         * lily/global-context-scheme.cc: Separated ly:run-translator into
1012         smaller pieces.
1013
1014         * lily/score-engraver.cc, lily/score-performer.cc,
1015         scm/define-context-properties.scm: Make paper/midi output
1016         accessable as a context property.
1017
1018         * lily/score-translator.cc, lily/score-context.cc: Removed.
1019
1020 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1021
1022         * scm/ps-to-png.scm (Module): 
1023         * scm/framework-tex.scm (Module): 
1024         * scm/framework-ps.scm (Module): 
1025         * scm/backend-library.scm (Module): 
1026         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1027         "dDEVICEHEIGHTPOINTS".
1028
1029 2006-07-04  Graham Percival  <gpermus@gmail.com>
1030
1031         * Documentation/user/ various: general improvements to
1032         "working with lilypond files" section.
1033
1034 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1035
1036         * lily/sequential-iterator.cc: Change the default get_music_list
1037         to read elements-callback music property
1038
1039         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1040         processing of multimeasure rests. Softcoded
1041         sequential-music-iterator.
1042
1043         * lily/sequential-music-iterator.cc: Removed.
1044
1045 2006-06-28  Graham Percival  <gpermus@gmail.com>
1046
1047         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1048
1049 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1050
1051         * lily/parser.yy: Wrap non-post-events in EventChords before
1052         assigning them to identifiers.
1053
1054 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1055
1056         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1057         gives correct vertical placement of \bar ":" in all staff
1058         sizes. Thanks Martial!
1059
1060 2006-06-26  Graham Percival  <gpermus@gmail.com>
1061
1062         * Documentation/user/invoking.itely : minor update from mailist.
1063
1064 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1065
1066         * lily/ various: Introduce stream events of types Prepare,
1067         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1068         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1069
1070         * lily/global-context*.cc: Time is now -inf before iteration
1071         starts.
1072
1073         * lily/include/context.hh: Removed unique_, init_
1074
1075         * Documentation/topdocs/NEWS: Make the feathered beam example
1076         avoid triggering a bug.
1077
1078 2006-06-24  Graham Percival  <gpermus@gmail.com>
1079
1080         * Documentation/user/ various: small additions from mailist.
1081
1082 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1083
1084         * ly/performer-init.ly: Add some missing links in the context
1085         hierarchy for MIDI output. There are probably some more missing!
1086
1087 2006-06-21  Graham Percival  <gpermus@gmail.com>
1088
1089         * Documentation/user/ various: minor spelling fixes;
1090         thanks Dave Luttinen!
1091
1092         * Documentation/user/ various: small clarifications;
1093         thanks Anthony Youngman!
1094
1095 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1096
1097         * po/fr.po: add \n appropriately.
1098
1099         * lily/lexer.ll: remove ? from version-seen?  
1100
1101 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1102
1103         * po/fr.po; update translation, by Jean-Charles Malahieude and
1104         John Mandereau.
1105
1106 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1107
1108         * THANKS: add Markus Schneider.
1109
1110         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1111         Staff_symbol_engraver
1112
1113         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1114         replace staff_engraver
1115
1116         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1117         spanner.
1118
1119         * lily/staff-collecting-engraver.cc
1120         (acknowledge_end_staff_symbol): new function
1121
1122         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1123
1124         * lily/staff-collecting-engraver.cc
1125         (acknowledge_end_staff_symbol): new function.
1126
1127         * lily/main.cc: switch on relocation by default.
1128
1129 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1130
1131         * lily/spacing-spanner.cc (musical_column_spacing): set
1132         compound_fixed_note_space to 0.0. Document why.
1133
1134         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1135         range of inverse_hooke_
1136         (Simple_spacer): init completely.
1137         (fits): const
1138         (get_line_configuration): don't use cols.resize(); it introduces
1139         initialized data.
1140
1141         * scm/framework-ps.scm (dump-page): add setstrokeadjust. Backportme.
1142
1143         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1144
1145         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1146         try. Divide by beatlength.
1147
1148         * input/regression/beaming-ternary-metrum.ly: update doc.
1149         add beatLength hack.
1150
1151         * scm/music-functions.scm (make-time-signature-set): add
1152         standard-beat-grouping. 
1153
1154 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1155
1156         * input/regression/tie-whole.ly: new file.
1157
1158         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1159         cross center of note head in case of invisible stem. 
1160
1161 2006-06-16  Graham Percival  <gpermus@gmail.com>
1162
1163         * Documentation/user/ various: small fixes from mailist.
1164
1165 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1166
1167         * lily/breathing-sign.cc (offset_callback): idem.
1168
1169         * lily/align-interface.cc (align_to_fixed_distance): remove
1170         hungarian suffix.
1171
1172         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1173         x%2==0.
1174
1175 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1176
1177         * VERSION (PACKAGE_NAME): release 2.9.9
1178
1179         * ly/lilypond-book-preamble.ly: add \version
1180
1181 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1182
1183         * scripts/lilypond-book.py (PREAMBLE_LY): include
1184         lilypond-book-preamble.ly
1185
1186         * lily/stem.cc (get_beaming): return max of 0 and
1187         scm_ilength. Fixes slurring from/to beams.
1188
1189         * ly/lilypond-book-preamble.ly: new file.
1190
1191         * lily/slur.cc: add inspect-index feature.
1192
1193 2006-06-13  Graham Percival  <gpermus@gmail.com>
1194
1195         * Documentation/user/tutorial.itely: trivial fix.
1196
1197 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1198
1199         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1200         all non-event music in the parser via MAKE_SYNTAX.
1201
1202         * lily/parser-scheme.cc: Add ly:parser-error function
1203
1204         * scm/paper.scm: fix typo
1205
1206 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1207
1208         * THANKS: add RT.
1209
1210         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1211         is null.
1212
1213         * buildscripts/output-distance.py (test_compare_signatures):
1214         timing routines.
1215         (read_signature_file): use new signature format.
1216
1217         * scm/stencil.scm (write-system-signature): simpler signature
1218         format.
1219
1220         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1221         for beamed case. 
1222
1223         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1224         stem_end_position, but estimate instead. 
1225
1226         * lily/tuplet-bracket.cc (calc_positions): look at
1227         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1228         brackets narrower than beams. 
1229
1230         * lily/lexer.ll: set version-seen? even if version is
1231         INVALID. 
1232
1233         * lily/rest.cc (y_offset_callback): bugfix: decide position
1234         override based on scm_is_number(). Fixes \rest on center staff
1235         line. 
1236
1237         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1238         patterns for 16th triplets.
1239
1240 2006-06-10  Graham Percival  <gpermus@gmail.com>
1241
1242         * Documentation/user/ page.itely, global.itely: editing
1243         and reorg.
1244
1245         * Documentation/user/ various: findex -> funindex.
1246
1247 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1248
1249         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1250         insert extra tuplet events.
1251
1252 2006-06-10  Graham Percival  <gpermus@gmail.com>
1253
1254         * Documentation/user/programming-interfaces.itely: add
1255         info from NEWS.
1256
1257         * python/convertrules.py: add annotatefoo -> annotate-foo
1258         rules.
1259
1260         * Documentation/user/global.itely: start editing.
1261
1262         * Documentation/user/page.itely: major editing, new spacing
1263         docs.
1264
1265 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1266
1267         * scm/define-markup-commands.scm (wordwrap-markups): use
1268         output-def 'line-width if undefined.
1269
1270         * HACKING: trim outdated info.
1271
1272 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1273
1274         * scm/define-grobs.scm (all-grob-descriptions): Add
1275         line-spanner-interface to all grobs that already have
1276         text-spanner-interface or dynamic-text-spanner-interface
1277
1278         * scm/page.scm: Rename annotate{headers,systems,page}->
1279         annotate-*
1280
1281         * input/regression/page-spacing.ly,
1282         input/regression/page-layout-manual-position.ly: idem
1283
1284 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1285
1286         * lily/line-spanner.cc: cleanup property list.
1287
1288         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1289         generator expressions (2.3 compat). 
1290
1291 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1292
1293         * lily/vertical-align-engraver.cc: Make sure that the
1294         align{Above,Below}Context properties are included in the automatic
1295         documentation.
1296
1297 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1298
1299         * scm/paper-system.scm (paper-system-annotate): also annotate the
1300         estimated pure-Y-extent
1301
1302         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1303
1304         * lily/system.cc (break_into_pieces): set the estimated height
1305         of each child system
1306
1307         * lily/stem.cc (pure_height): new pure-Y-extent callback
1308
1309         * lily/staff-symbol-referencer.cc (callback): don't destroy
1310         the staff-position property
1311
1312         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1313         consider_suicide into two functions
1314
1315         * lily/constrained-breaking.cc (resize): use the new pure
1316         callbacks to estimate the height of a system
1317
1318         * lily/axis-group-interface.cc (pure_group_height): new
1319         side-effect-free VerticalAxisGroup height-callback
1320
1321         * lily/align-interface.cc (get_extents_aligned_translates):
1322         split align_elements_to_extents into two functions
1323         (get_pure_child_y_translation): new function
1324
1325         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1326
1327         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1328
1329         * lily/paper-score.cc: cache break_indices and columns
1330
1331         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1332         
1333 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1334
1335         * lily/font-config.cc (init_fontconfig): do the init if
1336         cache_file, but don't look at cache_file.
1337
1338         * input/regression/quote-tie.ly: new file.
1339
1340         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1341         to Head_event_tuple, so we deal gracefully with ties on
1342         cue-endings.
1343
1344         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1345         for FcChar8*
1346
1347 2006-06-08  Graham Percival  <gpermus@gmail.com>
1348
1349         * input/test/ smart-transpose.ly, reverse-music.ly:
1350         \applyMusic to music functions update, thanks Michael!
1351
1352 2006-06-07  Graham Percival  <gpermus@gmail.com>
1353
1354         * input/test/ add-staccato.ly, add-text-script.ly,
1355         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1356         music functions update, thanks to Michael Meixner.
1357
1358         * Documentation/user/music-glossary.tely: small fix
1359         from Francisco.
1360
1361         * Documentation/user/ various: minor additions from mailist.
1362
1363         * Documentation/user/lilypond.tely, basic-notation.itely:
1364         small test of @funindex.  (works here)
1365
1366         * input/test/font-table.ly: reduce size to partially
1367         de-ugly version in manual.
1368
1369         * Documentation/user/page.itely: new file (split former
1370         "global issues" into "page settings" and "non-musical
1371         output".
1372
1373         * Documentation/user/ various: fix @ref{}s to match
1374         new chapter names (above).
1375
1376 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1377
1378         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1379
1380 2006-06-06  Graham Percival  <gpermus@gmail.com>
1381
1382         * Documentation/user/advanced-notation.itely: add example
1383         for segno/coda on barline.
1384
1385         * tex/texinfo.tex: merge from upstream.
1386
1387 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1388
1389         * scripts/lilypond-book.py (process_snippets): Argument fix.
1390
1391         * SConstruct:
1392         * buildscripts/builder.py:
1393         * lily/SConscript: 
1394         * mf/SConscript: 
1395         * Documentation/user/SConscript:  More SCons fixes.
1396
1397 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1398
1399         * lily/font-config.cc (init_fontconfig): Only initialize if
1400         global cache_file is found.
1401
1402 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1403
1404         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1405         new \applyOutput.
1406
1407 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1408
1409         * VERSION (PACKAGE_NAME): release 2.9.8
1410
1411         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1412         function. Delay ledger modifying ledgered grobs to
1413         stop_translation_timestep(), to ensure that we're ledgering
1414         according to the new spanner.
1415         (acknowledge_staff_symbol): don't check for non-NULL
1416         staff_sym->get_bound()
1417
1418         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1419         creation.
1420
1421         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1422         pictures too.
1423
1424         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1425         directly from srcdir/stepmake/aclocal.m4
1426         
1427         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1428         disting MISC files.
1429
1430         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1431
1432 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1433
1434         * lily/simple-spacer.cc (get_line_configuration): add
1435         keep-inside-line rods
1436         (struct Column_desc): add constructor
1437         (struct Rod_desc): add constructor
1438         (get_line_forces): check for forced page breaks here too
1439
1440         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1441         support/elements cycles between InstrumentNames and AxisGroups
1442
1443 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1444
1445         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1446
1447         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1448         make-txt-files target.
1449
1450         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1451         make-txt-files target.
1452
1453         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1454
1455         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1456         top-build-dir.
1457
1458 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1459
1460         * Documentation/user/instrument-notation.itely,
1461         input/regression/breathing-sign-ancient.ly,
1462         input/test/divisiones.ly: Removed redundant property settings for
1463         vaticana contexts.
1464
1465         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1466         fix lyrics alignment problems.  They are implemented now as scheme
1467         functions that add the appropriate unicode char to the first lyric
1468         event rather than adding a separate lyric event.  Minor edit of
1469         comments.
1470
1471 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1472
1473         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1474         pollute src dir with built .txt files, but install directly from
1475         Documentation/topdocs/out/
1476
1477         * buildscripts/output-distance.py
1478         (ComparisonData.create_html_result_page): put version/directories
1479         in table header.
1480
1481         * Documentation/topdocs/NEWS.tely (Top): document spacing section
1482         feature.
1483
1484         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
1485         Patch by Karl Hammar
1486         
1487         * buildscripts/readlink.py: add  file.
1488         Patch by Karl Hammar
1489
1490 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1491
1492         * lily/tuplet-number.cc (print): prevent stencil from being
1493         garbage collected.
1494
1495 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1496
1497         * scm/stencil.scm (write-system-signature): explicitly 
1498         -well, superfluously- close output port.
1499
1500         * buildscripts/output-distance.py (main): oops. Add extra argument.
1501
1502 2006-06-05  Graham Percival  <gpermus@gmail.com>
1503
1504         * Documentation/user/music-glossary.tely: clarified example
1505         from Francisco Vila, thanks!
1506
1507 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1508
1509         * input/regression/spacing-section.ly: new file.
1510
1511         * lily/input.cc (programming_error): new function.
1512
1513         * lily/spacing-engraver.cc (try_music): new function. Accept
1514         spacing-section-event
1515
1516         * lily/spacing-spanner.cc (set_springs): take slices of all
1517         columns for spacing.
1518
1519         * lily/include/paper-column.hh (class Paper_column): add
1520         Paper_column::compare.
1521
1522         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
1523
1524         * scm/define-music-types.scm (music-descriptions): add
1525         SpacingSectionEvent
1526
1527         * lily/music-iterator.cc (report_event): use programming_error for
1528         sending non-event error.
1529
1530         * lily/input.cc (programming_error): new function
1531
1532         * buildscripts/output-distance.py (main): use compare-XXX for
1533         compare files.
1534         (main): --threshold option, default at 0.30
1535
1536         * output-distance.py (main): add --threshold option.
1537
1538 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1539
1540         * scm/paper-system.scm (paper-system-annotate): fix problem when
1541         annotating an empty system
1542
1543 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1544
1545         * GNUmakefile.in: reinstate old web tar/copying.
1546
1547 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1548
1549         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
1550         nothing changes. (Erik S) 
1551
1552         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
1553         count. (Erik S)
1554
1555 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1556
1557         * scm/define-markup-commands.scm (whiteout): do not force
1558         foreground color of argument markup to black.
1559
1560         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
1561         the left of the arrow, instead of below the arrow name, so that,
1562         when two little arrows are vertically stacked, their dimensions
1563         and name should not overlap. Add a color key parameter.
1564
1565         * scm/paper-system.scm (paper-system-annotate): Annotate
1566         next-space+next-padding instead of next-space. Annotate space
1567         between next-padding and next-space+padding, respectively, and
1568         following system extent and refpoint-Y-extent. Use colors.
1569
1570         * scm/page.scm (annotate-page): translate annotations slightly to
1571         the right.
1572
1573 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1574
1575         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
1576         fix for x-staff slurs. Thanks Joe!
1577
1578         * buildscripts/output-distance.py
1579         (SystemLink.output_expression_change_count): keep track of changed
1580         details, and dump in details html page.
1581  
1582         * input/regression/figured-bass-staff.ly: add note about setting
1583         properties in Staff context.
1584
1585         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
1586         add slurs and ties to support too.
1587
1588         * buildscripts/output-distance.py (main): set dest_dir
1589         argument. Add --max-count option.
1590
1591 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
1592
1593         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
1594         shortcuts for special unicode chars that are useful in chant
1595         notation.  Revised exisiting and added new comments.
1596
1597 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1598
1599         * make/mutopia-rules.make: remove duplicate recipe.
1600
1601 2006-06-02  Werner Lemberg  <wl@gnu.org>
1602
1603         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
1604         Add support for U+0132 (IJ) and U+0133 (ij).
1605
1606 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1607
1608         * buildscripts/output-distance.py (FileLink): new class. collect
1609         info systems from one .ly file. 
1610         (FileLink.link_files_for_html): further tweaks.
1611
1612 2006-06-02  Graham Percival  <gpermus@gmail.com>
1613
1614         * tex/texinfo.tex: partial fix for @funindex.
1615
1616         * Documentation/user/macros.tely: uncomment @funindex (doesn't
1617         break anything).
1618
1619 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1620
1621         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
1622
1623         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
1624         @example too. Backportme.
1625
1626 2006-06-02  Graham Percival  <gpermus@gmail.com>
1627
1628         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
1629         from Werner Lemberg.
1630
1631 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
1632
1633         * Documentation/user/music-glossary.tely: additional spanish
1634         updates and a lyrics fix in an example.
1635
1636 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
1637
1638         * scm/define-grob-properties.scm: Previous patch contained
1639         spurious line from another patch not yet committed.  Fixed.
1640
1641         * scm/define-grob-properties.scm: Add missing doc strings for
1642         ancient notation.
1643
1644 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1645
1646         * buildscripts/output-distance.py
1647         (ComparisonData.write_text_result_page): separate the scores, sort
1648         by geo_score.
1649
1650         * scm/framework-eps.scm (output-classic-framework): start at 1 for
1651         system signatures.
1652
1653         * buildscripts/output-distance.py (me_path): use argv[0] for
1654         sys.path extension
1655         (ComparisonData.img_cell): use colored borders.
1656
1657         * scm/stencil.scm (write-system-signature): escape newlines too.
1658         (write-system-signature): use (1,-1) interval for empty interval
1659
1660 2006-01-01  Graham Percival  <gpermus@gmail.com>
1661
1662         * Documentation/user/music-glossary.tely: Spanish updates
1663         from Francisco Vila.
1664
1665         * Documentation/user/lilypond-book.itely: addition from
1666         Vaclav Smilauer.
1667
1668         * Documentation/user/ various: edits, small additions
1669         from mailist, etc.
1670
1671 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1672
1673         * GNUmakefile.in (tree-lib-prefix-current):
1674         (tree-share-prefix-current): Use version number in tree, add
1675         `current' symlinks.
1676
1677 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1678
1679         * GNUmakefile.in: write VERSION, again.
1680
1681         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
1682         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
1683
1684         * stepmake/aclocal.m4: robuster version detection.
1685
1686         * buildscripts/output-distance.py
1687         (ComparisonData.create_html_result_page): copy only if file
1688         exists, fixup src paths.
1689
1690         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
1691
1692 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1693
1694         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
1695         Another datarootdir reto.
1696
1697         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
1698         available.  This should be moved to postinstall-lilypond-doc.
1699
1700 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1701
1702         * GNUmakefile.in: simplify local-WWW-post. 
1703         remove -type l from find.
1704
1705         * buildscripts/output-distance.py (ComparisonData.compare_trees):
1706         fixes. Don't follow symlinks.
1707         (ComparisonData.create_html_result_page): remove previous results.
1708         insert ../python in path.
1709
1710         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
1711
1712 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
1713
1714         * config.make.in (datadir): Add datarootdir to silence autoconf.
1715
1716         * stepmake/aclocal.m4: Update for autoconf-2.59d.
1717
1718 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
1719
1720         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
1721
1722         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
1723         slash beams too wide.
1724
1725 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1726
1727         * VERSION: release 2.9.7
1728         
1729 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1730
1731         * lily/relocate.cc (read_relocation_dir): Do not blindly
1732         dereference DIR.
1733
1734 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1735
1736         * lily/parser.yy: replace THIS by PARSER
1737
1738         * Documentation/index.html.in: add link to test-results.html page.
1739
1740         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
1741
1742         * scm/translation-functions.scm (format-bass-figure): translate
1743         digits over 10 to the left
1744
1745         * scm/define-markup-commands.scm (translate-scaled): new markup.
1746
1747         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
1748         7 glyph. 
1749
1750         * ly/engraver-init.ly: add Figured_bass_engraver
1751
1752         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
1753
1754         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
1755
1756         * lily/score-engraver.cc (announce_grob): only note START announces.
1757
1758         * lily/include/engraver-group.hh (Translator_group):
1759         acknowledge_hash_table_ is now drul.
1760
1761         * lily/engraver.cc (announce_end_grob): new method.
1762
1763         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
1764
1765         * lily/translator-dispatch-list.cc (create): take start_end argument.
1766
1767         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
1768         acknowledge_static_array_ to drul
1769
1770         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
1771
1772         * scm/define-grob-interfaces.scm
1773         (bass-figure-alignment-interface): add bass-figure-alignment-interface
1774
1775         * scm/define-grobs.scm (all-grob-descriptions): add
1776         BassFigureAlignmentPositioning
1777
1778         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
1779         number stays up to date. Backportme.
1780
1781 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
1782
1783         * Documentation/user/basic-notation.itely (Bar lines): Document
1784         the "||:" bar type. 
1785
1786 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1787
1788         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
1789
1790         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
1791         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
1792         build.
1793
1794         * Resurrect `scons lily' build.
1795
1796         * SConstruct (symlink_tree): Bugfix: link
1797         music-drawing-routines.ps to file iso directory.
1798
1799         * lily/SConscript: Remove kpath-guile from LIBS.
1800
1801         * SConstruct (libdir_package_version): Typo.
1802         (configure): Comment-out fontforge for lack of fontforge.pc .
1803         Also add libdir* to environment.
1804
1805 2006-05-30  Graham Percival  <gpermus@gmail.com>
1806
1807         * Documentation/user/ various: minor additions from mailist and
1808         editing.
1809
1810 2006-05-30  Paco <fravd@ya.com>
1811
1812         * Documentation/user/music-glossary.tely: numerous corrections and
1813         some new translations.
1814
1815 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
1816
1817         * BackportmeStart.
1818         
1819         * buildscripts/output-distance.py
1820         (ComparisonData.create_html_result_page): new routine: summarise
1821         results in HTML page with images. 
1822         (ComparisonData.create_text_result_page): create summary text files too.
1823
1824         * GNUmakefile.in (web-ext): package .signature files too. They
1825         compress well. 
1826
1827         * scm/stencil.scm (write-system-signature): typo.
1828
1829         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
1830
1831         * scm/stencil.scm (write-system-signature): better escaping.
1832         only write signature for music systems, not for markup systems.
1833
1834         * scm/framework-ps.scm (output-framework): dump-signatures support
1835         for plain output.
1836
1837         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
1838
1839         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
1840         for -dno-point-and-click
1841
1842         * lily/grob.cc (get_print_stencil): don't read
1843         point_and_click_global to determine whether to set grob-cause.
1844
1845 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
1846
1847         * buildscripts/output-distance.py (main): new function.
1848         (ComparisonData): new class.
1849
1850         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
1851         careful with generating new LedgerLineSpanners.
1852
1853         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
1854
1855         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
1856         context. This fixes double ledger lines in output. 
1857
1858         * lily/system.cc (get_paper_system): remove 3 layer limit.
1859
1860         * buildscripts/output-distance.py (SystemLink.distance): new
1861         file. Compare signatures.
1862
1863         * python/safeeval.py (SafeEval.visitUnarySub): new file.
1864
1865         * lily/grob-array.cc (remove_duplicates): rename from
1866         uniq(). Sort before calling uniq() so it actually works.
1867
1868 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1869
1870         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
1871         \version from lilypond file snippet.
1872         (Lilypond_file_snippet.ly): oops. typo.
1873         (find_toplevel_snippets): urgh. again.
1874
1875         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
1876         prevent duplicated broken items in output.
1877
1878         * scm/framework-eps.scm (output-classic-framework): only dump if
1879         dump-signatures is set.
1880
1881         * scm/lily.scm (define-scheme-options): add dump-signatures option.
1882
1883         * scm/stencil.scm (write-system-signature): new routine: write
1884         python parseable signature of a separate paper system.
1885         BackportmeEnd.
1886         
1887 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1888
1889         * lily/stanza-number-engraver.cc (process_music): use is_markup()
1890         iso is_string().
1891         include header.
1892
1893 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
1894
1895         * translator-group.cc: send music events to engravers in
1896         non-bottom contexts.
1897
1898         * tuplet-engraver.cc: process tuplet brackets in correct order.
1899
1900 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1901
1902         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
1903         arg 2 might point us to a new binary (patch by Karl Hammar)
1904         
1905 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1906
1907         * VERSION (PACKAGE_NAME): release 2.9.6
1908
1909         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
1910
1911         * Documentation/user/*.itely: 2nd
1912         attempt: replace funindex -> findex globally.
1913
1914 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1915
1916         * input/no-notation/display-lily-tests.ly: fix \applyOutput
1917         test. Add \break, \pageBreak, \pageTurn, etc, tests.
1918
1919         * scm/define-music-display-methods.scm: display methods for
1920         breaks. Fix \applyOutput.
1921
1922 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1923
1924         * Documentation/user/macros.itexi: comment out funindex expansion. 
1925
1926         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
1927         everywhere.
1928
1929         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
1930         Karl Hammar. Backportme.
1931  
1932         * Documentation/user/advanced-notation.itely (Balloon help): idem.
1933
1934         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
1935
1936         * Documentation/user/programming-interface.itely (Running a
1937         function on all layout objects): idem.
1938
1939         * Documentation/user/introduction.itely (Automated engraving):
1940         update \applyOutput syntax
1941
1942         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
1943         remove debugging hook.
1944
1945         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
1946         expansion. 
1947
1948         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
1949
1950         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
1951         TEXI2DVI_FLAGS to texi2dvi invocation. 
1952
1953 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
1954
1955         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
1956         works. More work is done by iterator now, and engraver has been
1957         very much simplified.
1958
1959         * lily/translator-group.cc: try_music is now invoked through a
1960         listener
1961
1962         * lily/*-iterator.cc: Massive cleanups. Junked
1963         try_music_in_children globally. Renamed try_music to report_event,
1964         and made that method descend to a bottom context automatically.
1965
1966         * lily/event-iterator.cc: New file.
1967
1968         * lily/output-property-iterator.cc,
1969         lily/old-lyric-combine-music-iterator.cc: Removed.
1970
1971         * python/convert-rules.py: Modified the syntax for \applyOutput.
1972
1973 2006-05-23  Graham Percival  <gpermus@gmail.com>
1974
1975         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
1976         creation.
1977
1978         * Documentation/user/ various: stuff that might have helped
1979         to fix the pdf creation, plus some minor doc additions.
1980
1981         * Documentation/user/changing-defaults.itely: remove @b from
1982         @b{ @internasref{foo}}; this breaks texi2dvi -E.
1983
1984 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1985
1986         * lily/beaming-pattern.cc (beamify): deal with negative start
1987         moments for beaming patterns.
1988
1989 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
1990
1991         * lily/beaming-info.cc (beamify): new function: read beatLength
1992         and beatGrouping from context. 
1993
1994         * input/regression/beam-beat-grouping.ly (Module): new file.
1995
1996         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
1997
1998         * lily/beam.cc (get_beam_segments): generate events for
1999         max_connect_ case too.
2000         (get_beam_segments): read Stem::max-beam-connect.
2001
2002         * input/regression/beam-single-stem.ly: new file.
2003
2004         * lily/stem.cc (set_beaming): use #f as signaling value for
2005         beamcount 0.
2006
2007         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2008
2009         * lily/beam.cc (set_beaming): read clip-edges property.
2010         (calc_direction): don't suicide for single stem.
2011
2012         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2013         argument, remove 1<<15 hack. Remove clip_edges() 
2014
2015         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2016
2017 2006-05-21  Graham Percival  <gpermus@gmail.com>
2018
2019         * Documentation/user/basic-notation.itely: reorg.
2020
2021         * Documentation/user/ various: minor fixes.
2022
2023 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2024
2025         * lily/stencil-expression.cc (register_stencil_head): opps, append
2026         to cdr of static SCM object.
2027
2028 2006-05-19  Graham Percival  <gpermus@gmail.com>
2029
2030         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2031         update framework for command index.  DOC WRITERS: use @funindex
2032         instead of @cindex @code{}.
2033
2034         * Documentation/user/ various: replace @cindex @code{} => @funindex
2035
2036 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2037
2038         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2039         case positions is set manually. 
2040
2041 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2042         
2043         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2044         rules to Scheme.
2045
2046 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2047
2048         * Documentation/user/changing-defaults.itely (Contexts explained):
2049         use absolute dimension for @image.
2050
2051         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2052         out image for illustration too.
2053         ($(outdir)/%.png): add more png <-> eps rules. 
2054
2055 2006-05-17  Graham Percival  <gpermus@gmail.com>
2056
2057         * Documentation/user/ various: remove trailing whitespace, cosmetic
2058         change to reduce changes produced by diff.
2059
2060 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2061
2062         * lily/main.cc (do_chroot_jail): correctness tweak.
2063
2064         * python/lilylib.py (system): import subprocess in system () only.
2065
2066         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2067
2068         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2069         variable. Backportme.
2070
2071 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2072         
2073         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2074
2075 2006-05-17  Werner Lemberg  <wl@gnu.org>
2076
2077         * lily/lexer.ll (init_signature_has_table): Add
2078         `scm-scm-music-music'.
2079
2080         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2081         (Generic_prefix_music_scm): Add rule for it.
2082
2083         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2084         `quoted-transposition' property.
2085
2086         * ly/music-functions-init.ly (transposedCueDuring): New function.
2087
2088         * scm/define-music-properties.scm (all-music-properties): Updated.
2089
2090         * Documenation/topdocs/NEWS.itely: Document it.
2091
2092 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2093
2094         * python/lilylib.py (system): move import subprocess to system()
2095         definition. 
2096
2097         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2098
2099         * VERSION (PATCH_LEVEL): release 2.9.5
2100         
2101         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2102         build instructions. 
2103
2104         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2105
2106 2006-05-16  Graham Percival  <gpermus@gmail.com>
2107
2108         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2109
2110         * Documentation/user/ various: minor fixes.
2111
2112 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2113
2114         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2115
2116 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2117
2118         * Documentation/user/advanced-notation.itely (Instrument names):
2119         Modified obsolete instruction on how to move instrument names away
2120         from the staves. Hmm, at second thought the bug probably has been
2121         solved, so the full bug description should probably be removed.
2122
2123 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2124
2125         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2126         currentCommandColumn. 
2127
2128         * lily/hairpin.cc (print): also add padding for non-neighbor
2129         hairpin bounds.
2130
2131         * scm/define-context-properties.scm
2132         (all-user-translation-properties): add hairpinToBarline
2133
2134         * input/regression/hairpin-to-barline.ly: new file.
2135
2136         * lily/context.cc (internal_send_stream_event): thinko fix.
2137
2138         * lily/tie.cc (set_default_control_points): robustness fix.
2139
2140         * python/musicxml.py (Part.interpret): don't complain about
2141         incomplete measures.
2142
2143         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2144         new music if last_event_chord() returned None.
2145
2146         * python/musicxml.py (Part.interpret): skip back over chord notes.
2147
2148 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2149         
2150         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2151         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2152         lily/slash-repeat-engraver.cc,
2153         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2154         iterator sends PercentEvents
2155
2156         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2157         rework tuplets: send start/stop events to engraver
2158
2159         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2160         dispatchers event-source and events-below to Context
2161         
2162 2006-05-15  Graham Percival  <gpermus@gmail.com>
2163
2164         * Documentation/user/README.txt: update info for doc writers.
2165
2166         * Documentation/user/programming-interface.itely: integrate
2167         Nicolas' fixes for chapter rewrite.
2168
2169         * Documentation/user/ various: minor fixes.
2170
2171 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2172
2173         * lily/clef-engraver.cc: cleanup.
2174
2175         * Documentation/user/GNUmakefile: dist context-example.eps too.
2176
2177         * lily/key-engraver.cc (create_key): use
2178         explicitKeySignatureVisibility for cancellation too. 
2179
2180         * lily/font-config.cc (init_fontconfig): don't close file if
2181         f==NULL. 
2182
2183 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2184
2185         * Documentation/topdocs/NEWS.tely: niente and rotation news
2186
2187 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2188
2189         * lily/include/stencil.hh
2190         * lily/stencil.cc (rotate): new function. Makes it possible
2191         to rotate a stencil around a given offset.
2192
2193         * lily/grob.cc (get_print_stencil): add rotation support
2194
2195         * lily/stencil-interpret.cc (interpret_stencil_expression):
2196         add rotation support
2197
2198         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2199
2200         * scm/define-grob-properties.scm: add 'rotation property
2201
2202         * scm/define-markup-commands.scm: add rotate markup command
2203         
2204         * scm/output-ps.scm: add rotation support in PostScript backend
2205
2206         * scm/output-svg.scm: add rotation support in SVG backend
2207
2208 2006-05-13  Graham Percival  <gpermus@gmail.com>
2209
2210         * Documentation/user/music-glossary.itely: French correction.
2211
2212         * Documentation/user/programming-interface.itely: major
2213         new docs, some reorg, some info from Nicolas.
2214
2215         * Documentation/user/ various: small fixes.
2216
2217 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2218
2219         * Documentation/user/programming-interface.itely (Markup
2220         programmer interface): Remove duplicate text.
2221
2222 2006-05-12  Graham Percival  <gpermus@gmail.com>
2223
2224         * Documentation/user/context-example.eps: new file.
2225
2226         * Documentation/user/changing-defaults.itely: set up file to
2227         use eps image.
2228
2229         * Documentation/user/programming-interface.itely: changes
2230         from mailist.
2231
2232 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2233
2234         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2235
2236 2006-05-11  Graham Percival  <gpermus@gmail.com>
2237
2238         * Documentation/user/programming-interface.itely: first round of
2239         editing and merging emails from Nicolas.
2240
2241         * Documentation/user/scheme-tutorial: minor edit.
2242
2243 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2244
2245         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2246         XML attributes.
2247         (Xml_node.message): use it.
2248
2249         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2250         oops. Add duration argument.
2251
2252 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2253
2254         * lily/paper-column-engraver.cc (make_columns):
2255         * scm/define-grobs.scm: Revert my previous change and set the default
2256         in define-grobs.scm instead.
2257
2258 2006-05-09  Graham Percival  <gpermus@gmail.com>
2259         
2260         * Documentation/user/changing-defaults.itely: general editing,
2261         info about \set and \override.
2262
2263         * Documentation/user/tweaking.itely, advanced-notation.itely:
2264         fixes from Dave Luttinen, thanks!
2265
2266 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2267
2268         * lily/paper-column-engraver.cc (make_columns): By default, a column
2269         needs to be breakable.
2270
2271 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2272
2273         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2274         Attributes methods
2275         (musicxml_time_to_lily): idem
2276         (musicxml_key_to_lily): idem
2277         (instrument_drumtype_dict): dict for supported drumtypes.
2278         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2279         moments and pending mm rests
2280         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2281         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2282         (musicxml_voice_to_lily_voice): add mode change.
2283         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2284         speed and less memory usage (factor 5 to 10).
2285         (convert): write -defs.ly  and driver file separately so people
2286         can script their own part extraction.
2287
2288         * python/musicxml.py (minidom_demarshal_node): new function:
2289         separate minidom handling.
2290         (lxml_demarshal_node): new function: support lxml.etree too.
2291         (Xml_node.message): new function: verbose error message, with XML
2292         path to offending node.
2293         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2294         (Part_list.generate_id_instrument_dict): new method: collect
2295         instrument names, to be able to set drum_type.
2296         (Part.interpret): handle underfull measures
2297         (Part.interpret): assign instrument names.
2298
2299         * python/musicexp.py (Output_printer.close): new method
2300         (MusicWrapper.print_ly): new class: support other modes,
2301         eg. \drummode
2302         (BarCheck.print_ly): new class. Support bar checks, with comments
2303         and fancy barchecks. 
2304         (NoteEvent.__init__): also set drum_type for drum notes.
2305         (MultiMeasureRest.lisp_expression): dump mm rests.
2306
2307         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2308         line-break-permission if forbidBreak is not set.
2309
2310 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2311
2312         * scm/define-context-properties.scm:
2313         * scm/define-grob-properties.scm:
2314         * scm/define-grobs.scm:
2315         * scm/define-music-display-methods.scm:
2316         * scm/define-music-properties.scm:
2317         * scm/define-music-types.scm:
2318         * scm/music-functions.scm:
2319         * ly/declarations-init.ly:
2320         * lily/include/constrained-breaking.hh:
2321         * lily/system.cc:
2322         * lily/spaceable-grob.cc:
2323         * lily/simple-spacer.cc:
2324         * lily/paper-score.cc:
2325         * lily/paper-column.cc:
2326         * lily/paper-column-engraver.cc:
2327         * lily/item.cc:
2328         * lily/gourlay-breaking.cc:
2329         * lily/constrained-breaking.cc:
2330         * python/convertrules.py:
2331         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2332         "page-break-penalty" and "line-break-permission".
2333         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2334         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2335
2336         * lily/bar-engraver.cc:
2337         * lily/beam-engraver.cc:
2338         * lily/forbid-break-engraver.cc:
2339         * lily/ligature-engraver.cc:
2340         * lily/paper-column-engraver.cc:
2341         * lily/percent-repeat-engraver.cc:
2342         * lily/score-engraver.cc:
2343         * lily/score-engraver.hh:
2344         * lily/paper-column-engraver.hh:
2345         Inter-engraver communication regarding line breaks is done through context
2346         properties (Score.forbidBreak) instead of function calls.
2347
2348 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2349
2350         * VERSION (PACKAGE_NAME): release 2.9.4
2351
2352 2006-05-08  Graham Percival  <gpermus@gmail.com>
2353
2354         * Documentation/user/working.itely: proofreading from Dave
2355         Luttinen, thanks.
2356
2357         * Doucmentation/user/README.txt: updated with manual style info.
2358
2359         * Documentation/user/ various: trim linewidth to 78 chars.
2360
2361 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2362
2363         * scm/define-grob-properties.scm (all-internal-grob-properties):
2364         remove chord-tremolo property.
2365
2366         * lily/beam.cc (get_beam_segments): don't use stem position as
2367         base for broken ends.
2368
2369 2006-05-06  Graham Percival  <gpermus@gmail.com>
2370
2371         * Documentation/user/putting.itely: proofreading from Dave
2372         Luttinen, thanks!
2373
2374         * Documentation/user/ various: more reorg and clarifications.
2375
2376 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2377
2378         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2379
2380         * ly/music-functions-init.ly: new function featherDurations
2381
2382         * lily/beam.cc: read grow-direction for feathered beaming.
2383
2384         * Documentation/topdocs/NEWS.tely (Top): typo.
2385
2386 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2387
2388         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2389         tremolo beams.
2390
2391 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2392         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2393         used by music streams.
2394
2395         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2396         lily/stream-event.cc, lily/stream-event-scheme.cc,
2397         lily/listener.cc, lily/scheme-listener.cc,
2398         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2399         lily/include/stream-event.hh, lily/include/listener.hh,
2400         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2401         Created data structures for music streams.
2402         
2403 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2404
2405         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2406         construction of a beam. 
2407         (print): rewrite. 
2408
2409         * flower/include/std-vector.hh (default_compare): use only one comparison.
2410
2411         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2412         (note-by-number): further attachment fixes.
2413
2414         * scm/lily-library.scm (ordered-cons): new function.
2415         (interval-index): new function
2416
2417         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2418
2419         * lily/note-head.cc (get_stem_attachment): new function.
2420
2421         * scm/define-markup-commands.scm (note-by-number): read 'style
2422         property. 
2423
2424         * input/regression/markup-note.ly: show note-head style option.
2425
2426         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2427         triangle head.
2428
2429 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2430
2431         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2432
2433         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2434
2435         * lily/include/constrained-breaking.hh: GCC 4 fix.
2436
2437 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2438
2439         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2440         Replace it with functions get_line_forces and get_line_configuration.
2441         (class Simple_spacer): Make data private.
2442         Rewrite compression algorithm to be faster and simpler.
2443
2444         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2445         * lily/gourlay-breaking.cc (solve):
2446         * lily/constrained_breaking.cc (space_line):
2447         Change it to the new simple-spacer code.
2448
2449         * lily/paper-score.cc (get_paper_systems):
2450         (Paper_score):
2451         (process):
2452         Delay breaking the systems until they are requested.
2453         (find_break_indices):
2454         Use vsize for indices.
2455         (calc_breaking):
2456         Move the "Calculating line breaks" message here.
2457
2458         * lily/system.cc (pre_processing):
2459         Move the "Calculating line breaks" message away from here.
2460         (break_into_pieces):
2461         Allow multiple calls to this function in sequence (with touching-but-
2462         not-overlapping breakpoints).
2463
2464         * lily/constrained-breaking.cc:
2465         Replace most of the get_XXXX functions with get_line_details.
2466         Only calculate the force for each line. Calculate configurations only
2467         for the lines we will actually use.
2468         Replace cols_ with lines_.
2469
2470 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2471
2472         * mf/GNUmakefile (depth): remove FC_FIND.
2473
2474         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2475
2476         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
2477
2478         * scm/framework-ps.scm (write-preamble): new function.
2479         (write-preamble): load mac fonts via fondu, even if gs-font-load
2480         is set.
2481
2482 2006-05-03  Werner Lemberg  <wl@gnu.org>
2483
2484         * mf/GNUmakefile (FC_FIND): Fix typo.
2485
2486 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
2487
2488         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
2489
2490 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2491
2492         * stepmake/aclocal.m4: run python-config for crosscompiling
2493         flags. 
2494
2495         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
2496         -f png for HTML, TEXINFO formats. 
2497
2498         * input/tutorial/lbook-html-test.html: new file.
2499
2500         * lily/include/tie-formatting-problem.hh (class
2501         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
2502         [column, direction]. This fixes laissez vibrer ties.
2503  
2504         * flower/include/tuple.hh (struct Tuple2): new file.
2505
2506         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
2507         $(FCMATCH), only if $(NCSB_DIR) not set. 
2508
2509         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
2510
2511         * config.make.in (DOCUMENTATION): set FCMATCH.  
2512
2513         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
2514
2515 2006-05-03  Graham Percival  <gpermus@gmail.com>
2516
2517         * Documentation/user/ various: final round of reorg.
2518
2519         * Documentation/user/instrument-notation.itely: some more
2520         fixes from Eduardo, thanks!
2521
2522 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2523
2524         * VERSION (PACKAGE_NAME): release 2.9.3
2525
2526         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
2527
2528         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
2529
2530 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
2531
2532         * scm/define-grob-properties.scm (all-user-grob-properties):
2533         Correct typo, thanks to Eduardo.
2534
2535 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2536
2537         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
2538
2539         * buildscripts/lilypond-words.py (F): indent fix.
2540
2541         * input/regression/tie-arpeggio-collision.ly: new file.
2542
2543         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
2544         function: store outlines per column rank.
2545
2546         * lily/include/tie-configuration.hh (class Tie_configuration): add
2547         column_ranks_ to specification and configuration, to distinguish
2548         between ties for different heads in arpegiated chords.
2549
2550         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
2551
2552         * *.py: more 4 space indents.
2553
2554         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
2555
2556 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
2557
2558         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
2559
2560 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2561
2562         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
2563
2564         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
2565
2566         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
2567
2568 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2569
2570         * python/convertrules.py (conv): indent 4 for python files.
2571
2572 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
2573
2574         * Documentation/user/changing-defaults.itely (Creating contexts):
2575         Clarify \new semantics.
2576
2577 2006-04-28  Graham Percival  <gpermus@gmail.com>
2578
2579         * Documentation/user/ various: major new sections in the
2580         Learning manual, slight reorg elsewhere.
2581
2582 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2583
2584         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
2585
2586         * scm/framework-ps.scm (output-framework): remove PageMedia
2587
2588 2006-04-27  Graham Percival  <gpermus@gmail.com>
2589
2590         * Documentation/user/ tweaks.itely, working.itely: new
2591         files, being more advanced "learning manual" chapters.
2592
2593         * Documentation/user/ tutorial, putting, lilypond: reorg.
2594
2595 2006-04-26  Graham Percival  <gpermus@gmail.com>
2596
2597         * input/regression/lyric-combine-polyphonic.ly: fixed test
2598         (no more "can't find context `one'" error).
2599
2600 2006-04-25  Joe Neeman <joeneeman@gmail.com>
2601
2602         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
2603
2604         * input/regression/stem-tremolo.ly: add 2 more whole note examples
2605         
2606 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2607
2608         * lily/relocate.cc (read_relocation_dir): new function.
2609
2610 2006-04-26  Graham Percival  <gpermus@gmail.com>
2611
2612         * Documentation/user/instrument-notation.itely: a few more fixes
2613         from Eduardo, thanks!
2614
2615         * Documentation/user/README.txt: new file; contains info on
2616         style that used to be in lilypond.tely.
2617
2618         * Documentation/user/ various: first round of doc reorg.
2619
2620         * Documentation/user/baer-flat-bw.png: remove alpha bit from
2621         graphic; this probably causes problems on some pdf
2622         viewers, notably Adobe Acrobat.
2623
2624 2006-04-24  Graham Percival  <gpermus@gmail.com>
2625
2626         * Documentation/user/instrument-notation.itely: many alterations
2627         to Vocal music, from Eduardo Viera.
2628
2629 2006-04-23  Graham Percival  <gpermus@gmail.com>
2630
2631         * Documentation/user/instrument-notation.itely: fix \new
2632         instead of \context problem.
2633
2634 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2635
2636         * lily/relocate.cc (expand_environment_variables): new function.
2637         (read_line): id.
2638         (read_relocation_file): id.
2639
2640         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
2641
2642 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
2643
2644         * ly/engraver-init.ly: remove old comments from TabVoice
2645
2646 2006-04-20  Graham Percival  <gpermus@gmail.com>
2647
2648         * Documentation/user/instrument-notation.itely: added Erlend's
2649         latest doc patch, thanks!
2650
2651 2006-04-19  Erlend Aasland <erlenda@gmail.com>
2652
2653         * lily/include/slur.hh:
2654         * lily/slur.cc:
2655         * lily/phrasing-slur-engraver.cc:
2656         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
2657         acknowledge_extra_object () from Phrasing_slur_engraver:: and
2658         Slur_engraver:: and putting it in
2659         Slur::auxiliary_acknowledge_extra_object ().
2660
2661         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
2662
2663         * lily/note-collision.cc: fix a comment
2664
2665 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2666
2667         * stepmake/bin/add-html-footer.py: fix footer position in
2668         generated html files: before </body> and </html> tags.
2669
2670 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2671
2672         * scripts/GNUmakefile: revert last "fix", which rather broke make.
2673         Earlier successive `make' commands finally compiled ok.
2674
2675         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
2676
2677 2006-04-18  Erlend Aasland <erlenda@gmail.com>
2678
2679         * lily/include/stem-tremolo.hh:
2680         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
2681         callers.
2682
2683         * lily/lookup.cc:
2684         * lily/include/lookup.hh: add rotated_box ()
2685
2686 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2687
2688         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
2689         been generated. Fixes "can't get `--help'" bug after make clean.
2690
2691         * THANKS: alphabetize contributors.
2692
2693 2006-04-17  Graham Percival  <gpermus@gmail.com>
2694
2695         * Documentation/user/instrument-notation.itely: added Erlend's
2696         tabs and banjo doc patch.  Thanks!
2697
2698 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
2699
2700         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
2701
2702         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
2703
2704         * scm/output-lib.scm: add some more predefined string tunings.
2705
2706         * Documentation/user/instrument-notation.itely: and doc them.
2707
2708 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
2709
2710         * ly/engraver.ly: Remove obsolete comments.
2711
2712         * ly/gregorian-init.ly: Define default layout block.
2713
2714         * input/puer-fragment.ly: Updated and extended.
2715
2716 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2717
2718         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
2719         pdf conversion behaviour.
2720
2721         * flower/file-name.cc (dir_name)
2722         (get_working_directory): Move from relocate.cc.
2723
2724         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
2725         
2726         * lily/relocate.cc: Encapsulate sys/stat.h in
2727         HAVE_STAT_H.
2728
2729 2006-04-14  Graham Percival  <gpermus@gmail.com>
2730
2731         * Documentation/user/ various: small updates from Cameron
2732         and Juergen, thanks!
2733
2734         * Documentation/user/ various: small updates of my own.
2735
2736         * THANKS: 2.7 -> 2.8.
2737
2738 2006-04-11  Graham Percival  <gpermus@gmail.com>
2739
2740         * scm/define-context-properties.scm: typo.
2741
2742         * Documentation/user/ : many more small updates.
2743
2744 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
2745
2746         * scm/define-music-types.scm: disposed "docme".
2747
2748 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
2749
2750         * lily/hairpin.cc: make niente circles a bit smaller.
2751
2752 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
2753
2754         * mf/GNUmakefile: remove redundant mftrace check. Also remove
2755         get-pfa and get-*-fonts targets.
2756
2757 2006-04-10  Graham Percival  <gpermus@gmail.com>
2758
2759         * THANKS, Documentation/user/ basic-notation, advanced-notation,
2760         music-glossary, programming-interface: more minor fixes
2761         from mailist.
2762
2763         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
2764
2765         * scm/define-context-properties.scm: another old \property update.
2766         This time tested for compiling!
2767
2768 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
2769
2770         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
2771
2772 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2773
2774         * scm/define-context-properties.scm (all-user-translation-properties): 
2775         * Documentation/user/global.itely (Page formatting): Compile fix.
2776
2777 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
2778
2779         * Documentation/user/advanced-notation.itely (Polymetric
2780         notation): Update the example to use the "+" symbol and add link
2781         to input/test/compound-time.ly.
2782
2783 2006-04-08  Graham Percival  <gpermus@gmail.com>
2784
2785         * scm/define-grob-properties.scm: clarify docs for #'direction.
2786
2787         * scm/define-context-properties.scm: update old \property override.
2788
2789         * Documentation/user/ advanced-notation, global, lilypond-book:
2790         more minor doc updates.
2791
2792 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2793
2794         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
2795
2796         * scm/backend-library.scm (search-gs): oops.
2797
2798 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2799
2800         * scripts/lilypond-book.py (output): use base, not filename for href.
2801
2802         * scm/backend-library.scm: only look for gs.
2803
2804         * scripts/lilypond-book.py (output): fix printfilename.
2805
2806         * lily/parser.yy (music_function_musicless_prefix): fold together
2807         definitions of signature (SCM*) (Music|post_event|chord_body_element)
2808
2809         * lily/slur.cc (print): only set font-size if not set yet.
2810
2811         * lily/slur-configuration.cc (add_score): improved layout of debug
2812         scoring output.
2813
2814 2006-04-05  David Feuer  <David.Feuer@gmail.com>
2815
2816         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
2817         (draw_circle): Hopefully fixed regression.
2818         Improved documentation for several procedures.
2819         
2820 2006-03-04  Werner Lemberg  <wl@gnu.org>
2821
2822         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
2823
2824 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2825
2826         * scripts/musicxml2ly.py (bindir): add dynamic
2827         relocation. 
2828
2829 2006-04-04  Graham Percival  <gpermus@gmail.com>
2830
2831         * Documentation/user/ basic-notation, advanced-notation, putting,
2832         instrument-notation, invoking, lilypond, THANKS: another ream of small
2833         fixes from the Doc Helpers.
2834
2835 2006-04-03  David Feuer  <David.Feuer@gmail.com>
2836
2837         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
2838
2839         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
2840
2841         * Cleaned up interfaces between PostScript and Scheme, and moved
2842         computations from PostScript to Scheme:
2843
2844         * music-drawing-routines.ps
2845         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
2846         with stroke_and_fill throughout.
2847         (euclidean_length, print_letter, draw_box): Deleted unused
2848         procedures.  If someone needs draw_box, implement it using
2849         draw_round_box; don't duplicate code.
2850         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
2851         Refactored/cleaned up interfaces.
2852         (mark_URI): Moved.
2853
2854         * output-ps.scm: reordered arguments to PostScript functions to
2855         match new interfaces
2856         (glyph-string): Rewrote glyph-string.
2857         (grob-cause): Replaced string-append with format.
2858         (repeat-slash): Rewrote to do computation here.
2859         (round-filled-box): Rewrote to do computation here.
2860
2861 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
2862
2863         * stepmake/stepmake/generic-targets.make: add cvs-clean target
2864
2865         * stepmake/stepmake/toplevel- targets.make: print help info about
2866         cvs-clean
2867
2868 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
2869
2870         * input/regression/hairpin-circled.ly: new file
2871
2872 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
2873
2874         * lily/hairpin.cc (print): add support for circled tip
2875
2876         * scm/define-grob-properties.scm: add circled-tip parameter
2877
2878         * scm/define-grobs.scm: init circled-tip to false
2879         
2880 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2881
2882         * scm/music-functions.scm (quote-substitute): set
2883         iterators-ctor. 
2884
2885 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2886
2887         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
2888         BSTINPUTS. 
2889
2890         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
2891
2892         * scm/output-ps.scm (glyph-string): revert cid selectfont.
2893
2894 2006-03-31  David Feuer  <david.feuer@gmail.com>
2895         
2896         * scm/framework-ps.scm:
2897         
2898         * scm/output-ps.scm: glyph-string now produces smaller, more
2899         readable, and probably faster PostScript.  Several findfont
2900         scalefont setfont instances changed to selectfont
2901         Hacked-up string-appends changed to formats.
2902
2903         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
2904         
2905 2006-03-30  Graham Percival  <gpermus@gmail.com>
2906
2907         * scm/lily-library.scm: make "no version" warning message more polite.
2908
2909         * lily/music.cc: add double quotes to failed octave check.
2910
2911         * Documentation/user/ advanced-notation, changing-defaults,
2912         instrument-notation, invoking, music-glossary: whole bunch of minor
2913         fixes from mailist.
2914
2915 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2916
2917         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
2918         $(buildscriptdir) iso. depth.
2919
2920         * VERSION (PACKAGE_NAME): release 2.9.1
2921
2922 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2923
2924         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
2925
2926         * VERSION (PATCH_LEVEL): bump version number.
2927
2928         * flower/include/guile-compatibility.hh (scm_from_uint32): add
2929         scm_from_uint32 ()
2930
2931         * lily/pango-font.cc (pango_item_string_stencil): use
2932         scm_from_uint32 ()
2933
2934         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
2935         $(outdir)/emmentaler-%.svg): remove canary.
2936
2937         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
2938         glyphnames if we have a ttf font.
2939
2940 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
2941
2942         * Documentation/user/advanced-notation.itely (Font selection):
2943         Corrected reference to the font-family-override.ly example.
2944
2945 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
2946         
2947         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
2948         stem-tremolo object in the stem (or else the stem might not be
2949         long enough).
2950
2951 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2952
2953         * lily/ttf.cc (print_trailer): only print existing glyphs.
2954
2955 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
2956
2957         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
2958         position the tremolo based on the position of the notehead.
2959
2960         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
2961         notes and update the texidoc line with the new positioning rules.
2962         
2963 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2964
2965         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
2966
2967         * scripts/lilypond-book.py (Module): set default for linewidth if
2968         preamble not found.
2969
2970 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2971
2972         * VERSION (PACKAGE_NAME): release 2.9.0.
2973
2974         * input/regression/stem-tremolo-position.ly: new file.
2975
2976         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
2977
2978 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
2979
2980         * lily/stem-tremolo.cc (print): position
2981         the tremolo depending only on the end of the stem
2982         and not on the notehead
2983         (raw_stencil): center, on the middle staff line, the
2984         flag that is closest to the end of the stem (previously
2985         the bottom flag)
2986         (calc_width): add this callback to shorten a tremolo when
2987         it is beamed or it is stemup with a flag
2988         (style): add this callback to make a tremolo rectangular when
2989         it is beamed or it is stemup with a flag
2990         (rotated_box): this is like Lookup::beam but makes a rotated
2991         rectangle instead of a parallelogram
2992
2993         * lily/stem.cc (calc_stem_info): make sure the stem
2994         is long enough to fit the tremolo
2995         (calc-length): reduce the length of tremolo stems since the
2996         tremolo code is now capable of better positioning
2997
2998         * scm/define-grobs.scm: make calc_width the default beam-width
2999         callback for stem-tremolo and add the style callback
3000                 
3001 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3002
3003         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3004         case. 
3005
3006 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3007
3008         * lily/ttf.cc (make_index_to_charcode_map): restore old
3009         cmap. 
3010
3011 2006-03-28  Werner Lemberg  <wl@gnu.org>
3012
3013         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3014
3015 2006-03-28  Graham Percival  <gpermus@gmail.com>
3016
3017         * THANKS: update for 2.9, add section for Documentation helpers.
3018
3019         * Documentation/topdocs/NEWS.tely: compile fix.
3020
3021         * Documentation/user/ basic-notation, global, advanced-notation,
3022         examples.itely: minor fixes from mailist.
3023
3024 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3025
3026         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3027         note heads. 
3028
3029         * lily/ttf.cc (print_trailer): use it.
3030
3031         * lily/pango-font.cc (get_unicode_name): new function.
3032
3033         * lily/ttf.cc (make_index_to_charcode_map): move function from
3034         open-type-font.cc
3035         (print_trailer): substitute uniXXXX name if applicable. 
3036
3037         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3038         (pango_item_string_stencil): use it to generate uniXXXX names.
3039
3040         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3041         note heads, for uniform widths in shape note output.
3042         (overdone_heads): hmm. remove them again.
3043
3044         * scripts/lilypond-book.py (output): add links to filenames.
3045
3046         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3047
3048         * lily/note-collision.cc (get_clash_groups): only consider when
3049         Note_column::dir <> CENTER. 
3050
3051         * scripts/lilypond-book.py (get_option_parser): init output_name
3052         to ''. 
3053
3054 2006-03-24  Graham Percival  <gpermus@gmail.com>
3055
3056         * Documentation/topdocs/NEWS.tely: add @end itemize
3057
3058         * Documentation/user/ global, advanced-notation: minor
3059         stuff from mailist.
3060
3061 2006-03-23  Graham Percival  <gpermus@gmail.com>
3062
3063         * Documentation/user/ lilypond.tely, music-glossary,
3064         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3065
3066 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3067
3068         * mf/GNUmakefile: don't install .enc files.
3069
3070         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3071
3072         * VERSION (PATCH_LEVEL): bump to 2.9.0
3073
3074 2006-03-22  Graham Percival  <gpermus@gmail.com>
3075
3076         * Documentation/user/advanced-notation.itely: minor fixes
3077         from mailist.
3078
3079 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3080
3081         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3082
3083         * branch lilypond_2_8
3084
3085 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3086
3087         * scripts/lilypond-book.py (samefile): new function, for windoze
3088         compatibility.
3089
3090 2006-03-21  Graham Percival  <gpermus@gmail.com>
3091
3092         * ly/engraver-init.ly: add info about StaffGroup.
3093
3094 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3095
3096         * input/regression/stem-direction-context.ly: idem.
3097
3098         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3099
3100         * THANKS: add Mats.
3101
3102         * input/regression/page-layout-twopass.ly: comment out \markup so
3103         tweak-file is left.
3104
3105         * lily/instrument-name-engraver.cc (finalize): add to instrument
3106         name global System. This also fixes chopped instrument names, but
3107         doesn't crash when there are slurs/beams.
3108
3109         * lily/slur-configuration.cc (add_score): disallow negative slur
3110         scores.
3111         
3112 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3113
3114         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3115
3116         * lily/instrument-name-engraver.cc (process_music): kludge: add
3117         InstrumentName spanner to axis group of left bound. Fixes chopped
3118         off instrument names in EPS images.
3119
3120         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3121
3122         * scripts/abc2ly.py (option_parser): update to 2.7.40
3123
3124 2006-03-20  Graham Percival  <gpermus@gmail.com>
3125
3126         * THANKS: move small doc contributors to SUGGESTIONS.
3127
3128         * Documentation/user/ basic-notation, advanced-notation,
3129         global: small changes from mailist.
3130
3131 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3132
3133         * Documentation/user/advanced-notation.itely (Text marks): update
3134         for new rehearsalMarkAlignSymbol convention.
3135
3136         * VERSION (PATCH_LEVEL): bump version.
3137
3138         * input/test/instrument-name-align.ly: new file.
3139
3140         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3141
3142         * input/test/instrument-name-align.ly: new file. Document how to
3143         align instrument names.
3144
3145         * lily/mark-engraver.cc: remove properties.
3146
3147         * scm/define-context-properties.scm
3148         (all-user-translation-properties): remove align symbol properties
3149         for barnumber/reh. mark.
3150
3151         * lily/break-align-interface.cc (self_align_callback): new
3152         interface, new function. Look at complete alignment. This handles
3153         tunable break alignments in case break-align-symbols are missing.
3154
3155         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3156
3157         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3158
3159         * python/convertrules.py (conv): mark/bar number alignment rule.
3160
3161         * lily/break-align-interface.cc (calc_positioning_done): also
3162         store offset from last visible break-alignment to its
3163         neighbor. This makes alignment on non-visible objects more reliable.
3164
3165         * po/lilypond.pot (Module): ran po-replace.
3166
3167         * input/regression/tie-single-manual.ly (Module): new file.
3168
3169         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3170         look at has_manual_position_.
3171         (from_ties): set has_manual_position_ if tie has staff-position set.
3172
3173         * lily/tuplet-bracket.cc (calc_positions): idem.
3174
3175         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3176         doesn't span time.
3177
3178 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3179
3180         * scm/define-markup-commands.scm (smallCaps): new markup command
3181         for turning a text to small caps using smaller font size and upper
3182         casing.
3183
3184 2006-03-17  Graham Percival  <gpermus@gmail.com>
3185
3186         * Documentation/user/ examples, instrument-notation,
3187         advnaced-notation: minor fixes from mailist.
3188
3189 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3190
3191         * Documentation/user/tutorial.itely (First steps): change example
3192         to verbatim.  
3193
3194 2006-03-17  Graham Percival  <gpermus@gmail.com>
3195
3196         * Documentation/user/ examples, advanced: minor changes from mailist.
3197
3198         * THANKS: add Geoff Horton, for documentation stuff.
3199
3200 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3201
3202         * python/lilylib.py (system): revert have_select kludge.
3203
3204         * Documentation/user/tutorial.itely (Commenting input files):
3205         update version numbers in doc. 
3206
3207         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3208         bound-padding to multi-measure-interface
3209
3210 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3211
3212         * input/test/engraver-example.ily: update version number.
3213
3214         * VERSION (PACKAGE_NAME): release 2.7.39
3215
3216         * lily/note-spacing.cc (get_spacing): heighten threshold where
3217         accidentals/arpeggios influence previous spacing fully.
3218
3219         * lily/rest.cc (y_offset_callback): only use direction if
3220         staff-position wasn't set before.
3221
3222         * lily/bar-number-engraver.cc: add support for
3223         barNumberAlignSymbol. 
3224         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3225
3226         * lily/pointer-group-interface.cc (set_ordered): new function. 
3227         (add_unordered_grob): new function.
3228
3229         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3230         to ordered, unless the opposite has been proved.  This fixes
3231         random reordering of large object groups across linebreaks,
3232         eg. beams.
3233
3234         * lily/main.cc (do_chroot_jail): printf format fix.
3235
3236         * lily/tie-formatting-problem.cc (generate_configuration):
3237         multiply y-shift for dot with direction.
3238  
3239         * scm/define-markup-commands.scm (note-by-number): put (magstep
3240         size) in y-attach too.
3241
3242         * Documentation/topdocs/NEWS.tely (Top): show override.
3243
3244         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3245         direction for stems.
3246         
3247 2006-03-15  Graham Percival  <gpermus@gmail.com>
3248
3249         * Documentation/user/ changing-defaults, global: minor
3250         fixes from mailist.
3251
3252 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3253
3254         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3255
3256         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3257         breakable items after uniformly stretched notes.
3258
3259         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3260         outline with outer edge of note heads. This prevents infinity
3261         problems with tied whole notes.
3262
3263         * scripts/lilypond-book.py (do_file): use os.popen
3264
3265         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3266
3267 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3268
3269         * Documentation/user/invoking.itely: Add ragged-right to bug report
3270         guidelines.
3271
3272 2006-03-14  Graham Percival  <gpermus@gmail.com>
3273
3274         * Documentation/user/global.itely: small fix from mailist.
3275
3276 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3277
3278         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3279         file descriptor returned by tempfile.mkstemp() when writing
3280         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3281         on mingw.
3282
3283 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3284
3285         * po/fi.po: newline bugfix.
3286
3287 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3288
3289         * scm/paper.scm (paper-alist): Rounding fixes.
3290
3291 2006-03-13  Graham Percival  <gpermus@gmail.com>
3292
3293         * Documentation/user/ changing-defaults, instrument-notation,
3294         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3295
3296 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3297
3298         * po/fi.po: update.
3299
3300 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3301
3302         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3303         mailto: to http:// 
3304
3305         * python/lilylib.py (print_environment): move ps_page_count to
3306         lilypond-book.py
3307
3308 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3309
3310         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3311
3312         * scm/framework-ps.scm (embed-document): new function. Use to
3313         embed PFA files.
3314
3315         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3316
3317 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3318
3319         * Documentation/user/instrument-notation.itely (Setting simple
3320         songs): Added \book{...} around the full example, so the separate
3321         markups are included in the printed example. 
3322
3323 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3324
3325         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3326         tmphandle.
3327
3328         * python/lilylib.py (system): rewrite system() using
3329         subprocess. Remove >& redirection trickery.
3330
3331 2006-03-11  Graham Percival  <gpermus@gmail.com>
3332
3333         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3334         notation-appendices.itely: minor fixes from mailist.
3335
3336 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3337
3338         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3339         unsplit man also needs images.
3340
3341         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3342
3343         * VERSION (PACKAGE_NAME): 2.7.38 released.
3344
3345 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3346
3347         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3348         log in output dir.
3349
3350 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3351
3352         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3353         respects the Score.skipTypesetting property.
3354         
3355 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3356
3357         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3358         Prolog. No %%EOF after CFF file.
3359
3360 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3361         
3362         * lily/constrained-breaking.cc (get_max_systems): used to return a
3363         much too big value
3364         (combine_demerits): use pointers to reduce copying data
3365         (calc_subproblem): idem
3366         (get_page_penalty): add page turn penalties
3367         
3368 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3369
3370         * Documentation/user/invoking.itely (Invoking lilypond): better
3371         explanation of -e usage.
3372
3373         * lily/main.cc (main_with_guile): don't append to
3374         init_scheme_code_string
3375
3376         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3377
3378         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3379
3380         * scripts/convert-ly.py (do_options): don't print help for
3381         --show-rules rule.
3382
3383         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3384         @code and @example. Update from texinfo.tex from CVS.
3385
3386 2006-03-08  Graham Percival  <gpermus@gmail.com>
3387
3388         * Documentation/user/scheme-tutorial.itely: clarifies distances
3389         measured in staff-spaces.
3390
3391 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3392
3393         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3394         consider[k] is true.
3395
3396         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3397
3398         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3399         consider columns that have originals.  Unifies spacing for mm
3400         rests around line breaks.
3401
3402         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3403         (set_text_rods): idem.
3404         (calculate_spacing_rods): new function: share code between
3405         set_text_rods and set_spacing_rods.
3406         (set_text_rods): take extents of bounds into account.  
3407
3408 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3409
3410         * Documentation/user/basic-notation.itely (Writing music in
3411         parallel): don't use relative.
3412
3413 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3414
3415         * ly/music-functions-init.ly (Module): add shiftDurations
3416
3417         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3418
3419         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3420
3421         * ly/engraver-init.ly: init vocalName to nil.
3422
3423 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3424
3425         * scm/music-functions.scm (music->make-music): bugfix,
3426         KeyChangeEvents are now handled correctly.
3427
3428         * scripts/lilypond-book.py: Add --debug option.
3429
3430 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3431
3432         * python/lilylib.py: add tempfile.
3433
3434 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3435
3436         * VERSION (PACKAGE_NAME): release 2.7.37
3437
3438         * python/lilylib.py (ps_page_count): remove make_ps_images().
3439         (ps_page_count): remove mkdir_p
3440         (system): remove cleanup_temp.
3441         (exit): remove lilypond_version_(check)
3442         (error_log): remove pseudo_filter_p
3443         remove read_pipe
3444         remove cp_to_dir
3445         remove identify
3446
3447         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3448         use __main__
3449
3450         * lily/accidental-engraver.cc (make_standard_accidental): only add
3451         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3452
3453         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3454         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3455         Make incompatibilities.
3456
3457         * scm/output-ps.scm (grob-cause): replace backslashes by /
3458         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3459
3460 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3461
3462         * cygwin/GNUmakefile: Install fixes.
3463
3464         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3465
3466         * lily/note-head.cc (head::get_balltype): Compile fix.
3467
3468         * flower/file-name.cc (dos_to_posix): Flower string fix.
3469
3470 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3471
3472         * python/lilylib.py: pychecker cleanups.
3473
3474         * scripts/lilypond-book.py
3475         (Lilypond_snippet.output_print_filename): pychecker cleanups
3476
3477         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
3478
3479         * python/lilylib.py (underscore): remove identify() , warranty()
3480
3481         * ps/music-drawing-routines.ps: change Border routine for GSView
3482         compatibility.
3483
3484         * lily/stem.cc (height): use quantize-positions.  This triggers
3485         set_stem_lengths, so scripts on beamed stems are handled correctly.
3486
3487         * lily/side-position-interface.cc (aligned_side): check if edges
3488         of script are inside staff. Fixes accent of edge of the staff.
3489
3490         * input/regression/staccato-pos.ly: more examples.
3491
3492         * stepmake/aclocal.m4 (depth): fix bashism.
3493
3494         * lily/lyric-combine-music-iterator.cc: move from
3495         new-lyric-combine-iterator.cc
3496         (process): add pending_grace_lyric_ member to delay lyrics on
3497         grace notes.
3498
3499         * lily/system-start-text.cc (print): suicide if we don't have any
3500         elements. Fixes hara kiri'd instrument names.
3501
3502         * scripts/mup2ly.py (Module): remove.
3503
3504 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3505
3506         * Documentation/user/global.itely (A single music expression):
3507         close @lilypond properly
3508
3509         * lily/volta-bracket.cc (modify_edge_height): change from
3510         after_line_breaking_callback. Suicide last bracket if appropriate.
3511  
3512         * python/lilylib.py: strip getopt support
3513
3514         * scripts/etf2ly.py (do_options): use optparse
3515
3516         * scripts/midi2ly.py: optparse, strip lilylib copy. 
3517
3518         * scripts/abc2ly.py (voices): use optparse.
3519
3520         * stepmake/stepmake/generic-vars.make: new function absdir.
3521
3522         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
3523
3524         * scripts/lilypond-book.py (find_file): use global_options for
3525         include path
3526
3527         * scm/ps-to-png.scm (ps-page-count): prevent null characters
3528         entering C code.
3529
3530 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3531
3532         * python/lilylib.py (get_global_option): ughness for extracting
3533         global options from lilylib.
3534         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
3535
3536         * scripts/lilypond-book.py (get_option_parser): use optparse for
3537         option handling.  Put options in global_options variable.
3538
3539 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
3540
3541         * Documentation/index.html.in: clarify.
3542
3543 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3544
3545         * scm/layout-page-layout.scm (write-page-breaks): add a
3546         music-system-heights property to the page layout output.
3547
3548         * scm/page.scm (make-page-stencil): take footer into account when
3549         computing the 'space-left page property
3550         (annotate-space-left): take footer into account when annonating
3551         space left.
3552
3553 2006-02-28  Graham Percival  <gpermus@gmail.com>
3554
3555         * Documentation/user/ advanced-notation, global: more (final)
3556         docs for music expressions, removed special fermatas.
3557
3558 2006-02-27  Graham Percival  <gpermus@gmail.com>
3559
3560         * Documentation/user/ basic-notation, global: minor changes
3561         from mailist.
3562
3563 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3564
3565         * scm/framework-ps.scm:         
3566         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
3567         layer for inf? and nan? from framework-ps to lily-library.
3568
3569 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3570
3571         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
3572         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
3573
3574         * buildscripts/substitute-encoding.py (Module): remove file.
3575
3576         * mf/GNUmakefile: more PFA strippage.
3577
3578         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
3579
3580         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
3581         generation
3582
3583         * scm/framework-ps.scm: remove font name munging.
3584
3585         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
3586
3587 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3588
3589         * scm/markup.scm (define-markup-command): change
3590         def-markup-command to define-markup-command
3591
3592         * scm/music-functions.scm (define-music-function): change
3593         def-music-function to define-music-function.
3594
3595         * python/convertrules.py (conv): rules for def-music-function
3596         and def-markup-commands
3597
3598         * Documentation/user/programming-interface.itely,
3599         input/no-notation/display-lily-tests.ly,
3600         input/regression/lily-in-scheme.ly,
3601         input/regression/markup-user.ly,
3602         input/regression/music-function.ly, input/regression/tie-chord.ly,
3603         scm/fret-diagrams.scm, ly/music-functions-init.ly,
3604         ly/gregorian-init.ly: use new macro names (define-music-function,
3605         define-markup-command).
3606
3607 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3608
3609         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
3610         (output): add comments to lp-book latex output.
3611
3612         * GNUmakefile.in (footifymail): use gmane address for webpage bug
3613         address.
3614
3615 2006-02-23  Graham Percival  <gpermus@gmail.com>
3616
3617         * Documentation/user/ tutorial, global: minor changes.
3618
3619 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3620
3621         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
3622         blocks (for make 3.80)
3623
3624         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
3625         \notemode so that user should not have to explicitely type it.
3626
3627         * scm/define-music-display-methods.scm: various
3628         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
3629         constructs)
3630
3631         * input/no-notation/display-lily-tests.ly: new tests for
3632         \applyOutput and \applyContext
3633
3634 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3635
3636         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
3637         changed it slightly so that the number of systems returned by
3638         solve () will be the same as the last value passed to resize
3639         (). I've also added more documentation, removed casts, fixed style
3640         problems and put in some recovery if constraints aren't satisfied."
3641
3642 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
3643
3644         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
3645         for emacs < 22 compatibility.
3646         (count-rexp): Use it.
3647         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
3648         substring juggling (Milan Zamazal).
3649
3650 2006-02-23  Graham Percival  <gpermus@gmail.com>
3651
3652         * Documentation/user/ basic-notation, advanced-notation,
3653         global.itely, invoking.itely, tutorial,itely:
3654         minor fixes from mailist.
3655
3656         * scm/define-markup-commands.scm: improve docs of \filled-box.
3657
3658 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
3659
3660         * Documentation/index.html.in: changes concern the previous release.
3661
3662         * input/regression/+.ly: cultivate typographical terminology.
3663
3664 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3665
3666         * scm/define-grob-interfaces.scm (parentheses-interface): add
3667         padding to parentheses-interface.
3668
3669         * Documentation/user/GNUmakefile: remove $(CROSS) support from
3670         Documentation/user/GNUmakefile. Use --disable-documentation for that.
3671
3672         * VERSION (PATCH_LEVEL): release 2.7.36
3673
3674         * lily/slur.cc: add avoid-slur (ugh.)
3675         
3676         * lily/slur-configuration.cc (fit_factor): oops, skip point if
3677         intersection gets smaller. This fixes slurs over extreme points.
3678
3679         * lily/melody-engraver.cc (stop_translation_timestep): ignore
3680         stems with neutral-direction set.
3681
3682         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
3683
3684         * lily/open-type-font.cc (load_table): format error.
3685
3686         * lily/change-iterator.cc (process): format fix.
3687
3688         * flower/include/international.hh (_f): idem.
3689
3690         * flower/include/std-string.hh: add format printf attribute.
3691
3692         * scm/define-grobs.scm (all-grob-descriptions): height of all
3693         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
3694
3695         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
3696         ambitus lines.
3697
3698         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
3699
3700 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
3701
3702         * input/regression/: upgraded syntax for some files.
3703
3704         * THANKS: Add bughunters.
3705
3706 2006-02-22  Graham Percival  <gpermus@gmail.com>
3707
3708         * Documentation/user/ invoking.itely, advanced-notation.itely,
3709         global.itely: long-awaited "let's make chapter 10 not suck"
3710         update.  Rearrange chapter 10; now called "global issues",
3711         addresses file structure, etc.  Some info from other files
3712         moved into global.itely.
3713
3714 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3715
3716         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
3717         catch trill-span-event notes.
3718
3719         * Documentation/user/examples.itely (Ancient notation templates): typo.
3720         (Jazz combo): typo.
3721
3722         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
3723
3724         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
3725
3726         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
3727
3728         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
3729
3730         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
3731         froum Laissez_vibrer_engraver.
3732
3733         * ly/declarations-init.ly (repeatTie): add \repeatTie
3734
3735         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
3736
3737         * scm/define-grob-properties.scm (all-user-grob-properties): add
3738         head-direction property.
3739
3740         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
3741         from_lv_ties. Take head direction argument.
3742
3743         * lily/semi-tie-column.cc: rename from
3744         laissez-vibrer-tie-column.cc. Rename class too.
3745
3746         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
3747         class too.
3748
3749         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
3750
3751         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
3752         0 case.
3753         (find_breaks): idem.
3754
3755 2006-02-21  Graham Percival  <gpermus@gmail.com>
3756
3757         * Documentation/user/advanced-notation.itely: fixed make-moment]
3758         example.
3759
3760         * Documentation/user/basic-notation.itely: more clarification to
3761         transpose.
3762
3763 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3764
3765         * lily/include/constrained-breaking.hh (class
3766         Constrained_breaking): new file.
3767
3768         * lily/constrained-breaking.cc (resize): new file.
3769
3770         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
3771
3772         * Documentation/user/advanced-notation.itely (Clusters): insert
3773         end ignore too.
3774
3775         * lily/tie-column.cc (calc_positioning_done): support for
3776         tie-score debugging
3777
3778         * lily/tie-formatting-problem.cc
3779         (generate_extremal_tie_variations): factor out.
3780         (score_ties_configuration): annotate all tie 
3781         (print_ties_configuration): new routine.
3782         (generate_configuration): nudge extremal ties outside of the head
3783         Y extents.
3784         (score_ties_configuration): oops. convert to staff-space before
3785         determining position symmetry.
3786
3787 2006-02-20  Graham Percival  <gpermus@gmail.com>
3788
3789         * Documentation/user/*-notation.itely: misc minor editing,
3790         shifting doc sections around.
3791
3792         * Documentation/user/*-notation-itely, global.itely,
3793         changing-defaults.itely: added new stuff from NEWS.
3794
3795 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
3796
3797         * po/fi.po: update.
3798
3799 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3800
3801         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
3802         lilypond --verbose for lp-book.
3803
3804         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3805         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
3806
3807         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
3808         $(buildscript-dir) iso. absolute depth.
3809
3810         * buildscripts/genicon.py (dir): thinko.
3811
3812         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
3813
3814 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
3815
3816         * scm/output-lib.scm: swap darkcyan/darkyellow
3817
3818         * THANKS: Add bughunters.
3819
3820 2006-02-19  Graham Percival  <gpermus@gmail.com>
3821
3822         * Documentation/user/programming-interfaces.itely: fixed example.
3823
3824         * Documentation/user/instrument-notation.itely: fix @{ @}.
3825
3826         * scm/script.scm: add avoid-slur for \open.
3827
3828 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3829
3830         * lily/tie-formatting-problem.cc (score_configuration): use
3831         sliding score for min-length. 
3832
3833         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
3834         spaghetti for icons.
3835
3836         * buildscripts/genicon.py (program_name): new file.
3837
3838         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
3839         in outline too.  
3840         (generate_configuration): for small ties, also look for collisions
3841         at Y + DIR*h + DELTA_Y.
3842         (get_variations): consider variation for dot positions too.
3843
3844         * lily/side-position-interface.cc (aligned_side): take abs for
3845         quantized rounded position. Fixes tenuto below staff.
3846
3847         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
3848         markers when necessary.
3849
3850         * lily/program-option.cc (internal_set_option): add
3851         strict_infinity_checking option.
3852
3853         * scm/output-lib.scm (cyan): swap yellow and cyan.
3854
3855 2006-02-19  Graham Percival  <gpermus@gmail.com>
3856
3857         * darwin.patch: trivial linenumber update.
3858
3859         * Documentation/user/ {various}: `\context foo = named' changed
3860         to `\new foo = "name"' in docs.
3861
3862 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3863
3864         * scm/stencil.scm (annotate-y-interval): use it.
3865
3866         * scm/lily-library.scm (interval-sane?): new function.
3867
3868         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
3869         tfm_checksum stuff.
3870
3871         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
3872         common refpoint.
3873
3874         * flower/include/std-vector.hh (iterof): add iterof macro.
3875
3876         * lily/enclosing-bracket.cc (width): new function.
3877
3878         * lily/align-interface.cc (align_elements_to_extents): reinstate
3879         warning.
3880
3881 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
3882
3883         * Documentation/index.html.in: fix spelling: thankyous.
3884
3885 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3886
3887         * lily/lyric-hyphen.cc: typo.
3888
3889 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3890
3891         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
3892         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
3893         builds don't work. 
3894
3895         * VERSION: release 2.7.35
3896
3897         * lily/beam.cc (get_default_dir): oops. Take abs () for
3898         extremes[DOWN].
3899         (get_default_dir): use extreme position criterion only in absence
3900         of forced stem directions.
3901
3902         * VERSION (PATCH_LEVEL): bump VERSION.
3903
3904         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
3905         dependencies. Necessary for -jX builds.  
3906
3907 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
3908
3909         * lily/relocate.cc (setup_paths): Yet another const fix.
3910
3911 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3912
3913         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
3914
3915         * lily/relocate.cc (setup_paths): oops.
3916
3917 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
3918
3919         * Documentation/index.html.in: order links: html before PDF.
3920
3921 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3922
3923         * lily/tie-column-format.cc (Module): remove.
3924
3925         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
3926
3927         * lily/text-spanner.cc (print): idem.
3928
3929         * lily/dynamic-text-spanner.cc (print): only print line if longer
3930         than dash-period.
3931
3932         * lily/auto-change-iterator.cc (change_to): formatting.
3933
3934         * lily/beam.cc (get_default_dir): take extreme note head as input
3935         for stem direction.
3936
3937         * lily/tie.cc (get_default_dir): only look directions for visible
3938         stems. 
3939
3940         * lily/side-position-interface.cc (aligned_side): oops. Don't
3941         mutiply with direction. This fixes quantized (staccato, tenuto)
3942         scripts below notes.
3943
3944         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
3945         direction. Fixes c-lyrics-center-align.ly
3946
3947 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3948
3949         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
3950         constructor.
3951
3952         * lily/std-string.cc:
3953         * lily/include/std-vector.hh (split_string): Move and rename from
3954         lily/include/misc.hh, lily/misc.cc.  Update callers.
3955
3956 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3957
3958         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
3959
3960 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3961
3962         * flower/test-file.cc: New file.
3963
3964         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
3965         libraries.
3966
3967         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
3968
3969 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3970
3971         * flower/include/file-storage.hh: remove file.
3972
3973         * lily/include/midi-item.hh (class Midi_track): idem.
3974
3975         * lily/include/source.hh (class Sources): idem.
3976
3977         * lily/include/performance.hh (class Performance): use vector
3978         iso. Cons<>
3979
3980         * flower/include/cons.hh (class Cons): remove file.
3981
3982         * flower/include/flower-proto.hh: remove template cruft.
3983
3984         * lily/include/font-metric.hh: use size_t not vsize for indices.
3985
3986         * flower/include/flower-proto.hh (Module): remove std-vector.hh
3987         from proto.
3988
3989         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
3990
3991         * lily/include/paper-book.hh (class Paper_book):
3992         make get_system_specs() public.
3993
3994         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
3995         the force=10000 case if we don't have a current-best. 
3996
3997         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
3998         vsize 
3999
4000         * flower/include/flower-proto.hh: remove outdated templates.
4001
4002         * scm/page.scm: use annotate-spacing
4003
4004 2006-02-15  Graham Percival  <gpermus@gmail.com>
4005
4006         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4007
4008         * THANKS: moved Erlend Aasland to contributors.
4009
4010 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4011
4012         * config.hh.in: remove HAVE_PANGO_16
4013
4014         * lily/tuplet-bracket.cc (calc_positions): multiply with
4015         staff-space for beam case. This fixes tuplets+beams on scaled
4016         staves.
4017
4018         * config.hh.in: remove all Kpathsea related defines.
4019
4020         * lily/dot-column.cc (side_position): reach stem via dots->
4021         head->stem. Inspect all stems for dot collisions. 
4022
4023         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4024         stem handling.
4025
4026         * lily/bar-number-engraver.cc (process_music): document function
4027         of whichBar.
4028
4029         * lily/score.cc (default_rendering): add pscore, not systems
4030         themselves.
4031
4032         * lily/paper-book.cc (get_system_specs): separate generation of
4033         titles and systems.
4034
4035         * flower/include/std-vector.hh: don't include config.hh
4036
4037 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4038
4039         * flower/include/std-vector.hh: Better wrapper compatibility with
4040         std::vector.
4041
4042         * flower/include/flower-proto.hh: Remove cheap forward declaration
4043         attempts.
4044
4045         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4046
4047 2006-02-14  Graham Percival  <gpermus@gmail.com>
4048
4049         * Documentation/user/invoking.itely: add warning about command line.
4050
4051 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4052
4053         * lily/include/lily-proto.hh: add Prob, rm Page.
4054
4055         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4056
4057         * VERSION: release 2.7.34
4058
4059         * lily/relocate.cc (framework_relocation): show canary if
4060         GHOSTSCRIPT_VERSION undefined.
4061
4062         * GNUmakefile.in: remove $(VERSION) symlink.
4063
4064         * lily/relocate.cc (setup_paths): add + 
4065
4066 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4067
4068         * Documentation/index.html.in: specify sizes for all big HTML pages.
4069
4070 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4071
4072         * config.hh.in: remove @FRAMEWORKDIR@
4073
4074         * lily/system-start-text.cc (get_stencil): new file: separate out
4075         system-start-delimiter text support.
4076
4077         * input/**ly: replace \context with \new where appropriate.
4078         
4079         * THANKS: add Don.
4080
4081         * lily/slur-scoring.cc (get_base_attachments): use
4082         robust_relative_extent. This fixes problems with empty paper-columns. 
4083
4084 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4085
4086         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4087
4088         * scm/define-music-properties.scm (all-music-properties):
4089         create-new property.
4090
4091         * lily/context-specced-music-iterator.cc (construct_children):
4092         inspect 'create-new property iso. magical $uniqueContextId context
4093         id.
4094
4095         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4096
4097         * lily/context-key-manager.cc (Module): new file. Encapsulate
4098         object key generation.
4099
4100         * lily/include/context-key-manager.hh (Module): new file.
4101
4102 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4103
4104         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4105         names vertically
4106
4107         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4108         options.
4109         (reloc_b): excise --enable-framework-dir
4110
4111         * lily/relocate.cc (framework_relocation): use getenv
4112         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4113
4114 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4115
4116         * flower/include/std-string.hh: 
4117         * flower/include/std-vector.hh: Finish std:: conversion; move
4118         flower extensions from std:: namespace.  Update users.
4119
4120         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4121         their expansion to vector<*>.  Update users.
4122
4123 2006-02-10  Graham Percival  <gpermus@gmail.com>
4124
4125         * Documentation/user/invoking.itely: add example to File structure.
4126
4127         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4128         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4129
4130 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4131
4132         * ly/paper-defaults.ly: typo.
4133
4134         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4135         set_parent() for parentheses. This will make it show up in bbox
4136         calculations.
4137
4138         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4139         ly:grob-common* functions.
4140
4141         * lily/grob-scheme.cc (LY_DEFINE):
4142         ly:grob-common-refpoint-of-array: new function 
4143         ly:grob-common-refpoint: new function 
4144         ly:grob-relative-coordinate: new function 
4145
4146         * lily/instrument-name-engraver.cc (process_music): use
4147         Text_interface::is_markup(). This fixes \markup on instrument names.  
4148
4149         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4150         for ties and slurs.
4151
4152         * lily/slur.cc (print): idem.
4153
4154         * lily/tie.cc: add line-thickness for ties. 
4155
4156 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4157
4158         * scm/output-svg.scm: Document diversion from GNU coding standards
4159         as a workaround for a bug in Microsoft Internet Explorer.
4160
4161 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4162
4163         * lily/instrument-name-engraver.cc (process_music): use
4164         is_markup() iso. is_string()
4165
4166         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4167
4168         * lily/percent-repeat-engraver.cc (process_music): only look at
4169         main_part_ for % repeats.
4170
4171         * lily/stem-tremolo.cc (get_beam_translation): new function.
4172         (calc_slope): new function.
4173         (height): don't use real slope.
4174
4175 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4176
4177         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4178         new connect-to-neighbor, control-points and staff-padding
4179         properties to make ligature brackets showing up again.
4180
4181 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4182
4183         * VERSION: release 2.7.33
4184
4185         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4186         too many.
4187
4188         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4189         remove applyOutput example.
4190         (Objects connected to the input): document \tweak, \parenthesize
4191
4192         * lily/relocate.cc (prefix_relocation): allow "current"
4193         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4194         changing VERSION in a lily tree less painful.
4195
4196         * input/regression/parenthesize.ly: new file. 
4197
4198         * scm/output-lib.scm (parenthesize-element): new function.
4199
4200         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4201
4202         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4203
4204         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4205         cause: accidentals are caused by note heads, not note events. 
4206
4207 2006-02-08  Graham Percival  <gpermus@gmail.com>
4208
4209         * darwin.patch: small patch from Erlend, thanks!
4210
4211         * Documentation/user/basic-notation.itely: add stem-neutral example.
4212
4213         * Documentation/user/putting.itely: clarifications.
4214
4215 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4216
4217         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4218         note, add more guidelines to what should go into NEWS.
4219
4220         * input/sakura-sakura.ly: document how to override font.
4221
4222         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4223
4224 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4225
4226         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4227
4228 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4229
4230         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4231         convertrules.  Add explicit grouping, needed for python2.2.
4232
4233 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4234
4235         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4236
4237 2006-02-07  Graham Percival  <gpermus@gmail.com>
4238
4239         * Documentation/user/global.itely: fix line-width in (text) docs.
4240
4241         * Documentation/user/lilypond-book.itely: same.
4242
4243 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4244
4245         * VERSION (PACKAGE_NAME): release 2.7.32
4246
4247         * Documentation/topdocs/NEWS.tely (Top): document new variable
4248         naming.
4249
4250         * flower/include/array.icc (Message): remove file.
4251
4252         * flower/include/std-vector.hh: make sure vsize and VPOS are
4253         defined for binary_search_bounds().
4254
4255         * flower/std-string.cc (std): add to_string(long unsigned).
4256
4257         * configure.in (gui_b): excise std_string option.
4258         (gui_b): excise std_vector option.
4259
4260         * flower/string.cc (Module): excise flower array & string
4261
4262         * flower/include/std-string.hh: excise flower string.
4263
4264         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4265
4266         * python/convertrules.py (lilypond_version_re_str): require
4267         only numbers and dots in \version string.
4268
4269 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4270
4271         * lily/system-start-delimiter.cc (print): allow style = text too.
4272
4273         * lily/system-start-delimiter-engraver.cc
4274         (acknowledge_system_start_text): new function, also add add to
4275         support of system-start-text (instrument names). This fixes
4276         instrument names on piano staves.
4277
4278         * lily/instrument-name-engraver.cc: rewrite. Use
4279         system-start-delimiter approach. This save memory and cpu.
4280
4281         * scm/define-grobs.scm (all-grob-descriptions): remove
4282         instrument-name from break-alignment.
4283
4284         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4285
4286 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4287
4288         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4289         jobserver going.
4290
4291         * configure.in (std_vector): On by default.
4292
4293         * lily/include/font-metric.hh:
4294         * lily/include/tfm-reader.hh: 
4295         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4296         Update users.
4297
4298         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4299
4300 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4301
4302         * VERSION (PACKAGE_NAME): 2.7.31
4303
4304         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4305         EPS edge at 0, but take minimum with left-overshoot. This fixes
4306         cut off system start delims. 
4307
4308         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4309         hack: add to axis group if not added yet. This fixes hara kiri'd
4310         piano staves.
4311
4312         * lily/hara-kiri-group-spanner.cc
4313         (force_hara_kiri_in_y_parent_callback): fix signatures.
4314
4315         * lily/hairpin.cc (print): check next hairpin to see whether or
4316         not to be continuing.
4317
4318 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4319
4320         * Remove trailing whitespace from makefiles.
4321         
4322         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4323         for earlier gcc.
4324
4325         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4326
4327         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4328
4329         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4330
4331         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4332
4333         * configure.in: Use it.
4334
4335 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4336
4337         * scm/music-functions.scm (pitch-of-note): new function.
4338
4339         * ly/music-functions-init.ly: add \octave and \addquote
4340
4341         * lily/parser.yy (music_function_chord_body): softcode \octave.
4342         (lilypond_header): softcode \addquote
4343
4344 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4345
4346         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4347         array.hh, parray.hh at all.  Getting ready to flip the
4348         configure default.
4349
4350         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4351
4352         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4353         a bit.
4354
4355         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4356
4357 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4358
4359         * flower/include/array.hh: typo. 
4360
4361 2006-02-02  Graham Percival  <gpermus@gmail.com>
4362
4363         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4364
4365 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4366
4367         * flower/include/pqueue.hh: Derive from std::vector.
4368
4369         * flower/include/parray.hh: Conform to std::vector interface.
4370         Update users.
4371
4372 2006-02-02  Graham Percival  <gpermus@gmail.com>
4373
4374         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4375
4376 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4377
4378         * flower/file-path.cc (is_file): remove if 0 section.
4379
4380         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4381         selecting afii61352.
4382
4383 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4384
4385         * flower/include/std-vector.hh (boundary): Oops, reverse.
4386
4387         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4388         remove superfluous `d'.
4389
4390         * flower/include/std-vector.hh (boundary, top): Detach from class.
4391         Remove empty vector shell.
4392
4393         * flower/include/array.hh (reverse, swap): Detach from class.
4394         Update users.
4395         
4396         * flower/include/std-vector.hh
4397         * flower/include/array.hh (concat): Globally change to insert ().
4398
4399         
4400         * flower/include/std-vector.hh
4401         * flower/include/parray.hh
4402         * flower/include/array.hh (elem, elem_ref): Globally replace by
4403         at ().
4404
4405 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4406
4407         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4408
4409         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4410         anticipate on identifier substitutions.
4411
4412 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4413
4414         * flower/include/std-vector.hh (insert): Remove, replace by
4415         std::vector interface.  Update callers.
4416
4417         * flower/include/array.icc (insert): Change signature to
4418         match std::vector interface.
4419         
4420         * flower/include/array.icc (vector_sort): Bugfix.
4421
4422 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4423
4424         * lily/parser.yy (output_def_head_with_mode_switch): new
4425         production. Result: dashes and underscores may be used in the
4426         \paper block.
4427
4428         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4429
4430         * python/convertrules.py (conv): oops. One slash too much.
4431
4432 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4433
4434         * flower/include/std-vector.hh (sort): Remove, replace by
4435         ::vector_sort.  Update callers.
4436
4437         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4438         (sort): Bugfix.
4439
4440         * flower/test-std.cc (vector_sort): New test.
4441
4442 2006-02-01  Graham Percival  <gpermus@gmail.com>
4443
4444         * Documentation/user/putting.itely: fixes from Erik.
4445
4446 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4447
4448         * flower/test-std.cc: Add simple unit test for vector migration.
4449
4450         * stepmake/stepmake/test*: Unit test support.
4451
4452         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4453         update callers.
4454
4455         * flower/include/array.hh (begin, end): Add.
4456         (del, get): Remove.
4457
4458 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4459
4460         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4461         std::string not String. 
4462
4463         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4464         iso UINT_MAX.
4465
4466         * lily/prob.cc (Prob): copy type_ too.
4467
4468         * lily/lily-guile.cc (mangle_cxx_identifier): new
4469         function. Class_bla::foo_bar_[px] ->
4470         ly:class-bla::foo-bar[?!]. Changes throughout
4471
4472 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4473
4474         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4475
4476         * lily/beam.cc (calc_direction): take dir from visible stem in
4477         degenerate case.
4478
4479 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4480
4481         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
4482         Fix -1, >=0 boundary checks for unsigned vsize.
4483
4484         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
4485         loop for unsigned vsize.
4486
4487         * configure.in (--enable-std-vector): New option.
4488         (--enable-std-string): On by default.
4489
4490         * flower/include/std-vector.hh: New file.  Enable switch to
4491         std::vector, update client code.
4492
4493 2006-01-30  Graham Percival  <gpermus@gmail.com>
4494
4495         * scm/document-translation.scm: clarify "this context is also
4496         known as".  Thanks, Werner!
4497
4498         * Documentation/user/putting.itely: small fixes from Don Blaheta.
4499
4500         * Documentation/user/invoking.itely: small fix from Don.
4501
4502 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4503
4504         * scm/lily.scm (define-scheme-options): rename option
4505         preview-include-book-title to book-title-preview
4506         (define-scheme-options): move force-eps-font-include (from paper
4507         block) to eps-font-include -d option.
4508
4509         * VERSION (PATCH_LEVEL): release 2.7.30
4510
4511         * input/bach-schenker.ly (staffPiano): new file.
4512
4513         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
4514
4515         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
4516         credits to Nicolas.
4517
4518         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
4519
4520         * ps/lilyponddefs.ps: remove start-system, stop-system,
4521         start-page fluff. This saves putting { } code on the stack, fixing
4522         stack overflows when including EPS files.
4523
4524 2006-01-29  Graham Percival  <gpermus@gmail.com>
4525
4526         * Documentation/user/putting.itely: minor fixes (comments on -devel).
4527
4528 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4529
4530         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
4531
4532 2006-01-28  Graham Percival  <gpermus@gmail.com>
4533
4534         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
4535
4536 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4537
4538         * input/mutopia/claop.py: Update.
4539
4540 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4541
4542         * input/regression/completion-heads.ly (texidoc): fix.
4543
4544         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
4545
4546         * lily/tie-formatting-problem.cc
4547         (set_ties_config_standard_directions): use abs iso fabs for ints.
4548
4549         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
4550
4551         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
4552         little less than noteheight, to prevent overlaps in chords.
4553
4554         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
4555         head, and fudge stem-attachment.
4556
4557         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
4558
4559         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
4560
4561 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
4562
4563         * lily/main.cc (main): Debugging aid: catch exceptions.
4564
4565         * flower/std-string.cc (to_string): Robustification.  Fixes midi
4566         output with std::string.
4567
4568 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4569
4570         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
4571
4572 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4573
4574         * Fix -DSTRING_UTILS_INLINED.
4575
4576 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4577
4578         * VERSION (PATCH_LEVEL): release 2.7.29
4579
4580         * lily/relocate.cc (setup_paths): mingw uses std string too.
4581
4582         * lily/*.cc: various fixes for substr(ARG).
4583
4584         * lily/sustain-pedal.cc (print): 
4585
4586         * flower/file-name.cc (slashify): use std strings.
4587
4588         * flower/string-convert.cc: remove publib.h
4589
4590         * scm/define-markup-commands.scm (verbatim-file): new markup
4591         command \verbatim-file
4592
4593         * Documentation/topdocs/NEWS.tely: fixup URLs
4594
4595         * input/regression/alignment-vertical-manual-setting.ly (Module):
4596         new file.
4597
4598         * lily/align-interface.cc (align_elements_to_extents): overwrite
4599         translations with numbers in alignment-offsets from left bound
4600
4601         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
4602         (page-translate-systems): new function: take into account Y-offset.
4603
4604         * Documentation/topdocs/NEWS.tely (Top): document new features.
4605
4606         * input/regression/page-layout-manual-position.ly (Module): new
4607         file.
4608
4609 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4610
4611         * flower/file-path.cc (path::parse_path): Oops.
4612
4613         * Finish std::string interface.  For now, use std:: marker
4614         throughout for easy s/r.
4615
4616 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4617
4618         * Documentation/user/putting.itely (Score is a single musical
4619         expression): typo.
4620         (Score is a single musical expression): more typos.
4621
4622         * scm/page.scm (annotate-space-left): thinko.
4623         (annotate-page): more thinkos.
4624
4625 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4626
4627         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
4628         for different \score blocks separately.
4629         (post-process-pages): put write-page-layout into paper block.
4630
4631         * lily/output-def.cc (get_parser): new file.
4632
4633         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
4634         file.
4635
4636         * lily/include/output-def.hh (class Output_def): add parser_ member.
4637
4638         * input/regression/page-layout-twopass.ly (Module): new file.
4639
4640         * scm/lily.scm: remove cpp hack.
4641
4642         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
4643
4644 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4645
4646         * GNUmakefile.in (c-clean): New target.
4647
4648         * flower/include/std-string.hh: String/std::string compatibility:
4649         Use NPOS for `not found' (iso -1), use ssize for length () and pos
4650         type.
4651
4652         * flower/rational.cc: 
4653         * flower/include/rational.hh: 
4654
4655         * flower/offset.cc: 
4656         * flower/include/offset.hh: 
4657
4658         * flower/interval.cc: 
4659         * flower/include/interval.hh: 
4660
4661         * flower/string-convert.cc: 
4662         * flower/include/string-convert.hh: Use std::string [interface].
4663         Update callers.
4664
4665 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
4666
4667         * Documentation/index.html.in: clean up.
4668
4669 2006-01-25  Graham Percival  <gpermus@gmail.com>
4670
4671         * Documentation/user/putting.itely: another new untested doc section.
4672
4673 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4674
4675         * scm/layout-page-layout.scm (write-page-breaks): write
4676         \spacingTweaks #ALIST. Handle grace timing.
4677
4678         * scm/: more imports.
4679
4680         * scm/page.scm (make-page): add footer/header.
4681         (annotate-space-left): revise: only take page argument.
4682         (layout->page-init): new function.
4683
4684         * scm/layout-page-layout.scm (write-page-breaks): preliminary
4685         version of the system/spacing/linebreak hack writing to the output
4686
4687         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
4688         ly:make-prob.
4689
4690         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
4691         ly:spanner-bound
4692
4693 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4694
4695         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
4696
4697         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
4698
4699         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
4700         handling to page.scm
4701
4702         * lily/prob-scheme.cc (LY_DEFINE): new file.
4703         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
4704
4705         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
4706         prob functions.
4707
4708         * lily/music.cc (derived_mark): derive Music from Prob.
4709
4710         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
4711
4712         * lily/prob.cc (Module): Implement Prob (Property Object), object
4713         with shared and r/w property alists.  
4714
4715         * lily/include/prob.hh (Module): new file. Declare Prob.
4716
4717         * flower/string.cc: remove is_empty().
4718
4719         * flower/include/string.hh (class String): remove String:: qualifier.
4720
4721         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
4722         substitute appropriate functions.
4723
4724         * flower/include/string.hh (class String): remove to_str0 and
4725         is_empty(). S&R everywhere.
4726
4727 2006-01-23  Graham Percival  <gpermus@gmail.com>
4728
4729         * Documentation/user/basic-notation.itely: add hairpin
4730         after-linebreak tweak to commonprop.
4731
4732         * Documentation/user/putting.itely: added two new sections.
4733
4734 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4735
4736         * flower/international.cc: 
4737         * flower/include/international.hh: 
4738
4739         * flower/getopt-long.cc: 
4740         * flower/include/getopt-long.hh: Use std::string [interface].
4741         Update callers.
4742
4743         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
4744
4745         * stepmake/stepmake/executable-rules.make: Add dependency on
4746         module libraries.
4747
4748 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
4749
4750         * flower/file-path.cc: 
4751         * flower/include/file-path.hh: Use std::string [interface].
4752         Update callers.
4753
4754         * flower/direction.cc: 
4755         * flower/axis.cc: Unused.  Remove.
4756
4757         * configure.in (--enable-std-string): New option.
4758
4759         * flower/std-string.cc: 
4760         * flower/include/std-string.hh: New file.
4761
4762         * flower/file-name.cc[STD_STRING]:
4763         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
4764
4765 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4766
4767         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
4768
4769         * scm/define-markup-commands.scm (with-dimensions):
4770         with-dimensions markup command.
4771
4772         * input/test/font-table.ly: use it.
4773
4774         * lily/open-type-font.cc (glyph_list): new function.
4775
4776         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
4777
4778         * lily/ttf.cc: remove ly:font-glyph-list scheme function
4779
4780 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4781
4782         * ly/music-functions-init.ly (parallelMusic): new music function
4783         for parallel music entry.
4784
4785         * scm/define-music-properties.scm (all-music-properties): new
4786         'void music property
4787
4788         * scm/music-functions.scm (ly:music-message): make public, to be
4789         used in music function definitions
4790
4791         * scm/lily-library.scm (collect-music-for-book): discard music
4792         when the 'void property is set.
4793
4794 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4795
4796         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
4797
4798         * mf/GNUmakefile: idem.
4799
4800         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
4801
4802         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
4803
4804         * Documentation/user/notation-appendices.itely (The Feta font):
4805         use it.
4806
4807         * input/test/font-table.ly: new file. Generate font table within lily.
4808
4809         * Documentation/user/notation-appendices.itely (The Feta font):
4810         use new font-table.ly file. 
4811
4812         * stepmake/stepmake/install-out-targets.make
4813         (local-install-outfiles): only create directory if
4814         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
4815
4816 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4817
4818         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
4819
4820         * VERSION (PACKAGE_NAME): release 2.7.28
4821
4822         * scm/framework-ps.scm (write-preamble): use it to pick exactly
4823         the right font from a Mac dfont.
4824         (write-preamble): don't forget directory, only look at files.
4825
4826         This fixes problems with TTF files in dfonts that don't match
4827         their PostScript names.
4828          
4829         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
4830         PS name from TTF font.
4831
4832         * input/regression/tie-manual.ly: document new feature.
4833
4834         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
4835
4836         * VERSION (MY_PATCH_LEVEL): bump to .28
4837
4838         * Documentation/user/basic-notation.itely (Ties): add tie examples
4839         refs.
4840
4841         * lily/tie-formatting-problem.cc (score_ties_configuration):
4842         symmetry penalties for outer ties.
4843
4844 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4845
4846         * lily/tie-formatting-problem.cc (generate_configuration) 
4847         (set_manual_tie_configuration): skip non-pair manual
4848         tie-configuration, so you can set individual ties as
4849
4850           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
4851
4852         * input/regression/tie-chord.ly: use generateTiePattern to
4853         simplify file.
4854
4855         * lily/tie-formatting-problem.cc (peak_around): new function.
4856         (score_configuration): use sliding criterion for staff line collisions. 
4857         (score_configuration): idem for dot collisions.
4858         (generate_configuration): use separate stem_gap for gap to stem.
4859
4860         * lily/include/tie-formatting-problem.hh (struct Tie_details):
4861         separate penalty factors for x and y distance.
4862         (struct Tie_details): separate penalties for tip and center line collisions.
4863
4864 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
4865
4866         * lily/tie-formatting-problem.cc (generate_configuration): make
4867         large ties avoid stafflines in the horizontal section.
4868         (score_configuration): use softcoded penalties
4869         (score_aptitude): idem.
4870
4871         * lily/tie-helper.cc (from_grob): softcode tie details
4872
4873         * lily/staff-symbol-referencer.cc (on_staff_line): new function
4874
4875         * lily/staff-symbol-referencer.cc (on_line): rename from
4876         on_staffline 
4877
4878 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4879
4880         * ly/music-functions-init.ly: remove duplicate tag.
4881
4882         * lily/include/*.hh: GCC 4.1 fixes.
4883
4884 006-01-16  Erlend Aasland  <erlenda@gmail.com>
4885
4886         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
4887
4888         * scm/define-music-types.scm: fix bug in desc. string
4889         for OverrideProperty
4890
4891 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
4892
4893         * scripts/lilypond-book.py: bugfix
4894
4895         * scm/define-music-types.scm: fix typos.
4896
4897 2006-01-14  Graham Percival  <gpermus@gmail.com>
4898
4899         * Documentation/user/ basic-notation.itely, global.itely,
4900         advanced-notation.itely, instrument-notation.itely: small
4901         additions (bugs and commonly tweaked properties).
4902
4903 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4904
4905         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
4906         detection of mingw build.
4907         (MINGW_BUILD): opps.
4908
4909 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4910
4911         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
4912         i686-mingw32.
4913
4914 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4915
4916         * scm/music-functions.scm (skip->rest): add skip->rest
4917
4918 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4919
4920         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
4921         explicitly.
4922
4923         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
4924         config dirs. Aids debugging. 
4925         (display_config): also display config files.
4926
4927 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4928
4929         * VERSION: release 2.7.27
4930
4931         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
4932         for determining bar size.
4933
4934         * lily/staff-symbol.cc (print): place lines at distance line-positions
4935
4936         * scm/define-grob-properties.scm (all-user-grob-properties): add
4937         line-positions.
4938
4939         * lily/staff-symbol.cc (height): new function.
4940
4941         * input/regression/staff-line-positions.ly:  new file.
4942
4943 2006-01-06  Graham Percival  <gpermus@gmail.com>
4944
4945         * input/test/add-staccato.ly: remove reference to old file.
4946
4947 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4948
4949         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
4950         lilypond binary too.
4951
4952 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4953
4954         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
4955
4956 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4957
4958         * scripts/midi2ly.py: Bugfix: Declare datadir.
4959
4960         * make/ly-rules.make:
4961         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
4962         that seems to be gone). Fixes make web.
4963
4964         * The grand 2005-2006 replace.
4965
4966         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
4967
4968 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4969
4970         * make/lilypond-vars.make: set LILYPOND_BINARY variable
4971         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
4972         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
4973         like -dgs-font-load.
4974
4975         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
4976         remove absolute path to lilypond binary.
4977         
4978 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
4979
4980         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
4981
4982 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4983
4984         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
4985
4986         * mf/GNUmakefile: remove broken dvips map symlink.
4987
4988 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4989
4990         * lily/main.cc: 
4991         * configure.in: Cosmetic fixes.
4992
4993 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
4994
4995         * Documentation/user/music-glossary.tely (Pitch names): Added
4996         Spanish pitch names and durations, thanks to Ernesto Gancedo
4997
4998 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4999
5000         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5001         init. Fixes verbose printing of .scm files.
5002
5003         * stepmake/aclocal.m4: add spaces before - options.
5004         
5005 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5006
5007         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5008         of path search in local block variable.
5009
5010 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5011
5012         * configure.in (NCSB_DIR): --enable-ncsb-dir
5013         (LINK_GXX_STATICALLY): denko.
5014
5015         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5016
5017         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5018         use locate to find c059033l.pfb. 
5019         
5020 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5021
5022         * lily/tie-formatting-problem.cc
5023         (problem::generate_base_chord_configuration): Use my_round (was
5024         round).
5025
5026         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5027         do not invoke mbrtowc.
5028
5029         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5030
5031 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5032
5033         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5034
5035 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5036
5037         * Documentation/user/invoking.itely (svg): revise.
5038
5039 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5040
5041         * lily/lexer.ll: use sourcefilename iso. renameinput.
5042
5043 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5044
5045         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5046         <PostScriptName>.ttf instead of c059XXXttf.
5047
5048         * lily/program-option.cc (LY_DEFINE): special support for
5049         --verbose, so it works before option init too.
5050  
5051         * mf/GNUmakefile (local-install): oops.
5052
5053         * lily/lyric-hyphen.cc (print): oops.
5054
5055         * buildscripts/pfx2ttf.fontforge: new file.
5056         
5057         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5058         ($(outdir)/%.ttf): new rule. 
5059
5060         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5061         to LyricHyphen.
5062
5063         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5064         font-size
5065
5066 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5067
5068         * VERSION: release 2.7.26
5069         
5070         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5071
5072 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5073
5074         * lily/font-config.cc (init_fontconfig): verbosity.
5075
5076         * THANKS: add Muziekacademie Lede. 
5077
5078         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5079         (print_score_setup): new function
5080         (convert): read part definition to output staves properly.
5081
5082         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5083         Music_xml notes.
5084
5085         * python/musicexp.py (Output_printer.__init__): use _ in data
5086         members.
5087         (Output_printer.unformatted_output): new function: no formatting,
5088         but count braces.
5089         (Duration.get_length): remove isinstance() checks for
5090         Output_printer everywhere.
5091
5092         * input/regression/lyrics-bar.ly (texidoc): add
5093         Separating_line_group_engraver.
5094
5095 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5096
5097         * lily/relocate.cc (framework_relocation): New function,
5098         factored from set_relocation ().
5099         (prefix_relocation): Rename from set_relocation ().
5100         (setup_paths): Use it.
5101
5102 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5103
5104         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5105         numbers. Patch by Erlend Aasland.
5106
5107 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5108
5109         * lily/font-config.cc (init_fontconfig): print warning if cache
5110         file is not existant.
5111
5112         * lily/main.cc: don't use #ifdef but #if
5113
5114 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5115
5116         * lily/grob-property.cc (internal_set_property): don't abort on
5117         calculation-in-progress.
5118
5119         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5120
5121         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5122         connect-to-neighbor property not connect-to-other
5123
5124         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5125         (LY_DEFINE): oops. don't forget protection.
5126
5127         * flower/parse-afm.cc (Module): strip AFM handling completely.
5128
5129         * lily/stencil-expression.cc: idem.
5130
5131         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5132
5133         * lily/function-documentation.cc (ly_add_function_documentation):
5134         use static member iso. Protected_scm
5135
5136         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5137
5138         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5139
5140 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5141
5142         * lily/relocate.cc (set_env_dir): New function.
5143         (set_relocation): Use it to fix setting PANGO_PREFIX.
5144
5145 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5146
5147         * input/regression/stem-direction-context.ly: remove rest.
5148
5149         * lily/melody-engraver.cc (process_music): restart for bar lines.
5150         (acknowledge_slur): restart for slurs.
5151
5152 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5153
5154         * Documentation/user/invoking.itely: describe how to view SVG 
5155         output using Inkscape which replace embedded fonts with OTF fonts.
5156
5157 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5158
5159         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5160
5161 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5162
5163         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5164         comment.
5165
5166 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5167
5168         * VERSION (PACKAGE_NAME): release 2.7.25
5169
5170         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5171
5172         * input/regression/stem-direction-context.ly: new file.
5173
5174         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5175
5176         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5177         on rest.
5178
5179         * ly/engraver-init.ly: add Melody_engraver
5180
5181         * lily/beam.cc (calc_direction): use default-direction
5182         iso. get_default_direction()
5183
5184         * scm/define-grob-properties.scm (all-user-grob-properties): add
5185         default-direction property.
5186
5187         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5188
5189         * lily/stem.cc (calc_default_direction): remove
5190         Stem::get_default_direction, use default-direction with callback
5191         instead.
5192
5193         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5194
5195         * lily/melody-engraver.cc: new file. Acknowledge stems for
5196         interpolated stem directions. 
5197
5198         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5199
5200         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5201
5202         * lily/slur-configuration.cc (fit_factor): more robust check for
5203         point in curve X-extent.
5204
5205         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5206         (outside_slur_callback): check for 'outside avoidance.
5207
5208         * lily/slur-configuration.cc (score_extra_encompass): don't use
5209         bound->column() == avoid->column() for checking extents, as this
5210         doesn't work for accidentals. 
5211
5212         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5213         DynamicText hardcoding.
5214
5215         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5216         crash if bound stem is NULL
5217
5218         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5219         pedals.
5220
5221 2005-12-22  Graham Percival  <gpermus@gmail.com>
5222
5223         * scm/define-markup-commands.scm: typo.  @code{\raise}
5224         => @code{\\raise}.
5225
5226         * darwin.patch: now used again, includes a
5227         required patch from fink.
5228
5229 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5230
5231         * po/TODO: mention gtranslator along with kbabel.
5232         * po/fi.po: update translations.
5233
5234 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5235
5236         * lily/relocate.cc (setup_paths): Bugfix.
5237
5238 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5239
5240         * lily/slur-configuration.cc (score_extra_encompass): don't use
5241         "avoid" choice for avoid-slur.
5242
5243         * stepmake/bin/install.py (dest): don't create existing dir.
5244
5245 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5246
5247         * stepmake/bin/install.py: Remove file before copying.
5248
5249         * config.make.in: 
5250         * stepmake/aclocal.m4: Do not substitute INSTALL.
5251
5252 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5253
5254         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5255         depend on link-tree.
5256
5257         * lily/relocate.cc (setup_paths): only check path for non-absolute
5258         dir without directory part.
5259
5260         * flower/file-name.cc (is_absolute):  new method.
5261         (is_absolute): check root_ too.
5262
5263 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5264
5265         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5266         relocation code.  Oops, don't comment out too much.
5267
5268         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5269         iso itself.
5270
5271         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5272         compile.
5273
5274 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5275
5276         * .cvsignore: Add install-sh.
5277
5278         * autogen.sh (srcdir): Typo.
5279
5280 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5281
5282         * autogen.sh (srcdir): urg. Touch install-sh.
5283
5284         * stepmake/bin/install-sh (Module): remove.
5285
5286         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5287
5288         * lily/include/relocate.hh: new file.
5289
5290         * lily/relocate.cc: new file. Contain relocation logic.
5291
5292         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5293         (main): read LILYPOND_VERBOSE as the first thing.
5294
5295         * stepmake/aclocal.m4: remove INSTALL variable.
5296
5297         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5298         separate target for making font symlinks.
5299         (documentation-dir): use $(if $(findstring )) for switching off
5300         Documentation.
5301
5302         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5303         something if DOCUMENTATION is no.
5304
5305 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5306
5307         * VERSION: release 2.7.24
5308
5309         * lily/script-column-engraver.cc (stop_translation_timestep):
5310         delay adding to script-column.
5311
5312         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5313
5314         * python/convertrules.py (conv): rule for number-visibility
5315
5316         * lily/slur-configuration.cc (score_extra_encompass): different
5317         distance measure for avoid and inside avoidance.
5318         (score_extra_encompass): use 1/(distance+eps) as penalty.
5319
5320         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5321         encompass objects for generating slur curves.
5322
5323         * lily/slur.cc: use details iso. slur-details property.
5324
5325         * input/regression/slur-tuplet.ly: new file.
5326
5327         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5328
5329         * flower/include/offset.hh (class Offset): new operator /=
5330
5331         * lily/tuplet-number.cc (print): new file, new interface.
5332
5333         * scm/define-grob-properties.scm (all-user-grob-properties):
5334         remove number-visibility property.
5335
5336         * lily/tuplet-bracket.cc (calc_control_points): new function
5337         (calc_connect_to_neighbors): new function.
5338         (print): remove text handling for tuplet numberdef.
5339
5340         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5341         TupletNumbers too. 
5342
5343         * lily/lily-guile.cc (robust_scm2booldrul): new function
5344
5345         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5346
5347         * lily/tuplet-bracket.cc (calc_position_and_height): use
5348         staff-padding to control whether tuplet brackets are over staves.
5349
5350         * lily/grob.cc (suicide): clear dim_caches_.
5351
5352         * lily/dimension-cache.cc (clear): new function.
5353
5354         * lily/grob.cc (extent): swap order of min-extent and extent
5355         calculations. This fixes hara kiri staves. 
5356
5357 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5358
5359         * lily/main.cc: Nitpick: relocation is not based on path, but on
5360         directory (location).
5361
5362 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5363
5364         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5365
5366         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5367
5368         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5369
5370         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5371
5372         * stepmake/stepmake/generic-vars.make (Module): idem.
5373
5374         * stepmake/stepmake/executable-targets.make (default): use it.
5375
5376         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5377
5378         * make/GNUmakefile: don't install make rules.
5379
5380         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5381         slashes.
5382         (prepend_env_path): more verbosity.
5383
5384 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5385
5386         * GNUmakefile.in: add dir argument for find command.
5387
5388         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5389         fixes weird line numbers for point & click.
5390
5391         * lily/source-file.cc (get_counts): init line/column/char counts.
5392
5393 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5394
5395         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5396
5397 2005-12-16  Graham Percival  <gpermus@gmail.com>
5398
5399         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5400         minor fixes from Fredric.  Thanks!
5401
5402 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5403
5404         * ly/music-functions-init.ly: add \bar and \clef music function 
5405
5406         * lily/lily-lexer.cc: idem.
5407
5408         * lily/parser.yy (FIXME): remove BAR and CLEF.
5409
5410 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5411
5412         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5413
5414         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5415         function arguments too
5416
5417         * lily/main.cc (set_relocation): new function.
5418
5419         * scripts/musicxml2ly.py (convert): add \version
5420
5421         * lily/tie.cc: remove get_default_attachments()
5422
5423         * VERSION (PACKAGE_NAME): release 2.7.23
5424         
5425         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5426         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5427
5428         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5429
5430         * lily/tie-formatting-problem.cc (score_ties): new function
5431         (get_variations): new function. Try flipping dirs for collisions.
5432         (generate_optimal_chord_configuration): new function. 1-opt search
5433         for better configuration.
5434
5435         * lily/tie-configuration.cc: new file.
5436
5437         * lily/tie.cc: junk Tie::get_configuration()
5438
5439         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5440         (score_ties_configuration): new function.
5441         (generate_ties_configuration): new function.
5442         (generate_base_chord_configuration): new function.
5443         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5444         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5445
5446         * input/regression/tie-dot.ly: new file.
5447
5448         * lily/tie-formatting-problem.cc (score_configuration): score
5449         tie/dot collisions.
5450
5451         * lily/tie-helper.cc (get_transformed_bezier): new function
5452
5453         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5454
5455         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5456         -undefined suppress iso. -framework Python 
5457
5458         * scm/define-grobs.scm (all-grob-descriptions): set
5459         springs-and-rods (thanks Joe Neeman!)
5460
5461 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5462
5463         * input/no-notation/display-lily-tests.ly (test): 
5464         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5465         changed from \tag #'(a b) to \tag #'a \tag #'b
5466
5467 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5468
5469         * Documentation/topdocs/NEWS.tely: strip out-www.
5470
5471         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5472
5473         * config.make.in (AR): add AR and RANLIB
5474
5475         * flower/libc-extension.cc: include cassert
5476
5477         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
5478         darwin check.
5479
5480 2005-12-11  Graham Percival  <gpermus@gmail.com>
5481
5482         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
5483
5484         * stepmake/stepmake/python-modules-vars.make: define
5485         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
5486
5487         * THANKS: added Johannes Schindelin.
5488
5489 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5490
5491         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
5492
5493         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5494         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
5495
5496         * lily/parser.yy: reorganize file layout.
5497
5498         * ly/music-functions-init.ly: add tweak music function.
5499
5500         * lily/grob-info.cc (ultimate_music_cause): new function:
5501         recursively lookup causes. 
5502
5503         * lily/parser.yy (chord_body_element): allow music functions for
5504         post-events, allow music functions for chord elements. 
5505  
5506         * lily/font-config-scheme.cc (display_fontset): add cast.
5507
5508         * python/convertrules.py (FatalConversionError.sub_syms): \tag
5509         #'(a b) -> \tag #'a \tag #'b rule.
5510
5511         * python/musicexp.py (Output_printer.dump_version): new function
5512
5513 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5514
5515         * lily/parser.yy (FIXME): remove \tag
5516         (FIXME): remove tag_music() function.
5517
5518         * lily/lily-lexer.cc: remove \tag
5519
5520         * ly/music-functions-init.ly: define music-function "tag"
5521
5522         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
5523
5524 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5525
5526         * VERSION (PATCH_LEVEL): release 2.7.22
5527
5528         * input/regression/lyric-hyphen-retain.ly: renew.
5529
5530         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
5531         grob
5532
5533         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
5534         iso. minimum-length property for rods.
5535
5536         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
5537         LyricSpace item to keep lyrics spaced apart.
5538
5539         * ly/engraver-init.ly: remove Separating_line_group_engraver
5540
5541         * Documentation/user/music-glossary.tely: do setfilename before
5542         music-glossary.
5543
5544 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
5545
5546         * Documentation/user/lilypond-book.itely: use `,´ after xref:
5547         See xref documentation, for example.
5548
5549 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5550
5551         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
5552         pending_skip iso. ly_voice[-1]
5553         (main): add if __main__ for debugging.
5554
5555         * python/musicxml.py (Accidental.__init__): new class.
5556
5557         * scripts/musicxml2ly.py (progress): new function
5558         (musicxml_key_to_lily): don't barf on modeless keys.
5559         (create_skip_music): new function.
5560         (musicxml_spanner_to_lily_event): new function. Handle beams too.
5561         (musicxml_note_to_lily_main_event): new function.
5562
5563         * python/musicexp.py (Music.__init__): add comment field.
5564         (NestedMusic.append): new routine.
5565         (SequentialMusic.print_ly): print comment.
5566         (ArpeggioEvent.ly_expression): new class
5567         (BeamEvent.ly_expression): new class
5568         (NoteEvent.__init__): support for cautionary/forced accs.
5569
5570         * lily/lookup.cc (slur): normal order for array loop.
5571
5572         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
5573         to 0.0.
5574
5575         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
5576         collapsed.
5577
5578 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
5579
5580         * scm/music-functions.scm: Make phrasing slurs follow voice direction
5581
5582         * scripts/lilypond-book.py: Introduce option
5583             --preserve-line-breaks, for usage with srcltx
5584
5585 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5586
5587         * scm/output-lib.scm (print-circled-text-callback): draw circle
5588         around text using make-circle-markup.
5589
5590         * Documentation/user/*: strip out-www from file names.
5591
5592 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
5593
5594         * Documentation/user/lilypond.tely (direntry): remove empty lines;
5595         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
5596
5597 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5598
5599         * Documentation/user/GNUmakefile: idem.
5600
5601         * Documentation/user/macros.itexi: strip out-www
5602
5603         * python/rational.py: python 2.3 compat.
5604
5605         * VERSION (PATCH_LEVEL): release 2.7.21
5606
5607         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
5608         option formatting, lilypond style.
5609
5610         * python/musicexp.py: grab from Ikebana: a library for composing
5611         ly music expressions. 
5612         (Output_printer): class for advanced .ly printing.
5613         (eg. tupletting) 
5614
5615         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
5616         convert to pythonesque structure.
5617
5618         * python/rational.py: PD rational number class.
5619
5620         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
5621
5622 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
5623
5624         * lily/part-combine-iterator.cc: Minor bugfix
5625         
5626         * THANKS: Update bughunters
5627
5628 2005-12-02  Werner Lemberg  <wl@gnu.org>
5629
5630         * mf/README: Document process for proper mf2pt1 conversion.
5631
5632         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
5633         overlapping.
5634
5635         * mf/feta-harmonica.mf: Removed.  Unused.
5636
5637 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5638
5639         * scripts/lilypond-book.py (do_file): fix thinkos.
5640
5641 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5642
5643         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
5644         ($(outdir)/parser.cc): 
5645         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
5646
5647 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
5648
5649         * ly/titling-init.ly (tagline): it should be a space between
5650         "Music engraving by LilyPond" and the version number.
5651
5652 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5653
5654         * VERSION (PACKAGE_NAME): release 2.7.20
5655
5656 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5657
5658         * scm/define-markup-commands.scm (pad-to-box): new markup command.
5659
5660         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
5661         1.0.
5662         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
5663
5664 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5665
5666         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
5667
5668         * kpath-guile/: remove directory
5669
5670         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
5671         file. Encapsulate kpathsea using commandline tools.
5672
5673         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
5674         kpathsea) module.
5675
5676 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
5677
5678         * Documentation/user/advanced-notation.itely (Setting automatic
5679         beam behavior): Correct a few typos. Thanks to David Bobroff.
5680
5681         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
5682         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
5683
5684 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5685
5686         * scripts/*.py: gmane address for bugs.
5687
5688 2005-11-28 Pal Benko <benkop@freestart.hu>
5689         
5690         * make/ly-rules.make: add -f switch to mv
5691
5692         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
5693
5694         * lily/bar-line.cc: interpret it
5695
5696 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5697
5698         * configure.in (--disable-documentation): New switch.
5699
5700         * GNUmakefile.in: Use it.
5701
5702         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
5703
5704 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5705
5706         * scripts/lilypond-book.py (do_file): search chunks for
5707         \\begin{document}
5708
5709         * GNUmakefile.in: add copy step in between so we can lose the
5710         out-www directories.
5711
5712 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5713
5714         * lily/pango-font.cc (pango_item_string_stencil): put
5715         geometry.width into glyph-string too.
5716
5717 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5718
5719         * scm/define-music-display-methods.scm (RevertProperty):
5720         (OverrideProperty): Use grob-property-path property, a list of
5721         symbols, instead of grob-property, which used to be a single
5722         symbol.
5723         (BassFigureEvent): a figure can be a plain number, not necessarily a
5724         markup.
5725
5726 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5727
5728         * VERSION: release 2.7.19
5729         
5730         * lily/figured-bass-engraver.cc (process_music): check
5731         figuredBassCenterContinuations first.
5732
5733         * scm/translation-functions.scm (format-bass-figure): make double
5734         sharp larger. 
5735
5736         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
5737         determine X-parent.
5738
5739         * lily/system-start-delimiter-engraver.cc: move from
5740         Nested_system_start_delimiter_engraver, rename
5741         Nested_system_start_delimiter_engraver ->
5742         System_start_delimiter_engraver.
5743
5744         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
5745         bracket type from hierarchy.
5746
5747 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5748
5749         * lily/rest.cc (y_offset_callback): read staff-position.
5750
5751         * scm/define-grob-properties.scm (all-user-grob-properties): don't
5752         mark after-line-breaking-callback as internal.
5753
5754         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
5755
5756 2005-11-25  Werner Lemberg  <wl@gnu.org>
5757
5758         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
5759
5760 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5761
5762         * stepmake/bin/add-html-footer.py (do_file): add google
5763
5764         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
5765         staff if first_start_ is true.
5766
5767 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5768
5769         * scripts/midi2ly.py (split_track): add __repr__ members.
5770         (track_first_item): only return Item if not None. This fixes a
5771         problem when dumping a track that starts with an empty channel.
5772
5773         * python/midi.c: doc module.
5774
5775 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
5776
5777         * Documentation/user/global.itely (Creating MIDI files): Fix
5778         compilation problem.
5779
5780 2005-11-22  Graham Percival  <gpermus@gmail.com>
5781
5782         * Documentation/user/basic-notation.itely: clarify dynamic
5783         padding text.
5784
5785         * Documentation/user/advanced-notation.itely: add unicode
5786         escape control example, whatever that is.  :)
5787
5788         * Documentation/user/global.itely: added "removing dynamics
5789         from MIDI" code.
5790
5791 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5792
5793         * VERSION (PATCH_LEVEL): release 2.7.18
5794
5795         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
5796         System_start_delimiter_engraver by
5797         Nested_system_start_delimiter_engraver.
5798
5799         * lily/nested-system-start-delimiter-engraver.cc (struct
5800         Bracket_nesting_node): new class.
5801         (struct Bracket_nesting_group): new class
5802         (struct Bracket_nesting_staff): new class.
5803         (process_music): create hierarchy of grobs. This allows separate
5804         tuning of different SSDs. 
5805
5806         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
5807         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
5808
5809 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5810
5811         * lily/side-position-interface.cc (aligned_side): multiply
5812         staff_radius by 2.
5813
5814         * lily/script-engraver.cc (make_script_from_event): allow setting
5815         values to '()
5816
5817 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5818
5819         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
5820
5821         * scm/define-grobs.scm (all-grob-descriptions): new grob
5822         NestedSystemStartDelimiter.
5823
5824         * input/regression/system-start-heavy-bar.ly: new file.
5825
5826         * lily/nested-system-start-delimiter-engraver.cc: new file.
5827
5828         * lily/nested-system-start-delimiter.cc: new file.
5829
5830         * input/regression/system-start-nesting.ly: new file.
5831
5832         * scm/define-grobs.scm (all-grob-descriptions): use X side
5833         positioning for positioning braces for nested contexts.
5834
5835         * lily/system-start-delimiter.cc (print): don't divide extent by
5836         staff_space.
5837         (print): use style iso. glyph.
5838         (staff_bracket): translate glyph inside routine already.
5839
5840 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
5841
5842         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
5843         names.
5844
5845 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5846
5847         * scm/define-context-properties.scm
5848         (all-user-translation-properties): rename figuredBassFormatter
5849         from newFiguredBassFormatter.
5850
5851         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
5852
5853         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
5854
5855         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
5856
5857         * lily/beam.cc (calc_beaming): new function.
5858         (calc_shorten): new function.
5859
5860         * THANKS: add Edward Neeman.
5861
5862         * input/regression/accidental-clef-change.ly: new file.
5863
5864         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
5865
5866         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
5867
5868         * lily/clef-engraver.cc (inspect_clef_properties): reset
5869         localKeySignature for clef changes.
5870
5871 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
5872
5873         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
5874         add dummy definition that works in Linux and add information in
5875         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
5876
5877         * Documentation/user/changing-defaults.itely (Modifying context
5878         plug-ins): Add index for \with.
5879
5880         * Documentation/user/music-glossary.tely (dal segno): Updated
5881         example to version >=2.6.
5882
5883 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
5884
5885         * Documentation/user/instrument-notation.itely (Printing chord
5886         names): Reorder \chordmode and \repeat in one example.
5887
5888 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5889
5890         * VERSION: release 2.7.17
5891         
5892         * Documentation/topdocs/NEWS.tely (Top): add note about
5893         refactoring.
5894
5895         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
5896         new function. Search region of 3 positions for best tie.
5897         (score_configuration): new function.
5898         (score_aptitude): new function.
5899         (generate_configuration): new function.
5900         (get_configuration): new function.
5901         (Tie_formatting_problem): new function
5902
5903         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
5904
5905         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
5906
5907         * THANKS: add Eduardo Vieira & Ralph Little
5908
5909         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
5910         narrower.
5911
5912         * lily/include/tie-formatting-problem.hh (class
5913         Tie_formatting_problem): add Tie_details to
5914         Tie_formatting_problem. Update calling conventions.
5915
5916         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
5917         config.make.
5918
5919         * Documentation/user/lilypond.tely: remove musedata2ly entry.
5920
5921 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
5922
5923         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
5924         scm/define-context-properties.scm: Maintenance bugfix: make
5925         ligature brackets work again by removing obsolete ligature
5926         primitive callback push/pop.
5927
5928         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
5929         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
5930         value.
5931
5932 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5933
5934         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
5935         used and do not call it a path.
5936         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
5937
5938 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5939
5940         * lily/include/tie-formatting-problem.hh (class
5941         Tie_formatting_problem): new file.
5942
5943         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
5944
5945         * Documentation/misc/ChangeLog-2.3:  new file.
5946
5947         * lily/audio-staff.cc (output): degarianize.
5948
5949 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5950
5951         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
5952         Unset PYTHONOPTIMIZE.  Fixes install if set.
5953
5954 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5955
5956         * python/convertrules.py (conv): add warning about drums. 
5957
5958         * make/stepmake.make: include toplevel-version.make after config.make.
5959
5960         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
5961         also allow python2.4
5962
5963         * config.make.in (configure-srcdir): remove GXX GCC vars.
5964
5965         * stepmake/aclocal.m4: don't do non-srcdir build with
5966         symlinks. Use inclusion, so the src directory name can be changed.
5967
5968 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5969
5970         * make/mutopia-vars.make:
5971         * make/ly-vars.make: Use src-wildcard iso wildcard for source
5972         files.
5973
5974 2005-11-13  Werner Lemberg  <wl@gnu.org>
5975
5976         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
5977         but the affected path.  This ensures that the (overlapping) outlines
5978         have the same direction, which is a necessary prerequisite for
5979         FontForge's algorithm to remove overlaps.
5980         Formatting.
5981
5982         * mf/feta-haak.mf: Formatting.
5983         (draw_bracket): Slightly modify outline to avoid an unnecessary
5984         corner.
5985         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
5986         them from the affected paths.
5987
5988 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5989
5990         * mf/README: remove xpm / accordion notes.
5991
5992         * lily/tie-column-format.cc (set_chord_outline): add dots into
5993         skyline extents. This fixes tie formatting if the left head has dots.
5994
5995         * lily/tie.cc (get_configuration): only shift tie by a whole staff
5996         space inside the staff.
5997         (get_configuration): shift another position if necessary in case
5998         of left head tie  
5999
6000 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6001
6002         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6003         buildscript-dir iso. $(depth)/buildscripts.
6004
6005         * tex/GNUmakefile (local-uninstall): remove
6006         music-drawing-routines.ps juggling.
6007
6008         * stepmake/stepmake/install-targets.make (local-install-files):
6009         prepend src-dir to install targets.
6010
6011         * lily/system-start-delimiter-engraver.cc
6012         (acknowledge_system_start_delimiter): use
6013         add_offset_callback(). This fixes translation of nested
6014         staffgroups.
6015
6016         * lily/grob-closure.cc (add_offset_callback): only encaps in
6017         simple_closure if it's a procedure.
6018         
6019         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6020         from bar-line.
6021
6022         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6023         remove-empty where pertinent.
6024
6025 2005-11-12  Graham Percival  <gpermus@gmail.com>
6026
6027         * Documentation/user/instrument-notation.itely: added
6028         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6029
6030 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6031
6032         * lily/GNUmakefile
6033         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6034         make picture in builddir, not srcdir.
6035
6036 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6037
6038         * VERSION: release 2.7.16
6039         
6040         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6041         shell arguments. 
6042
6043 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6044
6045         * Documentation/user/examples.itely (Piano templates): Minor
6046         modification to the Piano centered lyrics example.
6047
6048 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6049
6050         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6051         $BROWSER.
6052
6053         * Documentation/user/point-and-click.itely: simplify p&c
6054         instruction: don't configure firefox. Put lilypond-invoke-editor
6055         in front of the browser.
6056
6057         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6058         (run-browser): new function.
6059
6060         * lily/parser.yy (Lily_lexer): recognize Book
6061
6062         * lily/book.cc (clone): new function
6063
6064         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6065
6066 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6067
6068         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6069         Maintenance bugfix: reduce number of font related warnings by
6070         updating naming conventions for glyph-name.
6071
6072 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6073
6074         * scm/define-grobs.scm (all-grob-descriptions): add
6075         rhythmic-grob-interface to TabNoteHead.
6076
6077         * scm/layout-beam.scm (check-quant-callbacks): remove
6078         set_stem_lengths()
6079
6080 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6081
6082         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6083         alignment of centered divisiones.
6084
6085         * scm/scripts.scm (articulations): Maintenance bugfix:
6086         follow-into-staff -> quantize-position.
6087
6088         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6089         plica head in porrectus deminutus.
6090
6091 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6092
6093         * make/lilypond.fedora.spec.in (Group): add %clean section.
6094
6095         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6096         less then 1/5th of total length.  
6097         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6098
6099         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6100         events into EventChord. This fixes textspanners on mm rests. Fixes
6101         spanner-rest.ly
6102
6103         * lily/side-position-interface.cc (get_axis): read side-axis
6104         (set_axis): set side-axis.
6105
6106         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6107         properties everywhere.
6108
6109         * lily/spacing-spanner.cc (breakable_column_spacing): add
6110         average-spacing-wishes. Take maximum if not set.
6111         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6112
6113         * scm/define-grobs.scm (all-grob-descriptions): add
6114         average-spacing-wishes.
6115
6116         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6117         offset callbacks. This fixes alignment for Fingering objects.
6118
6119         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6120         space for key - timesig combination. 
6121
6122         * input/regression/script-stem-tremolo.ly (Module): new file.
6123
6124         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6125         to key sig.
6126
6127         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6128         Fixes: c-tremolo-script.ly.
6129         
6130         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6131
6132         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6133         
6134         * scm/define-grobs.scm (all-grob-descriptions): remove
6135         self-X-offset. Fixes alignment of octavate-8.
6136
6137         * scripts/lilypond-book.py (datadir): look in
6138         LILYPONDPREFIX/share/lilypond/current/
6139
6140         * GNUmakefile.in: symlink current to <VERSION>. 
6141
6142 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6143
6144         * lily/main.cc: eps listed as a backend.
6145
6146 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6147
6148         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6149
6150 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6151
6152         * lily/include/score.hh (class Score): remove texts_ member.
6153
6154         * lily/beam.cc (set_stem_lengths): force direction callback.
6155         (print): read quantized-positions, so we can force
6156         Beam::set_stem_lengths to occur.
6157         (rest_collision_callback): use common X parent. 
6158
6159 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6160
6161         * flower/file-path.cc (find): Bugfix: Return name of file found.
6162
6163         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6164         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6165         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6166
6167 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6168
6169         * flower/offset.cc: idem.
6170
6171         * mf/*.mf: update email address.
6172
6173         * lily/font-config-scheme.cc:  new file.
6174
6175         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6176
6177         * lily/*:  cs.uu.nl -> xs4all.nl
6178
6179         * VERSION (PATCH_LEVEL): release 2.7.15
6180
6181         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6182         spec files.
6183
6184         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6185
6186 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6187
6188         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6189
6190         * lily/staff-performer.cc (process_music): add audio
6191         elements. This makes MIDI instrument changes work once again.
6192
6193         * lily/main.cc (LY_DEFINE): add gmane address.
6194
6195         * lily/beam.cc: remove calc_positions()
6196
6197         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6198         original_ in private scope.
6199         (class Grob): drop pscore_ pointer, change to output_def pointer.
6200         (class Grob): cleanup class definition.
6201
6202         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6203
6204 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6205
6206         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6207         absolute.  Better diagnostics.
6208
6209         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6210         This makes lilypond run from the build directory using argv0
6211         relocation (without any --prefix or LILYPONDPREFIX setting).
6212
6213 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6214
6215         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6216
6217         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6218         with simple-closure.
6219
6220         * lily/self-aligment-interface.cc (set_align_self): new function
6221         (set_center_parent): new function.
6222
6223         * lily/side-position-interface.cc (set_axis): new function.
6224
6225         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6226         generic code. 
6227
6228         * scm/define-grob-properties.scm (all-user-grob-properties):
6229         remove [XY]-offset-callbacks add [YX]-offset
6230         
6231 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6232
6233         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6234         entry for time signatures after breathing signs. Bug report by
6235         Scott Russell.
6236
6237 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6238
6239         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6240         not absolute, make it absolute using PATH.
6241
6242 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6243
6244         * python/midi.c (initmidi): Fix type for mingw.
6245
6246 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6247
6248         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6249
6250         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6251         cross compiling.
6252
6253         * stepmake/aclocal.m4: Support python cross compiling.
6254
6255         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6256         Add mingw section.
6257
6258 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6259
6260         * scm/output-lib.scm (chain-grob-member-functions): replace
6261         chained-callback.cc
6262
6263         * lily/chained-callback.cc (Module): remove file.
6264
6265         * lily/rest-collision.cc (force_shift_callback_rest): change to
6266         chained callback.
6267
6268         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6269
6270         * lily/grob.cc (y_parent_positioning): remove axis argument from
6271         parent_positioning callbacks.
6272         (Grob): junk init code
6273         (get_offset): use generic property callbacks for
6274         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6275         (axis_parent_positioning): new function
6276         (axis_offset_symbol): new function
6277         (chain_offset_callback): new function
6278         (add_offset_callback): new function
6279
6280         * lily/beam.cc (rest_collision_callback): change signature; this
6281         is now a chained callback.
6282
6283         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6284         callback administration.
6285
6286         * lily/simple-closure.cc: new file. Smob type that allows "grob
6287         member functions",
6288
6289             (ly:make-simple-closure FUNC A B)
6290
6291         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6292         in various ways.
6293
6294         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6295         callbacks.
6296
6297         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6298
6299         * lily/rest.cc (polyphonic_offset_callback): remove.
6300
6301         * lily/script-engraver.cc (try_music): remove bool* argument.
6302
6303         * scm/script.scm (default-script-alist): set quantize-position
6304         appropriately.
6305
6306         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6307
6308         * lily/side-position-interface.cc (aligned_side): move staff
6309         position quantization from
6310         Side_position_interface::quantised_position().
6311         (quantised_position): remove
6312         
6313 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6314
6315         * input/regression/beam-quant-standard.ly: reindent, set
6316         debug-beam-quanting to #t.
6317
6318         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6319         10000 if this is a "hard" concave beam.
6320
6321         * lily/beam.cc (calc_least_squares_positions): change from
6322         calc_least_squares_dy
6323         (set_stem_lengths): this is now a chained callback.
6324
6325         * lily/context-property.cc (execute_general_pushpop_property):
6326         bugfix override with procedure should have effect.
6327
6328         * scm/define-grob-properties.scm (all-internal-grob-properties):
6329         remove position-callbacks.
6330
6331         * scm/define-grobs.scm (all-grob-descriptions): use
6332         ly:make-callback-chain for positions property.
6333
6334         * scm/layout-beam.scm (check-quant-callbacks): return list of
6335         chained callbacks.
6336
6337         * scm/lily.scm (type-p-name-alist): add callback-chain
6338
6339         * lily/lily-guile.cc (type_check_assignment): type check failure
6340         is warning not message.
6341
6342         * lily/grob-property.cc (try_callback): walk callback chain if
6343         appropriate.
6344
6345         * lily/chained-callback.cc: new file. new smob type.
6346
6347         * lily/lily-guile.cc (procedure_arity): new function.
6348
6349 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6350
6351         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6352
6353 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6354  
6355         * Documentation/user/instrument-notation.itely (Figured bass):
6356         describe new features
6357
6358 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6359
6360         * lily/beam.cc (calc_least_squares_dy): use property callback.
6361
6362         * lily/beam-concave.cc (calc_concaveness): use property callback.
6363
6364         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6365
6366 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6367
6368         * HACKING: Update.
6369
6370 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6371
6372         * scm/layout-page-layout.scm (page-headfoot): annotate
6373         pagetopspace too.
6374
6375         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6376
6377         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6378         doesn't take y-space.
6379
6380         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6381
6382 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6383
6384         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6385         src-wildcard, remove $(wildcard).
6386
6387         * po/GNUmakefile (PO_FILES): 
6388         * ps/GNUmakefile (PS_FILES): 
6389         * tex/GNUmakefile (TEX_FILES): 
6390         * cygwin/GNUmakefile (POSTINSTALLS):
6391         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6392         some wildcard calls.
6393
6394 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6395
6396         * THANKS: add Thomas Bushnell.
6397
6398 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6399
6400         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6401         (lilypond-main): Redirect to gui-main if 'gui is set.
6402
6403         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6404         for alternative installations kludging s/share/lib/g
6405         LILYPONDPREFIX. 
6406
6407         * SConstruct (libdir_package_version): Define.
6408
6409         * python/SConscript: 
6410         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6411         module in libdir.  
6412
6413 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6414
6415         * lily/main.cc: clarify --safe.
6416
6417 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6418
6419         * VERSION: release 2.7.14
6420         
6421         * Documentation/user/*.itely: remove minimumVerticalExtent.
6422
6423         * scm/define-grobs.scm (all-grob-descriptions): remove
6424         RemoveEmptyVerticalGroup
6425
6426         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6427
6428         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6429         compile on MOSX
6430
6431         * python/convertrules.py (conv): add rules.
6432
6433         * lily/grob.cc: remove is_empty()
6434
6435         * lily/grob-property.cc: remove add_to_list_property().
6436
6437         * scripts/convert-ly.py (datadir): add prefix switching hack to
6438         .py too.
6439
6440         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6441         space-function tweak.
6442
6443         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6444
6445         * scm/define-grob-properties.scm (all-user-grob-properties):
6446         remove callback property.
6447
6448         * lily/include/grob.hh (class Grob): remove property_callbacks_
6449         member. Properties of procedure type are assumed to be callbacks.
6450
6451         * lily/ligature-engraver.cc (override_stencil_callback):
6452         rewrite. Use noteHeadLigaturePrimitive as source.
6453
6454         * scm/define-grob-properties.scm (all-internal-grob-properties):
6455         remove ligature-primitive-callback
6456
6457         * lily/include/dimension-cache.hh (class Dimension_cache): make
6458         class, with Grob as friend.
6459
6460         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6461         has_extent_callback()
6462
6463         * scm/translation-functions.scm (format-new-bass-figure): read
6464         figuredBassPlusDirection
6465
6466         * scm/define-context-properties.scm
6467         (all-user-translation-properties): add figuredBassPlusDirection.
6468
6469         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6470
6471         * lily/align-interface.cc (set_ordered): new function.
6472
6473         * lily/grob.cc (flush_extent_cache): rewrite.
6474
6475         * lily/dimension-cache.cc (Dimension_cache): cache extent as
6476         Interval pointer directly.
6477
6478         * lily/main.cc (setup_paths): insert extra / .
6479         (setup_paths): junk cff entry.
6480
6481         * lily/font-config.cc (init_fontconfig): only add type1 / otf
6482         directories.
6483
6484         * lily/axis-group-engraver.cc (finalize): remove
6485         extraVerticalExtent, minimumVerticalExtent verticalExtent.
6486
6487         * lily/grob.cc (Grob): don't set extent from ctor.
6488         (extent): use property callbacks. 
6489
6490         * lily/axis-group-interface.cc: remove set_axes() function.
6491
6492         * lily/grob-property.cc (del_property): new function.
6493
6494 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6495
6496         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
6497         
6498 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6499
6500         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
6501
6502 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6503
6504         * mf/SConscript: Updates.
6505
6506         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
6507
6508         * stepmake/stepmake/*:
6509         * */GNUmakefile:
6510         * config.make.in:
6511         * GNUmakefile.in:
6512         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
6513         from any directory in build-dir.  Cleanups.
6514
6515         * make/srcdir.make.in: Remove.
6516
6517         * lily/main.cc (setup_paths): Fix and document build-dir hack.
6518
6519         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
6520         main).
6521
6522         * lily/SConscript: Remove ttftools.
6523
6524         * SConstruct: Resurrect.
6525
6526 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6527
6528         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
6529         Y coordinate. 
6530
6531         * lily/paper-book.cc (add_score_title): put Paper_score title into
6532         systems_ list.
6533
6534         * scm/translation-functions.scm (format-new-bass-figure): also
6535         allow plus in combination with _
6536
6537 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6538
6539         * VERSION: 2.7.13 released.
6540
6541         * lily/note-collision.cc (check_meshing_chords): don't wipe
6542         stencil, merely set transparent.
6543
6544         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
6545         (Top): document #'callbacks.
6546         (Top): document nested \override.
6547
6548         * input/regression/figured-bass.ly: update for slash and pluses.
6549
6550         * input/regression/figured-bass-continuation-forbid.ly (Module):
6551         new file.
6552
6553         * scm/translation-functions.scm (format-new-bass-figure): use
6554         slashed-digit if diminished is set.
6555         (format-new-bass-figure): add + if 'augmented is set.
6556
6557         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
6558
6559         * input/test/piano-staff-distance.ly: remove file.
6560
6561         * Documentation/user/advanced-notation.itely (Formatting cue
6562         notes): use length-fraction for making stems/beams smaller.
6563
6564         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
6565         modifications.
6566
6567         * lily/new-figured-bass-engraver.cc: new property
6568         centerFiguredBassContinuations
6569
6570         * Documentation/user/changing-defaults.itely (Difficult tweaks):
6571         use callbacks.
6572
6573         * lily/context-property.cc (execute_general_pushpop_property):
6574         robustness checks.
6575
6576         * input/regression/override-nest.ly: new file.
6577
6578         * python/convertrules.py (FatalConversionError.subber): conversion
6579         rule for #'callbacks
6580
6581         * input/regression/override-nest.ly: new function.
6582
6583         * lily/parser.yy (music_property_def): allow \override #'a #'b =
6584         #c too. 
6585
6586         * lily/context-property.cc (lookup_nested_property): new function.
6587         (evict_from_alist): new function.
6588         (general_pushpop_property): new function.
6589         (execute_general_pushpop_property): rewrite. Support nested
6590         properties too.
6591
6592 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6593
6594         * lily/beam.cc: use length-fraction too.
6595
6596         * scm/define-grob-properties.scm (all-user-grob-properties):
6597         remove property flag-width-function
6598         (all-user-grob-properties): remove space-function.
6599
6600         * scm/layout-beam.scm: remove flag-width-function.
6601
6602         * lily/beam.cc: remove flag-width-function
6603
6604         * scm/layout-beam.scm: remove beam dir functions.
6605
6606         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
6607
6608         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
6609         for easier grace tweaks.
6610
6611         * lily/beam.cc: remove dir-function.
6612
6613         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
6614
6615         * lily/grob.cc: remove spacing-procedure.
6616
6617         * lily/note-head.cc (calc_stem_attachment): new function.
6618         (internal_print): use callback to get glyph-name.
6619
6620         * lily/grob-property.cc (get_interfaces): new function.
6621
6622         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
6623
6624         * lily/stem.cc (calc_stem_end_position): new function.
6625         (calc_length): new function.
6626         document details for stem.
6627         remove Stem::get_direction()
6628
6629         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
6630
6631         * lily/grob-property.cc (set_callback): new function.
6632
6633         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
6634
6635         * lily/item-scheme.cc: new file.
6636
6637         * lily/bar-line.cc (before_line_breaking): remove function.
6638         remove bar-size-procedure, break-glyph-function
6639
6640         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
6641
6642         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
6643
6644         * lily/system-start-delimiter.cc (print): suicide from
6645         here. Remove after_line_breaking_callback.
6646
6647         * lily/script-interface.cc (calc_direction): use callback for direction.
6648
6649         * lily/side-position-interface.cc (aligned_side): don't use
6650         Side_position_interface::get_direction directly. Use callback. 
6651
6652         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
6653         calculate stencil.
6654         (get_print_stencil): rename from get_stencil: create stencil with
6655         transparency, color and cause. 
6656
6657         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
6658
6659         * python/convertrules.py (conv): insert temporary warning rule.
6660
6661         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
6662
6663         * lily/grob-property.cc (try_callback): remove marker if applicable.
6664
6665         * lily/grob.cc: elucidate doc about after/before-line-breaking
6666
6667         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
6668
6669         * lily/stem.cc (height): idem.
6670
6671         * lily/stem-tremolo.cc: idem.
6672
6673         * lily/slur.cc (height): don't use get_uncached_stencil()
6674
6675         * lily/rest.cc (y_offset_callback): use offset callback
6676         iso. after-line-breaking callback.
6677
6678         * lily/grob.cc: change after/before-line-breaking-callback to
6679         after/before-line-breaking dummy properties.
6680
6681         * lily/include/grob.hh: remove Grob_status.
6682
6683         * scm/define-context-properties.scm
6684         (all-user-translation-properties): remove verticalAlignmentChildCallback
6685
6686         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
6687         (calc_direction): use callback
6688         (calc_positions): use callback.
6689
6690         * lily/tie.cc (calc_direction): use callback. Only call parent
6691         positioning for more than one tie.
6692
6693         * lily/tie-column.cc (calc_positioning_done): use callback
6694
6695         * lily/slur-scoring.cc (calc_control_points): use callback
6696
6697         * lily/slur.cc (calc_direction): use callback.
6698
6699         * lily/note-collision.cc (force_shift_callback): remove.
6700
6701         * lily/dot-column.cc (force_shift_callback): remove. Use
6702         other_axis_parent_positioning.
6703
6704         * lily/grob.cc (other_axis_parent_positioning): new function.
6705         (same_axis_parent_positioning): new function
6706
6707         * lily/align-interface.cc (alignment_callback): remove function.
6708
6709         * lily/note-collision.cc (calc_positioning_done): use callback.
6710
6711         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
6712         (calc_direction): idem.
6713         remove print function.
6714
6715         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
6716
6717         * lily/dot-column.cc (calc_positioning_done): use callback.
6718
6719         * lily/break-align-interface.cc (calc_positioning_done): use callback.
6720
6721         * lily/beam.cc (calc_direction): use pseudo-property for beam
6722         direction callback.
6723         (calc_positions): use callback 
6724
6725         * lily/align-interface.cc (calc_positioning_done): use
6726         callback. Fold fixed  distance and normal alignment in one function.
6727
6728         * lily/stem.cc (calc_stem_end_position): use callback.
6729         (calc_positioning_done): idem.
6730         (calc_direction): idem.
6731         (calc_stem_end_position): idem
6732         (calc_stem_info): idem.
6733
6734         * lily/grob-property.cc (get_property_data): new function: 
6735         (try_callback): new function.
6736
6737         * scm/define-grob-properties.scm (all-user-grob-properties): doc
6738         callbacks property.
6739
6740         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
6741
6742 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6743
6744         * lily/tie.cc (get_position): robustness fix. Don't crash if a
6745         tie
6746         has no heads.
6747         
6748         * lily/include/*.hh (Module): compile fixes.
6749
6750 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
6751
6752         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
6753         as an argument for char-syntax: use (char-syntax (or nil 0)) 
6754         instead of (char-syntax nil), thanks to Milan Zamazal.
6755
6756 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6757
6758         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
6759         dist.
6760
6761         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
6762         themselves.
6763
6764 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6765
6766         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
6767         add class_name() method.
6768
6769         * lily/music-scheme.cc: remove ly:music-name.
6770
6771 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6772
6773         * cygwin/postinstall-lilypond.sh: Remove cruft.
6774
6775         * cygwin/postremove-lilypond.sh: Remove.
6776
6777         * cygwin/GNUmakefile (default): Remove postremove rules.
6778
6779 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6780
6781         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
6782         even header too.
6783         
6784         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
6785         MacOS 9 users.
6786
6787         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
6788         consider break index for broken spanner.
6789
6790         * scm/define-markup-commands.scm (wordwrap-string): remove \r
6791         characters from string before splitting.
6792
6793 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6794
6795         * scm/framework-ps.scm (output-preview-framework): use
6796         is-book-title to determine whether to chop off the booktitle.
6797
6798         * lily/paper-book.cc (systems): init from book-title-properties
6799         (add_score_title): init score-title-properties.
6800
6801         * ly/paper-defaults.ly: add {score,book}-title-properties.
6802
6803         * scm/document-backend.scm (lookup-interface): error message if
6804         using unknown interface.
6805
6806         * lily/volta-bracket.cc (after_line_breaking): new function. Set
6807         edge-height.
6808
6809         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
6810         make_bracket.
6811         (make_bracket): new function.
6812
6813         * scm/lily.scm (define-scheme-options): add paper-size option.
6814
6815         * ly/declarations-init.ly (laissezVibrer): get paper size from
6816         -dpaper-size
6817
6818         * scm/translation-functions.scm: use \fontsize for changing the
6819         fontsize.
6820
6821         * scm/define-grobs.scm (all-grob-descriptions): set
6822         between-length-limit to 1.0
6823
6824         * lily/tie-helper.cc: add between_length_limit_ detail property.
6825
6826         * mf/feta-bolletjes.mf: typos.
6827
6828         * lily/note-head.cc (internal_print): don't shadow idx
6829         parameter. This fixes wrong attachment for do shape heads.
6830
6831 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6832
6833         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
6834
6835         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
6836
6837         * scm/layout-slur.scm: rename from slur.scm
6838
6839         * scm/layout-page-layout.scm: rename from page-layout.scm
6840
6841         * scm/layout-beam.scm: rename from beam.scm
6842
6843         * scm/define-grob-interfaces.scm (bass-figure-interface): add
6844         bass-figure-interface
6845
6846         * lily/new-figured-bass-engraver.cc (process_music): add
6847         implicitBassFigures property.
6848         
6849         * scm/define-markup-commands.scm (pad-x): new markup.
6850
6851         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
6852         minimumVerticalExtent on FiguredBass context.
6853
6854         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
6855         case the continuation crosses a line break.
6856
6857 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6858
6859         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
6860         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
6861         absolute file name bug.  
6862
6863 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6864
6865         * VERSION (PACKAGE_NAME): release 2.7.12
6866
6867         * input/regression/figured-bass-continuation-center.ly: new file.
6868
6869         * input/regression/beam-outside-beamlets.ly: new file.
6870
6871         * lily/beam.cc (set_beaming): don't clip edges.
6872         (connect_beams): don't clip edges.
6873
6874         * lily/beaming-info.cc (clip_edges): new function.
6875
6876         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
6877
6878         * Documentation/user/instrument-notation.itely (Figured bass):
6879         demonstrate extenders, update seealso links.
6880
6881         * scm/titling.scm (marked-up-headfoot): change tagline
6882         handling. tagline = ##f will blank the tagline as well.
6883
6884 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6885
6886         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
6887
6888         * lily/new-figured-bass-engraver.cc (struct
6889         New_figured_bass_engraver): add new_music_found_ member.
6890
6891         * lily/lilypond-version.cc (Lilypond_version): deal with
6892         incorrectly formatted version strings. 
6893
6894         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
6895         New_figured_bass_engraver by default.
6896
6897         * lily/ttf.cc (print_trailer): only define glyph names when
6898         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
6899
6900 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6901
6902         * lily/horizontal-bracket.cc (make_bracket): new function.
6903
6904         * scm/define-grobs.scm (all-grob-descriptions): new grobs
6905         NewBassFigure, BassFigureBracket, BassFigureContinuation,
6906         BassFigureLine, BassFigureAlignment
6907
6908         * lily/new-figured-bass-engraver.cc (process_music): new file.
6909
6910         * lily/figured-bass-continuation.cc: new file.
6911
6912         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
6913         new file.
6914
6915 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
6916
6917         * scripts/lilypond-book.py: Bug fix, put the quote around the
6918         actual score for LaTeX documents.
6919
6920         * scm/define-grobs.scm (all-grob-descriptions): Change
6921         collapse-height of the SystemStartBracket grob to 5.0, 
6922         so the bracket disappears for single stave score lines (similarly
6923         to SystemStartBraces). 
6924
6925         * Documentation/user/advanced-notation.itely (Polymetric
6926         notation): Clarify the use of compressMusic.
6927
6928         * Documentation/user/basic-notation.itely (Grace notes): Clarify
6929         that the grace spacer note in other staves need the same duration
6930         and document the stroke-style property.
6931
6932 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6933
6934         * Documentation/user/global.itely (Vertical spacing): document
6935         alignment-extra-space and fixed-alignment-extra-space.
6936
6937         * Documentation/topdocs/NEWS.tely (Top): add entry.
6938
6939         * input/regression/alignment-vertical-spacing.ly: new file.
6940
6941         * python/convertrules.py (conv): add rule.
6942
6943         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
6944
6945         * lily/align-interface.cc (stretch_after_break): new
6946         function. Read fixed-alignment-extra-space property.
6947         (align_elements_to_extents): read alignment-extra-space property.
6948
6949         * lily/lily-guile.cc (robust_scm2dir): new function.
6950
6951         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
6952         (annotate-space-left): new function. Annotate space left on page. 
6953         (annotate-y-interval): new function.
6954         (paper-system-annotate-last): new function. Annotate bottom-space.
6955
6956         * mf/feta-beugel.mf (y): 
6957
6958 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6959
6960         * VERSION (PACKAGE_NAME):  release 2.7.11
6961
6962         * scm/lily-library.scm (interval-translate): new function
6963         (interval-center): new function. 
6964
6965         * scm/page-layout.scm (paper-system-annotate): new function. Add
6966         arrows for dimensions.
6967  
6968         * scm/stencil.scm (dimension-arrows): new function.
6969
6970         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
6971
6972         * input/regression/page-spacing.ly: add annotatespacing
6973
6974         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
6975         (LY_DEFINE): new function ly:paper-system-set-property!
6976
6977         * Documentation/user/global.itely (Paper size): explain how to add
6978         sizes.
6979
6980         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
6981         correspond to GS's definition.
6982
6983         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
6984         tuplet bracket.
6985         (print): only connect to next bracket if the next one is alive.
6986         (print): set padding to 0.0 if the bound is a breakable
6987         column. This makes tupletFullLength brackets reach up to the staff
6988         line if it doesn't connect to the next line.
6989
6990 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6991
6992         * lily/bar-number-engraver.cc: correct docs.
6993
6994         * scm/output-lib.scm (first-bar-number-invisible): rename from
6995         default-bar-number-visibility
6996
6997 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6998
6999         * scm/define-music-properties.scm (all-music-properties): remove
7000         predicate property.
7001
7002 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7003
7004         * po/fi.po: refresh.
7005
7006 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7007
7008         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7009         superfluous s1.
7010         (disappear): bugfix.
7011
7012         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7013
7014         * lily/include/paper-system.hh (class Paper_system): remove
7015         staff_extents_ member.
7016
7017         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7018
7019         * lily/include/paper-system.hh (class Paper_system): remove
7020         number_ variable. Remove is_title_. Remove break_before_penalty_
7021
7022         * lily/paper-book.cc (systems): use 'number property iso. number_
7023         member.
7024
7025         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7026         remove ly:paper-system-number.
7027
7028         * scm/lily-library.scm (paper-system-title?): new function.
7029
7030         * lily/book.cc (process): bugfix: flip ?: cases. 
7031
7032         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7033         add outputProperty.
7034
7035         * ly/music-functions-init.ly: add outputProperty music function.
7036
7037         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7038
7039         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7040         and next-padding.
7041         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7042
7043         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7044
7045         * lily/paper-system.cc (internal_get_property): new function.
7046
7047         * Documentation/user/global.itely (Vertical spacing): refer to
7048         page-spacing.ly
7049
7050         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7051         pagetopspace
7052
7053         * input/regression/page-spacing.ly: new file.
7054
7055         * input/regression/page-top-space.ly: new file.
7056
7057         * lily/spacing-spanner.cc: cmath -> math.h
7058
7059         * lily/paper-system.cc (read_left_bound): new function. Read
7060         line-break-system-details from left bound to determine extents.
7061  
7062         * Documentation/user/programming-interface.itely (Using LilyPond
7063         syntax inside Scheme): change applyxxx -> applyXxx.
7064
7065         * ly/music-functions-init.ly: add outputProperty music function.
7066
7067         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7068
7069         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7070
7071         * python/convertrules.py (conv): rule
7072
7073         * ly/music-functions-init.ly: applyxxx -> applyXxx
7074
7075         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7076         TabVoice to Voice.
7077
7078 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7079
7080         * flower/include/real.hh: include <math.h> iso. <cmath>
7081
7082         * flower/include/offset.hh: include real.hh
7083
7084 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7085
7086         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7087         fix example, now that 'interfaces is no longer directly available.
7088
7089         * lily/book.cc (process): don't crash if paper == NULL.
7090
7091         * po/fr.po: update.
7092
7093 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7094
7095         * scm/define-music-types.scm (music-descriptions): set length and
7096         start-callback for QuoteMusic
7097
7098 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7099
7100         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7101         arguments. Fixes compilation error with gcc 3.3.
7102
7103 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7104
7105         * VERSION: release 2.7.10
7106
7107         * stepmake/stepmake/python-module-rules.make
7108         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7109
7110         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7111         real.hh
7112
7113 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7114
7115         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7116         -Werror. Otherwise GCC barfs over various optimizations.
7117
7118         * scm/define-grob-properties.scm (all-internal-grob-properties):
7119         add note-head property
7120
7121         * Documentation/user/instrument-notation.itely (Laissez vibrer
7122         ties): new node.
7123
7124         * input/regression/laissez-vibrer-ties.ly: new file.
7125
7126         * lily/laissez-vibrer-engraver.cc: new file.    
7127
7128         * lily/include/tie-column-format.hh: new file.
7129
7130         * lily/tie-column-format.cc: new file. 
7131
7132         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7133
7134         * lily/laissez-vibrer-tie.cc: new file.
7135
7136         * lily/include/laissez-vibrer-tie.hh: new file.
7137
7138         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7139
7140         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7141
7142         * scm/define-grobs.scm (all-grob-descriptions): add
7143         LaissezVibrerTie, LaissezVibrerTieColumn
7144
7145         * lily/tie-column.cc (set_tie_config_directions): new function
7146         (final_shape_adjustment): new function.
7147         (shift_small_ties): new function.
7148
7149         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7150
7151         * lily/include/tie.hh (struct Tie_details): add x_gap_
7152         (struct Tie_configuration): add head_position_
7153
7154         * lily/tie-column.cc (set_chord_outline): new function.
7155
7156         * mf/cmr.enc.in:  remove file.
7157
7158 2005-09-11  Graham Percival  <gpermus@gmail.com>
7159
7160         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7161
7162 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7163
7164         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7165         reduce aliasing effects.
7166
7167         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7168         box in skyline.
7169
7170 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7171
7172         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7173
7174         * flower/include/real.hh: std::fabs too.
7175
7176 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7177
7178         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7179
7180         * lily, flower: Include C++ iso C headers.  Import namespace std
7181         throughout.
7182
7183         * lily/side-position-interface.cc: 
7184         * lily/scm-hash.cc: 
7185         * lily/note-head.cc: 
7186         * lily/include/includable-lexer.hh: 
7187         * flower/include/string-data.icc: Remove using std::*.
7188
7189         * lily, flower: Include C++ iso C headers.  Import namespace std
7190         throughout.
7191
7192         * lily/side-position-interface.cc: 
7193         * lily/scm-hash.cc: 
7194         * lily/note-head.cc: 
7195         * lily/include/includable-lexer.hh: 
7196         * flower/include/string-data.icc: Remove using std::*.
7197
7198         * Documentation/user/instrument-notation.itely (Entering lyrics):
7199         Multiple latin-1->utf-8 conversion fix.
7200
7201         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7202
7203 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7204
7205         * lily/tie.cc (get_configuration): also avoid dots for non-space
7206         situations.
7207
7208 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7209
7210         * Documentation/user/instrument-notation.itely: Bugfix.
7211
7212 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7213
7214         * tex/GNUmakefile: don't install texinfo.tex
7215
7216         * tex/ : cleanup: remove unused files.
7217
7218         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7219
7220         * flower/include/real.hh: using std::{isnan,isinf}
7221         
7222         * VERSION (PATCH_LEVEL): release 2.7.9
7223
7224 2005-09-05  Graham Percival  <gpermus@gmail.com>
7225
7226         * Documentation/user/ instrument-notation.itely,
7227         advanced-notation.itely: minor tweaks.
7228
7229         * input/test/script-chart.ly: add item padding.
7230
7231 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7232
7233         * flower/offset.cc: use math.h iso. <cmath>
7234
7235         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7236         of IE users.
7237
7238         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7239         (widen-left-stencil-edges): new function. Fix alignment problems
7240         with LaTeX includegraphics.
7241
7242         * lily/text-interface.cc (interpret_markup): use abort().
7243
7244 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7245
7246         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7247
7248         * lily/tie.cc (get_configuration): update bezier shape as we
7249         change Y positions.
7250         (get_configuration): don't move large ties if we're outside of the
7251         staff.
7252
7253 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7254
7255         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7256         
7257 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7258
7259         * .cvsignore: Add auto-generated configure files and then some.
7260
7261 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7262
7263         * scm/define-grobs.scm (DynamicLineSpanner): Add
7264         X-extent-callback.  Fixes hairpin-slur collision.
7265
7266 2005-08-31  Graham Percival  <gpermus@gmail.com>
7267
7268         * Documentation/user/advanced-notation.itely,
7269         basic-notation.itely: minor changes.
7270
7271 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7272
7273         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7274         \linebreak between each .eps file if \betweenLilyPondSystem is
7275         undefined. 
7276
7277         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7278         music): Document the \linebreak
7279
7280         * Documentation/user/lilypond-book.itely,
7281         input/tutorial/lbook-latex-test.tex,
7282         Documentation/user/examples.itely: Remove \usepackage{graphics}
7283
7284 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7285
7286         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7287
7288         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7289         compat bugfix.
7290
7291         * scripts/lilypond-book.py (PREAMBLE_LY): define
7292         inside-lilypond-book
7293         (modify_preamble): new function. Insert \RequirePackage{graphics}
7294         when no {graphics found in preamble.  
7295
7296 2005-08030  Graham Percival  <gpermus@gmail.com>
7297
7298         * Documentation/user/basic-notation.itely, global.itely,
7299         tutorial.itely: misc small changes.
7300
7301 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7302
7303         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7304         VERSION.
7305
7306 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7307
7308         * lily/tie-column.cc (new_directions): put Tie down on center
7309         staff line. 
7310
7311         * lily/script-interface.cc (before_line_breaking): use
7312         Grob::programming_error
7313
7314         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7315
7316         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7317         of splitext.
7318
7319 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7320
7321         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7322
7323 2005-08-29  Werner Lemberg  <wl@gnu.org>
7324
7325         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7326         the `*.scale.pfa' files to avoid warnings.
7327
7328 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7329
7330         * lily/tempo-performer.cc (process_music): idem.
7331
7332         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7333
7334 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7335
7336         * Documentation/user/advanced-notation.itely (Text markup): not a
7337         fragment.
7338
7339         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7340
7341         * lily/staff-performer.cc (initialize): add tempo/name to
7342         audio_staff_
7343
7344
7345 2005-08-26  Graham Percival  <gpermus@gmail.com>
7346
7347         * Documentation/user/advanced.itely: add text-only example.
7348
7349         * Documentation/user/invoking.itely: add index entries for
7350         convert-ly.
7351
7352         * Documentation/user/ tutorial.itely, basic-notation.itely:
7353         small fixes suggested by Steve D.  Thanks!
7354
7355 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7356
7357         * input/regression/markup-bidi-pango.ly: new file.
7358
7359         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7360         standard. Remove #ifdef. Remove memleak.
7361         (text_stencil): use text_dir to decide how to composite items.
7362         (text_stencil): determine uniform text direction for the entire
7363         string.
7364
7365         * scripts/lilypond-book.py (output_name): remove
7366         latex_filter_cmd. Non-portable to non-Unix systems. 
7367         (get_latex_textwidth): use File.write and os.unlink() instead.
7368
7369         * THANKS: add Vicente & Trevor.
7370
7371         * lily/grob.cc (discretionary_processing): look up origin for
7372         programming_error too. 
7373
7374         * input/regression/tie-broken.ly: new file.
7375
7376         * lily/tie-column.cc (set_chord_outlines): set outline for line
7377         break case too.
7378         
7379 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7380
7381         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7382         unscaled transform, just translate stencils.
7383
7384         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7385         MIDI.
7386
7387         * scm/define-markup-commands.scm (wordwrap-string): use
7388         text-direction
7389         (wordwrap-stencils): idem.
7390         (line): idem.
7391         (fill-line): idem.
7392         (wordwrap-stencils): translate last line to right for
7393         text-direction = LEFT.
7394
7395         * scm/define-grob-properties.scm (all-user-grob-properties): add
7396         text-direction.
7397
7398 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7399
7400         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7401         when copying a Lily_parser object.
7402
7403 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7404
7405         * scm/define-markup-commands.scm (null): add null markup.
7406
7407 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7408
7409         * lily/item.cc: Add documentation of center-invisible
7410
7411 2005-08-24  Graham Percival  <gpermus@gmail.com>
7412
7413         * Documentation/user/advanced-notation.itely: add info about
7414         raising text.
7415
7416         * Documentation/user/programming-interface.itely: fix example
7417         involving raised text.
7418
7419 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7420
7421         * lily/beam.cc (print): fix X start/end points of isolated
7422         beamlets.
7423
7424         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7425
7426         * lily/multi-measure-rest.cc (set_text_rods): new function.
7427
7428         * lily/vertical-align-engraver.cc (process_music): call
7429         Align_interface::set_axis(). This forces #'elements to be ordered,
7430         preventing random vertical reordering of staves.
7431
7432         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7433         add avoid-slur property. 
7434
7435         * Documentation/user/basic-notation.itely (Measure repeats): add
7436         countPercentRepeats example.
7437
7438         * Documentation/user/advanced-notation.itely (Other text markup
7439         issues): remove remark about normal-font.  We have \normal-text
7440
7441         * input/regression/tie-chord.ly: add note about remaining bugs.
7442
7443         * lily/tie.cc (print): try Tie_column::set_directions () if
7444         control-points not yet defined.
7445
7446 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7447
7448         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7449         extent. This fixes braces falling out of the EPS bbox.
7450
7451         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7452         exactly to bbox.
7453
7454 2005-08-23  Graham Percival  <gpermus@gmail.com>
7455
7456         * {various} : change #up->#UP and #down->#DOWN.
7457
7458         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7459
7460         * Documentation/user/advanced-notation.itely: clarify
7461         what objects handles text on a multimeasure rest.
7462
7463 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7464
7465         * VERSION (PATCH_LEVEL): release 2.7.7
7466
7467 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7468
7469         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7470
7471         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7472
7473         * input/regression/*.ly: formatting clean-up. Default layout
7474         before music expression.
7475
7476         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
7477         romanze28-2 example.
7478
7479         * scm/ps-to-png.scm: remove dir-re function.
7480         (make-ps-images): generate page names, instead of globbing them.
7481         This brings down LilyPond memory usage for make web by a factor
7482         10. 
7483
7484         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
7485         don't use glob. With 3000 files, globbing
7486         Documentation/user/out-www/ can take too much time. 
7487         
7488         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
7489
7490         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
7491
7492         * input/regression/tie-manual.ly: new file
7493
7494         * input/regression/tie-chord.ly: update.
7495
7496         * flower/include/interval.hh (struct Interval_t): 
7497
7498         * lily/tie.cc (distance): new function 
7499         (height): new function.
7500         (init): new function
7501         (Tie_details): new struct.
7502
7503         * lily/skyline.cc (skyline_height): new function.
7504
7505         * lily/tie-column.cc (set_chord_outlines): new function.
7506         (new_directions): read tie-configuration
7507
7508         * lily/skyline.cc: fix ASCII art.
7509         
7510 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
7511
7512         * python/convertrules.py (string_or_scheme): Fix spelling error
7513
7514 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7515         
7516         * lily/tie-column.cc (set_directions): set directions only once.
7517         (add_configuration): new function.
7518
7519         * lily/tie.cc (set_control_points): new function
7520
7521         * lily/tie-column.cc (new_directions): new function.
7522
7523         * ly/music-functions-init.ly: set 'pitch property
7524         iso. trill-pitch. This makes \relative work with \pitchedTrill
7525
7526         * lily/tie.cc (get_configuration): new function. Don't generate
7527         control points, rather, generate configuration.
7528         remove head-pair property.
7529
7530         * lily/include/tie.hh (struct Tie_configuration): new struct.
7531
7532 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
7533
7534         * Documentation/topdocs/NEWS.tely: clarify.
7535
7536 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7537
7538         * lily/tie.cc: remove minimum-length
7539
7540         * scm/define-grob-properties.scm (all-user-grob-properties):
7541         remove staffline-clearance, y-offset 
7542
7543         * input/regression/tie-dots.ly (Module): remove.
7544
7545         * lily/tie.cc (get_control_points): rewrite. Put short ties in
7546         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
7547
7548         * input/regression/tie-single.ly: new file.
7549
7550 2005-08-21  Graham Percival  <gpermus@gmail.com>
7551
7552         * ly/bagpipe.ly: fix compile problem.
7553
7554 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7555
7556         * lily/midi-item.cc (name): new method.
7557
7558         * lily/staff-performer.cc (acknowledge_audio_element): use
7559         signature of baseclass.
7560
7561         * lily/engraver-group.cc (do_announces): move recursion call out
7562         of while loop. 
7563
7564         * lily/drum-note-performer.cc (class Drum_note_performer): use
7565         process_music everywhere.
7566
7567         * ly/performer-init.ly: add default children everywhere.
7568
7569         * lily/paper-book.cc (output): call paper-book-write-midis
7570         directly: always write MIDI, even if no \layout {} block. 
7571
7572 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7573
7574         * VERSION (PACKAGE_NAME): release 2.7.6
7575
7576         * lily/percent-repeat-engraver.cc (try_music): don't print warning
7577         about not being able to handle repeat.
7578
7579 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7580
7581         * Documentation/user/examples.itely (Piano templates):
7582         * lily/include/performer-group.hh: Remove last traces of
7583         Performer_group_performer.  Fixes make web.
7584
7585 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7586
7587         * Documentation/user/examples.itely (Piano templates): change
7588         Engraver_group_engraver -> Engraver_group
7589
7590         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
7591         scm_stand_in_procs is not weak_any.
7592
7593         * lily/volta-bracket.cc (print): don't use strcmp().
7594
7595         * lily/volta-engraver.cc (process_music): use
7596         Text_interface::is_markup() for setting the 'text property of the
7597         volta bracket.
7598
7599         * input/mutopia/claop.py (accents): update syntax to 2.6
7600
7601         * scm/define-context-properties.scm
7602         (all-user-translation-properties): add countPercentRepeats.
7603
7604         * Documentation/user/basic-notation.itely (Measure repeats): add
7605         isolated percent example.
7606
7607 2005-08-18  Graham Percival  <gpermus@gmail.com>
7608
7609         * input/ {various}: change direction #1, #-1 to
7610         #up/#down or \fooUp, \fooDown.
7611
7612         * Documentation/user/music-glossary.tely: #-1 to #down.
7613
7614         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
7615         to #up, #-1 to #down.
7616
7617 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7618
7619         * lily/include/engraver-group.hh: rename.
7620
7621         * lily/include/performer-group.hh: rename.
7622
7623 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
7624
7625         * input/test/script-abbreviations.ly: Removed some old LaTeX
7626         left overs.
7627
7628 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7629
7630         * python/convertrules.py (conv): inside-slur -> avoid-slur.
7631         Remove functions.  Remove if 1: constructs, reindent.
7632
7633         * scripts/convert-ly.py (add_version): Add functions from
7634         convertrules.py
7635
7636         * scm/script.scm (default-script-alist):
7637         s/priority/script-priority.  Fixes script stacking.  Backportme.
7638         (Fermata): Very low priority.
7639
7640 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7641
7642         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
7643
7644         * input/regression/slur-script.ly: remove padding tweaks. Add
7645         comment strings.
7646
7647         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
7648         time sigs and related stuff.
7649
7650         * scm/define-grob-properties.scm (all-user-grob-properties): add
7651         @code{} tags to property description.
7652
7653         * lily/include/line-group-group-engraver.hh (Module): remove file.
7654
7655         * python/convertrules.py (conv): add rule for
7656         Engraver_group_engraver -> Engraver_group.
7657
7658         * lily/include/performer-group-performer.hh: analogous.
7659
7660         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
7661
7662         * lily/context-def.cc (instantiate): check for
7663         Engraver_group_engraver and Performer_group_performer not
7664         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
7665  
7666 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7667
7668         * input/les-nereides.ly: Remove three fingering tweaks, update
7669         remaining one.
7670
7671         * input/regression/slur-script-inside.ly: Update, fix doc.
7672
7673         * scm/script.scm: Update to avoid-slur.
7674
7675         * scm/define-grob-properties.scm (avoid-slur): New property.
7676
7677         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
7678         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
7679         outside_slur_callback if avoid-slur != #'inside.
7680
7681         * scm/define-grobs.scm (Fingering, Textscript): No
7682         inside-slur/outside-slur preference.
7683         (DynamicLineSpanner): Always outside slur.
7684
7685         * input/regression/slur-script.ly: More tests.
7686
7687 2005-08-17  Graham Percival  <gpermus@gmail.com>
7688
7689         * Documentation/user/lilypond-book: fix notime entry.
7690
7691         * Documentation/user/advanced-notation.itely: add info on
7692         getting an I rehearsal mark.
7693
7694         * Documentation/user/putting.itely: reinstate "I", re-enforce
7695         the fact that \override numbers are the result of
7696         experimentation and personal taste.
7697
7698         * Documentation/user/invoking.itely: update convert-ly bugs.
7699
7700 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7701
7702         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
7703         to #t.
7704
7705         * lily/timing-translator.cc (initialize): don't initialize timing.
7706
7707         * input/regression/stem-spacing.ly (Module): remove file.
7708
7709         * input/regression/spacing-stick-out.ly: specify Score context for
7710         \override
7711
7712         * input/regression/clefs.ly: remove spurious {}s 
7713
7714 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
7715
7716         * Documentation/topdocs/NEWS.tely,
7717         input/regression/repeat-percent-count.ly: clarify a bit.
7718
7719 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7720
7721         * input/no-notation/display-lily-tests.ly: delete
7722         display-lily-init call.
7723
7724         * ly/music-functions-init.ly (displayLilyMusic): move
7725         display-lily-init call at top level, so that the user should not
7726         have to call it.
7727
7728         * scm/define-music-display-methods.scm (note-name->lily-string):
7729         retrieve note names directly from pitchnames using new function `rassoc'.
7730         (display-lily-init): note names list construction removed.
7731
7732 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7733
7734         * THANKS: spello.
7735
7736         * lily/lily-parser.cc (get_header): copy module, instead of
7737         returning it.
7738
7739         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
7740         counters.
7741
7742         * Documentation/user/basic-notation.itely (Measure repeats): add
7743         links to Counter grobs.
7744
7745         * scm/define-grobs.scm (all-grob-descriptions): add
7746         DoublePercentRepeatCounter
7747         (all-grob-descriptions): add PercentRepeatCounter
7748
7749         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
7750         also create counter grobs.
7751
7752         * lily/separation-item.cc (extremal_break_aligned_grob): don't
7753         return grob without space-alist.
7754
7755         * input/proportional.ly: tune staff-padding.
7756
7757         * input/regression/repeat-percent-count.ly: new file. 
7758
7759 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7760
7761         * input/no-notation/display-lily-tests.ly: moved from
7762         input/regression/ to input/no-notation. Be sure to call
7763         `display-lily-init' before trying to use the display function.
7764
7765 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
7766
7767         * scripts/lilypond-book.py (option_definitions): Don't localize
7768         the empty string. Fixes bug when --psfonts was used with
7769         non-English locale.
7770
7771 2005-08-15  Graham Percival  <gpermus@gmail.com>
7772
7773         * lily/tuplet-bracket.cc: simple build fix.
7774
7775         * Documentation/user/putting.itely: use "we" instead of "I".
7776
7777         * Documentation/user/basic-notation.itely: cautionary accidentals
7778         work with naturals, too.
7779
7780 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7781
7782         * lily/tuplet-bracket.cc (calc_position_and_height): add
7783         staff-padding support.
7784
7785         * input/proportional.ly: set staff-padding.
7786         
7787         * VERSION (PATCH_LEVEL): release 2.7.5
7788
7789         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
7790         fixes. Remove tweaks.
7791
7792         * input/regression/tuplet-slope.ly: add a test case.
7793
7794         * lily/tuplet-bracket.cc (calc_position_and_height): revert
7795         erroneous fix. Add spanner bounds to offset array with relative X
7796         positions.
7797
7798         * ly/engraver-init.ly: add Rest_engraver only once.
7799
7800         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
7801         (*parser*) lookup if (*parser*) != #f.
7802
7803 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
7804
7805         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
7806         Cut-and paste update.
7807
7808         * input/regression/slur-script.ly: Add example of reverting
7809         inside-slur for fingering.
7810
7811         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
7812         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
7813
7814         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
7815         outside_slur_callback if inside-slur == #f (as opposed to unset).
7816
7817 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7818
7819         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
7820         encoding files are already removed.
7821
7822 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
7823
7824         * Documentation/user/advanced-notation.itely (Instrument names):
7825         Document a workaround for instrument names that collide with
7826         system start braces/brackets.
7827
7828 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7829
7830         * lily/rest-collision.cc (do_shift): spello.
7831
7832         * input/proportional.ly: use #'used property. Set break-overshoot
7833         property.
7834
7835         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
7836
7837         * lily/paper-column.cc: add #'used property
7838
7839         * lily/mark-engraver.cc (stop_translation_timestep): set grob
7840         array for staves found.
7841
7842         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
7843         array for stavesFound.
7844
7845         * lily/staff-spacing.cc (next_note_correction): add fixed and
7846         space to calling convention. This fixes spacing of accidentals
7847         after barlines.
7848
7849         * input/regression/spacing-accidental-stretch.ly: add barline -
7850         accidental case.
7851
7852         * scm/framework-ps.scm (page-header): add version number to
7853         creator
7854         (eps-header): idem.
7855
7856         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
7857         
7858 2005-08-13  Graham Percival  <gpermus@gmail.com>
7859
7860         * Documentation/user/global.itely: add "fit as much as
7861         possible onto this page" example (Vertical spacing).
7862
7863 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7864
7865         * *: Nitpick run.
7866
7867         * buildscripts/fixcc.py: Fixes.
7868
7869 2005-08-12  Graham Percival  <gpermus@gmail.com>
7870
7871         * Documentation/user/advanced-notation.itely: add markup
7872         example to Text spanners.
7873
7874 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
7875
7876         * Documentation/user/basic-notation.itely (Ties): Add example of
7877         tying a tremolo to a chord. Thanks to Steve Doonan. 
7878
7879         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
7880         properties and move tieMelismaBusy to the list of written
7881         properties. 
7882
7883 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
7884
7885         * po/TODO: suggest to use a dedicated tool like kbabel.
7886
7887         * po/fi.po: update using kbabel.
7888
7889 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7890
7891         * *: Remove obsolete files.  Nitpick run.
7892
7893         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
7894
7895 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7896
7897         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
7898         too.
7899
7900         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
7901
7902         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
7903         whitespace as symbol separator.
7904
7905         * lily/side-position-interface.cc: Add slur-padding.
7906
7907         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
7908         quite a large fix, and it never worked in a stable release; so not
7909         really a regression.
7910
7911         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
7912         Update cut and paste code from Slur_engraver.
7913
7914         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7915         Add.
7916
7917         * scm/define-grobs.scm (DynamicLineSpanner): Add
7918         dynamic-line-spanner-interface.
7919         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
7920
7921 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7922
7923         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
7924         to_boolean () so that non-set 'inside-slur means false.
7925
7926         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
7927         slur has control-points.  Skip script without direction.  Always
7928         do_shift if script inside slur, even if slur not contained in
7929         script y-extent.  Increment k in loop.
7930
7931 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
7932
7933         * scm/define-markup-commands.scm: Improved regexp to search for
7934         EPS bounding boxes and corrected call to ly:warning.
7935
7936 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7937
7938         * Documentation/user/programming-interface.itely (Displaying music
7939         expressions): doc for \displayLilyMusic. Also some precisions in
7940         "Markup construction in Scheme"
7941
7942 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
7943
7944         * scm/define-markup-commands.scm (normal-text): Added 2 new
7945         markup commands, \normal-text and \medium (the latter thanks to
7946         Bruce Fairchild). 
7947
7948 2005-08-08  Graham Percival  <gpermus@gmail.com>
7949
7950         * Documentation/user/programming-interface.itely: fix @{ @}.
7951
7952         * scm/define-markup-commands.scm: add linewidth info to
7953         \justify and \wordwrap, add "upright is the opposite of italic".
7954
7955         * Documentation/user/advanced-notation.itely: shaped->shape,
7956         add (cons (markup "foo")) type of example to text markup,
7957         reword multi-measure rests section.
7958
7959         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
7960         comment.  No actual code was touched.
7961
7962         * Documentation/user/invoking.itely: add more info about
7963         \include.  Thanks, Bruce!
7964
7965         * THANKS: add Bruce Fairchild, alphabetise.
7966
7967         * Documentation/user/global.itely: document \score{\header{}}
7968         behavior.
7969
7970         * Documentation/user/basic-notation.itely: reword multi-measure
7971         rest discussion in Rests.
7972
7973 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
7974
7975         * Documentation/user/programming-interface.itely (Markup
7976         construction in Scheme): Corrected example and tried to clarify
7977         the implicit \line in the table.
7978
7979 2005-08-07  Graham Percival  <gpermus@gmail.com>
7980
7981         * Documentation/user/instrument-notation.itely: moved
7982         some bagpipe info back into the bagpipe section.  Somehow
7983         it ended up in the "other vocal issues" section?!  :o_O
7984
7985 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7986
7987         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
7988         directories, not paths).
7989
7990 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7991
7992         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
7993         plain emmentaler/aybabtu.  Backportme.
7994
7995         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
7996         missing dir correction.
7997
7998 2005-08-05  Graham Percival  <gperlist@shaw.ca>
7999
8000         * scm/define-markup-commands: fix reversed justify/wordwrap
8001         doc strings.
8002
8003 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8004
8005         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8006         lily/gregorian-ligature-engaver.cc,
8007         lily/include/ligature-engraver.hh,
8008         lily/include/coherent-ligature-engraver.hh,
8009         lily/include/gregorian-ligature-engraver.hh: make these classes
8010         truely abstract.  This should fix some internal oddities such as
8011         duplicate as well as dead translator/property declarations, and
8012         also some dead code.
8013
8014         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8015         bugfix: avoid message "junking empty ligature" on ligature
8016         brackets by collecting dummy grobs.
8017
8018 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8019
8020         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8021
8022         * input/proportional.ly (staffKind): bugfix.
8023         (staffKind): updates by Trevor Baca.
8024
8025         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8026         default layout. 
8027
8028         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8029         pair.
8030
8031         * lily/beam.cc (rest_collision_callback): call position_beam() if
8032         necessary.
8033
8034         * VERSION: release 2.7.4
8035
8036         * input/regression/spacing-uniform-stretching.ly: new file.
8037
8038         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8039
8040         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8041         contributor.
8042
8043         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8044
8045         * input/proportional.ly: new file.
8046
8047         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8048         columns is empty
8049
8050         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8051         bounds to currentCommandColumn for the last step.
8052         (start_translation_timestep): if tupletFullLength is set, set
8053         bound to Paper Column
8054
8055         * input/regression/tuplet-full-length.ly (indent): new file.
8056
8057         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8058         clique of loose columns, eg. a set of grace notes in strict
8059         notespacing.
8060
8061         * input/regression/spacing-strict-spacing-grace.ly: new file.
8062
8063         * lily/key-signature-interface.cc: change property name to
8064         alteration-alist
8065
8066         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8067         keyAccidentalOrder
8068
8069         * python/convertrules.py (conv): keyAccidentalOrder ->
8070         keyAlterationOrder
8071
8072         * lily/key-engraver.cc (create_key): always print a cancellation
8073         for going to C-major/A-minor, regardless of printKeyCancellation.
8074         (create_key): remove typecheck for visibility. This fixes key
8075         signature not being printed.
8076
8077         * lily/spacing-determine-loose-columns.cc: new file.
8078
8079         * input/regression/spacing-strict-notespacing.ly: new file.
8080
8081         * lily/spacing-spanner.cc (generate_springs): rename from
8082         do_measure. 
8083         (generate_pair_spacing): new function.
8084         (init, generate_pair_spacing): set between-cols for floating
8085         nonmusical columns.
8086
8087         * lily/spaceable-grob.cc (get_spring): new function. 
8088
8089         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8090         relative to the right edge of the prefatory matter.
8091
8092         * lily/beam.cc (print): read break-overshoot to determine where to
8093         stop/start broken beams.
8094
8095         * input/regression/spanner-break-overshoot.ly: new file.
8096
8097 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8098
8099         * ly/bagpipe.ly: updated.
8100
8101         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8102
8103 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8104
8105         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8106         support: now (de)crescs avoid slurs as well.
8107
8108         * Documentation/user/instrument-notation.itely (Bagpipe example):
8109         comment out non-functioning bagpipe example.
8110         (Bagpipe definitions): idem.
8111
8112         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8113         (Top): add proportionalNotationDuration example.
8114
8115         * input/regression/spacing-proportional.ly: new file.
8116
8117         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8118         synched to a beam.
8119
8120         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8121         fixes beams with a single stem (eg. beams across linebreaks.)
8122
8123         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8124
8125         * flower/rational.cc (operator +): prevent overflow. This fixes
8126         heavily nested tuplets.
8127
8128         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8129         have to protect even those unlikely to be corrupted data members.  
8130
8131 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8132
8133         * ly/bagpipe.ly: new file.
8134
8135         * THANKS: added Sven Axelsson.
8136
8137 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8138
8139         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8140         copy proportionalNotationDuration into currentMusicalColumn if
8141         set.
8142
8143         * lily/spacing-spanner.cc (musical_column_spacing): if
8144         uniform-stretching set, fixed space is 0.0
8145
8146         * input/regression/spacing-multi-tuplet.ly: show
8147         uniform-stretching property.
8148
8149         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8150
8151         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8152         (struct Spacing_options): new struct.
8153
8154         * lily/spacing-basic.cc: new file.
8155
8156         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8157         delta_t doesn't have to be smaller than shortest_playing_len
8158
8159 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8160
8161         * input/regression/markup-arrows.ly:  new file.
8162
8163         * lily/tuplet-bracket.cc: document new behavior.
8164
8165         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8166         with line breaks.
8167
8168         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8169
8170         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8171         default 
8172
8173         * lily/tuplet-bracket.cc: add edge-text property.
8174         add break-overshoot.
8175         (print): read break-overshoot.
8176         (print): read edge-text, add stencils.
8177
8178         * mf/feta-arrow.mf: new file.
8179
8180         * mf/feta-generic.mf: add feta-arrow.
8181
8182 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8183
8184         * Documentation/user/lilypond-book.itely (An example of a
8185         musicological document): Added flag -o to dvips for people who use
8186         the default setting in teTeX where output is sent to the printer. 
8187
8188         * Documentation/user/global.itely (Vertical spacing): Added
8189         reference to the Axis_group_engraver which documents the *Extent
8190         properties.
8191
8192 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8193
8194         * Documentation/user/basic-notation.itely (Tuplets): add note
8195         about nested tuplets. Remove BUG. 
8196
8197         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8198
8199         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8200         (print): manually call print() for subtuplets.
8201         (calc_position_and_height): add subtuplets to the
8202         support. Vertically shift outer tuplet 
8203
8204         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8205         remove-first for Lyrics, ChordNames and FiguredBass
8206
8207         * scm/define-grob-properties.scm (all-internal-grob-properties):
8208         use ly:grob-array? iso. grob-list?
8209         (all-internal-grob-properties): add tuplets grob-array.
8210
8211         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8212         new function
8213
8214 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8215
8216         * input/test/time-signature-staff.ly: new file.
8217
8218         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8219         spurious #<Music FingerEvent> errors. Backportme.
8220
8221 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8222
8223         * Documentation/user/programming-interface.itely (Markup
8224         construction in Scheme): Corrected markup syntax in the
8225         translation table.
8226
8227 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8228
8229         * Documentation/user/instrument-notation.itely: small update
8230         to bagpipe notation docs; thanks Sven!
8231
8232         * Documentation/user/basic-notation.itely: add link about trills.
8233
8234 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8235
8236         * Documentation/user/music-glossary: remove accidentally committed
8237         fink patch.
8238
8239 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8240
8241         * lily/lily-parser.cc (get_header): new function. Enable multiple
8242         \header definitions.
8243
8244         * lily/parser.yy (lilypond_header_body): use get_header.
8245
8246         * ly/init.ly:
8247         * scm/lily-library.scm (print-score-with-defaults): renamed
8248         $globalheader to $defaultheader
8249             
8250         * Documentation/user/global.itely (Creating titles): added short
8251         explanation that multiple headers are useable.
8252
8253
8254 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8255
8256         * lily/module-scheme.cc (LY_DEFINE): new file. 
8257
8258         * Documentation/user/advanced-notation.itely (Font selection): add
8259         doco for make-pango-font-tree.
8260
8261 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8262
8263         * Documentation/user/music-glossary: more languages
8264         for tenuto.
8265
8266         * Docuemntation/user/instrument-notation.itely: minor
8267         update for bagpipe example.
8268
8269 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8270
8271         * input/regression/+.ly (TODO): add some text.
8272
8273 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8274
8275         * Documentation/user/invoking.itely: \score begins with music.
8276
8277         * Documentation/user/ basic-notation.itely,
8278         instrument-notation.itely: minor changes.
8279
8280         * Documentation/user/music-glossary.itely: began tenuto entry.
8281
8282 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8283
8284         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8285
8286         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8287
8288 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8289
8290         * Documentation/user/examples.itely: remove bagpipe template.
8291
8292         * Documentation/user/instrument-notation.itely: add bagpipe
8293         section, maybe fix quotes in lyrics.  I hate text encoding.
8294         Clarify chord durations, more bagpipe stuff.
8295
8296 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8297  
8298         * lily/accidental-engraver.cc: formatting fixes.
8299
8300         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8301         grob-array.
8302
8303         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8304
8305         * lily/note-column.cc (arpeggio): new function.
8306
8307         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8308         account for spacing.
8309
8310 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8311
8312         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8313         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8314         mingw build.
8315         
8316 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8317
8318         * scm/lily.scm (lilypond-all): clear anonymous modules after
8319         processing files.
8320
8321 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8322
8323         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8324         SCM_I_CONSP
8325
8326         * VERSION: 2.7.3 released
8327
8328         * Documentation/user/invoking.itely (Invoking lilypond): add
8329         LILYPOND_GC_YIELD documentation.
8330
8331         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8332         scm_from_real / scm_make_real.
8333
8334         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8335         higher. This increases memory footprint, but provides overall
8336         speedup of 15 to 20%. 
8337
8338         * lily/include/translator.hh (class Translator): remove
8339         PRECOMPUTED_VIRTUAL everywhere.
8340
8341         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8342
8343         * lily/context.cc (now_mom): non-recursive now_mom() 
8344
8345         * lily/include/profile.hh: new file.
8346
8347         * lily/profile.cc: new file.
8348
8349         * lily/grob.cc (Grob::Grob): look properties up directly.
8350
8351         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8352         lookups.
8353
8354         * lily/include/box.hh (class Box): smob Box type.
8355
8356         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8357
8358         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8359         protect() and unprotect(). Use throughout.
8360
8361 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8362
8363         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8364
8365         * scm/define-music-display-methods.scm (markup->lily-string):
8366         markup elements can also be strings (without simple-markup
8367         appended)
8368
8369 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8370
8371         * lily/context.cc (where_defined): also assign value in
8372         where_defined().
8373
8374         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8375         (curve_coordinate): new function
8376
8377         * lily/simple-spacer.cc (add_columns): only add rods between
8378         column i and begin/end if keep-inside-line is set (this repleces
8379         allow-outside-line as default)
8380
8381 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8382
8383         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8384         tupletSpannerDuration if applicable.
8385
8386         * lily/font-size-engraver.cc (process_music): read fontSize only
8387         once per timestep.
8388
8389         * lily/engraver*cc: use throughout.
8390         
8391         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8392
8393         * lily/translator.cc (add_acknowledger): new file. Directly jump
8394         into an Engraver::acknowledge_xxx () method based on a grobs
8395         interface-list.
8396
8397         * lily/include/translator-dispatch-list.hh (class
8398         Engraver_dispatch_list): new struct, new file.
8399
8400         * scm/define-context-properties.scm
8401         (all-internal-translation-properties): remove acceptHashTable,
8402         acknowledgeHashTable
8403
8404         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8405
8406         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8407         change acknowledgeHashTable to C++ member. 
8408
8409         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8410
8411 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8412
8413         * scm/display-lily.scm: new file. Define a `display-lily-music'
8414         function, that displays the music expression given as an argument,
8415         using LilyPond notation.
8416
8417         * scm/define-music-display-methods.scm: new file. Implementation
8418         of display methods for each music type.
8419
8420         * ly/music-functions-init.ly (displayLilyMusic): new function for
8421         displaying music with LilyPond notation.
8422
8423         * input/regression/display-lily-tests.ly: new regression test file
8424         for `display-lily-music'.
8425
8426         * scm/markup.scm: remove obsolete debugging code (for printing
8427         markups with LilyPond notation).
8428
8429         * scm/define-music-types.scm (music-name-to-property-table):
8430         * scm/clef.scm (supported-clefs): export, in order to be accessible
8431         from the (scm display-lily) module.
8432
8433 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8434
8435         * Documentation/topdocs/NEWS.tely (Top): Typo.
8436
8437 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8438
8439         * Documentation/index.html.in, Documentation/texinfo.css,
8440           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8441           Documentation/bibliography/index.html.in,
8442           Documentation/bibliography/html-long.bst: revert css-width patch,
8443           it does not work with IE6.
8444
8445 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8446
8447         * Documentation/texinfo.css: revert 760px hack. 
8448
8449         * VERSION: release 2.7.2
8450
8451         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8452
8453         * Documentation/user/basic-notation.itely (Barnumber check): add
8454         section.
8455
8456         * scm/music-functions.scm (skip-to-last): new function. Show only
8457         last showLastLength part of the \score.
8458
8459         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8460
8461         * python/convertrules.py (conv): add ly:x-moment rule
8462
8463         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8464
8465         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8466
8467         * Documentation/user/instrument-notation.itely (Flexibility in
8468         alignment): options in subsections.
8469
8470         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8471         syllable text. Instead, assume that the previous lyric text is a
8472         melismated text.
8473
8474         * Documentation/index.html.in: revert 800x600 change.
8475
8476 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8477
8478         * lily/main.cc (main): Remove invalid handle kludge.
8479
8480         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
8481         (lambda): add gui define.
8482
8483 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8484
8485         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
8486
8487         * Documentation/user/instrument-notation.itely (Musica ficta
8488         accidentals): add section Musica ficta accidentals
8489
8490         * lily/accidental-engraver.cc (make_suggested_accidental): new
8491         function.
8492         (make_standard_accidental): move into new function.
8493         (create_accidental): new function.
8494
8495         * scm/define-grobs.scm (all-grob-descriptions): new Grob
8496         AccidentalSuggestion
8497
8498         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
8499
8500         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
8501         undefined.
8502
8503         * Documentation/user/global.itely (Page formatting): document
8504         horizontalshift.
8505
8506         * scm/page-layout.scm (default-page-music-height):
8507         horizontalshift: new variable, shift all systems by
8508         horizontalshift to the right, to make space for instrument names.
8509
8510         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
8511
8512         * lily/input-scheme.cc (LY_DEFINE): take format commands.
8513
8514 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8515
8516         * lily/note-column.cc (dir): idem.
8517
8518         * lily/spacing-spanner.cc (Module): idem.
8519
8520         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
8521
8522         * lily/include/paper-column.hh (class Paper_column): add
8523         non-static get_rank() member.
8524
8525         * VERSION: release 2.7.1
8526         
8527         * scm/framework-null.scm: new file, used for benchmarking.
8528
8529 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
8530
8531         * Documentation/topdocs/INSTALL.texi, configure.in: fix
8532         version dependencies for fontforge and gs.
8533
8534         * Documentation/index.html.in, Documentation/texinfo.css,
8535         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8536         Documentation/bibliography/index.html.in, 
8537         Documentation/bibliography/html-long.bst: optimize width of
8538         html for a 800x600 screen (width:760), increases printability
8539         when 'fit to page' is not set and readability in wide screens.
8540
8541         * stepmake/bin/add-html-footer.py: add missing </p>.
8542
8543 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8544
8545         * scm/define-markup-commands.scm (beam): use polygon in beam
8546         command.
8547
8548         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
8549         all acknowledged grobs, and do potentially expensive merge and
8550         write in one go.
8551
8552         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
8553
8554         * configure.in (reloc_b): add --enable-static-gxx to statically
8555         link to libstdc++
8556
8557         * lily/GNUmakefile (static-gxx-libs): new target
8558         static-gxx-libs. Create symlink to libstdc++.a
8559
8560         * lily/new-lyric-combine-music-iterator.cc: rename to
8561         Lyric_combine_music_iterator
8562
8563         * lily/lyric-combine-music-iterator.cc
8564         (Old_lyric_combine_music_iterator): rename to
8565         Old_lyric_combine_music_iterator
8566
8567         * lily/*-engraver.cc (various): remove double use of
8568         PRECOMPUTED_VIRTUAL function: only use
8569         start_translation_timestep() and stop_translation_timestep(), not
8570         both.
8571
8572         * lily/break-substitution.cc (fast_substitute_grob_array): do
8573         fast_substitute_grob_array for all unordered grob_arrays.
8574         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
8575         (substitute_grob_array): optimize.
8576
8577         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
8578
8579         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
8580
8581         * lily/parser.yy: revert $globalheader patch.
8582         
8583         * lily/include/translator.icc
8584         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
8585         Translator methods, without _static helper.
8586  
8587         * lily/grob-smob.cc (derived_mark): rename from
8588         do_derived_mark(). Return void.
8589
8590         * scm/define-context-properties.scm
8591         (all-internal-translation-properties): remove tweakCount/tweakRank.
8592
8593         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
8594         predefined break-visibilities.
8595
8596         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
8597         booleans for break-visibility.
8598
8599         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
8600
8601         * python/convertrules.py (conv): rule for Timing_translator. 
8602
8603         * lily/include/translator.icc: new file. 
8604
8605         * lily/paper-column-engraver.cc (process_music): new
8606         file. Separate Paper_column factory from Score_engraver.
8607
8608         * lily/vertically-spaced-context-engraver.cc: administer
8609         spaceable-staves property of System.
8610
8611         * lily/translator-group-ctors.cc: new file.
8612
8613         * lily/context-property.cc (make_grob_from_properties): construct
8614         the right Grob class programmatically, looking at the class entry
8615         for the meta property.
8616
8617         * lily/break-align-engraver.cc (stop_translation_timestep): call
8618         Break_align_interface::add_element() directly.
8619
8620         * lily/context.cc (measure_position): measure_position() is now a
8621         normal function.
8622
8623         * lily/include/translator.hh (class Translator): rename
8624         process_acknowledged_grobs() to process_acknowledged() and move to
8625         Translator.
8626
8627         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
8628         field for each grob description.
8629
8630         * lily/include/translator-group.hh (class Translator_group):
8631         change to base class. Separate class from Translator. This gets
8632         rid of virtual inheritance for Engravers/Performers.
8633
8634         * lily/staff-performer.cc (class Staff_performer): derive
8635         Staff_performer from Performer, not Performer_group_performer 
8636
8637         * Lily/translator-group.cc (precomputed_recurse_over_translators):
8638         new function.
8639         (precompute_method_bindings): new function. Precompute lists of
8640         Translators, so we only call methods (process_music,
8641         start_translation_timestep, etc.) for Translators needing
8642         it. Also: dispose of pointer-to-member-function calls.
8643
8644         * lily/engraver-group-engraver.cc: remove engraver_each,
8645         recurse_down_engravers ()
8646
8647         * lily/note-head.cc (internal_print): only call
8648         glyph-name-procedure if style != default. 
8649
8650 2005-07-16  Graham Percival  <gperlist@shaw.ca>
8651
8652         * ly/titling-init.ly: add printallheaders option.
8653
8654         * Documentation/user/global.itely: document printallheaders.
8655
8656 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8657
8658         * lily/system.cc (do_derived_mark): don't mark from object_alist_
8659         anymore, but do it centrally.  
8660
8661         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
8662         hammer hack.
8663
8664         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
8665
8666         * scm/output-lib.scm: remove hammer-print-function.
8667
8668         * lily/include/pointer-group-interface.hh (extract_grob_set): new
8669         macro. Declare a Link_array<Grob> and fill it from a grob.
8670         (extract_item_set): idem for item.
8671
8672         * lily/break-substitution.cc: add header.
8673         (fast_substitute_grob_array): rewrite for Grob_arrays.
8674         (substitute_grob_array): idem.
8675
8676         * lily/group-interface.cc (add_thing): remove file.
8677
8678         * flower/include/parray.hh (class Link_array): slice() is const.
8679
8680         * lily/include/grob-array.hh: new file.
8681
8682         * lily/grob-array.cc (spanner): new file.
8683
8684         * lily/beam-quanting.cc (fill): read details property from beam.
8685
8686         * lily/beam.cc: support details property.
8687
8688         * total speedups below: approx 10%.
8689
8690         * lily/include/beam.hh: new struct, softcode beam quanting parameters
8691
8692         * lily/include/grob.hh (class Grob): add interfaces_ member.
8693
8694         * lily/bezier.cc (init_polynomial_cache): new function: cache
8695         binom(3,j) t^j (1-t)^{3-j}
8696         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
8697
8698         * lily/*.cc: substitution throughout.
8699
8700         * lily/grob-property.cc (internal_get_object): new routine.
8701         (internal_set_object): idem. Store grob refrences in separate
8702         alist. This saves processing time, since properties aren't
8703         break-substituted, and the per grob namespace is smaller, both for
8704         grobs and non-grob properties.
8705
8706         * scm/define-grob-properties.scm (all-internal-grob-properties):
8707         remove center-element.
8708
8709         * lily/grob.cc: remove tweak-count, tweak-rank.
8710
8711 2005-07-15  Graham Percival  <gperlist@shaw.ca>
8712
8713         * Documentation/user/lilypond-book.itely: fixes example.
8714
8715 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8716
8717         * Documentation/user/global.itely (Creating titles):    
8718         * Documentation/user/examples.itely (All headers): change the
8719         place of \header in \score blocks (after music block) to make
8720         examples compile (cf. changes on parser.yy on 2005-07-10)
8721
8722 2005-07-13  Graham Percival  <gperlist@shaw.ca>
8723
8724         * python/convertrules.py: add exc -> ecc rule.
8725
8726         * scripts/convert-ly.py: add location of convertrules.py
8727         in a comment.
8728
8729         * Documentation/user/changing-defaults.itely: fix language.
8730
8731 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8732
8733         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
8734
8735 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8736
8737         * scm/output-socket.scm (grob-bbox): don't use inf? 
8738
8739         * flower/include/rational.hh: add operator bool() 
8740
8741         * scm/define-music-types.scm (music-descriptions): remove
8742         internal-class-name properties.
8743
8744         * lily/include/event.hh: remove file.
8745
8746         * lily/include/music-constructor.hh: remove file.
8747
8748         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
8749         in 'types property.
8750
8751         * lily/music.cc (duration_length_callback): new function.
8752
8753         * lily/event.cc: remove file.
8754
8755         * lily/music-constructor.cc: remove file.
8756
8757         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
8758
8759         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
8760         (get_context_key): idem.
8761
8762         * scm/lily.scm (lambda): new option object-keys (default to #f)
8763
8764         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
8765
8766         * scm/output-gnome.scm: remove beam routine.
8767
8768         * scm/output-ps.scm (scm): idem.
8769
8770         * scm/output-svg.scm: remove beam.
8771
8772         * ps/music-drawing-routines.ps: remove draw_beam.
8773
8774         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
8775
8776         * flower/include/guile-compatibility.hh (scm_from_locale_string):
8777         add scm_from_locale_string compatibility glue. 
8778
8779 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8780
8781         * scripts/lilypond-book.py: Prevent occuring error when
8782         'lilypond-book --output=foo/ somefile.ly' is executed multiple
8783         times and target file shoud be overwritten.  (Error message said
8784         'input file and output file is same'.)
8785
8786 2005-07-13  Graham Percival  <gperlist@shaw.ca>
8787
8788         * input/regression/slur-extreme.ly,
8789         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
8790         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
8791         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
8792         "excentricity" to "eccentricity".
8793
8794         * Documentation/user/converters.itely: fix URL for Noteedit and
8795         Rosegarden.
8796
8797         * THANKS: added Yoshinobu Ishizaki.
8798
8799 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8800
8801         * scm/define-markup-commands.scm (justify-field): add. 
8802
8803         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
8804
8805 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8806
8807         * lily/lookup.cc (filled_box): express filled_box with
8808         round_filled_box
8809
8810         * scm/midi.scm (paper-book-write-midis): new function. Write all
8811         performances in numbered MIDI files.
8812
8813         * lily/performance-scheme.cc (LY_DEFINE): new file.
8814         (LY_DEFINE): new function ly:performance-write.
8815
8816         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
8817         new function.
8818         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
8819
8820         * scm/framework-*.scm: use port arguments throughout.
8821
8822         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
8823
8824         * lily/paper-outputter.cc (Paper_outputter): take port argument.
8825
8826         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
8827
8828         * scm/framework-texstr.scm (output-framework): 
8829
8830         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
8831
8832         * scm/output-lib.scm (tablature-stem-attachment-function):
8833         tablature stem attachment fix. 
8834
8835 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8836
8837         * lily/bezier.cc: hardcode binomial coefficients of order 3.
8838
8839         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
8840
8841         * scm/define-music-types.scm (music-descriptions): don't use
8842         Music_wrapper type.
8843
8844         * lily/paper-column.cc (print): print moment too.
8845
8846         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
8847         remove compatibility cruft.
8848
8849         * lily/parser.yy (score_body): \score can only begin with Music. 
8850
8851         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
8852         make-score. Take music argument only. Move parser interaction to
8853         Scheme.
8854
8855         * scm/lily-library.scm (scorify-music): new function.
8856
8857         * python/lilylib.py (datadir): remove 2.1 compat kludge.
8858         (datadir): remove resource import.
8859         (print_environment): remove get_bbox()
8860         (cp_to_dir): remove pre 1.5.2 compat glue.
8861
8862 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8863
8864         * lily/include/simple-spacer.hh (Module): idem.
8865
8866         * lily/include/spring.hh (struct Spring): store inverse
8867         strength. This prevents division by zero.
8868
8869         * VERSION: release 2.7.0
8870         
8871         * lily/include/music.hh (class Music): remove Music::duration_log()
8872
8873         * lily/stem-engraver.cc (make_stem): take duration log from event.
8874
8875         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
8876
8877 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8878
8879         * scm/lily.scm (ly:load): load autochange.scm
8880
8881         * Documentation/user/tutorial.itely (Running LilyPond for the
8882         first time): remove reference to DVI/TeX
8883
8884         * scm/define-markup-commands.scm (text): add \text markup command.
8885
8886         * configure.in (reloc_b): bump requirement to Python 2.2.
8887
8888         * lily/include/dots.hh (class Dots): make has_interface() static.
8889
8890         * python/convertrules.py (conv): add rule for ly:grob-default-font
8891
8892         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
8893         alphabetical order.
8894
8895         * input/regression/trill-spanner-pitched.ly: new file.
8896
8897         * lily/font-interface-scheme.cc (LY_DEFINE): function
8898         ly:grob-default-font (changed from get-default-font).
8899
8900         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
8901
8902         * lily/note-head.cc (internal_print): if style is not a symbol,
8903         set style to 'default. 
8904         (internal_print): no style suffix if glyph-name-procedure not
8905         set. Default to quarter head.
8906
8907         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
8908
8909         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
8910
8911         * ly/music-functions-init.ly: \pitchedTrill
8912
8913         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
8914
8915         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
8916
8917         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
8918
8919         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
8920
8921         * po/fr.po: update
8922
8923         * po/de.po: update.
8924
8925 2005-07-06  Graham Percival  <gperlist@shaw.ca>
8926
8927         * Documentation/user/changing-defaults.itely: add link
8928         to grob-iterface.
8929
8930         * Documentation/user/advanced-notation.itely: add material
8931         to Setting automatic beam behaviour.  Thanks, Joe!
8932
8933         * Documentation/user/lilypond.itely: change encoding to utf-8.
8934
8935 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
8936
8937         * Documentation/user/advanced-notation.itely (Setting automatic
8938         beam behavior): Correct the documentation of
8939         revert-auto-beam-setting (backportme)
8940
8941 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8942
8943         * lily/ly-module.cc (ly_make_anonymous_module): define
8944         %module-public-interface of module. 
8945
8946         * lily/lily-parser.cc (print_smob): allow printing of parser smob
8947         without lexer.
8948
8949 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8950
8951         * input/regression/fret-diagrams.ly: stretch example.
8952
8953 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8954
8955         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
8956         Fodor).
8957
8958 2005-06-30  Graham Percival  <gperlist@shaw.ca>
8959
8960         * Documentation/topdocs/AUTHORS.texi: update personal web address.
8961
8962         * Documentation/user/examples.itely, lilypond-book.itely:
8963         change \RequirePackage to \usepackage.
8964
8965         * Documentation/user/global.itely: document copyright and tagline.
8966
8967 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8968
8969         * Documentation/user/basic-notation.itely (Transpose): remove link
8970         to nonexistent UntransposableMusic.
8971
8972         * scm/output-svg.scm: remove old definitions.
8973
8974         * scripts/lilypond-book.py (do_file): search for kpsewhich before
8975         invoking.
8976
8977         * python/lilylib.py (search_exe_path): new function.
8978
8979 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8980
8981         * python/lilylib.py (mkdir_p): remove setup_environment()
8982         (backportme)
8983
8984         * buildscripts/mutopia-index.py (headertext): trim text.
8985
8986         * Documentation/topdocs/NEWS.tely (Top): refresh.
8987
8988         * scm/define-markup-commands.scm (wordwrap-string): new function:
8989         split string in paras and words.
8990         (wordwrap-markups): new function.
8991         (wordwrap-stencils): new function. 
8992         (justify): use it.
8993         (wordwrap): use it.
8994         (wordwrap-string): use it
8995         (justify-string): use it.
8996
8997         * scm/lily-library.scm (regexp-split): new function.
8998
8999         * scm/define-markup-commands.scm: remove encoded-simple. 
9000         remove font-markup.
9001         (fontsize): remove old version  of fontsize.
9002         (wordwrap): new markup function. Wrap into paragraphs.
9003
9004         * VERSION: Branch lilypond_2_6
9005         (MINOR_VERSION): go to 2.7.0
9006
9007 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9008
9009         * po/zh_TW.po: update from translation project.
9010
9011 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9012
9013         * scm/midi.scm: compile fix.
9014
9015 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9016
9017         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9018         patch. Now, the tempfile module is loaded too, not only used.
9019
9020 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9021
9022         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9023         0.05 - 1.00 to 0.25 - 1.00
9024
9025         * scm/midi.scm: moved the default-instrument-equalizer procedure
9026         to just under the insturment-equalizer-alist it takes as an
9027         argument.
9028
9029 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9030
9031         * Documentation/user/advanced-notation.itely (Font selection):
9032         remove CMR note.
9033
9034         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9035
9036 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9037
9038         * THANKS: Add UTF-8 marker.
9039
9040         * Documentation/user/point-and-click.itely (http): Update: use
9041         lilypond-invoke-editor.  Fix: instruct to use user.js.
9042
9043 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9044
9045         * ly/titling-init.ly: implements printpagenumber, increases
9046         space between dedication and title (to avoid collisions with
9047         "g" and "q" in dedication), and nicer logic about copyright
9048         and instrument fields being printed on the first page.
9049         Thanks Vincent!
9050
9051         * Documentation/user/global.itely: document printpagenumber.
9052
9053 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9054
9055         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9056
9057 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9058
9059         * THANKS: update to 2.6
9060
9061         * VERSION: 2.6.0 released.
9062
9063 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9064
9065         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9066         rule, errorneously removed probably because of misleading comment.
9067
9068 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9069
9070         * python/lilylib.py (datadir): py2exe comments.
9071
9072         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9073
9074         * configure.in (reloc_b): make fontconfig REQUIRED.
9075
9076 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9077
9078         * po/fi.po: add latest translations.
9079
9080 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9081
9082         * ChangeLog: recode utf-8
9083
9084         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9085         logo.
9086
9087         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9088
9089         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9090
9091         * python/convertrules.py (do_conversion): don't print program_name
9092         from within a module
9093
9094         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9095
9096         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9097
9098 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9099
9100         * Documentation/user/lilypond-book.itely,
9101         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9102
9103         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9104         fixes baseline-skip.  Thanks Vincent!
9105
9106         * Documentation/user/advanced-notation.itely, global.itely:
9107         moved "Selecting font sizes" to global, since it deals with
9108         notation font size, not text fonts.
9109
9110 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9111
9112         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9113         to fonts.
9114
9115 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9116
9117         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9118         workaround since /dev/stdin doesn't work on Cygwin. Using a
9119         temporary file in the current directory since latex doesn't
9120         understand the path name to the default TMP in Cygwin (at least on
9121         win XP).
9122         
9123         * Documentation/user/global.itely (Creating titles): Correct
9124         misprint in example. Thanks to Rob Vlasaty.
9125
9126 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9127
9128         * VERSION (PATCH_LEVEL): release 2.5.32
9129
9130         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9131         variable in lily module
9132
9133         * scm/framework-ps.scm (output-classic-framework): error message
9134         regarding the classic framework.
9135
9136         * Documentation/user/henle-flat-gray.png (Module): new file.
9137
9138         * Documentation/user/baer-flat-gray.png (Module): new file.
9139
9140         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9141         whiteout for markups.
9142
9143         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9144         regex too. This fixes change clef appearance in PDF. 
9145
9146         * ttftool/include/*: remove.
9147
9148         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9149
9150         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9151
9152         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9153
9154         * ttftool/*: remove ttftool subdirectory.
9155
9156         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9157
9158         * lily/ttf.cc (print_header): new file. Convert to type42, using
9159         FreeType to parse the TTF. 
9160
9161         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9162         and post table may differ. Pass around post_nglyphs as well.
9163
9164 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9165
9166         * ly/music-functions-init.ly (musicMap): new music function
9167         musicMap. 
9168         
9169 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9170
9171         * make/mutopia-rules.make: anti-alias-factor = 2
9172
9173         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9174         page switch.
9175
9176         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9177         anti-alias-factor for lilypond-book runs.
9178
9179         * scm/ps-to-png.scm (scale-down-image): new function.
9180         (my-system): new function.
9181         (make-ps-images): blow up GS resolution by anti-alias-factor,
9182         scale down image by anti-alias-factor.  This improves appearance
9183         of bitmaps
9184         (make-ps-images): remove showpage. Fixes spurious empty png at
9185         end.
9186
9187         * scm/framework-ps.scm (write-preamble): downcase filename before
9188         string-matching. Should fix .TTF files (as opposed to ttf files)  
9189
9190         * Documentation/user/tutorial.itely (Running LilyPond for the
9191         first time): separate subsections for windows, macos and unix.  
9192
9193         * Documentation/user/invoking.itely (Updating files with
9194         convert-ly): add MacOS X note.
9195
9196 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9197
9198         * Documentation/user/introduction.itely (Engraving): don't include
9199         file optical-spacing, add directly.
9200
9201         * lily/paper-outputter.cc (file): open file in binary mode. This
9202         fixes OTF embedding on windows.
9203
9204 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9205
9206         * scm/framework-ps.scm (write-preamble): remove debugging output.
9207
9208         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9209
9210         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9211         outdir.
9212         (install-fc-cache): install font cache in installation directories.
9213
9214 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9215
9216         * scm/editor.scm (editor-command-template-alist): Use char iso
9217         column, except for Emacs.
9218         (get-editor-command): Substitute char too (Bertalan Fodor).
9219
9220 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9221
9222         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9223         quoted ~s.  This should fix PNG output on Windows; single quotes
9224         are regular characters on Windows.
9225
9226 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9227
9228         * Documentation/user/basic-notation.itely: include ChoirStaff
9229         in System start delimiters.
9230
9231         * Documentation/user/putting.itely: new doc section on
9232         fixing overlapping notation.
9233
9234 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9235
9236         * Documentation/user/global.itely (Paper size): \paper is in
9237         \book, not \score.
9238
9239         * make/mutopia-rules.make: -ddelete-intermediate-files
9240
9241         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9242
9243 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9244
9245         * ChangeLog: Recode utf-8.
9246
9247         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9248         datadir with .py modules.
9249
9250 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9251
9252         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9253
9254 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9255
9256         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9257         
9258         * scm/framework-ps.scm (write-preamble): remove status check.
9259
9260         * Documentation/user/invoking.itely (Updating files with
9261         convert-ly): remove -o option.
9262
9263         * VERSION (PACKAGE_NAME): release 2.5.31
9264
9265         * scm/framework-ps.scm (write-preamble): use ly:system.
9266         (write-preamble): verbosity.
9267
9268         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9269
9270         * python/convertrules.py: new file. Store conversion rules
9271         separately.
9272
9273 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9274
9275         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9276
9277 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9278
9279         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9280         \musicDisplay 
9281
9282         * Documentation/user/instrument-notation.itely (More stanzas): Add
9283         reference to StanzaNumber.
9284
9285 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9286
9287         * THANKS: separate section for website translators.
9288
9289 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9290
9291         * Documentation/topdocs/INSTALL.texi: update vim info;
9292         thanks Simon Bailey!
9293
9294         * Documentation/user/advanced-notation.itely: included
9295         color names.
9296
9297         * Documentation/user/advanced-notation.itely,
9298         Documentation/usr/notation-appendices.itely: moved
9299         color names into an appendix.
9300
9301 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9302         
9303         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9304
9305         * scm/lily.scm (lambda): initialize program options from here.
9306
9307         * scm/framework-*.scm: add header info.
9308
9309         * lily/main.cc (parse_argv): only set output format to pdf if no
9310         other format specified.
9311
9312         * scm/backend-library.scm (postprocess-output): process
9313         'delete-intermediate-files after running convert-to-*. This fixes
9314         PNG generation when 'delete-intermediate-files is set.
9315         
9316 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9317
9318         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9319         links on website. 
9320
9321 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9322
9323         * Documentation/topdocs/INSTALL.texi,
9324         Documentation/user/lilypond-book.itely: typos.
9325
9326 2005-06-12  Pal Benko  <benkop@freestart.hu>
9327
9328         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9329         added between program name and switch; -b changed to -f not
9330         to generate pdf
9331
9332 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9333
9334         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9335         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9336
9337         * input/sakura-sakura.ly: add \midi.
9338
9339         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9340         iso. python find. 
9341
9342         * ttftool/test.c (main): cosmetics.
9343
9344         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9345
9346         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9347         create a ttf2ps binary.
9348
9349         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9350
9351         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9352         true.
9353
9354 2005-06-11  Graham Percival <gperlist@shaw.ca>
9355
9356         * Documentation/user/lilypond-book.itely: add warning about
9357         the font warnings in dvips.
9358
9359 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9360
9361         * THANKS: typo
9362
9363         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9364
9365         * GNUmakefile.in: remove links for .map, .enc
9366         don't fail if out/ doesn't exist yet.
9367
9368 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9369
9370         * ttftool/util.c (surely_read): return nbytes
9371
9372         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9373
9374         * VERSION (PACKAGE_NAME): release 2.5.30
9375
9376         * flower/string-convert.cc (precision_string): >? fix.
9377
9378         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9379         (make-ps-images): add verbose -q too.
9380
9381         * lily/default-actions.cc (Module): new file. default
9382         {book,score}-print functions.
9383
9384         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9385         pass results via parseStringResult, lookup via ly:parser-lookup.  
9386
9387         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9388         constructors.
9389         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9390         (parse_string): idem.
9391
9392         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9393
9394         * lily/main.cc (main_with_guile): copy be_verbose_global into
9395         ly_set_option()
9396
9397 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9398
9399         * scm/backend-library.scm (postscript->pdf):
9400         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9401         verbose mode.  Search for several names of gs executable.
9402
9403 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9404
9405         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9406         directly. This fixes a massive memory leak, provided you use CVS
9407         GUILE.
9408
9409 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9410
9411         * ly/property-init.ly: Added tieDashed.
9412
9413         * THANKS: Added some bughunters for 2.5.
9414
9415 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9416
9417         * lily/program-option.cc: add debug-gc option.
9418
9419         * lily/include/lily-guile-macros.hh: don't protect exported module
9420         objects.
9421
9422         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9423
9424         * scm/backend-library.scm (postscript->pdf): use
9425         delete-intermediate-files iso. running-from-gui? 
9426
9427         * ttftool/util.c (surely_read): robustness. Allow read() to return
9428         less bytes than requested, as per posix standards.
9429
9430         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9431         program option.
9432
9433         * ttftool/include/ttftool.h ("C"): rename verbosity to
9434         ttf_verbosity. Add to public interface.
9435
9436         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9437
9438         * lily/program-option.cc: rename from scm-option.cc
9439
9440         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9441         (get_help_string): Print pretty help string.
9442
9443         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9444         to snippet preamble.
9445
9446         * lily/scm-option.cc: remove command-line-settings option. Fold
9447         all command-line options plus default settings in a generic
9448         interface. 
9449
9450         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9451         texts too.
9452
9453 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9454
9455         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9456         or EXT_ components non-empty.
9457
9458 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9459
9460         * scm/lily.scm (running-from-gui?): Export.
9461
9462         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9463         output in .ly source directory.
9464
9465 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9466
9467         * ttftool/util.c (surely_lseek): more verbosity.
9468
9469         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9470         compile.
9471
9472         * lily/parser.yy (Repeated_music): remove >? 
9473
9474         * scm/backend-library.scm (postscript->pdf): Support for
9475         -dgs-font-load=1
9476
9477         * scm/framework-ps.scm (write-preamble): make font loading
9478         switchable to GS via --define-default gs-font-load=1
9479
9480 2005-06-09  Graham Percival  <gperlist@shaw.ca>
9481
9482         * Documentation/user/global.itely: added \layout docs.
9483
9484 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9485
9486         * lily/lily-parser-scheme.cc: add unistd.h
9487
9488 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9489
9490         * scm/editor.scm: add char argument.
9491
9492         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
9493
9494         * ttftool/util.c (syserror): use errno for better error reporting.
9495
9496         * lily/source-file.cc (get_counts): new function. Calc column,
9497         line and char count in one go.
9498
9499         * lily/binary-source-file.cc (quote_input): rename to quote_input
9500
9501         * lily/input.cc (set): new function.
9502
9503 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9504
9505         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
9506         directory part of file name to search directory.
9507
9508         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
9509         search path and chdir to DIR if --outname=DIR used.
9510
9511         * lily/main.cc (prepend_env_path): Bugfix: Check directory
9512         existence before appending original path.
9513
9514 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9515
9516         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
9517         file" massage.
9518
9519         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
9520         texinfo.tex is always used.
9521         
9522 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9523
9524         * flower/include/axis.hh: rename from axes.hh
9525
9526         * lily/include/text-interface.hh (Module): rename from text-item.hh
9527
9528         * VERSION (PATCH_LEVEL): release 2.5.29
9529
9530         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
9531
9532         * scm/framework-ps.scm (font-file-as-ps-string): new function.
9533         (handle-macfont): new function. Call fondu for Native mac fonts.
9534
9535         * scm/define-markup-commands.scm (fill-line): handle text-widths =
9536         '() case.
9537
9538 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9539
9540         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
9541         multi-page.  Fix .eps regular expression.
9542
9543 2005-06-07  Graham Percival  <gperlist@shaw.ca>
9544
9545         * Documentation/user/putting.itely: add info on modifying templates.
9546
9547         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
9548         misc small changes.
9549
9550 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9551
9552         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
9553
9554         * scripts/lilypond-ps2png.scm
9555
9556         * VERSION (PACKAGE_NAME): release 2.5.28
9557
9558 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9559
9560         * lily/main.cc (prepend_env_path): Do not append /, that does not
9561         work.  Localedir lives in datadir, not in prefix.
9562
9563         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
9564         hack for windows.
9565
9566         * flower/include/file-cookie.hh: Compile fix.
9567
9568 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9569
9570         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
9571
9572         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
9573         system primitives.
9574         (gulp-port): using read-string!/partial. We don't want to read an
9575         entire PS file  (GUILE 1.6 limits strings to 16M) 
9576
9577         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
9578         properties. Add font-interface. 
9579
9580         * scm/define-grob-properties.scm (all-user-grob-properties):
9581         remove old bracket properties.
9582
9583         * scm/x11-color.scm: reformat. 
9584
9585         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
9586         LedgerLineSpanner if new StaffSymbol is found. 
9587
9588         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
9589         staff-symbol for finishing staff. 
9590
9591         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
9592
9593         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
9594         change black to currentColor everywhere. This fixes color support
9595         in SVG.
9596
9597 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
9598
9599         * input/regression/fret-diagrams.ly: new file to test fret diagram
9600         capability
9601
9602         * scm/output-tex.scm: remove white-dot and white-text
9603
9604         * scm/output-ps.scm: remove white-dot and white-text
9605
9606         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
9607         using ly:stencil-in-color instead
9608         (draw-dots) : remove call to white-dot
9609
9610 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9611
9612         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
9613         support.
9614
9615         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
9616
9617         * flower/include/file-cookie.hh: new file. lily_cookie extension 
9618
9619         * flower/file-cookie.cc: new file. lily_cookie extension.
9620         
9621 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9622
9623         * scm/editor.scm (editor-command-template-alist): Add syn
9624         editor (Jaap [de Vos]).
9625
9626 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
9627
9628         * scripts/lilypond-ps2png.scm:
9629         * scm/ps-to-png.scm: New file.
9630
9631         * scm/backend-library.scm (postscript->png): Use it.
9632
9633         * scripts/lilypond-ps-to-png.py: Remove file.
9634
9635         * python/lilylib.py (get_bbox, make_ps_images): Remove.
9636
9637 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9638
9639         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
9640
9641         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
9642         start on grace moment. Fixes autobeam-grace.ly.
9643
9644         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
9645         process anything unless we're at the end of a pending beam. Fixes
9646         syncopated 8ths beamed across a beat.
9647
9648 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
9649
9650         * scm/editor.scm (editor-command-template-alist): Start emacs if
9651         emacslient fails.
9652
9653         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
9654
9655         * flower/file-path.cc (is_file, is_dir): Export.
9656
9657         * lily/main.cc (prepend_env_path, set_env_file): Use them.
9658
9659 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
9660
9661         * lily/easy-notation.cc: Added include cctype to correct
9662         compilation error.
9663
9664 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9665
9666         * scm/backend-library.scm (postscript->pdf): set resolution to
9667         1200, so bitmap fonts aren't that ugly. 
9668
9669         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
9670
9671         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
9672         parent if we have a notehead. Fixes incorrect offsets when
9673         Paper_column is very wide in the X direction.
9674
9675         * input/regression/font-family-override.ly (Module): new file.
9676
9677         * scm/font.scm (make-pango-font-tree): new function.
9678
9679         * lily/beam.cc (before_line_breaking): remove warning about less
9680         than 2 visible stems. We still get a warning when there is only
9681         one stem.
9682
9683 2005-06-01  Werner Lemberg  <wl@gnu.org>
9684
9685         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
9686         correctly.
9687
9688 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9689
9690         * lily/slur-scoring.cc (generate_avoid_offsets): new
9691         function. Generate avoid offsets once per slur.
9692
9693         * lily/slur.cc (add_extra_encompass): add dependency to
9694         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
9695
9696         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
9697         too. Fixes inf error with added bass notes.
9698
9699         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
9700         argument anymore.
9701
9702         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
9703
9704         * input/tutorial/lbook-latex-test.tex: add line length test.
9705
9706         * scripts/lilypond-book.py (set_default_options): new
9707         function. Call this before dissecting snippets, so linewidth
9708         settings reach the snippets.
9709
9710 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9711
9712         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
9713
9714 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9715
9716         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
9717
9718 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9719
9720         * stepmake/aclocal.m4: More autopackage friendliness.
9721
9722 2005-05-31  Graham Percival  <gperlist@shaw.ca>
9723
9724         * Documentation/index.html.in: remove link to LSR.
9725
9726         * Documentation/user/global.itely: remove duplicate
9727         "dedication" \header{} section.
9728
9729 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9730
9731         * VERSION (PACKAGE_NAME): release 2.5.27.
9732
9733         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
9734         too. Plugs memory leak.
9735
9736         * make/lilypond.fedora.spec.in (Group): remove
9737         lilypond-pdfpc-helper.
9738
9739         * scripts/GNUmakefile (SEXECUTABLES): remove
9740         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
9741
9742         * scm/font.scm (make-century-schoolbook-tree): add Mono as
9743         'typewriter family.
9744
9745         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
9746         memory leak.
9747
9748         * lily/parser.yy (score_body): don't clone Score, that's done in
9749         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
9750
9751         * lily/score-engraver.cc (derived_mark): new function.
9752         (initialize): unprotect Paper_score. This fixes a memory leak.
9753
9754         * lily/score-performer.cc (derived_mark): new function.
9755
9756         * lily/score-translator.cc (get_output): use SCM for get_output() call.
9757
9758         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
9759         spurious warning.
9760
9761         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
9762         serif.
9763
9764 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9765
9766         * configure.in (reloc_b): Add --enable-relocation.
9767
9768 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9769
9770         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
9771
9772         * input/regression/alignment-order.ly: add Staff example.
9773
9774 2005-05-31  John Mandereau   <john.mandereau@free.fr>
9775
9776         * po/fr.po: update.
9777
9778 2005-05-31  Graham Percival  <gperlist@shaw.ca>
9779
9780         * Documentation/index.html.in: add link to LSR.
9781
9782 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9783
9784         * scm/define-stencil-commands.scm (Module): new file. Register all
9785         allowed stencil expression heads in a central place.
9786
9787         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
9788         ly:make-stencil
9789
9790         * lily/stencil-expression.cc (all_stencil_heads): registering
9791         stencil expressions.
9792
9793         * lily/stencil-interpret.cc: new file. Stencil expression
9794         interpreting.
9795
9796         * input/xiao-haizi-guai-guai.ly: move file back.
9797
9798 2005-05-30  Graham Percival  <gperlist@shaw.ca>
9799
9800         * Documentation/user/advanced.itely, converters.itely,
9801         instrument-notation.itely, lilypond-book.itely: misc small
9802         changes.
9803
9804 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9805
9806         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
9807
9808         * make/lilypond.fedora.spec.in: Fix source url.
9809
9810         * cygwin: Update from mingw patches.
9811
9812         * scm/editor.scm (editor-command-template-alist): Use jedit
9813         -reuseview (Bertalan), add uedit (Patrick Huberts).
9814
9815         * input/xiao-hai-zi-guai-guai.ly: Rename from
9816         xiao-haizi-guai-guai.ly.
9817
9818         * input/*: Reindent, do not use TAB.
9819
9820         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
9821         white background.
9822
9823 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
9824
9825         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
9826         numerical overflow error.
9827
9828 2005-05-29 Laura Conrad <lconrad@laymusic.org>
9829         
9830         * abc2ly.py: fix to syntax error in multi-part output.
9831
9832 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9833
9834         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
9835         with disappearing span bars when alignAboveContext is active
9836
9837         * lily/property-iterator.cc (check_grob): use is-grob?
9838         object-property. Fixes crash-key-sig-font-size.ly. 
9839
9840 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9841
9842         * lily/bar-line.cc (print): don't round barlines; this produces
9843         odd aliasing effects in Acroread.
9844
9845         * lily/timing-engraver.cc (process_music): robustness fix.
9846
9847         * lily/context-def.cc (filter_engravers): bugfix.
9848
9849 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9850
9851         * lily/lilypond.rc.in: Add ly-icon.
9852
9853         * lily/GNUmakefile: 
9854         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
9855         rules.
9856
9857 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9858
9859         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
9860
9861         * ps/music-drawing-routines.ps: 
9862
9863         * scm/output-ps.scm: remove draw ez_ball.
9864
9865         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9866         EasyNotation context definition.
9867
9868         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
9869         Text_interface and color for making easy note heads.
9870
9871         * lily/stencil.cc (with_color): new function.
9872
9873         * ps/music-drawing-routines.ps: remove draw_zigzag_line
9874
9875         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
9876         output routine. Zigzag now works in SVG too.
9877
9878         * scm/output-tex.scm (filledbox): idem.
9879
9880         * scm/output-svg.scm (filledbox): idem.
9881
9882         * scm/output-ps.scm (lily-def): remove horizontal-line. 
9883
9884         * lily/lookup.cc (horizontal_line): use draw-line. 
9885
9886         * lily/system-start-delimiter.cc: remove old staff bracket code.
9887
9888         * mf/feta-haak.mf: further tweaks.
9889
9890         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
9891
9892         * mf/feta-generic.mf: include feta-haak.
9893
9894         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
9895
9896         * scm/framework-ps.scm (write-preamble): only load fonts if their
9897         filename is a string. 
9898
9899 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9900
9901         * scm/output-svg.scm (circle): support circle.
9902         (bracket): stub for bracket.
9903
9904         * scripts/lilypond-book.py (main): make sure --psfonts warning is
9905         correct.
9906
9907 2005-05-26  Graham Percival  <gperlist@shaw.ca>
9908
9909         * Documentation/user/lilypond.tely, advanced-notation.itely,
9910         basic-notation.itely, instrument-notation.itely, global.itely,
9911         introduction.itely, tutorial.itely: rearranging, editing,
9912         clean-up.
9913
9914         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
9915         for compiling on FreeBSD.
9916
9917 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9918
9919         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
9920         otf files.
9921
9922         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
9923         bugfixes.
9924
9925         * VERSION: 2.5.26 released.
9926
9927         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
9928
9929 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
9930
9931         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
9932         if printpagenumber is false.
9933
9934 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9935
9936         * lily/font-config.cc (init_fontconfig): comment out FontConfig
9937         cache warning.
9938
9939         * lily/tie.cc (print): support dotted ties.
9940         
9941 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9942
9943         * scm/define-grobs.scm (all-grob-descriptions): switch off
9944         debugging
9945         (all-grob-descriptions): Arpeggio has Y-extent.
9946
9947         * scm/define-music-properties.scm (all-music-properties): document
9948         length-callback and start-callback as "read-only".
9949
9950         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
9951         length-callback after creation. 
9952
9953         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
9954         compressmusic -> compressMusic.
9955
9956         * ly/music-functions-init.ly (oldaddlyrics): idem.
9957
9958         * lily/parser.yy: NewLyricCombineMusic ->
9959         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
9960
9961 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
9962
9963         * ly/Welcome_to_LilyPond.ly: typo.
9964
9965 2005-05-24  Graham Percival  <gperlist@shaw.ca>
9966
9967         * Documentation/user/lilypond.tely: move changing-defaults to be
9968         before global issues.
9969
9970         * Documentation/user/basic-notation.itely: move Transpose section
9971         here from advanced/Other.
9972
9973         * Documentation/user/changing-defaults.itely,
9974         advanced-notation.itely: move Fonts to advanced, edit.
9975
9976 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9977
9978         * lily/parser.yy (bare_int): remove rule.  From now on, we require
9979         # before negative integers.
9980
9981 2005-05-23  Graham Percival  <gperlist@shaw.ca>
9982
9983         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
9984
9985         * Documentation/user/lilypond.tely: change Unified index to
9986         LilyPond index.
9987
9988         * Documentation/user/advanced-notation.itely,
9989         instrument-notation.itely: editing.
9990
9991 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
9992
9993         * scm/lily.scm (lilypond-all): Bugfix: return failed.
9994
9995         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
9996
9997 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
9998
9999         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10000         ly:port-move.  Needs to be stderr-specific on mingw.
10001         Run fixcc.
10002
10003 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10004
10005         * lily/general-scheme.cc (ly:port-move): Remove.
10006
10007         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10008         windows.
10009
10010         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10011         variables.  This eliminates the need for a gs.bat wrapper, which
10012         opens a console.
10013
10014         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10015         * scm/lily.scm (running-from-gui?): 
10016         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10017         artifact of not compiling with -mwindows.
10018
10019         * scm/editor.scm: Define PLATFORM.
10020
10021 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10022
10023         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10024         can start to cut & paste lilypond-book fragments.  
10025
10026         * scm/define-music-types.scm (music-descriptions): remove
10027         UntransposableMusic
10028
10029 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10030
10031         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10032
10033 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10034
10035         * Documentation/user/instrument-notation.itely: remove *Engraver.
10036
10037         * Documentation/user/advanced-notation.itely: edit, rearrange.
10038
10039 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10040
10041         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10042         findresource iso. findfont for CID CFF fonts.
10043
10044         * VERSION (PACKAGE_NAME): release 2.5.25
10045
10046         * ly/Welcome_to_LilyPond.ly: add  \version
10047
10048 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10049
10050         * Documentation/user/programming-interface.itely: move
10051         \displayMusic into its own section.
10052
10053         * Documentation/user/basic-notation.itely: finish editing.
10054
10055 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10056
10057         * flower/file-path.cc (find): don't throw away file_name.dir, but
10058         append to it. Fixes \include with directories.
10059
10060         * flower/include/file-path.hh (class File_path): don't derive from
10061         Array<String>.
10062
10063         * flower/include/file-name.hh (class File_name): remove to_str0()
10064
10065         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10066         Hara_kiri_engraver in separate file.
10067
10068         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10069         translation went wrong. Fixes vertically translated slurs.
10070
10071 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10072
10073         * Documentation/user/basic-notaton.itely: editing.
10074
10075 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10076
10077         * Documentation/user/macros.itexi, basic-notation.itely:
10078         add @commonprop (commonly used properties) macro.
10079
10080 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10081
10082         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10083
10084         * scripts/lilypond-book.py (invokes_lilypond): new function
10085         (main): only run fontextract if invokes_lilypond() is true.
10086
10087         * lily/function-documentation.cc (ly_add_function_documentation):
10088         duh, use !=
10089
10090         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10091
10092         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10093
10094         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10095
10096         * lily/function-documentation.cc (ly_add_function_documentation):
10097         use scm_hash_table_p() for checking.
10098
10099 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10100
10101         * Documentation/user/advanced-notation.itely (Text scripts):
10102         Change nonexisting @internalsref{Text markup} to @ref{Text
10103         markup}.  Change @internalsref{Text script} to
10104         @internalsref{TextScript}.
10105
10106         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10107
10108 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10109
10110         * Documentation/user/tutorial.itely, basic-notation.itely,
10111         changing-defaults.itely: remove duplicate cindex entries
10112         that appear on the same page.
10113
10114         * scm/define-grobs.scm: change default padding for TextSpanner.
10115
10116         * Documentation/topdocs/AUTHORS.texi: update email address.
10117
10118         * Documentation/user/global.itely: add info about \include.
10119
10120 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10121
10122         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10123         when running-from-gui.
10124
10125         * scm/editor.scm (get-editor): Add platform defaults.
10126
10127         * scm/backend-library.scm (postscript->pdf): Typo.
10128
10129 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10130
10131         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10132
10133         * lily/font-config.cc (init_fontconfig): add warning about cache.
10134
10135 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10136
10137         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10138
10139 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10140
10141         * lily/horizontal-bracket.cc (print): Take care of the direction
10142         property so brackets above the stave point downwards. 
10143
10144         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10145         for HorizontalBracket so it doesn't end up within the stave.
10146
10147 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10148
10149         * lily/GNUmakefile (default): Typo.
10150
10151         * scm/lily.scm (PLATFORM): Export.
10152
10153         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10154         load-font-via-GS, ttftool or fopencookie is broken on windows.
10155         
10156         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10157         -dSAFER, that is broken on windows.
10158
10159 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10160
10161         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10162         for FlexLexer.h
10163
10164         * scripts/lilypond-invoke-editor.scm: remove stray -
10165
10166 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10167
10168         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10169         Fixes deprecation warning.
10170
10171         * flower/include/string.icc (to_string): Only inline if
10172         -DSTRING_UTILS_INLINED.
10173
10174         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10175         name.  Remove windows comment.
10176
10177         * scm/editor.scm (slashify): New function.
10178         (get-editor-command): Use it.
10179         (get-command-template): Do not alter editor command if
10180         environment value includes `%(file)s' magic.
10181
10182         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10183         (dissect-uri): Use it.
10184         (unquote-uri): Bugfix.
10185
10186 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10187
10188         * scm/framework-ps.scm (write-preamble): add TTF rule.
10189
10190         * Documentation/topdocs/README.texi (Top): remove note about
10191         xdelta.
10192
10193         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10194         requirement.
10195
10196         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10197         function. Figure out where FlexLexer.h lives
10198
10199         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10200         
10201 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10202
10203         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10204         with Windows root in file name.
10205
10206         * scm/backend-library.scm (ly:system): Only redirect output (using
10207         system and shell, ugh) if /dev/null is writable.
10208
10209         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10210         windows icon.
10211
10212         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10213         on Mingw.
10214
10215         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10216         click.
10217
10218         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10219         use result of stat when available.
10220
10221         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10222         absolute file name and root.
10223
10224         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10225
10226         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10227
10228         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10229         slashes in file name.
10230
10231 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10232
10233         * Documentation/user/preface.itely (Preface): Run
10234         texinfo-all-menus-update.
10235
10236         * scm/editor.scm (get-editor-command): Bugfix: allow full
10237         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10238
10239         * Documentation/pictures/lilypond-48.xpm: New file.
10240
10241         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10242
10243         * ly/Welcome_to_LilyPond.ly: New file.
10244
10245         * lily/main.cc (main): Only identify if we have a terminal.
10246
10247         * scm/backend-library.scm (postscript->png)
10248         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10249         non-/bin/sh).
10250
10251 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10252
10253         * Documentation/topdocs/AUTHORS.texi: polish, update.
10254
10255 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10256
10257         * Documentation/user/preface.itely (Notes for version 2.6): new
10258         notes for 2.6
10259
10260         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10261         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10262         is not fully contained" warnings.
10263
10264         * lily/slur-scoring.cc (get_bound_info): remove warning.
10265
10266         * lily/staff-symbol-engraver.cc (process_music): start initial
10267         spanner in process_music(). This fixes overrides of StaffSymbol
10268         properties.
10269
10270         * scm/framework-pdf.scm (Module): remove.
10271
10272         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10273
10274         * lily/ambitus-engraver.cc: formatting cleanups.
10275
10276         * mf/feta-solfa.mf (Module): remove.
10277
10278         * ChangeLog: more details about contributions.
10279
10280 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10281
10282         * lily/align-interface.cc (align_elements_to_extents): warn if
10283         called too early. Fixes: disappearing-staff-lines.ly
10284
10285         * VERSION (PACKAGE_NAME): release 2.5.24
10286
10287 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10288
10289         * stepmake/aclocal.m4: Typo.
10290
10291         * flower/string.cc (substitute): Take two strings or two
10292         characters.  Update callers.
10293
10294 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10295
10296         * flower/file-name.cc (File_name): Slashify.
10297
10298         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10299
10300         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10301
10302         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10303
10304         * configure.in (gui_b): Use it.
10305
10306         * lily/lilypond.rc.in: New file.
10307
10308         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10309
10310 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10311
10312         * Documentation/user/advanced-notation.itely: edit of Text
10313         section; clarify text scripts vs. text markup.
10314
10315 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10316
10317         * lily/multi-measure-rest-engraver.cc
10318         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10319         separation items on start. Fixes mm rests in start of score.
10320
10321         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10322         don't access StaffSymbol if not there.
10323         Fixes: crash-staff-symbol-engraver.ly.
10324
10325         * lily/instrument-name-engraver.cc (class
10326         Instrument_name_engraver): data member first_. Create
10327         InstrumentName on start. 
10328
10329 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10330
10331         * Documentation/user/instrument-notation.itely: add guitar
10332         position.
10333
10334         * Documentation/user/introduction.itely,
10335         Documentation/user/lilypond.tely,
10336         Documentation/user/tutorial.itely: begin pruning
10337         unused (duplicated) cindex entries and misc cleanup.
10338
10339 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10340
10341         * input/test/volta-chord-names.ly: Bring the explanation up to
10342         date.
10343
10344 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10345
10346         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10347         Specify `@documentencoding utf-8' for html, ignore warnings.
10348
10349 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10350
10351         * THANKS: Added bughunters.
10352
10353 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10354
10355         * lily/main.cc: update help string for `lilypond -H'.
10356
10357         * po/fi.po: update.
10358         
10359 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10360
10361         * Documentation/user/advanced-notation.itely: minor fixes.
10362
10363 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10364
10365         * scm/editor.scm: New module.
10366
10367         * scm/lily.scm (gui-main): Use it.
10368
10369         * scm/framework-gnome.scm (spawn-editor): Use it.
10370
10371         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10372
10373 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10374
10375         * scm/framework-ps.scm (load-font-via-GS):  new function.
10376
10377         * lily/pango-font.cc (pango_item_string_stencil): add support for
10378         CID keyed font.
10379
10380         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10381
10382 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10383
10384         * Documentation/user/basic-notation.itely: add @ref.
10385
10386         * Documentation/user/advanced-notation.itely: add example
10387         of 5/8 beaming.
10388
10389 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10390
10391         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10392
10393         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10394         going through ps2pdf wrappers.
10395
10396 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10397
10398         * Documentation/user/instrument-notation.itely: petrucci note
10399         heads: updated docu
10400
10401         * input/regression/note-head-style.ly: updated regression test;
10402         indentation fixes
10403
10404         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10405         heads as default
10406
10407         * mf/parmesan-heads.mf: minor editing; use musicological names
10408         (rather than optical description) as note head names
10409
10410         * scm/output-lib.scm: complete petrucci heads
10411
10412 2005-05-09  Pal Benko  <benkop@freestart.hu>
10413
10414         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10415         heads, but bigger)
10416
10417 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10418
10419         * lily/main.cc (main_with_guile): Remove no files check.
10420
10421         * lily/main.cc (ly:usage): Export to Scheme.
10422
10423         * scm/lily.scm (no-files-handler): New function.
10424
10425         * scm/lily.scm (lilypond-main): Use it.
10426
10427         * configure.in (gui_b): Add mbrtowc checking.
10428         Resurrect [utf8/]wchar.h checking.
10429
10430 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10431
10432         * Documentation/user/advanced-notation.itely (Metronome marks):
10433         Add link to the program reference for MetronomeMark
10434
10435         * Documentation/user/lilypond-book.itely (An example of a
10436         musicological document): Correct the example using psfonts 
10437
10438 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10439
10440         * po/fi.po: update after a lesson how to update entries against
10441         source.
10442         
10443         * po/TODO: document the lesson.
10444
10445 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10446
10447         * configure.in (gui_b): remove wcrtomb checking.
10448
10449         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10450         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10451
10452 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10453
10454         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10455         keep Scheme expressions and strings unmodified when doing the
10456         conversion to postfix notation for slurs and beams. Should
10457         hopefully solve most related conversion problems. 
10458
10459         * Documentation/user/lilypond-book.itely : Clarify and correct how
10460         to call dvips with -h psfonts.
10461
10462 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10463
10464         * Documentation/user/instrument-notation.itely (Entering lyrics):
10465         Typo.  Fixes build.
10466
10467 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10468
10469         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10470
10471         * Documentation/user/lilypond.tely, lilypond-book.itely,
10472         tutorial.itely: change references to 2.5.x to 2.6.x.
10473
10474         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10475         vs \lyricmode.
10476
10477         * Documentation/user/invoking.itely: remove old info about
10478         lilypond-profile.
10479
10480         * Documentation/topdocs/INSTALL.texi: remove old info about
10481         lilypond-profile, add warning about needing international fonts
10482         to build docs.
10483
10484 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10485
10486         * lily/include/grob-info.hh (class Grob_info): make data member
10487         private. Changes throughout.
10488
10489         * input/regression/alignment-order.ly: new file. 
10490
10491         * lily/vertical-align-engraver.cc (acknowledge_grob): read
10492         alignAboveContext and alignBelowContext
10493
10494 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10495
10496         * lily/pfb.cc (LY_DEFINE): add cast.
10497
10498         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
10499         matches .otf
10500         (write-preamble): warn about unknown fonts.
10501
10502         * lily/pfb.cc (Module): new function ly:otf->cff
10503
10504         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
10505         (get_otf_table): new function.
10506
10507 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10508
10509         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
10510         iso. ps2png.
10511
10512 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
10513
10514         * po/fi.po: apply second round of update.
10515
10516 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10517
10518         * scm/x11-color.scm (make-x11-color-handler): don't use
10519         #\sp. Apparently doesn't work on all platforms. 
10520
10521 2005-05-06  Graham Percival  <gperlist@shaw.ca>
10522
10523         * Documentation/user/advanced-notation.itely, putting.itely,
10524         tutorial.itely, global.itely, introduction.itely: really minor fixes.
10525
10526 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10527
10528         * VERSION (PACKAGE_NAME): release 2.5.23
10529
10530 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10531
10532         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
10533         convert to utf-8.
10534
10535         * THANKS: Add translators for this release, convert to utf-8.
10536
10537         * mf/GNUmakefile (MFTRACE_FLAGS):
10538         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
10539         outdir as option (WAS: hardcoded).
10540
10541 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10542
10543         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
10544         finished_span_
10545
10546         * THANKS: add Hans Forbrich.
10547
10548         * Documentation/topdocs/NEWS.tely (Top): document new feature.
10549
10550         * Documentation/user/basic-notation.itely (Staff symbol): document
10551         start/stop staff. Reference to ossia.ly
10552
10553         * input/test/ossia.ly: new example using stop and startStaff.
10554
10555         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
10556         in other words, don't create "|" barline at start of the score.
10557         (start_translation_timestep): don't set whichBar for start of score.
10558
10559         * input/regression/staff-halfway.ly: use new functionality.
10560
10561         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
10562         start and stop staff based on events.
10563
10564         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
10565
10566         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
10567
10568 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10569
10570         * Documentation/user/programming-interface.itely (How markups work
10571         internally ): remove \encoding reference.
10572
10573 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
10574
10575         * scripts/convert-ly.py: Attempt to do a smarter update of 
10576         text markups from versions < 1.9.0 with arbitrary nesting.
10577
10578 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
10579
10580         * po/fi.po: convert to utf-8, and update.
10581
10582 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10583
10584         * make/lilypond.suse.spec.in: update from suse 2.4 package.
10585
10586         * lily/*.cc: more <? >? to min/max changes
10587
10588         * lily/include/interpretation-context-handle.hh: rename
10589         Interpretation_context_handle to Context_handle.
10590
10591 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
10592
10593         * input/regression/GNUmakefile (local_delete): use `find` together 
10594         with `xargs` to avoid too long argument-lists in cmd line.
10595
10596 2005-05-04  Graham Percival  <gperlist@shaw.ca>
10597
10598         * Documentation/user/introduction.itely: updates "About this manual".
10599
10600         * Documentation/user/advanced-notation.itely,
10601         invoking.itely: minor fixes.
10602
10603 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10604
10605         * COPYING: add font exception. Update FSF address. 
10606
10607         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
10608         should be taken without child context.
10609
10610         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
10611
10612         * scm/define-markup-commands.scm (triangle): new command, as
10613         robust replacement for unicode Delta/Triangle.
10614
10615 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10616
10617         * ps/music-drawing-routines.ps: add fillp argument.
10618
10619         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
10620
10621         * lily/font-config.cc (init_fontconfig): don't add cff/
10622
10623         * VERSION (PACKAGE_NAME): release 2.5.22
10624
10625         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
10626
10627         * lily/grace-engraver.cc (consider_change_grace_settings): use
10628         is_alias(). Fixes problem with CueVoice grace notes. 
10629
10630         * lily/simultaneous-music-iterator.cc (construct_children): call
10631         Music_iterator::quit() for iterators that start out invalid. This
10632         fixes indefinitely continuing contexts.
10633
10634         * buildscripts/substitute-encoding.py: new file
10635
10636         * Documentation/user/basic-notation.itely (Basic polyphony): fix
10637         missing @end 
10638
10639         * scripts/lilypond-book.py (write_if_updated): print file name.
10640
10641         * Documentation/user/basic-notation.itely (Explicitly
10642         instantiating voices): idem.
10643
10644         * Documentation/user/advanced-notation.itely (Text spanners):
10645         remove stray { } 
10646
10647         * lily/context.cc (default_child_context_name): the default child
10648         is now first in accepts_list_.
10649
10650         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
10651         \defaultchild to all relevant contexts.  This fixes:
10652         drums-pitch.ly.
10653
10654         (Probably also fixes similar problems with ancient
10655         transcriptions getting CueVoices instead of the desired voices.)
10656  
10657         * lily/context-def.cc (get_default_child): new function.
10658         (get_accepted): place default child in front of list.
10659
10660         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
10661
10662         * lily/include/context-def.hh (struct Context_def): add
10663         default_accept_
10664
10665 2005-05-03  Graham Percival  <gperlist@shaw.ca>
10666
10667         * scm/define-grobs.scm: remove "remove-first" line, since
10668         the absent property is set to #f anyway.
10669
10670         * Documentation/user/basic-notation.itely,
10671         advanced-notation.itely, instrument-notation.itely: minor
10672         fixes.
10673
10674         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
10675
10676         * Documentation/user/advanced-notation.itely,
10677         changing-defaults.itely: consolidate Text stuff in
10678         advanced notation.
10679
10680         * Documentation/user/global.itely: better docs for \header.
10681
10682         * Documentation/user/putting.itely: new chapter; placeholder
10683         for future expansion.
10684
10685         * Documentation/user/examples.itely: moved "suggestions for
10686         writing LP files" section into putting.itely.
10687
10688         * Documentation/user/lilypond.itely: added new chapter,
10689         fixed the short table of contents.
10690
10691 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10692
10693         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
10694         infinity for unfeasible beams.
10695
10696         * make/lilypond.fedora.spec.in (Group): idem.
10697
10698         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
10699
10700         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
10701
10702         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
10703         fonts directly.
10704
10705         * buildscripts/gen-emmentaler-scripts.py (i): idem.
10706
10707         * mf/GNUmakefile: remove all CFF rules.
10708
10709         * scm/framework-ps.scm (ps-embed-cff): reinstate.
10710
10711         * lily/open-type-font-scheme.cc (LY_DEFINE):
10712         new function ly:otf-font-table-data.
10713         (LY_DEFINE): new function otf-font?
10714
10715 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10716
10717         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
10718         ($(outdir)/Fontmap.lily): idem.
10719
10720         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
10721         for PFAEmmentaler-XXX.pfa. 
10722
10723         * Documentation/user/music-glossary.tely (accidental): NL
10724         translation of accidental.
10725
10726 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
10727
10728         * flower/include/international.hh: Bugfix: include "string.hh".
10729
10730         * lily/include/mingw-compatibility.hh: New file.
10731
10732         * flower/include/libc-extension.hh (memrev): Rename from strrev.
10733
10734         * configure.in: Search for mingw wcrtomb library.
10735
10736 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
10737
10738         * scripts/convert-ly.py: Bug fix
10739
10740         * Documentation/user/changing-defaults.itely (Common tweaks):
10741         Added example where the context has to be specified explicitly
10742         (MetronomeMark). 
10743
10744 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10745
10746         * scripts/lilypond-book.py (ly_options): set timing to #f for
10747         notime option.
10748
10749         * scripts/convert-ly.py (conv): typo.
10750
10751         * flower/*.cc: remove <? and >?
10752         
10753         * lily/*.cc: remove <? and >?
10754
10755         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
10756         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
10757         editor.
10758
10759 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10760
10761         * lily/part-combine-engraver.cc: add space to variable list.
10762
10763 2005-04-30  Graham Percival  <gperlist@shaw.ca>
10764
10765         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
10766         remove-first to false (matches docs)
10767
10768         * Documentation/user/advanced-notation.itely: corrected docs
10769         concerning remove-first.
10770
10771 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
10772
10773         * lily/part-combine-engraver.cc: make sure that the relevant
10774         properties are included in the documentation.
10775
10776 2005-04-28  Graham Percival  <gperlist@shaw.ca>
10777
10778         * Documentation/user/lilypond-book.itely: Bernard's docs
10779         for \betweenLilyPondSystem.
10780
10781 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10782
10783         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
10784         remarks.
10785
10786 2005-04-28  Pal Benko  <benkop@freestart.hu>
10787
10788         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
10789         only on vertical lines of flexa shape, and use a constant
10790         thickness value for horizontal lines (patch slightly modified by
10791         Jürgen Reuter)
10792
10793         * lily/include/mensural-ligature.hh: make 2 comments clearer
10794
10795 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
10796
10797         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
10798         to need_extra_horizontal_space; bugfix: use class scope to avoid
10799         global namespace pollution
10800
10801         * Documentation/user/instrument-notation.itely (ligatures): added
10802         comment on possible future syntax change and how to work around
10803
10804         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
10805         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
10806         intervals (fixes agnus dei example)
10807
10808         * Documentation/user/instrument-notation.itely (white mensural
10809         ligatures): selected a more illustrative example
10810
10811 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
10812
10813         * Documentation/index.html.in: specify utf-8 charset in meta content.
10814
10815 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10816
10817         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
10818         empty 2nd page for single page.
10819
10820         * scm/lily.scm: remove p&c definitions.
10821
10822         * po/zh_TW.po (Module): new translation.
10823
10824         * lily/lily-guile.cc (ly_chain_assoc): remove.
10825
10826         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
10827         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
10828
10829 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10830
10831         * lily/beaming-info.cc: remove infinity_i
10832
10833         * scripts/abc2ly.py (out_filename): fix thinko with \version.
10834
10835 2005-04-26  Graham Percival  <gperlist@shaw.ca>
10836
10837         * Documentation/user/basic-notation.itely,
10838         instrument-notation.itely, advanced-notation.itely,
10839         changing-defaults.itely: minor fixes.  Added docs
10840         for colors to advanced-notation.itely.
10841
10842         * Documentation/user/advanced-notation.itely: fixed compile
10843         problem and added Bernard's x11-color doc patch.
10844
10845 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
10846
10847         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
10848         alright this time round.
10849
10850 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10851
10852         * Documentation/topdocs/INSTALL.texi (Top): idem.
10853
10854         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
10855
10856         * VERSION (MAJOR_VERSION): release 2.5.21
10857
10858         * scm/output-ps.scm (grob-cause): bugfix.
10859
10860 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
10861
10862         * cygwin/*: Update.
10863
10864         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
10865         stuff.
10866
10867         * scm/output-ps.scm (grob-cause): Bugfix.
10868
10869         * scm/lily.scm (ly:load): Remove x11-color.
10870
10871         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
10872         quote executable, fixes getting version from program --with
10873         --options.
10874         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
10875         $ac_exeect.
10876
10877         * Documentation/user/GNUmakefile: Only build music-glossary with
10878         rendered lilypond snippets during web.
10879
10880 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10881
10882         * po/de.po: update.
10883
10884         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
10885
10886 2005-04-22  Laura Conrad <lconrad@laymusic.org>
10887  
10888         * scripts/abc2ly:
10889         second title line append with punctuation dash character;
10890         encode abc2ly python strings in utf-8
10891        
10892 2005-04-21  Laura Conrad <lconrad@laymusic.org>
10893
10894         * scripts/abc2ly fix chords (again)
10895  
10896 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
10897
10898         * scm/x11-color.scm: new file
10899         All x11 color names can be accessed with:
10900         #(x11-color 'ColorName),
10901         #(x11-color "ColorName") or:
10902         #(x11-color "color name")
10903         If the x11 color name is not recognised then it defaults
10904         to black
10905
10906         * scm/lily.scm: amended to call scm/x11-color.scm
10907
10908 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10909
10910         * Documentation/user/invoking.itely (Reporting bugs): comment out
10911         reference to online PNG bug repository.
10912
10913 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10914
10915         * lily/translator-scheme.cc (ly:translator-property): Remove.
10916         Update callers.
10917
10918         * lily/context-scheme.cc (ly:context-now): Move from translator.
10919         Update callers.
10920
10921 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10922
10923         * input/regression/grid-lines.ly (skips): refine example.
10924
10925         * scm/define-context-properties.scm
10926         (all-user-translation-properties): doc autoBeamCheck
10927
10928         * input/regression/grid-lines.ly (Module): new file.
10929
10930         * lily/grid-point-engraver.cc (Module): new file.
10931
10932         * lily/grid-line.cc (Module): new file.
10933
10934         * lily/grid-line-span-engraver.cc (Module): new file.
10935
10936         * lily/grid-line-interface.cc (Module): new file.
10937
10938 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10939
10940         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
10941         missing parameter, actualy cdr through list.  Actually return a
10942         list with ENTRY removed (was '()).
10943
10944         * scripts/convert-ly.py: Update.  Print warning if file cannot be
10945         opened.
10946         (do_conversion): Fix printing of continuation comma.
10947
10948         * Documentation/user/advanced-notation.itely (Beam formatting):
10949         Remove refbugs about compound time and mixed duration.
10950
10951         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
10952         modulo moments explicitely.
10953
10954         * lily/moment.cc (operator %): New function.
10955
10956         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
10957
10958         * lily/translator-scheme.cc (ly:translator-now,
10959         ly:translator-property): New function.
10960
10961         * scm/auto-beam.scm (default-auto-beam-check): New function.
10962
10963         * lily/auto-beam-engraver.cc (test_moment): Use it.
10964
10965         * flower/rational.cc (operator %): Bugfix.
10966
10967 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
10968
10969         * scripts/abc2ly: Bugfix
10970
10971 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10972
10973         * python/fontextract.py (write_extracted_fonts): bugfix, too many
10974         %'s on EndFont comment.
10975
10976         * lily/ledger-line-spanner.cc: some more words of explanation.
10977
10978 2005-04-20  John Williams <williams@tni.com>  
10979         
10980         * scripts/lilypond-book.py: htmlquote bugfix.
10981         Allow snippets to be given distinct filenames.
10982         Allow the default alt text to be overridden.
10983
10984 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
10985
10986         * ly/performer-init.ly: Bugfix
10987
10988         * THANKS: Added bughunters.
10989
10990 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10991
10992         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
10993
10994         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
10995         position (was: use modulo measure length).
10996
10997         * configure.in (no gui_b): Remove optional gtk+ requirement.
10998
10999 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11000
11001         * Documentation/user/basic-notation.itely (Pitches): add
11002         LedgerLineSpanner.
11003
11004         * lily/dynamic-engraver.cc (process_music): set right bound to
11005         script if present. Else, do not set.
11006         (acknowledge_grob): only set right bound of finished spanner to
11007         note column if no other bound is set.
11008
11009         * python/lilylib.py (make_ps_images): switch back to png16m.
11010         
11011 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11012
11013         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11014         writing up to date file.  Add dvips usage suggestion.
11015
11016         * scripts/convert-ly.py: Fix error message.
11017         Print usage if no files on command line.
11018         (usage): Add example usage.
11019
11020         * input/test/compound-time.ly: New file.
11021
11022         * input/test/circle.ly: New file.
11023
11024         * Documentation/topdocs/NEWS.tely: Use them.
11025
11026         * input/test/boxed-stencil.ly: Remove \score.
11027
11028         * buildscripts/mf-to-table.py (base): Add .log dependency.
11029
11030         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11031         pfa's.  Add .log dependency
11032
11033         * scm/define-markup-commands.scm (lower): New command.
11034
11035         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11036         make it default.
11037
11038 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11039
11040         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11041         also to finished cresc as right bound. This fixes:
11042         skip-string-decresc.ly
11043
11044         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11045         relative_coordinate if extent is empty.
11046
11047         * lily/stem.cc (width_callback): determine correct extent if flag
11048         is not there. This fixes slur-no-flag.ly
11049
11050         * lily/grace-engraver.cc (consider_change_grace_settings): new
11051         function.
11052         (initialize): also consider_change_grace_settings() on
11053         initialization. Fixes large grace notes at start of score.
11054
11055         * lily/break-align-interface.cc (do_alignment): don't translate if
11056         total_extent is empty.
11057
11058         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11059
11060 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11061
11062         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11063         with slash.
11064
11065 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11066
11067         * stepmake/aclocal.m4: Remove tfm_path.
11068
11069 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11070
11071         * scm/music-functions.scm (markup-expression->make-markup): fix
11072         bug with cons arguments of markup commands.
11073         (music->make-music): fix music expression property list building
11074
11075 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11076
11077         * aclocal.m4: Massage package names.
11078
11079         * SCons updates.
11080
11081 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11082
11083         * VERSION (PACKAGE_NAME): release 2.5.20
11084
11085         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11086         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11087
11088         * lily/percent-repeat-engraver.cc (try_music): add measure before
11089         next_moment to future processing moment. Fixes:
11090         percent-repeat-mm-rest.ly
11091         (process_music): don't add moment for 2nd time.
11092
11093         * input/regression/repeat-percent.ly: add mmrests as extra test.
11094
11095         * lily/axis-group-engraver.cc (acknowledge_grob): read
11096         keepAliveInterfaces to decide what to kill.
11097
11098         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11099         percent-repeat-interface to keepAliveInterfaces. This fixes
11100         percent-repeat-harakiri.
11101
11102 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11103
11104         * SCons updates.
11105
11106 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11107
11108         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11109
11110         * aclocal.m4: remove --enable-tfm-path configure option
11111
11112         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11113
11114         * scm/backend-library.scm (postscript->png): newline after
11115         finishing command.
11116
11117         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11118         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11119
11120         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11121
11122         * lily/score.cc (default_rendering): use Music_output too.
11123
11124         * input/test/chord-names-languages.ly (Module): rename file.
11125
11126         * lily/text-spanner.cc: add bound-padding.
11127
11128         * lily/paper-book.cc (systems): accept Paper_score
11129         iso. Paper_system vector. 
11130
11131         * input/regression/line-arrows.ly: new file.
11132
11133         * lily/paper-score.cc (process): run get_paper_systems() only once.
11134
11135         * lily/line-spanner.cc (line_stencil): add arrows.
11136
11137 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11138
11139         * lily/line-interface.cc (make_arrow): new function. 
11140         (arrows): idem.
11141
11142 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11143
11144         * input/test/chord-names-german.ly: update for italian/french
11145         chords.
11146         
11147         * Documentation/user/instrument-notation.itely (Printing chord
11148         names): update.
11149
11150 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11151
11152         * lily/include/paper-score.hh (class Paper_score): remove unused
11153         prototypes.
11154
11155         * lily/book.cc (process): add -COUNT to midi output.
11156
11157         * lily/score.cc (book_rendering): remove outname argument
11158         (book_rendering): return list of Music_outputs. 
11159
11160         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11161
11162         * lily/book.cc (process): loop over Music_outputs returned from
11163         Score::book_rendering().
11164
11165         * lily/*.cc (width_callback): remove spurious "unused" warnings
11166         for assert (axis==[XY]_AXIS); 
11167
11168         * lily/include/music-output.hh (class Music_output): smobify class.
11169
11170         * lily/include/paper-score.hh (class Paper_score): make members
11171         private.
11172
11173         * lily/performance.cc (process): return #f iso. #<undefined>. This
11174         prevents #<undefined> leaking into GUILE-userspace.
11175
11176 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11177
11178         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11179
11180 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11181
11182         * scm/chord-name.scm : support for italian and french
11183         chords names.
11184
11185         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11186         a space defined by chordPrefixSpacer when the root name is
11187         direclty followed by a prefix.
11188
11189         * ly/engraver-init.ly : chordPrefixSpacer       
11190         * scm/define-context-properties.scm : chordPrefixSpacer
11191         * ly/property-init.ly : italianChords, frenchChords 
11192
11193 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11194
11195         * mf/feta-din.mf: Remove.
11196
11197         * mf/GNUmakefile (fontdir): Bugfix.
11198
11199         * mf/SConstruct: Some updates.
11200
11201         * SConstruct: Require pkg-config.
11202         (test_program): Bugfix for double digit version compares, use
11203         integer (not string-) compare.
11204         Optionally require gs 8.14.
11205
11206         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11207
11208         * lily/*: s/ifdef HAVE_*/if have/.
11209
11210         * SConstruct (test_lib): New function.  Update pkg-config and some
11211         other requirements.
11212
11213         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11214         freetype, pangof2t.
11215
11216 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11217
11218         * po/lilypond.pot, ...: Update using bison-CVS.
11219
11220         * python/lilylib.py (make_ps_images): Fixo.
11221
11222 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11223
11224         * python/lilylib.py (make_ps_images): typo.
11225
11226         * configure.in (gui_b): make bison optional.
11227
11228         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11229
11230 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11231
11232         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11233         with one parameter can be defined in a LaTeX file when processed
11234         by lilypond-book this will be evaluated between the systems of
11235         a multi-system score. The parameter is the number of systems processed.
11236
11237 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11238
11239         * python/lilylib.py (make_ps_images): Escape newline.
11240
11241         * Documentation/user/music-glossary.tely: Run
11242         texinfo-all-menus-update.
11243
11244 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11245
11246         * scm/lily-library.scm (old-relative-not-used-message)
11247         (version-not-seen-message): Add input-file-name-location to message.
11248
11249         * lily/parser.yy (lilypond): Add token aliases.
11250
11251         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11252         not confuse with alteration.
11253         (alteration): Add.
11254
11255 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11256
11257         * python/lilylib.py (make_ps_images): use -dEPSCrop
11258
11259         * VERSION (PACKAGE_NAME): release 2.5.19 
11260
11261         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11262         only put xrefs in info documentation.
11263
11264         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11265         .pdf rule to tex-rules.make.
11266
11267         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11268         from -systems.* output.
11269
11270         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11271         directly, remove -$(PAGESIZE) target.
11272
11273         * input/test/embedded-postscript.ly: update.
11274
11275 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11276
11277         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11278
11279         * Documentation/user/changing-defaults.itely (Font selection):
11280         document font-name.
11281
11282         * input/regression/font-name.ly: show Pango fonts for
11283         font-name. Update example. 
11284
11285         * lily/pango-select.cc (properties_to_pango_description): don't
11286         convert symbol font-size to number, but use to lookup.
11287
11288         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11289
11290         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11291         (NAME . FILE-NAME) tuples for font descriptions. 
11292         (write-preamble): display BeginFont DSC comments.
11293
11294         * python/fontextract.py (write_extracted_fonts): new file. Extract
11295         font resources from a PS file.
11296
11297         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11298         (Compile_error.process_include): do_file returns chunks.
11299
11300         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11301
11302         * make/lysdoc-targets.make: .texi is .PRECIOUS
11303
11304         * scripts/lilypond-book.py (write_if_updated): new function.
11305
11306 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11307
11308         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11309
11310 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11311
11312         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11313
11314         * input/regression/markup-syntax.ly: remove \score.
11315
11316         * scm/define-markup-commands.scm (draw-circle): add fill argument
11317
11318         * scm/stencil.scm (make-circle-stencil): add fill argument
11319
11320         * ps/music-drawing-routines.ps: add fill argument.
11321
11322         * ly/performer-init.ly: add CueVoice to MIDI too.
11323
11324         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11325         EndEPSF.
11326
11327         * input/regression/markup-eps.ly: new file.
11328
11329         * scm/framework-ps.scm (write-preamble): change order: vars should
11330         be inited before procedures.
11331
11332         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11333         for EPS files.
11334
11335         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11336
11337 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11338
11339         * configure.in (gui_b): add check for ghostscript 8.15
11340
11341 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11342
11343         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11344         start of line. Fixes cresc-after-newline.ly
11345
11346         * lily/source-file.cc (file_line_column_string): use get_column().
11347
11348 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11349
11350         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11351
11352 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11353
11354         * lily/*: use message () iso progress_indication () for messages.
11355         Revise/uniformise user messages.
11356
11357         * flower/warn.cc (progress_indication): New function.
11358         (message): Use it.  Fixes newline problems.
11359
11360         * config.make.in (webdir): Sort out install dirs.
11361
11362         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11363
11364         * python/lilylib.py (command_name): Bugfix.
11365         (make_ps_images):
11366
11367 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11368
11369         * lily/main.cc: --help says what types of backends are availabe
11370
11371 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11372
11373         Fix ./VERSION dependency, and without need to reconfigure.
11374
11375         * lily/main.cc (setup_paths): Update.
11376
11377         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11378
11379         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11380
11381         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11382         Add \line for some simplistic cases.
11383
11384         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11385
11386 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11387
11388         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11389         to compile LY files (useful for adding eg. "-I" args)
11390         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11391         2Gnome command for gnome backend.
11392         (LilyPond-command-formatgnome): call the 2Gnome command. key
11393         binding: C-c C-g
11394
11395 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11396
11397         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11398         depend on all PNG images.
11399
11400 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11401
11402         * GNUmakefile.in: Bugfix: also link .map files.
11403
11404 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11405
11406         * scm/music-functions.scm (music->make-music): generate 
11407         a (make-music ...) sexpr from a music expression.
11408         (display-scheme-music): use guile pretty printer to display the
11409         make-music sexpr.
11410
11411 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11412
11413         * ly/engraver-init.ly: reindent.
11414         Add CueVoice.
11415
11416         * scm/music-functions.scm (music-pretty-string): handle moments
11417         too.
11418         (music-pretty-string): only print non-empty lists.
11419         (cue-substitute): create CueVoice context, which has smaller type.
11420
11421         * lily/moment-scheme.cc (LY_DEFINE): new methods
11422         ly:moment-grace-{numerator,denominator}
11423
11424         * lily/context-handle.cc: remove quit() method. 
11425
11426         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11427         (init_fontconfig): success is 0, not !0
11428
11429 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11430
11431         * mf/feta-nummer-code.mf (code): add plus glyph.
11432
11433         * lily/tie.cc (print): idem.
11434
11435         * lily/slur.cc (print): don't use thickness property for
11436         slur shape-thickness.
11437
11438         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11439         while adding stencils.
11440
11441         * scm/define-markup-commands.scm (with-color): with-color markup
11442         command.
11443         (whiteout): new markup command 
11444         (filled-box): new markup command
11445
11446 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11447
11448         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11449         test for PDF docs.
11450
11451         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11452         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11453         
11454         Notes for tetex-3.0 make web:
11455            psclean.map: s/uhv8a/uhvr8a/
11456            config.ps add:
11457                 p +psfonts_t1.map
11458                 p +psclean.map
11459                 p +typeface.map
11460
11461 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11462
11463         * scm/music-functions.scm (music-pretty-string): fix bug with
11464         string argument.
11465
11466 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11467
11468         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11469
11470 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11471
11472         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11473         only process options if they're there.
11474         (write_file_map): add version-seen? to snippet-map.ly
11475
11476 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11477
11478         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
11479         formatting cleanups.
11480
11481         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
11482         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
11483
11484 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11485
11486         * scm/framework-ps.scm (ps-font-command): don't hash, just use
11487         name directly.
11488
11489         * lily/main.cc (setup_paths): either add mf/out to search path or 
11490         fonts/{otf,type1,etc}
11491         
11492         * lily/font-config.cc (init_fontconfig): either add mf/out to
11493         FontConfig or fonts/{otf,type1,etc}
11494
11495         * GNUmakefile.in: don't put mf/ link in share/ dir.
11496
11497         * lily/staff-spacing.cc: move same-direction-correction to
11498         note-spacing-interface
11499
11500         * scm/lily.scm (lilypond-main): use variable argument count for
11501         exception handler.
11502
11503         * lily/font-config.cc (init_fontconfig): add operator pacification
11504         message.
11505
11506         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
11507
11508         * buildscripts/gen-emmentaler-scripts.py (i): generate
11509         PFAEmmentaler as well.
11510
11511         * scm/framework-ps.scm (munge-lily-font-name): new function
11512         (write-preamble): hack: insert PFA equivalent of CFF into
11513         .PS. This makes LilyPond output printable on normal PS printers
11514         again.
11515
11516         * buildscripts/gen-emmentaler-scripts.py (i): generate
11517         PFAEmmentaler.pfa aswell.
11518
11519 2005-04-06  John Williams <williams@tni.com>  
11520         
11521         * scripts/lilypond-book.py: refactor the compose_ly procedure.
11522         
11523 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11524
11525         * scm/page-layout.scm (default-page-make-stencil): always combine
11526         the header stencil, even if empty. This prevents the body text to
11527         reach up to the margins.
11528
11529         * po/rw.po (Module): new file, for Kinyarwanda.
11530
11531         * input/test/spacing-optical.ly (Module): new file.
11532
11533         * lily/staff-spacing.cc: add same-direction-correction
11534
11535 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11536
11537         * Documentation/user/introduction.itely (Engraving): Comment-out
11538         non-existent file.
11539
11540 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11541
11542         * scm/define-grob-properties.scm (all-user-grob-properties): add
11543         same-direction-correction
11544
11545         * VERSION: release 2.5.18
11546
11547 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
11548
11549         * lily/grob.cc (mark_smob): Check pscore->layout_ before
11550         dereferencing.  Fixes make web.
11551
11552         * lily/midi-stream.cc: Handle unwritable midi file.  Include
11553         errno.h.
11554
11555         * Documentation/user/: Fix links.
11556
11557 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11558
11559         * lily/text-interface.cc (Module): rename from text-item.cc
11560
11561         * input/regression/apply-output.ly (texidoc): function naming fix.
11562
11563         * lily/time-signature-performer.cc (derived_mark): new function.
11564
11565         * lily/lily-parser-scheme.cc:  print mapped file name for progress
11566
11567         * scripts/lilypond-book.py (find_linestarts): new function.
11568         (find_toplevel_snippets): keep track of line numbers.
11569
11570         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
11571         all key changes.
11572
11573         * ly/declarations-init.ly (partCombineListener): use
11574         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
11575
11576         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
11577
11578 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
11579
11580         * lily/text-item.cc: Fix link.
11581
11582         * Documentation/user/changing-defaults.itely (Changing defaults):
11583         Fix programs reference links.
11584
11585         * Documentation/user/music-glossary.tely: Convert to utf-8.
11586
11587 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11588
11589         * make/lilypond-vars.make: remove TEXMF from variables.
11590         remove DEB_BUILD pk font variables.
11591         remove GUILE_LOAD_PATH
11592         remove TeX memory vars.
11593
11594 2005-04-04  Werner Lemberg  <wl@gnu.org>
11595
11596         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
11597
11598 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11599
11600         * ps/lilyponddefs.ps: remove reencode-font
11601
11602         * lily/simple-spacer.cc (add_columns): also compare
11603         directly. Column rank doesn't distinguish between broken and
11604         unbroken columns. This fixes large spaces before time sig changes.
11605
11606         * Documentation/user/point-and-click.itely: document ly:set-option.
11607
11608         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
11609         point_and_click_global is set.
11610
11611         * lily/scm-option.cc (LY_DEFINE): add point-and-click
11612         ly:set-option argument.
11613
11614 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11615
11616         * GNUmakefile.in: Include symlinks in webball.
11617
11618         * Documentation/user/GNUmakefile (source-links): Add symlinks to
11619         source dir for split and non-split manuals.
11620
11621         * Documentation/user/*y: Fix @uref/@inputfile links for
11622         split/non-split HTML documents.
11623
11624         * Documentation/user/GNUmakefile (local-WWW): Do not generate
11625         .ps.gz.
11626         
11627 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11628
11629         * GNUmakefile.in: Add newline.
11630
11631 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
11632
11633         * tex/lilyponddefs.tex: use color instead of xcolor
11634         * scm/output-tex.scm: minor editing
11635
11636 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11637
11638         * scm/music-functions.scm (display-scheme-music): pretty printer
11639         for music expressions.
11640
11641 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11642
11643         * buildscripts/install-info-html.sh (index_file): Fix link.
11644
11645 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
11646
11647         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
11648
11649         * Documentation/index.html.in: Add size estimates with some big pages.
11650
11651         * Documentation/user/tutorial.itely (Running LilyPond for the
11652         first time): Add/replace some @rglos links.  TODO: add more
11653         @rglos links in tutorial, test non-intrusiveness (.css).
11654
11655         * stepmake/bin/add-html-footer.py (do_file): Remove info's
11656         annoying's indication of referencing external document.
11657
11658         * Documentation/user/GNUmakefile: Split version of glossary too.
11659         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
11660         links, not only for html.
11661
11662         * Documentation/user/introduction.itely: Fix some links for other
11663         than html, do not use `here' as link name.
11664
11665 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
11666
11667         * scm/documentation-generate.scm (string-append): Fix @usermanref,
11668         @glossaryref.
11669
11670 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11671
11672         * scm/page-layout.scm (default-page-make-stencil): only add header
11673         if existing and not empty. Fixes spurious programming error.
11674
11675         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
11676
11677 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
11678
11679         * scm/output-tex.scm: implement {re,}setcolor
11680         * tex/lilyponddefs.tex: use color package
11681
11682 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
11683
11684         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
11685         additions to website.
11686
11687         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
11688
11689         * Documentation/user/macros.itexi: Fix @usermanref html links in
11690         split documents: use @inforef.
11691
11692 2005-03-30  Graham Percival  <gperlist@shaw.ca>
11693
11694         * Documentation/user/programming-interface.itely: minor fix.
11695
11696         * Documentation/user/advanced-notation.itely: added info to
11697         Metronome markings.
11698
11699 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
11700
11701         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
11702         use box-stencil.  Remove y-padding argument.
11703         (make-stencil-circler): New function.
11704
11705         * buildscripts/lilypond-words.py (F): 
11706         * elisp/SConscript (a): 
11707         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
11708         * vim/SConscript (a): 
11709         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
11710
11711         * lily/general-scheme.cc: Build fix.
11712
11713         * scm/markup.scm:
11714         * input/regression/markup-scheme.ly: 
11715         * input/regression/markup-syntax.ly: Drop 'new-' from name.
11716
11717         * scm/stencil.scm (make-circle-stencil): New function.
11718
11719         * scm/define-markup-commands.scm (draw-circle): Use it.  New
11720         name (was cicle).  Update callers.
11721         (circle): New markup command, similar to box.
11722
11723         * scm/stencil.scm (circle-stencil): New function.
11724
11725 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
11726
11727         * configure.in: Detect libutf8/wchar.h variant.
11728
11729         * stepmake/aclocal.m4: Modify shared size test.
11730
11731 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11732
11733         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
11734
11735 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11736
11737         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
11738         
11739         * VERSION (PACKAGE_NAME):  release 2.5.17
11740
11741 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
11742
11743         * scm/backend-library.scm (postscript->png): Fix comment and png
11744         message.
11745
11746         * GNUmakefile.in (link-tree): Fix locales.
11747
11748 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11749
11750         * lily/stencil-scheme.cc (LY_DEFINE): change to
11751         ly:stencil-aligned-to, non mutating.
11752
11753         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
11754
11755         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
11756
11757         * lily/quote-iterator.cc (derived_mark): call
11758         Music_wrapper_iterator::derived_mark() too.
11759
11760         * lily/grace-engraver.cc (derived_mark): change signature, add
11761         const.
11762
11763 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11764
11765         * SConstruct (symlink): 
11766         * GNUmakefile.in (link-tree): Add scripts to prefix.
11767
11768         * lily/general-scheme.cc (ly:effective-prefix): New function.
11769
11770         * scm/backend-library.scm (postscript->png): Use it.
11771
11772 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11773
11774         * lily/paper-score.cc (process): don't delete grobs after
11775         producing stencils. 
11776
11777         * scm/part-combiner.scm (determine-split-list): switch off
11778         debugging info.
11779
11780         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
11781         if available.
11782
11783         * scm/define-context-properties.scm
11784         (all-user-translation-properties): add stringNumberOrientations.
11785
11786         * lily/new-fingering-engraver.cc (position_scripts): make generic,
11787         so fingering and string-numbers are separately controlled.
11788
11789 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11790
11791         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
11792         not use debugging.
11793
11794 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11795
11796         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
11797
11798         * config.hh.in: add HAVE_FONTCONFIG.
11799
11800         * Documentation/user/instrument-notation.itely (String number
11801         indications): new node.
11802
11803         * input/regression/new-markup-syntax.ly (texidoc): add circle.
11804
11805         * lily/new-fingering-engraver.cc (add_string): new function. 
11806         (acknowledge_grob): accept string-number-event as well.
11807
11808         * scm/define-markup-commands.scm (circle): new markup command.
11809
11810         * scm/output-lib.scm (print-circled-text-callback): new function.
11811
11812         * lily/GNUmakefile: move ifeq after include stepmake.make.
11813
11814 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11815
11816         * config.make.in (HAVE_LIBKPATHSEA_SO):
11817         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
11818
11819         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
11820         add KPATHSEA_LIBS.
11821
11822         * debian/watch: 
11823         * debian/control: Update.
11824
11825 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11826
11827         * input/test/title-markup.ly (spaceTest): remove.
11828
11829         * input/test/embedded-tex.ly (Module): remove.
11830
11831         * input/test/music-box.ly: use 'name property, not ly:music-name.
11832
11833         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
11834
11835         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
11836
11837 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11838
11839         * Documentation/topdocs/INSTALL.texi (Top): Remove information
11840         about xdeltas.  Add information about CVS.
11841
11842         * scm/lily.scm (lilypond-main): Fix invocation of handler,
11843         gracefully handle failed files.
11844
11845         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
11846
11847         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
11848         small fixes.
11849
11850         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
11851         No unnecessarily specific i18n messages.  Remove stray `1'.
11852
11853 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11854
11855         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
11856         documentencoding
11857
11858         * scm/documentation-lib.scm (texi-file-head): set utf-8
11859         documentencoding.
11860
11861         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
11862         Delta, not the Symbol one. 
11863
11864         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
11865         for the .map file.
11866
11867         * Documentation/topdocs/INSTALL.texi (Top): add running
11868         requirement as compilation requirement.
11869
11870 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11871
11872         * buildscripts/mutopia-index.py (headertext): add h1 header and
11873         utf-8 charset meta field.
11874
11875         * input/GNUmakefile: prune example list.
11876
11877         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
11878         options.
11879
11880         * lily/slur-scoring.cc (get_base_attachments): only look at stem
11881         extent for visible stems.
11882
11883         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
11884
11885 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
11886
11887         * Documentation/topdocs/INSTALL.texi (Top): Updates.
11888
11889         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
11890
11891 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11892
11893         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
11894         pass inf/nan into slur scoring.
11895
11896         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
11897         page.
11898
11899         * scripts/abc2ly.py (dump_voices): use alphabet().
11900
11901 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
11902         
11903         * mf/GNUmakefile (depth): use $(FONTFORGE). 
11904
11905 2005-03-27 Matthias Neeracher <neeracher@mac.com>
11906         
11907         * flower/include/virtual-methods.hh: simplify. Patch by
11908
11909 2005-03-25  John Williams <williams@tni.com>  
11910
11911         * scripts/lilypond-book.py (main): add png for HTML too, guess
11912         only if necessary. 
11913
11914 2005-03-25  Graham Percival  <gperlist@shaw.ca>
11915
11916         * Documentation/topdocs/INSTALL.texi: now recommends
11917         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
11918
11919         * Documentation/user/basic-notation.itely,
11920         Documentation/user/tutoria.itely: warn about
11921         only one (phrasing) slur at once.
11922
11923 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
11924
11925         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
11926
11927 2005-03-23  Graham Percival  <gperlist@shaw.ca>
11928
11929         * Documentation/user/basic-notation.itely: fixed info about
11930         ending a (de)cresc.
11931
11932         * Documentation/user/lilypond-book.itely: fixed
11933         lilypond-book filter example and warned about not doing
11934         --filter and --process at the same time.
11935
11936 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
11937
11938         * lily/parser.yy (bass_number),
11939         Documentation/user/instrument-notation.itely (Figured bass): 
11940         Add the possibility to use text markup in figured bass. 
11941
11942 2005-03-19  Graham Percival  <gperlist@shaw.ca>
11943
11944         * Documentation/user/global.itely: added info about naming
11945         identifiers and breakbefore.
11946
11947         * Documentation/user/invoking.itely: added info about batch
11948         processing files with convert-ly, removed references to TeX
11949         in the jail section.
11950
11951         * Documentation/user/examples.itely: possibly fixed piano
11952         dynamics.
11953
11954         * Documentation/user/advanced-notation.itely: added info
11955         about removing other types of Staff.
11956
11957         * Documentation/user/instrument-notation.itely: possibly
11958         fixed piano staff line switch.
11959
11960         * Documentation/user/changing-defaults.itely: added info
11961         about using normal font in titles.
11962
11963 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11964
11965         * VERSION (PATCH_LEVEL): release 2.5.16
11966
11967         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
11968         explicitly.
11969
11970 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11971
11972         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
11973         whitespace.
11974
11975         * python/lilylib.py (make_ps_images):
11976         * scm/backend-library.scm (postscript->pdf, postscript->png):
11977         Quote file name.  Use format rather than string-append juggling.
11978
11979 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11980
11981         * python/lilylib.py (make_ps_images): add x to -g argument. 
11982
11983         * lily/key-performer.cc (create_audio_elements): don't use
11984         scm_eval_string. Check for minor 3rd directly.
11985   
11986         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
11987         (sarabandeCelloGlobal): key is D minor, not F major.
11988
11989 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11990
11991         Fix truncated --png output (Peter Danenberg).
11992         
11993         * python/lilylib.py (make_ps_images):
11994         * scripts/ps2png.py (copyright): Grok --papersize option.
11995
11996         * scm/backend-library.scm (postscript->png): Add parameter
11997         PAPERSIZE.  Update callers.
11998
11999         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12000         Fixes symbol placement.
12001
12002         * lily/spanner.cc: 
12003         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12004         <libc-extension.hh>).
12005
12006 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12007
12008         * Nitpick run.
12009
12010         * buildscripts/fixcc.py: Update.
12011
12012         Builddir run fixes.
12013
12014         * HACKING (datadir): Add VERSION.
12015
12016         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12017         higher up.
12018
12019 2005-03-15  Werner Lemberg  <wl@gnu.org>
12020
12021         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12022         diagonal stem doesn't become thinner.
12023
12024 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12025
12026         * buildscripts/fixcc.py: Fixes (Werner).
12027
12028 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12029
12030         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12031         Emmentaler/Aybabtu.
12032
12033         * GNUmakefile.in: fix lilypond-words path.
12034
12035         * po/tr.po: update to 2.3.21
12036
12037         * lily/new-fingering-engraver.cc (position_scripts): take priority
12038         from head position.
12039
12040         * input/regression/finger-chords-order.ly (texidoc): new file.
12041
12042 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12043
12044         * make/ly-rules.make: 
12045         * stepmake/aclocal.m4: 
12046         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12047
12048         * buildscripts/fixcc.py (rules): Leave space after operator.
12049
12050 2005-03-14  Werner Lemberg  <wl@gnu.org>
12051
12052         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12053         top of the glyph with smooth curve.
12054
12055 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12056
12057         * Documentation/user/global.itely (Page layout): remove
12058         printpagenumber.
12059
12060 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12061
12062         * input/regression/mensural-ligatures.ly: new file (with examples
12063         compiled by Pal Benko).
12064
12065         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12066         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12067         musicglyph access.  Many small beautifications in ancient
12068         examples.
12069
12070         * input/test/divisiones.ly: fixed indentation; small
12071         beautifications
12072
12073         * ly/engraver-init.ly: added FIXME comment
12074
12075         * scripts/lilypond-book.py,
12076         Documentation/user/lilypond-book.itely: added music fragment
12077         option "packed" to lilypond-book
12078
12079         * Documentation/user/instrument-notation.itely: Bugfix: added
12080         missing LedgerLineSpanner color setting in several places.  Added
12081         music fragment option "packed" to VaticanaContext example.
12082
12083 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12084
12085         * scm/define-grobs.scm (all-grob-descriptions): switch off
12086         Hyphen_spanner::set_spacing_rods 
12087
12088         * lily/lyric-hyphen.cc (print): add padding between syllable and
12089         hyphen.
12090         (print): shorten hyphen in tight situations (determine using
12091         minimum-length)
12092
12093         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12094         0.4pt.
12095
12096 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12097
12098         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12099
12100         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12101         header/footer markings for regression-test.
12102
12103         * scm/backend-library.scm (output-scopes, header-to-file): Move
12104         from framework-tex.scm.
12105
12106         * scm/framework-ps.scm (output-framework)
12107         (output-preview-framework):
12108         * scm/framework-eps.scm (output-classic-framework)
12109         (output-framework): Use it.  Fixes collated files.
12110
12111 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12112
12113         * input/sakura-sakura.ly: 
12114         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12115
12116         * buildscripts/guile-gnome.sh: Update.
12117
12118         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12119
12120         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12121
12122 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12123
12124         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12125         culprit: always exit the loop if we find a rod, even if it has
12126         distance < 0. 
12127
12128         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12129         algorithm.
12130
12131         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12132         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12133
12134         * scm/output-svg.scm (dashed-line): new  function body.
12135         
12136         * GNUmakefile.in: create .htaccess.
12137
12138 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12139
12140         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12141
12142 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12143
12144         * VERSION (PACKAGE_NAME): release 2.5.15
12145
12146         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12147
12148         * scm/framework-svg.scm (output-framework): put scaling in
12149         document header. Apply scaling only once.
12150         (output-framework): dump page size in px, not mm. 
12151
12152         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12153         from font-size.
12154
12155         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12156         ly:outputter-output-scheme, new function.
12157
12158         * scm/output-svg.scm (pango-description-to-svg-font): new function
12159
12160 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12161
12162         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12163         target.
12164
12165         * input/typography-demo.ly: new file.
12166
12167 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12168
12169         * Documentation/user/global.itely (File structure): Add markup blocks
12170         to toplevel expressions.
12171         (Multiple movements, Creating titles): Add markup blocks.
12172
12173         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12174         <libc-extension.hh>).
12175
12176         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12177
12178         * flower
12179         * lily
12180         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12181
12182 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12183
12184         * lily/accidental.cc: special bboxes for natural. 
12185
12186         * mf/feta-toevallig.mf: make stems heavier.
12187
12188         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12189         texts as well.
12190
12191         * mf/feta-klef.mf: revise. 
12192
12193         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12194
12195         * mf/feta-klef.mf: add rounded curve at top. 
12196         make thinnib a little heavier.
12197
12198 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12199
12200         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12201
12202         * buildscripts/fixcc.py: New file.
12203
12204         * input/regression/utf8.ly: Update Debian font description.
12205
12206 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12207
12208         * stepmake/aclocal.m4: Fix test.
12209
12210 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12211
12212         * Documentation/user/invoking.itely: added Sebastino Vigna's
12213         docs for the --jail option.
12214
12215 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12216
12217         * lily/stem.cc (print): only produce stemlets if there are no
12218         noteheads on this stem.
12219
12220         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12221         don't crash on stemlet (visible stem without heads).
12222
12223         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12224         unbroken situations. 
12225
12226         * scm/output-lib.scm (center-invisible): new function.
12227
12228         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12229         wishes to determine loose column space.
12230
12231         * lily/font-config.cc (init_fontconfig): add
12232         fonts/{otf,type1,cff}  to path.
12233
12234         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12235
12236         * mf/GNUmakefile (Module): install all fonts under otf/
12237
12238         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12239         replace /fonts/otf/ by /ps/ 
12240
12241         
12242 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12243
12244         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12245
12246         * lily/book.cc (process): Oops, add score_.header_.
12247
12248         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12249
12250         * lily/parser.yy: Handle toplevel and book texts as score.
12251
12252         * scm/page-layout.scm (default-page-make-stencil):
12253         Bugfix: (page-properties rename.
12254
12255         * scm/backend-library.scm (ly:system): Typo.
12256
12257 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12258
12259         * stepmake/stepmake/executable-targets.make (installexe): don't
12260         strip installed executables
12261
12262         * lily/font-select.cc (get_font_by_design_size): revert
12263         pango_description_string as well.
12264
12265         * lily/system.cc (set_loose_columns): put loose column just left
12266         of next column.
12267
12268         * lily/include/group-interface.hh (extract_grob_array): rename
12269         from Pointer_group_interface__extract_grobs
12270
12271         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12272
12273         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12274         function. Keep ledgered note heads at a minimum distance.
12275         Introduce minimum-length-fraction
12276         (print): introduce length-fraction property.
12277
12278 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12279
12280         * tex/GNUmakefile: remove latin1.enc rules.
12281
12282 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12283
12284         * scm/titling.scm: Typo.
12285
12286         * input/regression/score-text.ly: Really add.
12287
12288         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12289
12290 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12291
12292         * lily/open-type-font-scheme.cc:  new file.
12293
12294 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12295
12296         * scm/titling.scm (layout-extract-page-properties): Rename from
12297         page-properties.  Update callers.
12298
12299         * lily/lexer.ll (Lily_lexer):
12300         * lily/parser.yy: Junk lyric_markup state.
12301
12302         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12303
12304         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12305         Add texts parameter.
12306
12307 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12308
12309         * lily/lexer.ll (lyric_markup): New mode.
12310         (Lily_lexer::push_lyric_markup_state): New method.
12311         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12312
12313         * lily/parser.yy (book_body):
12314         (toplevel_expression): Grok \markup texts.
12315
12316         * lily/score-scheme.cc (ly:music-scorify): 
12317         * scm/lily-library.scm (collect-music-for-book): Take texts
12318         parameter.
12319
12320         * lily/score.cc (texts_): New member.
12321
12322         * lily/paper-book.cc (systems): Format score texts.
12323
12324         * score-text.ly: New file.
12325
12326         * ttftool/SConscript:
12327         * kpath-guile/SConscript: New file.
12328
12329         * lily/SConscript:
12330         * SConstruct: Update.
12331
12332 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12333
12334         * VERSION (PACKAGE_NAME): release 2.5.14
12335
12336 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12337
12338         * lily/main.cc: Add dummy xgettext markers.
12339
12340 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12341
12342         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12343         requirements
12344
12345         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12346         executable is < 40k
12347
12348         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12349         hack.
12350
12351 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12352
12353         * flower/libc-extension.cc:
12354         * flower/include/libc-extension.hh: [Open]BSD simply cast
12355         cookie/funopen declarations.
12356
12357         * stepmake/aclocal.m4: Check for libkpathsea.so.
12358
12359         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12360         dl_kpse_find_file.
12361
12362 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12363
12364         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12365         (open_library): alternative for static library.
12366
12367 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12368
12369         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12370
12371         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12372
12373         Drop run-time dependency on teTeX.
12374
12375         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12376
12377         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12378         KPATHSEA_LIBS in LIBS.
12379         (STEPMAKE_DLOPEN): New function.
12380
12381         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12382         not path.
12383
12384         * flower/file-path.cc (directories): Rename from paths, as this
12385         return an array of directories (a single path).
12386
12387 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12388
12389         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12390
12391         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12392         new ly:kpathsea-find-file
12393
12394         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12395
12396         * kpath-guile/GNUmakefile: new file
12397
12398         * buildscripts/gen-emmentaler-scripts.py (i): generate
12399         emmentaler-X.fontname as well.
12400
12401         * buildscripts/ps-embed-cff.py: new script
12402
12403         * scm/lily-library.scm: remove ps-embed-cff.
12404
12405         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12406         font loading. 
12407
12408         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12409         fontconfig as well.
12410
12411         * lily/font-config.cc (init_fontconfig): add cff/ too.
12412
12413         * ly/generate-embedded-cff.ly: capitalize.
12414
12415         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12416         so as to register the pango font.
12417
12418         * lily/font-config.cc (init_fontconfig): add
12419         prefix/{otf,type1,mf/out} to fontconfig path.
12420
12421         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12422         overrides all. 
12423
12424         * configure.in (gui_b): remove ec mftrace check
12425
12426         * config.hh.in: use lilypond-Major.Minor as data directory.
12427
12428         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12429
12430         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12431         name.
12432
12433 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12434
12435         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12436         error messages.
12437
12438         * flower/libc-extension.cc:
12439         * flower/include/libc-extension.hh: [Open]BSD fixes for
12440         cookie/funopen declarations.
12441
12442 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12443
12444         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12445         emmentaler.
12446
12447         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12448         lcrm10.
12449
12450         * scm/define-markup-commands.scm (fontsize): new markup
12451         command. Also set baseline-skip
12452
12453 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12454         
12455         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12456         use.
12457
12458 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12459
12460         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12461
12462         * lily/pdf.cc: remove PDF related files
12463
12464 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12465
12466         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12467         <hamamatsu@gmx.de>
12468
12469 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12470
12471         * Documentation/user/advanced-notation.itely: first draft
12472         of reorg done.
12473
12474         * Documentation/user/global.itely: fixed (sub)section
12475         bits of MIDI.
12476
12477 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12478
12479         * cygwin/mknetrel (extras): Bufix (Bertalan).
12480
12481         * Documentation/user/basic-notation.itely (Chords): @ref fix.
12482         * Documentation/user/instrument-notation.itely (Introducing chord
12483         names): Compile fix: must have unique name.
12484
12485 2005-03-02  Graham Percival  <gperlist@shaw.ca>
12486
12487         * Documentation/user/instrument-notation.itely: reorg.
12488
12489 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12490
12491         * scm/output-gnome.scm:
12492         * scm/output-svg.scm: Fix font scaling.
12493
12494 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12495
12496         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
12497         what link to use best.
12498
12499         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
12500         * Documentation/user/tutorial.itely (Automatic and manual beams):
12501         Fix @ref.
12502
12503         * lily/tweak-registration.cc (replace_grob_tweak): New function.
12504         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
12505         * scm/framework-gnome.scm (tweak): Use it.
12506
12507 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12508
12509         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
12510
12511         * scm/output-ps.scm (white-text): reinstate white-text
12512
12513 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12514
12515         * scm/output-ps.scm (offset-add): Remove.
12516
12517         * scm/lily-library.scm (offset-flip-y): New function.
12518         * scm/framework-gnome.scm (tweak): Use it.
12519
12520         * scm/output-gnome.scm (grob-cause): Add parameter.
12521
12522         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
12523         * scm/output-ps.scm (url-link): Move.
12524         (white-text): Warn user about brokenness.
12525
12526         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
12527         wrt ghostscript.
12528
12529 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12530
12531         * lily/slash-repeat-engraver.cc (try_music): always make slashes
12532         if body length smaller than measure length.
12533
12534         * scm/define-markup-commands.scm (with-url): oops. use Y extent
12535         for Y.
12536
12537         * ly/titling-init.ly (tagline): put default tagline in \paper
12538
12539 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12540
12541         * lily/kpath.cc: 
12542         * lily/pdf.cc (Pdf_file): Use more generic error messages.
12543
12544         * scm/lily-library.scm (version-not-seen-message): New function.
12545         * ly/init.ly: Use it.
12546
12547         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
12548         breaks as progess.
12549
12550         * scripts/lilypond-book.py (do_process_cmd): Do not lump
12551         whitespace with l10n message.
12552
12553         * scm/framework-tex.scm (convert-to-ps):
12554         (convert-to-dvi): Do not use overly specific l10n messages.
12555
12556         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
12557
12558         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
12559         merge stderr with stdout.  
12560
12561 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12562
12563         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
12564         Neeracher).
12565
12566 2005-02-29  Graham Percival  <gperlist@shaw.ca>
12567
12568         * Documentation/user/instrument-notation.teily: moved
12569         \arpeggio to Basic.
12570
12571         * Documentation/user/advanced-notation.itely: Articulation to
12572         Basic, a bunch of stuff from Basic moved to Advanced.
12573
12574         * Documentation/user/basic.itely: swapped various sections,
12575         reorganized Basic.
12576
12577 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12578
12579         * flower/memory-stream.cc: 
12580         * flower/libc-extension.cc: Remove obsolete #undefs.
12581
12582         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
12583         more carefully.
12584
12585 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12586
12587         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
12588         dependency.
12589
12590         * VERSION (PACKAGE_NAME): release 2.5.13
12591
12592         * GNUmakefile.in (web-ext): don't ship ps.gz
12593
12594         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
12595         stdout
12596
12597 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12598
12599         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
12600         without libintl.  Now it compiles too.
12601
12602 2005-02-28  Graham Percival  <gperlist@shaw.ca>
12603
12604         * Documentation/user/basic-notation.itely,
12605         instument-notation.itely, advanced-notation.itely:
12606         split up contents of notation.itely.
12607
12608         * Documentation/user/notation.itely: file removed.
12609
12610         * Documentation/user/invoking.itely, converters.itely:
12611         moved convert-ly info to invoking.itely.
12612
12613         * Documentation/user/global.itely, changing-defaults.itely,
12614         sound-output.itexi: moved global settings, file layout, and
12615         sound into global.itely.
12616
12617         * Documentation/user/sound-output.itexi: file removed.
12618
12619         * Documentation/user/lilypond.tely: removed links to
12620         notation.itely and sound.itely.
12621
12622 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12623
12624         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
12625
12626         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
12627  
12628         * THANKS: add sponsor.
12629
12630         * scm/define-markup-commands.scm (with-url): new markup command.
12631
12632         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
12633         tagline.
12634         
12635         * scm/output-tex.scm (url-link): stub.
12636
12637         * scm/output-ps.scm (url-link): new function.
12638
12639         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
12640         ly:set-point-and-click
12641
12642 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12643
12644         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
12645         based on pdf-viewer setting.
12646
12647         * scm/framework-ps.scm (write-preamble): Find and set preferred
12648         pdf-viewer.
12649
12650 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12651
12652         * Documentation/user/point-and-click.itely: update for PDF point &
12653         click.
12654
12655         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
12656         editors based on EDITOR setting.
12657
12658 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12659
12660         * scm/*: Oops, more grand 2005 replace bits.
12661
12662 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12663
12664         * ps/music-drawing-routines.ps: new routine: insert PDF mark
12665
12666         * scm/output-ps.scm (grob-cause): point & click support for
12667         PostScript
12668
12669 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12670
12671         * lily/input-scheme.cc (LY_DEFINE): rename to
12672         ly:input-file-line-column
12673
12674 2005-02-26  Graham Percival  <gperlist@shaw.ca>
12675
12676         * Documentation/user/examples.itely: small fix from Steve Doonan.
12677
12678         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
12679
12680         * THANKS: added Yuval Harel.
12681
12682         * Documentation/user/{various}: inserted two spaces after a period.
12683
12684         * Documentation/user/lilypond.tely: added framework for reorg.
12685
12686         * Documentation/user/basic-notation.itely, instrument-notation.itely,
12687         advanced-notation.itely, global.itely: new files, placeholder for
12688         future reorg.
12689
12690 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
12691
12692         * Documentation/user/notation.itely: revamped Polyphony section
12693         
12694 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12695
12696         * Documentation/user/lilypond-book.itely (Music fragment options):
12697         doc fontload.
12698
12699         * Documentation/user/changing-defaults.itely (Text encoding): add
12700         fontload option to utf8 include
12701
12702         * scripts/lilypond-book.py (compose_ly): add fontload option
12703
12704         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
12705         force-eps-font-include option.
12706
12707         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
12708         black triangle
12709
12710         * Documentation/user/invoking.itely (Editor support): remove
12711         lilypond-latex section.
12712
12713         * scripts/lilypond-latex.py (Module): remove script.
12714
12715         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
12716         overwrite .log. 
12717
12718         * lily/main.cc: remove -m, --no-layout
12719
12720         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
12721         to define. We don't want to override fprintf everywhere.
12722
12723 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
12724
12725         * cygwin/lilypond.hint: 
12726         * cygwin/README.in: Update dependencies.
12727
12728         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
12729         Bugfix: do not pollute CPPFLAGS, LIBS.
12730
12731         * cygwin/mknetrel (extras): Cross compile fixes.
12732
12733         * ttftool/util.c: 
12734         * ttftool/ttfps.c: 
12735         * ttftool/ps.c: #include libc-extension.hh
12736
12737         * flower/include/libc-extension.hh:
12738         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
12739         wrapper using funopen.
12740         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
12741         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
12742
12743         * config.hh.in:
12744         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
12745         (AC_CHECK_HEADERS): Add libio.h
12746
12747         * scripts/convert-ly.py: Uniformize, internationalize.
12748         (2.5.2): Remove fatal encoding rule.
12749         (2.5.13): Handle latin1 encoding gracefully.
12750
12751 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
12752
12753         * HACKING: Fix line breaks.
12754
12755 2005-02-23  Werner Lemberg  <wl@gnu.org>
12756
12757         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
12758         contains those two files.
12759
12760 2005-02-21  Werner Lemberg  <wl@gnu.org>
12761
12762         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
12763         to improve overlap removal process.
12764
12765         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
12766         left and right ending.  This ensures better overlapping.
12767         Update all callers.
12768         ("lineprall"): Don't use draw_gridline to get better overlapping.
12769
12770 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12771
12772         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
12773
12774         * Documentation/topdocs/NEWS.tely (Top): oops.
12775
12776 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
12777
12778         * HACKING: new file.
12779
12780         * input/regression/utf8.ly (portuguese): added a portuguese example
12781         to show latin1 accents.
12782
12783 2005-02-21  Pal Benko  <benkop@freestart.hu>
12784
12785         * lily/mensural-ligature-engraver.cc:
12786         * lily/mensural-ligature.cc:
12787         * lily/include/mensural-ligature.hh: new algorithm implemented
12788
12789         * scm/define-grob-properties.scm: join-left killed (add-join may
12790         be used); join-left-amount changed to join-right-amount
12791
12792 2005-02-21  Graham Percival  <gperlist@shaw.ca>
12793
12794         * Documentation/user/notation.itely: small but urgent fix.
12795
12796 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
12797
12798         * lily/duration-scheme.cc: bugfix: correct parameters to
12799         SCM_ASSERT_TYPE.
12800
12801         * THANKS: added Pal.
12802
12803         * Documentation/user/notation.itely: bugfix: unTeXified
12804         $\\backslash$.  Bugfix: yet another glyph renaming victim:
12805         "timesig.*x/y" -> "timesig.*xy".
12806
12807 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12808         
12809         * VERSION (PACKAGE_NAME): release 2.5.12
12810
12811 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12812
12813         * ly/engraver-init.ly: set tieWaitForNote to #t by default
12814
12815         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
12816
12817         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
12818
12819         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
12820
12821 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
12822
12823         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
12824         latin1..utf-8.
12825
12826         * input/regression/stanza-number.ly:
12827         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
12828
12829         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
12830
12831 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12832
12833         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
12834         NEWS. Refer to website for older news.  
12835
12836         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
12837         .HTML. This should be done for specific servers only.
12838
12839         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
12840         .ly image examples.
12841
12842         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
12843         in layer 0 too.
12844
12845         * scm/define-context-properties.scm
12846         (all-user-translation-properties): add tieWaitForNote
12847
12848         * scm/define-grobs.scm (all-grob-descriptions): add
12849         Tie_column::before_line_breaking
12850
12851         * lily/tie.cc (get_column_rank): new function
12852
12853         * lily/tie-column.cc (before_line_breaking): new function.
12854         (werner_directions): take into account ties that start on
12855         different columns.  
12856
12857         * lily/score-engraver.cc (set_columns): move add_column() so we
12858         have column rank available.
12859
12860         * lily/tie.cc (get_column_rank): new function.
12861
12862         * input/regression/utf8.ly (japanese): add japanese lyrics.
12863
12864         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
12865
12866         * THANKS: add Steve D
12867
12868         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
12869         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
12870
12871 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
12872
12873         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
12874         to show harmonic notes
12875         * scm/define-markup-commands.scm: in \markup-by-number
12876         "dots-dot" -> "dots.dot" to show dotted notes
12877
12878 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12879
12880         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
12881
12882         * flower/memory-stream.cc (writer): new file.
12883
12884         * configure.in: add endian test.
12885
12886 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
12887
12888         * Documentation/user/examples.itely: small
12889         simplification/beautification
12890
12891         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
12892         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
12893         notation manual.
12894
12895         * lily/mensural-ligature.cc: bugfix: another few victims of the
12896         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
12897
12898         * ly/gregorian-init.ly: commit some experimental code for hi-level
12899         ligature input language lying around here for several months.
12900
12901         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
12902         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
12903
12904         * lily/vaticana-ligature-engraver.cc: bugfix: another few
12905         "x-y-z"->"x.y.s-z" fixes.
12906
12907 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12908
12909         * scm/framework-pdf.scm (scm): new file
12910
12911         * lily/include/pdf.hh (class Pdf_file): new file.
12912
12913         * lily/pdf.cc (write_trailer): new file.
12914
12915 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
12916
12917         * input/regression/color.ly: new file
12918
12919         * lily/stencil.cc (interpret_stencil_expression):
12920         when a color expression is encountered: save current color,
12921         process the rest of the expression, and restore previous color.
12922
12923         * lily/system.cc (get_line): check all grobs for color property and
12924         prepare the stencil scheme expressions for further processing.
12925         Fix layer-loop.
12926
12927         * scm/define-grob-properties.scm: introduce the color property.
12928
12929         * scm/output-lib.scm: color helper functions.
12930
12931         * scm/output-ps.scm: introduce setcolor/resetcolor.
12932
12933 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
12934
12935         * ly/*.ly, input/regression/*.ly: Added missing \version
12936         statements in some files.
12937
12938 2005-02-15  Graham Percival  <gperlist@shaw.ca>
12939
12940         * Documentation/user/notation.itely: minor editing.
12941
12942         * Documentation/user/converters.itely: updated convert-ly bugs.
12943
12944         * Documentation/user/lilypond-book.itely: add info about using
12945         feta characters in latex.
12946
12947 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12948
12949         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
12950
12951 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12952
12953         * scm/define-grob-properties.scm (all-user-grob-properties):
12954         removed 'dashed property.
12955
12956 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12957
12958         * scm/lily.scm (define-safe-public): new macro for defining
12959         variables that can be used in --safe mode. Use it in *.scm
12960         instead of manually setting safe-objects in safe-lily.scm.
12961
12962 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12963         
12964         * lily/slur.cc: Slur-dash patch by Bertalan.
12965
12966         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
12967
12968         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
12969
12970 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12971
12972         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
12973
12974 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12975
12976         * mf/GNUmakefile: teTeX-3.0 install fix.
12977
12978         * Cygwin patch from Bertalan.
12979
12980         * stepmake/stepmake/metafont-rules.make: Remove bashism.
12981
12982 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12983
12984         * GNUmakefile.in: 
12985         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
12986
12987         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
12988         2.0.x compatibility.
12989
12990 2005-02-08  Werner Lemberg  <wl@gnu.org>
12991
12992         * mf/feta-din-code.mf: Format; clean up code.
12993         Replace `---' with `--' plus explicit path directions.
12994         (linethickness#, stafflinethickness#): Remove.
12995         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
12996         ("dynamic s"): Improve shape.
12997         ("dynamic p"): Improve shape.
12998         Replace `draw' with better outline approximation.
12999         ("dynamic r"): Improve shape.
13000         Don't call `fill' and `draw' at the same time.
13001
13002 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13003
13004         * SConstruct (symlink):
13005         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13006         build fix: add enc symlink.
13007
13008         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13009
13010         Support for DESTDIR besides prefix=/foo
13011
13012         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13013
13014         * stepmake/stepmake/*.make:
13015         * */GNUmakefile:
13016         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13017
13018         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13019
13020         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13021         mawk in fontforge (date) test.
13022
13023 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13024
13025         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13026         font-family=roman. Add Luxi Sans as sans
13027
13028 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13029
13030         * Documentation/user/notation.itely: add warning about
13031         percent repeats and Voice contexts.
13032
13033         * Documentation/user/lilypond-book.itely: clarified the
13034         necessity of dvips -u arguments.
13035
13036 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13037
13038         * THANKS: Added a bunch of bug hunters.
13039
13040 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13041
13042         * scm/framework-ps.scm (output-preview-framework): bugfix.
13043
13044         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13045         o/ for chord modifier..
13046
13047         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13048
13049         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13050         Welsh Duggan). 
13051
13052 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13053
13054         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13055
13056         * ly/titling-init.ly: Do not also print intstrument in header on
13057         first page.  Do not print page number on first and only page.
13058
13059 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13060
13061         * input/regression/*.ly: remove old-relative everywhere
13062
13063         * lily/music-sequence.cc (simultaneous_relative_callback): do
13064         what-if analysis on copy, not on original. Fixes old-relative
13065         compatibility.
13066
13067         * scm/backend-library.scm (postscript->png): space before
13068         --verbose.
13069         
13070 2005-02-05  Werner Lemberg  <wl@gnu.org>
13071
13072         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13073         is defined.
13074
13075         * mf/feta-alphabet.mf: Define `staffsize#'.
13076         Include `feta-params.mf'.
13077         s/staffheight/design_size/.
13078
13079         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13080
13081         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13082
13083         * mf/feta-nummer-code.mf: Reformatted.
13084         (draw_six): Use outline intersection to avoid a self-intersecting
13085         path.
13086         ("Numeral comma"): Fix serious outline glitches.  This slightly
13087         changes the glyph shape.
13088         ("Numeral dash"): Use `draw_rounded_block'.
13089         ("Numeral dot"): Use `drawdot'.
13090         ("Numeral 1"): Assure identical tangent directions for the
13091         intersection points of paths.  The glyph shape improvement is only
13092         visible at very high magnifications.
13093         ("Numeral 2"): Use `solve' macro to make the lower right part of
13094         the glyph outline touch the x axis exactly.  This changes the
13095         glyph shape.
13096         Minor fixes for better overlap removal support.
13097         ("Numeral 4"): Make lefter corner `rounder'.
13098         ("Numeral 5"): Assure identical tangent directions for the
13099         intersection points of paths.  This improves the glyph shape at
13100         high magnifications.
13101         ("Numeral 7"): Use `solve' macro to make the upper right part of
13102         the glyph outline touch the metrics box exactly.  This changes the
13103         glyph shape.
13104         Avoid corner in the upper left part of the glyph (causing a minor
13105         shape change).
13106
13107         * mf/feta-ital-*.mf: Removed.  Unused.
13108
13109 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13110
13111         * VERSION (PATCH_LEVEL): release 2.5.11
13112
13113         * input/regression/fill-line-test.ly: new file.
13114
13115         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13116         emmentaler name, eg. emmentaler-23. 
13117
13118 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13119
13120         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13121         alignment with centered texts
13122
13123         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13124         list of paddings
13125
13126 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13127
13128         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13129
13130         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13131         of parents when translating rests. Fixes: c-chord-rest.ly 
13132
13133         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13134         dimension_callback_ member.
13135
13136         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13137         of extents.
13138
13139 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13140
13141         * all but lily/*: The grand 2004/2005 replace.
13142
13143 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13144
13145         * lily/*: add space after ,  
13146
13147         * scm/music-functions.scm (has-request-chord): don't use
13148         ly:music-name anywhere. Fixes <<\\>> notation. 
13149
13150         * scm/define-markup-commands.scm (box): use font-size for
13151         padding. Fixes boxed-rehearsal-marks.ly
13152
13153         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13154         identifier definition too, so foo = \lyrics { ...   } bar = #1
13155         doesn't complain about "bar" being LYRICS_STRING.
13156
13157         * lily/paper-def.cc (find_pango_font): new routine; Store
13158         pango_fonts in hash tab too. This is necessary for retrieving
13159         Pango_fonts::physical_font_tab() later on.
13160  
13161         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13162         crash if psname is null.
13163
13164         * lily/lily-guile.cc (ly_hash2alist): new function
13165
13166         * Documentation/user/changing-defaults.itely (Text encoding):
13167         rewrite. 
13168
13169         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13170         -> font_filename mapping.
13171
13172         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13173         ly_pango_font_physical_fonts
13174
13175         * scm/framework-ps.scm (supplies-or-needs): extract names from
13176         physical Pango_fonts.
13177
13178         * utf8.ly: new file.
13179
13180 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13181
13182         * Documentation/user/changing-defaults.itely (Page layout): add
13183         doco about systemSeparatorMarkup.
13184
13185         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13186         function.
13187         (default-page-make-stencil): insert system separators.
13188
13189         * scm/define-markup-commands.scm (hcenter): add
13190         (beam): add.
13191
13192 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13193
13194         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13195
13196 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13197
13198         * lily/main.cc: Spell backend consistently.  Sort options.
13199
13200 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13201
13202         * scripts/lilypond-book.py (Module): revert @include.
13203         
13204 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13205
13206         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13207         Bugfix: @include .tex (not .texi).  Small cleanups.
13208
13209         * stepmake/bin/add-html-footer.py (i18n): New function.
13210
13211 2005-01-31  Werner Lemberg  <wl@gnu.org>
13212
13213         * mf/feta-nummer.mf: Removed.  Unused.
13214
13215 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13216
13217         * lily/ : 2004 -> 2005 s&r
13218
13219         * scm/file-cache.scm (cached-file-contents): add file. Read each
13220         file only once.
13221
13222         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13223         now default.
13224
13225         * VERSION: release 2.5.10
13226         
13227         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13228
13229         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13230
13231         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13232         that both X and Y extents of bbox are non-nil.
13233
13234 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13235
13236         * scm/chord-name.scm (alteration->text-accidental-markup): change
13237         - to . 
13238
13239         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13240
13241         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13242
13243         * Documentation/user/invoking.itely (Invoking lilypond): add note
13244         about EPS backend.
13245
13246         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13247         files for inclusion in lilypond-book document.
13248
13249         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13250
13251         * input/tutorial/lbook-texi-test.texi: new file.
13252
13253         * scm/safe-lily.scm (safe-objects): add
13254         {begin,end}-of-line-(in)?visible as safe.
13255  
13256 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13257
13258         * Documentation/user/changing-defaults.itely: fixed example
13259         of (dynamics).
13260
13261 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13262
13263         * lily/main.cc: fix info about -o=FILE.
13264
13265 2005-01-29  Werner Lemberg  <wl@gnu.org>
13266
13267         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13268         construction to assure smooth transition from straight to curved
13269         lines.
13270
13271 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13272
13273         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13274         stencils.
13275
13276         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13277         translate to top of page. Fixes alignment problems of
13278         lilypond-generated EPS files.
13279
13280 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13281
13282         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13283         crescendo-end as well, since Decrescendo maybe ended with Stop
13284         Crescendo.). Fixes: partcombine-diminuendo.ly
13285
13286         * scm/script.scm (default-script-alist): swap portato symbols.
13287
13288         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13289
13290         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13291         ly:outputter-port. New function.
13292
13293         * scm/framework-ps.scm (output-classic-framework): dump a
13294         -systems.texi too
13295         (output-classic-framework): dump multiple systems on an "infinite"
13296         page EPS including fonts. 
13297
13298         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13299         .eps files for both texi and tex formats. Use PNG coming from
13300         lilypond.
13301         
13302 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13303
13304         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13305
13306         * scripts/lilypond-latex.py: fix info about -o=FILE.
13307
13308 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13309
13310         * ly/generate-embedded-cff.ly: write .cff.ps files.
13311
13312         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13313
13314         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13315         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13316
13317 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13318
13319         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13320
13321 2005-01-28  Werner Lemberg  <wl@gnu.org>
13322
13323         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13324         macros.
13325         (draw_bulb): Improved.
13326
13327         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13328         metapost bug.
13329         (draw_pedal_P): Use soft_end_penstroke.
13330         (draw_pedal_d): Use soft_start_penstroke.
13331
13332         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13333         path.
13334         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13335         doesn't change the glyph shape.
13336
13337         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13338         changing the shape) to avoid fontforge warnings.
13339
13340         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13341         soft_end_penstroke and fix glyph shape.
13342
13343 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13344
13345         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13346
13347 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13348
13349         * scm/define-markup-commands.scm (line): filter out empty stencils
13350         from line command.
13351
13352         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13353         amount.
13354
13355 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13356
13357         * Documentation/user/notation.itely: added info about what
13358         \voiceFoo does.  Also rewrote warning about marks at
13359         a line break.
13360
13361         * Documentation/user/changing-defaults.itely: added info
13362         about putting dynamics in parenthesis and brackets.
13363
13364 2005-01-27  Werner Lemberg  <wl@gnu.org>
13365
13366         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13367
13368 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13369
13370         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13371         portato-direction.ly
13372
13373         * lily/beam.cc (consider_auto_knees): add beam height to
13374         threshold. Fixes: knee-multiple-beam.ly
13375
13376         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13377         pedal line spanners. Fixes: instrument-center-pedal.ly
13378
13379         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13380         if encountering barline. Fixes: auto-beam-repeat.ly
13381
13382 2005-01-26  Werner Lemberg  <wl@gnu.org>
13383
13384         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13385         overlapping.
13386
13387         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13388         with inflections for the 1/2 sharp glyph.
13389
13390         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13391         connection between `t' and `r'.
13392         Unify bulb with the rest of `r' to avoid grazing outlines which
13393         confuses the overlap removal algorithm of fontforge.
13394
13395         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13396         inflections.
13397         (draw_cross): Fix shape to have uniform thickness in corners.
13398
13399         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13400         to avoid an uneven number of self-intersections; this confuses
13401         fontforge.
13402         Fix a slight bug in the shape at left bottom (which is visible only
13403         at high magnifications).
13404         `Center' the stem horizontally to avoid overlapping.
13405
13406 2005-01-24  Werner Lemberg  <wl@gnu.org>
13407
13408         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13409         to `asis'.
13410         (fet_begingroup): Save group name in string `feta_group'.
13411         (fet_endgroup): Updated.
13412         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13413
13414         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13415
13416         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13417         in metapost.
13418
13419 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13420
13421         * Documentation/user/notation.itely: really minor editing.
13422
13423 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13424
13425         * Documentation/user/examples.itely: minor editing.
13426
13427         * Documentation/user/changing-defaults.itely: minor editing.
13428
13429         * Documentation/user/notation.itely: clarified info on polyphony
13430         and \addlyrics.
13431
13432 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13433
13434         * scm/output-gnome.scm: 
13435         * scm/output-svg.scm:
13436         * scm/lily-library.scm (font-name-style): Update font name
13437         kludging for fontconfig use.
13438
13439 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13440
13441         * scm/define-markup-commands.scm: Document right-align and
13442         larger markup commands. Remove "TODO" from the topmost comment
13443         "each markup function should have a doc string." More consistent
13444         use of new-lines.
13445
13446 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13447
13448         * Documentation/user/changing-defaults: removed info about
13449         copyright symbol, since it's likely to change soon.
13450         Added info about betweensystemspace.
13451
13452         * Documentation/user/notation.itely: minor fixes.
13453
13454         * Documentation/user/lilypond.tely,
13455         Documentation/user/music-glossary.tely: changed copyright
13456         date to 2005 instead of 2004.
13457
13458         * input/test/volta-chord-names.ly: added old example back.
13459
13460 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13461
13462         * mf/feta-beugel.mf: use design size 20 (not 15).
13463
13464         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13465         change name to aybabtu completely
13466
13467 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13468
13469         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13470         design_size to fontname
13471
13472 2005-01-19  Werner Lemberg  <wl@gnu.org>
13473
13474         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13475         mf/feta-schrift.mf: s/p/pat/ if a path variable.
13476
13477         * mf/feta-autometric.mf (set_char_box): Add code which emits
13478         specials for mf2pt1 if run with metapost.
13479         (to_bp): New macro for mf2pt1.
13480
13481 2005-01-18  Graham Percival  <gperlist@shaw.ca>
13482
13483         * Documentation/user/changing-defaults: added info on
13484         creating a copyright symbol.
13485
13486 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13487
13488         * VERSION: release 2.5.9
13489         
13490 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
13491
13492         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
13493
13494         * Documentation/user/notation.itely: Document
13495         score-override-auto-beam-setting Fix documentation for
13496         revert-auto-beam-setting.
13497
13498 2005-01-18  Werner Lemberg  <wl@gnu.org>
13499
13500         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
13501         (procset): New function to define a procset resource.
13502         (ps-embed-pfa): New function to define a font resource.
13503         (setup): New function to define a `Setup' environment.
13504         (preamble): Use new functions.
13505
13506         * ps/lilypond.defs (init-lilypond-parameters): New function to
13507         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
13508
13509 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13510
13511         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
13512
13513 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
13514
13515         * scm/define-markup-commands.scm: Change number->markletter-string
13516         to take two arguments (vector number). Add number->mark-alphabet-vector
13517         and markalphabet markup command.
13518
13519         * scm/translation-functions.scm: Add format-mark-box-alphabet,
13520         format-mark-alphabet, format-mark-box-barnumbers and
13521         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
13522
13523 2005-01-17  Graham Percival  <gperlist@shaw.ca>
13524
13525         * Documentation/user/examples.itely: add SATB automatic piano
13526         reduction template.
13527
13528         * Documentation/user/notation.itely: added info about changing
13529         partcombine texts.  Also adds examples of alternate lyrics.
13530
13531         * Documentation/user/changing-defaults.itely: added warning
13532         about \RemoveEmptyStaffContext overriding previous changes.
13533
13534 2005-01-17  Werner Lemberg  <wl@gnu.org>
13535
13536         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
13537         feta-alphabet*.
13538
13539 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13540
13541         * python/lilylib.py (make_ps_images): don't do final showpage for
13542         multi-page documents.
13543         
13544         * VERSION (MY_PATCH_LEVEL): release 2.5.8
13545
13546 2005-01-16  Graham Percival  <gperlist@shaw.ca>
13547
13548         * Documentation/user/lilypond.tely: changed order of appendices;
13549         unified index should be last.
13550
13551         * Documentation/user/notation.itely: add example of key signatures
13552         and info about Staff.printKeyCancellation.
13553
13554 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13555
13556         * lily/include/repeated-music.hh (class Repeated_music): change
13557         into "namespace" class.
13558
13559         * lily/event.cc: remove Key_change_event.
13560
13561         * lily/include/transposed-music.hh (class Transposed_music): remove.
13562
13563         * lily/transposed-music.cc: remove
13564
13565         * lily/include/relative-music.hh: remove.
13566
13567         * lily/include/music-sequence.hh (struct Music_sequence): change
13568         into "namespace" class.
13569
13570         * lily/untransposable-music.cc (Module): remove
13571
13572         * lily/include/un-relativable-music.hh (Module): remove
13573
13574         * lily/include/untransposable-music.hh (Module): remove
13575
13576         * lily/include/music-list.hh (Module): remove file
13577
13578         * lily/un-relativable-music.cc: remove file.
13579
13580 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13581
13582         * lily/parser.yy: Compile fix.
13583
13584 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13585
13586         * lily/include/music.hh (class Music): unvirtualize transpose().
13587
13588         * lily/sequential-music.cc: remove file.
13589
13590         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
13591
13592         * lily/slur-scoring.cc (get_best_curve): only switch on
13593         DEBUG_SLUR_SCORING for non NDEBUG builds.
13594
13595         * lily/include/music.hh (class Music): replace Music::start_mom()
13596         by start-callback property
13597
13598         * lily/include/grace-music.hh: remove file. 
13599
13600         * lily/stem.cc (height): robustness fix.
13601
13602         * lily/time-scaled-music.cc: remove file.
13603
13604         * lily/include/music.hh (class Music): include SCM init argument.
13605         (class Music): replace Music::get_length() virtual by
13606         length-callback property everywhere.
13607
13608         * scripts/convert-ly.py (conv): add  # to \property scalar value.
13609
13610         * mf/GNUmakefile: don't install *list.ly
13611
13612 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13613
13614         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
13615
13616 2005-01-12  Werner Lemberg  <wl@gnu.org>
13617
13618         This patch addresses the following problems in the feta sources
13619         files which contribute to the fetaXX fonts.
13620
13621         . Many fixes for rasterization at low resolutions (consistent use of
13622           `vround' and `hround', integer shift values for paths, applying
13623           `eps' for mirrored paths, use of `define_whole_pixels' and
13624           friends, etc.) -- while this probably looks like a waste of time
13625           it has revealed deficiencies in some glyph shapes.  See comment at
13626           the end of feta-params.mf how vertical symmetry is achieved.
13627
13628         . The `---' operator has been replaced everywhere with `--'; this
13629           both improves and considerably reduces the font size after
13630           conversion with mf2pt1.
13631
13632         These change aren't explicitly mentioned below since virtually all
13633         glyphs are affected.
13634
13635         Other notable differences:
13636
13637         . Glyphs from feta-accordion.mf now have charboxes around the
13638           outline.
13639
13640         . Fixed incorrect charbox for `accDot'.
13641
13642         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
13643
13644         . Fixed position of the bow in the `upprall' glyph and its siblings.
13645
13646         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
13647           dependent on the staff line thickness to avoid touching the middle
13648           staff line at smaller sizes.
13649
13650         . Largely extended output for feta-testXX: Where useful, glyphs
13651         are shown both between and on staff lines.
13652
13653
13654         * mf/feta-params.mf (staff_space_rounded,
13655         stafflinethickness_rounded, linethickness_rounded,
13656         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
13657         Update all code which uses them where appropriate.
13658         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
13659         New variables used to control rasterization at low resolutions.  Set
13660         to zero if feta code is processed with metapost.
13661
13662         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
13663         (draw_rounded_block, draw_square_block): Updated to use `--' only.
13664         (flare_path): Updated.
13665         Make it work with `filldraw' (but only circular pens).
13666         (hfloor, vfloor, hceiling, vceiling): New macros.
13667
13668         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
13669         Use `draw' again in mf mode to have good pixel dropout control.
13670         Fix intersection points of horizontal lines with circle.
13671         ("accDot"): Fix parameters for set_char_box.
13672         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
13673         control.
13674
13675         * mf/feta-banier.mf: Updated.
13676
13677         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
13678         testing.
13679         (undraw_inside_ellipse): Remove `center' argument.  Update all
13680         callers.
13681         (draw_brevis): New macro, called by "Brevis notehead".
13682         (draw_whole_triangle_head): New macro, called by "Whole
13683         trianglehead".
13684         (draw_small_triangle_head): Use `filldraw'.
13685
13686         * mf/feta-eindelijk.mf: Remove useless global group.
13687         Updated.
13688
13689         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
13690         `filldraw'.
13691
13692         * mf/feta-pendaal.mf: Updated.
13693
13694         * mf/feta-puntje.mf: Updated.
13695
13696         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
13697         less points.
13698         ("Flageolet"): Use `draw' again in mf mode to have good pixel
13699         dropout control.
13700         ("Varied Coda"): Use `draw_block'.
13701         (draw_comma): Fix typo.
13702         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
13703         pixel dropout control.
13704
13705         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
13706         position of bow.
13707
13708         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
13709         sizes.
13710
13711         * mf/feta-toevallig.mf (remember_pic): New variable, used for
13712         testing.
13713         (draw_meta_sharp): Much simplified.
13714         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
13715
13716         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
13717
13718 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
13719
13720         * Documentation/user/notation.itely (Ancient rests): Fix typo
13721         (thanks Anthony)
13722
13723 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
13724
13725         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
13726
13727         * lily/main.cc (setup_paths): Add cff.
13728
13729         * mf/GNUmakefile (foe): Include actual target %.cff.
13730         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
13731
13732 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13733
13734         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
13735         suffix for main_input_b_.
13736
13737         * scm/music-functions.scm (toplevel-music-functions):
13738         precompute music lengths for music expressions.  
13739
13740 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13741
13742         * lily/include/input.hh (class Input): new `end_' slot for end of
13743         input. Renamed defined_str0_ to start_.
13744
13745         * lily/input.cc (Input): Add Input::Input (Input const &) and
13746         remove Input::Input (Source_file*, char const *). Use the new
13747         slots.
13748         (set_location): method used by bison to propagate input
13749         locations (YYLLOC_DEFAULT).
13750         (end_line_number, end_column_number, step_forward): new methods
13751         
13752         * lily/input-scheme.cc (ly:input-both-locations): new function,
13753         similar to ly:input-location, but also return the end line and
13754         column.
13755
13756         * lily/include/includable-lexer.hh: 
13757         * lily/includable-lexer.cc: 
13758         * lily/include/lily-lexer.hh (class Lily_lexer): 
13759         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
13760         Includable_lexer to Lily_lexer, in order to update lexloc (the
13761         yylloc), a new slot of Lily_lexer.
13762         (here_input, LexerError): simplify by using the lexloc slot (aka
13763         yylloc)
13764
13765         * lily/lexer.ll: #define yylloc to use input locations (it may
13766         be useless here?). Fixed the #embedded_scm rule (step the location
13767         forward in order to skip the sharp sign before parsing the scheme
13768         expression)
13769
13770         * lily/include/lily-parser.hh (class Lily_parser): 
13771         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
13772         here_input()
13773         (parser_error): overload for more precise locations of errors.
13774
13775         * lily/parser.yy (YYLTYPE): set location type to Input
13776         (YYLLOC_DEFAULT): use Input::set_location()
13777         (yylex): add the YYLTYPE* location parameter.
13778         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
13779         Give an Input parameter to THIS->parser-error() for more accurate
13780         messages.
13781
13782 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13783
13784         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
13785
13786         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
13787         on BEAMQUANTING for non-NDEBUG builds.
13788
13789         * lily/stem.cc (head_count): performance: avoid String::String()
13790         inside oft called function.
13791
13792 2005-01-09  Graham Percival  <gperlist@shaw.ca>
13793
13794         * Documentation/user/examles.itely: attempted fix for broken
13795         string quartet template.
13796
13797         * Documentation/user/notation.itely: remove unnecessary broken
13798         link.
13799
13800 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13801
13802         * VERSION (PACKAGE_NAME): release 2.5.7
13803
13804 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13805
13806         * config.make.in (METAFONT): Append -progname=mf, fixes use with
13807         mf-nowin for teTeX-3.0.  Backportme.
13808
13809         * scm/output-svg.scm (utf8-string): New function.
13810
13811         * scm/output-gnome.scm (utf8-string): New function.
13812         (otf-name-mangling): Remove.
13813
13814         * lily/pango-font.cc (Pango_font): Use font string iso font
13815         filename for utf8-text.
13816
13817         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
13818         name.
13819
13820 2005-01-08  Graham Percival  <gperlist@shaw.ca>
13821
13822         * Documentation/user/notation.itely: add info about
13823         Staff.extraNatural = ##f in Pitches section.  Also
13824         fixed some minor issues in the Vocal music section.
13825
13826 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13827
13828         * scm/output-ps.scm (white-text): comment out Helvetica font,
13829         which is broken for my GS install.
13830
13831         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
13832         which provides a tighter bbox.
13833
13834         * scm/define-grobs.scm (all-grob-descriptions): remove all
13835         extra-offsets from definitions.
13836
13837 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
13838
13839         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
13840         add tuning for 4-string bass and some common 4/5-string banjo
13841         tunings.  New function (four-string-banjo) turns a 5-string tuning
13842         into a 4-string tuning.  New function
13843         (fret-number-tablature-format-banjo) computes correct fret numbers
13844         on 5-string banjos.
13845
13846         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
13847         Add beam correction to TabVoice.
13848
13849         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
13850         using bold font; makes tabs more readable.
13851
13852 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13853
13854         * lily/font-select.cc (get_font_by_design_size): don't make
13855         Modified_font_metric; this causes trouble, since we don't know the
13856         font magnification from inside Pango_font::text_stencil()
13857
13858         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
13859
13860         * Documentation/user/notation.itely (The Lyrics context): comment out
13861         broken {Small ensembles} link.
13862
13863         * scm/framework-svg.scm (output-framework): change calling convention.
13864
13865         * lily/object-key-dumper-scheme.cc: new file.
13866
13867         * lily/object-key-undumper-scheme.cc: new file.
13868
13869         * lily/tweak-registration-scheme.cc: new file.
13870
13871         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
13872
13873         * Documentation/user/examples.itely (String quartet): uncomment
13874         broken example.
13875
13876         * lily/font-config.cc: new file.
13877
13878 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13879
13880         * scm/output-svg.scm: 
13881         * scm/output-gnome.scm: s/bigcheese/emmentaler.
13882
13883         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
13884
13885 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13886
13887         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
13888         Add headers.
13889
13890         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
13891
13892 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13893
13894         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
13895
13896         * lily/include/main.hh: lose _b hungarian suffixes for global
13897         variables.
13898
13899         * lily/include/lily-guile-macros.hh: new file.
13900
13901         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
13902
13903         * lily/general-scheme.cc: new file. 
13904
13905         * lily/font-select.cc (get_font_by_design_size): retrieve
13906         PangoFont for (designsize . "pango-descr") entries.
13907
13908         * lily/lily-parser-scheme.cc: new file.
13909
13910         * lily/output-def-scheme.cc: new file.
13911
13912         * lily/paper-book-scheme.cc: new file.
13913
13914         * lily/duration-scheme.cc (LY_DEFINE): new file.
13915
13916         * lily/pitch-scheme.cc:  new file.
13917
13918         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
13919
13920 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13921
13922         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
13923
13924 2005-01-06  Graham Percival  <gperlist@shaw.ca>
13925
13926         * Documentation/user/notation.itely: minor editing.
13927
13928         * Documentation/user/changing-defaults: minor editing.
13929
13930         * Documentation/user/examples.itely: add template for
13931         string quartet part extraction; demonstrates tag.
13932
13933 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
13934
13935         * Documentation/user/notation.itely: documents
13936         format-mark-box-letters and format-mark-box-numbers
13937
13938         * scm/define-context-properties.scm: change comment.
13939
13940 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13941
13942         * scm/framework-ps.scm (output-classic-framework): new function:
13943         dump systems as separate .eps files (without fonts) and write a
13944         single collecting .tex file.
13945
13946 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
13947
13948         * Documentation/user/notation.itely (Setting simple songs):
13949         Correct several errors in the equivalent formulation of
13950         \addlyrics. 
13951         (The Lyrics context): Corrected link to the SATB example.
13952
13953 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13954
13955         * scm/lily.scm (completize-formats): new function
13956         (postprocess-output): new function
13957
13958         * lily/paper-book.cc (classic_output): change calling
13959         convention. Give basename as first argument. 
13960         remove Paper_book::post_processing().
13961
13962         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
13963
13964 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13965
13966         * lily/paper-outputter.cc (LY_DEFINE): new function
13967         ly:outputter-close.
13968
13969         * lily/main.cc: change --format,-f to --backend,-b
13970
13971         * lily/include/main.hh: rename format to backend.
13972
13973         * scm/translation-functions.scm (format-mark-box-numbers): add.
13974         patch by Erlend Aasland
13975
13976 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13977
13978         * lily/pango-font.cc (text_stencil): dump string as
13979         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
13980
13981 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
13982
13983         * configure.in (gui_b): Remove handy developer-only
13984         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
13985         CVS source installations (but break other non-default but correct
13986         PKG_CONFIG_PATH setups), as this is no longer developer-only.
13987
13988         * SConstruct: 
13989         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
13990         compatibility (backportme).
13991
13992         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
13993
13994 2005-01-03  Werner Lemberg  <wl@gnu.org>
13995
13996         Prepare glyph shapes for mf2pt1 conversion.
13997
13998         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
13999         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14000         `penstroke'.
14001         (accDot): Use `drawdot'.
14002         (accBayanbase): Replace `draw' with `draw_gridline'.
14003         (print_penpos): Moved to feta-macros.mf.
14004         (accOldEE): Replace `filldraw' with `penstroke'.
14005         Replace `draw' with `penstroke' and `drawdot'.
14006
14007         * mf/feta-banier.mf: Code clean-up.
14008         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14009         `fill'.
14010
14011         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14012
14013         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14014         paremeter to control drawing of labels.  Update all callers.
14015
14016         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14017         (new_bulb): Return a bulb as a single path.  To do that, it now
14018         takes some more parameters.  Updated all callers.
14019         (draw_gclef): Major clean-up.  `draw' has been replaced with
14020         `penstroke', unnecessary outlines have been removed.
14021         Remove (unused) gnome-canvas code.
14022
14023         * mf/feta-macros.mf (print_penpos): New macro (from
14024         feta-accordion.mf).
14025         Other minor fixes.
14026
14027         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14028         ("Pedal dot"): Use `drawdot'.
14029         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14030         all callers.
14031         Fix shape at top.
14032         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14033         all callers.
14034         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14035         all callers.
14036         Revert drawing direction.
14037
14038         * mf/feta-schrift.mf (draw_fermata): Use single path.
14039         (draw_short_fermata): Replace `filldraw' with `fill'.
14040         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14041         `draw_rounded_block' with a single path.
14042         ("Thumb"): Draw full circle instead of mirroring segments.
14043         (draw_accent): New macro.
14044         ("> accent", "espr"): Use it.
14045         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14046         ("open (unstopped)"): Draw full circle instead of mirroring
14047         segments.
14048         (draw_vee): Removed.
14049         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14050         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14051         path.
14052         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14053         partial pieces drawn with `fill' -- these do still overlap with the
14054         stem of the `t' but just once, not multiple times so that fontforge
14055         can handle it gracefully.
14056         Change other parts of the glyph so that fontforge's overlapping
14057         algorithm reliably works.
14058         (draw_heel): Replace `draw' with `fill'.
14059         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14060         ("Flageolet"): Replace `draw' with `penstroke'.
14061         ("Segno"): Replace `filldraw' with `penstroke'.
14062         Replace `draw' with `drawdot'.
14063         ("Coda"): Replace `fill' with `penstroke', using a single path.
14064         ("Varied Coda"): Use less overlapping paths.
14065         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14066         single path.
14067
14068         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14069         group to better control the `labels' command.
14070         Rename argument to `offset' and use it actually.  Update all
14071         callers.
14072         Replace `filldraw' with `fill'.
14073         ("mordent", "prallmordent", "upmordent", "downmordent",
14074         "lineprall"): Replace `draw' with `draw_gridline'.
14075         ("upprall", "downprall"): Replace `draw' with `fill'.
14076
14077         * mf/feta-timesig.mf: Formatting.
14078
14079         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14080         to...
14081         ("Flat"): Here.
14082         (draw_paren): Move code to draw labels to...
14083         ("Right Parenthesis"): Here.
14084
14085 2005-01-02  Graham Percival <gperlist@shaw.ca>
14086
14087         * Documentation/user/notation.itely: add example of \setTextDecresc
14088         and \setTextDim.
14089
14090 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14091
14092         * scm/define-markup-commands.scm :  fix glyph-strings of
14093         accidentals and \note-by-number
14094
14095 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14096
14097         * VERSION: 2.5.6 released.
14098         
14099         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14100
14101         * input/regression/new-markup-scheme.ly: oops. font-family=music
14102         -> font-encoding fetaMusic.  
14103
14104         * lily/main.cc: put default to PS.
14105
14106         * lily/tfm.cc: idem.
14107
14108         * lily/afm.cc: idem.
14109
14110         * lily/include/modified-font-metric.hh (struct
14111         Modified_font_metric): remove coding_scheme() method.
14112
14113         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14114
14115         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14116
14117         * input/les-nereides.ly: convert to utf8
14118
14119         * lily/modified-font-metric.cc (text_dimension): idem.
14120
14121         * lily/parser.yy (TODO): idem.
14122
14123         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14124
14125         * lily/lexer.ll: remove encoding
14126
14127         * scm/framework-ps.scm (output-variables): separately scale the
14128         page to mm 
14129
14130         * lily/pango-font.cc (Pango_font): fix scaling.
14131
14132         * lily/font-metric.cc (design_size): design_size returns a
14133         dimension now as well.
14134
14135 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14136
14137         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14138         brace generation. 
14139
14140         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14141
14142 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14143
14144         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14145         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14146
14147 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14148
14149         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14150         in first run as well.
14151
14152         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14153         dimension less points (ie. 12 = 12 point)
14154
14155         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14156
14157         * lily/all-font-metrics.cc (find_pango_font): set description_
14158
14159         * lily/pango-font.cc (text_stencil): export size as well.
14160         (text_stencil): fix scaling and extents box.
14161
14162 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14163
14164         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14165
14166         * Documentation/user/invoking.itely (Invoking lilypond): document
14167         texstr
14168
14169         * scripts/convert-ly.py (conv): add ancient rules.
14170
14171         * scm/clef.scm (c0-pitch-alist): replace - with .
14172
14173         * scripts/lilypond-book.py (process_snippets): add texstr support.
14174
14175         * scm/framework-texstr.scm (header): change extension to .textmetrics
14176
14177         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14178         -f tex.
14179
14180         * lily/text-metrics.cc: new file.
14181         (try_load_text_metrics): new function
14182
14183         * lily/include/text-metrics.hh: new file.
14184
14185 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14186
14187         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14188         ly_scheme_function to ly_lily_module_constant.
14189
14190         * lily/modified-font-metric.cc (text_dimension): try
14191         lookup_tex_text_dimension() first.
14192
14193         * lily/tfm.cc: new function ly:load-text-dimensions
14194
14195 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14196
14197         * scm/output-texstr.scm (text): use \lilygetmetrics
14198
14199         * scm/framework-texstr.scm (header): dump in new format.
14200
14201         * tex/lilypond-tex-metrics: new file.
14202         
14203 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14204
14205         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14206         mapping.
14207         (index_to_charcode): New method.
14208
14209         * scm/output-ps.scm (glyph-string): 
14210         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14211
14212 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14213
14214         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14215         implement fully, need FONT to get to charcode.
14216
14217         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14218
14219         * scm: Cleanups.
14220
14221         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14222         {Tunable context properties},
14223         {All layout objects},
14224         {Music definitions}.
14225
14226 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14227
14228         * VERSION: release 2.5.5
14229         
14230         * lily/main.cc: use TeX as default output format.
14231
14232         * flower/file-path.cc (find): try to open directly as well, so we
14233         find absolute path files. 
14234
14235         * lily/pango-select.cc: new file.
14236
14237         * scm/framework-ps.scm: remove all encoding code. 
14238         load pfb/pfa for PangoFont too.
14239         
14240         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14241
14242 2004-12-22  Werner Lemberg  <wl@gnu.org>
14243
14244         Prepare glyph shapes for mf2pt1 conversion.
14245
14246         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14247
14248         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14249         (define_triangle_shape): Use it to replace `draw' with `fill' and
14250         `unfill'.  Update all callers.
14251         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14252         (draw_cross): Ditto.
14253         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14254         Use penrazor for better conversion with mf2pt1.
14255         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14256         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14257         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14258         draw_la_head, draw_ti_head): Replace `filldraw' with
14259         `fill'.  Update all callers.
14260
14261 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14262
14263         * lily/paper-book.cc (output): revert: only allow a single output
14264         format.
14265
14266         * lily/include/pango-font.hh: new file.
14267
14268         * lily/pango-font.cc: new file.
14269
14270         * lily/font-metric.cc (text_stencil): new routine
14271
14272         * lily/all-font-metrics.cc (find_pango_font): new routine.
14273
14274         * lily/include/font-metric.hh (struct Font_metric): add
14275         text_stencil()
14276
14277         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14278
14279 2004-12-22  Werner Lemberg  <wl@gnu.org>
14280
14281         Prepare glyph shapes for mf2pt1 conversion.
14282
14283         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14284
14285         * mf/feta-toevallig.mf: Formatting.
14286         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14287         ("Natural"): Fix paths to allow better postprocessing.
14288         (draw_meta_flat): Use `z3l' as additional point in path to get
14289         better conversion with mf2pt1.
14290         Other minor cleanups.
14291         ("3/4 Flat"): Add auxiliary points and modify path to replace
14292         `draw' with `fill'.
14293         ("Double Sharp"): Mirror path segments instead of picture elements
14294         to get a single outline.
14295         Modify path to replace `filldraw' with `fill'.
14296
14297 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14298
14299         * input/test/unfold-all-repeats.ly: added file back.
14300
14301         * Documentation/user/notation.itely,
14302         Documentation/user/programming-interface.itely
14303         Documentation/user/changing-defaults.itely: fixed misc broken
14304         links to input/test/ files.
14305
14306 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14307
14308         * tex/texinfo.tex: Update.  We should not be distributing this,
14309         but since we do, use latest version.
14310
14311         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14312         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14313         macros for feta glyphs.
14314
14315 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14316
14317         * Documentation/user/changing-defaults.itely: fix index for set.
14318
14319         * Documentation/user/converters.itely: added convert-ly bugs list
14320         from CVS.
14321
14322 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14323
14324         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14325         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14326         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14327         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14328
14329         * mf/GNUmakefile (pfa_warning): Use less broken check.
14330
14331         * python/lilylib.py (setup_environment): Remove cruft from
14332         GS_FONTPATH.
14333
14334         * configure.in: Bump mftrace requirement to 1.1.1.
14335
14336 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14337
14338         * scm/output-svg.scm (beam): Use polygon.
14339
14340         * scm/lily-library.scm: Bugfix.
14341
14342         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14343
14344         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14345
14346 2004-12-19  Werner Lemberg  <wl@gnu.org>
14347
14348         Prepare glyph shapes for mf2pt1 conversion.
14349
14350         * mf/feta-eindelijk: Some formatting.
14351         (multi_rest_x, multi_beam_height): Removed.  Unused.
14352         ("Quarter rest"): Use `intersectiontimes' to create a single
14353         outline.
14354         (rest_crook): Removed.  Unused.
14355         (draw_rest_bulb): Return path (without filling).  Update callers.
14356         Simplified.
14357         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14358         "128th rest"): Simplify `pat'.
14359         Create single outline.
14360
14361 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14362
14363         * mf/GNUmakefile (ALL_GEN_FILES):
14364         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14365
14366         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14367         function.
14368
14369 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14370
14371         * scm/output-texstr.scm (placebox): add routine
14372
14373         * VERSION (PACKAGE_NAME): release 2.5.4
14374
14375         * scm/framework-texstr.scm (output-framework): new file.  
14376
14377         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14378         processing.
14379
14380         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14381
14382         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14383         rule.
14384
14385         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14386
14387         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14388
14389         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14390
14391 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14392
14393         * scm/framework-svg.scm (dump-page): Implement landscape.
14394
14395 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14396
14397         * lily/main.cc (setup_paths): Add svg to search path.
14398
14399         * scm/output-svg.scm:
14400         * scm/framework-svg.scm: Add pageSet.  Update.
14401         (dump-fonts): New function.
14402         (output-framework): Use it.
14403
14404         * mf/GNUmakefile: 
14405         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14406
14407 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14408
14409         * tex/lilyponddefs.tex: comment out new ifpdf code.
14410
14411 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14412
14413         * GNUmakefile.in: 
14414         * SConstruct (symlink): Replace afm by otf.
14415
14416         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14417         ly:pango-add-afm-decoder.
14418
14419         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14420
14421 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14422
14423         * scm/output-ps.scm (new-text): don't access t glyph for getting
14424         space dimension.
14425
14426         * ly/init.ly: warn about \version
14427
14428         * lily/lexer.ll: set version-seen?
14429
14430 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14431
14432         * scm/output-svg.scm (string->entities): Update.
14433
14434 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14435
14436         * lily/main.cc (setup_paths): replace afm by otf for path. 
14437
14438         * lily/pangofc-afm-decoder.cc: remove.
14439
14440         * lily/include/pangofc-afm-decoder.hh: remove.
14441
14442         * scm/framework-scm.scm (output-framework): new file.
14443
14444         * mf/GNUmakefile: remove SAUTER_FONTS.
14445         remove SVG/sodipodi hacks.
14446
14447         * scm/lily-library.scm (stderr): move stderr.
14448
14449         * mf/GNUmakefile: remove AFM support.
14450
14451         * buildscripts/mf-to-table.py (base): remove AFM support.
14452
14453         * lily/open-type-font.cc (design_size): use design_size
14454
14455 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14456
14457         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14458
14459 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14460
14461         * mf/GNUmakefile: Generate combined aybabtu info.
14462         * mf/aybabtu.pe.in (i): Load it.
14463
14464         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14465         are not symbols.
14466
14467         * lily/include/open-type-font.hh (count): New method.
14468
14469         * mf/aybabtu.pe.in: Typo.
14470
14471         * Documentation/user/out/lilypond-internals.nexi (Scheme
14472         functions): Typo.
14473
14474         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14475
14476 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14477
14478         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
14479         subfonts.
14480
14481         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
14482
14483         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
14484         (tex-font-command-raw): new function.
14485
14486         * lily/include/virtual-font-metric.hh (Module): remove file
14487
14488         * lily/virtual-font-metric.cc (Module): remove file.
14489         
14490
14491         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
14492         (get_indexed_char): read bbox from lily table if present.
14493
14494 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14495
14496         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
14497         aybabtu.subfonts
14498
14499         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
14500         global glyphname. Enables more than 64 glyphs in the OTF.
14501
14502 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
14503
14504         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
14505         braces.
14506
14507         * lily/open-type-font.cc (design_size): Use 12 as default for
14508         design size.
14509
14510         * mf/aybabtu.pe.in: New file.  Merge all our braces.
14511
14512         * mf/GNUmakefile: Generate aybabtu.
14513
14514         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
14515
14516 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14517
14518         * scm/lily-library.scm (char->unicode-index): Remove.
14519
14520         * scm/output-gnome.scm (text): Bugfix for plain string input.
14521         Updates.
14522
14523         * scm/output-svg.scm (svg-font): Add weight to font selection.
14524
14525 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
14526
14527         * Documentation/topdocs/INSTALL.texi (Top): Point to
14528         buildscripts/out/clean-fonts instead of
14529         buildscripts/clean-fonts.sh. 
14530
14531 2004-12-13  Graham Percival  <gperlist@shaw.ca>
14532
14533         * input/regression/figured-bass.ly: attempt to clarify text.
14534
14535         * Documentation/user/notation.tely: add cindex for tag, attempt to
14536         add figured bass example.
14537
14538         * Documentation/user/changing-defaults: basic editing.
14539
14540 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14541
14542         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
14543
14544         * lily/open-type-font.cc (LY_DEFINE): new function
14545         ly:font-sub-fonts
14546
14547         * lily/include/font-metric.hh (struct Font_metric): new method
14548         sub_fonts()
14549
14550         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
14551         . with - in add.stem.
14552         
14553 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14554
14555         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
14556         and fetaDynamic.
14557
14558         * lily/rest.cc (glyph_name): Change - to . .
14559
14560         * scm/output-gnome.scm (text): Hello world, again.
14561
14562         * scm/output-svg.scm (named-glyph): New function.  Hello world!
14563
14564         * lily/modified-font-metric.cc (index_to_charcode): New method.
14565
14566         * lily/include/font-metric.hh (index_to_charcode): New function.
14567
14568         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
14569         new function.
14570         (ly:font-glyph-to-index): Remove.
14571
14572 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14573
14574         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
14575
14576         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
14577
14578         * lily/open-type-font.cc (load_scheme_table): new function
14579
14580         * lily/dots.cc (print): replace - 
14581
14582         * lily/open-type-font.cc (attachment_point): new function.
14583         (load_table): read LILC table
14584
14585         * buildscripts/gen-bigcheese-scripts.py (Module): new
14586         file. Generate FF scripts.
14587
14588         * mf/feta-din10.mf: idem.
14589
14590         * mf/feta-nummer10.mf: remove mf files.
14591
14592         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
14593
14594 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14595
14596         * lily/lily-guile.cc: Use scm_from_locale_stringn.
14597
14598         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
14599         compatibility.
14600
14601 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14602
14603         * lily/open-type-font.cc (get_indexed_char): scale metrics by
14604         design-size and units_per_EM.
14605
14606         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
14607
14608 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14609
14610         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
14611         does not crash fontforge.
14612
14613         * scm/lily-library.scm (char->unicode-index): Hack to map onto
14614         PUA.
14615
14616 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14617
14618         * scm/framework-ps.scm (ps-embed-cff): new function.
14619
14620         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
14621
14622 2004-12-12  Werner Lemberg  <wl@gnu.org>
14623
14624         * mf/bigcheese.pe.in: Add PUA mapping.
14625         Don't create Type 42 but bare CFF font.
14626
14627 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14628
14629         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
14630         within canvas boundaries.
14631
14632         * mf/merge.pe.in: Set font names, version, license GPL.
14633
14634         * make/substitute.make: Add FONTFORGE.
14635
14636         * config.make.in (FONTFORGE): Add.
14637
14638         * configure.in (gui_b): Use PATH_PROG for fontforge.
14639
14640 2004-12-11  Graham Percival  <gperlist@shaw.ca>
14641
14642         * scm/define-markup-commands.scm: add baseline-skip to info
14643         about \column.
14644
14645 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
14646
14647         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
14648
14649         * scm/output-gnome.scm (named-glyph): Use it.
14650
14651         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
14652
14653         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
14654         (upper_string, lower_string, reverse_string): Remove.
14655
14656         * configure.in (fontforge): Reinstate version check.
14657
14658         * ly/engraver-init.ly: Fix clef glyph names.
14659
14660         * lily/time-signature.cc (special_time_signature): Fix fraction
14661         glyph names.
14662
14663 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14664
14665         * mf/merge.pe: new file.
14666
14667         * lily/freetype.cc: new file.
14668
14669         * lily/include/open-type-font.hh (class Open_type_font): new file.
14670
14671         * lily/include/freetype.hh: new file.
14672
14673         * lily/open-type-font.cc: new file.
14674
14675         * lily/all-font-metrics.cc (find_otf): new function.
14676
14677 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
14678
14679         * lily/time-signature.cc (special_time_signature): Fix.
14680
14681         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
14682         GTK2 before checking for pango.  Fixes -fgnome.
14683
14684         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
14685         Scheme name.
14686
14687         * scm/define-markup-commands.scm:
14688         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
14689
14690         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
14691
14692         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
14693         date versions.  Fixes configure.
14694         (STEPMAKE_CHECK_VERSION): Support optional actual program version
14695         argument.
14696
14697 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14698
14699         * buildscripts/mf-to-table.py (write_ps_encoding): write real
14700         names in .enc
14701
14702         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
14703
14704 2004-12-09  Graham Percival  <gperlist@shaw.ca>
14705
14706         * Documentation/user/changing-defaults.itely: add info about
14707         make-dynamic-script
14708
14709         * Documentation/user/notation.itely: add link in dynamics to
14710         section about make-dynamic-script.
14711
14712 2004-12-09  Christian hitz  <chhitz@gmx.net>
14713
14714         * lily/lily-guile.cc: change MACOS_X to __APPLE__
14715
14716 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14717
14718         * buildscripts/mf-to-table.py (parse_logfile): use . for
14719         concatting name and group.
14720         (parse_logfile): use M for Minus (negative.)
14721
14722         * lily/include/type-swallow-translator.hh
14723         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
14724
14725         * lily/*.cc: cosmetics around = sign.
14726
14727         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
14728         lyric spacing on the penultimate column.
14729
14730 2004-12-05  Christian Hitz  <chhitz@gmx.net>
14731
14732         * configure.in:
14733         * lily/accidental-placement.cc:
14734         * lily/bar-line.cc:
14735         * lily/beam-concave.cc:
14736         * lily/beam-quanting.cc:
14737         * lily/beam.cc:
14738         * lily/bezier-bow.cc:
14739         * lily/bezier.cc:
14740         * lily/break-align-interface.cc:
14741         * lily/custos.cc:
14742         * lily/dimension-cache.cc:
14743         * lily/dot-column.cc:
14744         * lily/font-metric.cc:
14745         * lily/font-select.cc:
14746         * lily/gourlay-breaking.cc:
14747         * lily/grob-property.cc:
14748         * lily/grob.cc:
14749         * lily/lily-guile.cc:
14750         * lily/line-spanner.cc:
14751         * lily/lookup.cc:
14752         * lily/lyric-extender.cc:
14753         * lily/lyric-hyphen.cc:
14754         * lily/mensural-ligature.cc:
14755         * lily/midi-def.cc:
14756         * lily/misc.cc:
14757         * lily/note-collision.cc:
14758         * lily/note-column.cc:
14759         * lily/note-head.cc:
14760         * lily/paper-outputter.cc:
14761         * lily/percent-repeat-item.cc:
14762         * lily/rest-collision.cc:
14763         * lily/side-position-interface.cc:
14764         * lily/simple-spacer.cc:
14765         * lily/slur-configuration.cc:
14766         * lily/slur-scoring.cc:
14767         * lily/slur.cc:
14768         * lily/spaceable-grob.cc:
14769         * lily/spacing-spanner.cc:
14770         * lily/spanner.cc:
14771         * lily/staff-symbol-referencer.cc:
14772         * lily/stem.cc:
14773         * lily/stencil.cc:
14774         * lily/system-start-delimiter.cc:
14775         * lily/system.cc:
14776         * lily/text-item.cc:
14777         * lily/tie.cc:
14778         * lily/tuplet-bracket.cc:
14779         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
14780         <cmath> beacause isinf/isnan is undefined in <cmath>
14781
14782 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
14783
14784         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
14785
14786 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14787
14788         * VERSION: release 2.5.3
14789         
14790 2004-11-29  Arno Waschk <arno@arnowaschk.de>
14791
14792         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
14793
14794 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14795
14796         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
14797
14798         * lily/note-head.cc (internal_print): always try the "s" head if
14799         u/d not found.
14800
14801         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
14802
14803 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14804
14805         * mf/parmesan-heads.mf (overdone_heads): typos.
14806
14807 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14808
14809         * lily/parser.yy (markup): in markups, { .. } without command
14810         before are also flattened, ie \line must be explicitely used.
14811
14812         * Documentation/user/changing-defaults.itely:
14813         * Documentation/user/notation.itely: 
14814         * input/wilhelmus.ly: 
14815         * input/regression/instrument-name-markup.ly: 
14816         * input/regression/markup-score.ly: 
14817         * input/regression/new-markup-scheme.ly: 
14818         * input/regression/new-markup-syntax.ly: 
14819         * input/test/coriolan-margin.ly: use \line in markups where
14820         appropriate
14821         
14822 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14823
14824         * scm/new-markup.scm (map-markup-command-list): helper function
14825         used in parser.yy to map markup commands on a markup list.
14826
14827         * lily/parser.yy: get rid off < > in markups by treating { } as
14828         real lists.
14829
14830         * lily/lexer.ll: remove < > from markup lexer mode.
14831
14832         * scripts/convert-ly.py (conv): add rule for converting 
14833         \markup < > to \markup { }
14834
14835         * ly/titling-init.ly: 
14836         * input/test/coriolan-margin.ly: 
14837         * input/regression/new-markup-syntax.ly: 
14838         * input/regression/new-markup-scheme.ly: 
14839         * input/regression/multi-measure-rest-text.ly: 
14840         * input/regression/markup-stack.ly: 
14841         * input/regression/markup-score.ly: 
14842         * input/regression/instrument-name-markup.ly: 
14843         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
14844         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
14845         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
14846         * input/wilhelmus.ly: 
14847         * Documentation/user/notation.itely: 
14848         * Documentation/user/music-glossary.tely: 
14849         * Documentation/user/changing-defaults.itely: change < > to { } in
14850         markups
14851
14852 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14853
14854         * lily/accidental-placement.cc (position_accidentals): shortcut if
14855         no accidentals to place.
14856
14857 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14858
14859         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
14860         typo s/ly:dimension ?/ly:dimension?/
14861
14862         * input/regression/lily-in-scheme.ly: 
14863         * input/regression/music-function.ly: 
14864         * ly/spanners-init.ly (assertBeamSlope): 
14865         * scm/music-functions.scm (def-grace-function): add the paper
14866         argument to music function definitions.
14867
14868 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14869
14870         * lily/moment.cc (LY_DEFINE):
14871         ly:moment-main-{denominator,numberator}, new function.
14872
14873         * lily/score-engraver.cc (typeset_all): assign to column on basis
14874         of axis-group-parent-X setting.
14875
14876         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
14877         add_element() on basis of axis-group-parent-Y setting.
14878
14879         * lily/grob.cc: add axis-group-parent-{XY} properties.
14880
14881         * input/regression/spacing-stick-out.ly: new file.
14882
14883         * lily/simple-spacer.cc (add_columns): use binary search for
14884         setting column rods. Changes O(n^2) to O(n log(n)) for
14885         constructing spacing problem from columns.
14886         (add_columns): read allow-outside-line to make sure no texts stick
14887         out.
14888         (solve): Simple_spacer::is_active() only determines
14889         satisfies_constraints_ for non-ragged typesetting.
14890
14891         * lily/simultaneous-music.cc (to_relative_octave): only set
14892         old_relative_used if return pitch actually changed.
14893
14894         * scm/define-context-properties.scm
14895         (all-user-translation-properties): change to match implementation.
14896
14897         * python/lilylib.py: Replace re.match by re.search and adds "-c
14898         showpage" to the gs command line (Johannes Schindelin)
14899
14900         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
14901         before processing. Prevents crash when inf is in the extent.
14902
14903         * scm/define-markup-commands.scm (note-by-number): add "s" to
14904         "noteheads-" glyphname.
14905  
14906         * lily/parser.yy (Generic_prefix_music): supply parser argument to
14907         music function as well.
14908         
14909 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14910
14911         * VERSION: release 2.5.2
14912
14913         * Documentation/user/changing-defaults.itely (Creating titles):
14914         add breakbefore variable.
14915
14916         * lily/paper-book.cc (set_system_penalty): new function. Set
14917         penalty_ based on breakBefore setting
14918
14919         * lily/context-specced-music-iterator.cc (construct_children):
14920         interpret special context id $uniqueContextId 
14921
14922         * lily/context.cc (create_unique_context): new method. Move
14923         creation of unique (\new) contexts into interpreting phase. This
14924         makes
14925
14926           foo= \new Staff ..
14927           << \foo \foo >>
14928
14929         produce 2 staves.
14930         
14931
14932         * scm/define-music-properties.scm (all-music-properties): add
14933         quoted-voice-direction
14934
14935         * ly/music-functions-init.ly: killCues function.
14936
14937         * scm/music-functions.scm (cue-substitute): move creation of voice
14938         contexts further to the back. 
14939
14940 2004-11-25  Werner Lemberg  <wl@gnu.org>
14941
14942         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
14943         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
14944
14945 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
14946
14947         * buildscripts/guile-gnome.sh: Fixed typo.
14948
14949 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14950
14951         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
14952
14953         * scripts/abc2ly.py (dump_slyrics): add ord(). 
14954
14955         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
14956         to regular engraver. 
14957
14958 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14959
14960         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
14961
14962 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14963
14964         * scm/define-markup-commands.scm (fill-line): Typo.
14965
14966         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
14967         and newer.
14968
14969 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
14970
14971         * ly/dynamic-scripts-init.ly: Fixed typo.
14972
14973 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14974
14975         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
14976         note-head, to have different attachment points for up and down.
14977
14978         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
14979
14980         * mf/feta-generic.mf (else): remove solfa.
14981
14982         * mf/feta-bolletjes.mf (tishape): remove unicode test.
14983
14984         * scm/define-context-properties.scm
14985         (all-user-translation-properties): add shapeNoteStyles property.
14986
14987         * lily/shape-note-heads-engraver.cc (process_music): new file.
14988
14989         * lily/event.cc (transpose): call Event::transpose() for
14990         transposing the tonic.
14991
14992 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14993
14994         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
14995         Unicode/OpenType and AFM.
14996
14997         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
14998
14999 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15000
15001         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15002
15003         * lily/context.cc (Context): unprotect key from ctor.
15004
15005         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15006         is '()
15007         (stack-stencils): idem.
15008
15009         * Documentation/user/changing-defaults.itely (Creating titles):
15010         document new title layout options.
15011
15012         * lily/parser.yy (lilypond_header_body): copy previous
15013         $globalheader if present.
15014
15015         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15016         ly:module-copy
15017         
15018         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15019
15020         * scm/titling.scm: remove old titling functions
15021
15022         * lily/stencil.cc (translate): remove absolute dimension.
15023
15024         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15025         via markup.
15026
15027         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15028         field from user-supplied markup
15029
15030         * scm/define-markup-commands.scm (on-the-fly): new markup
15031         command. Enter SCM markup procedure directly in Scheme.
15032         (fromproperty): new markup command. Read markup from props argument.
15033
15034         * scm/titling.scm (marked-up-title): create title via
15035         user-specified markup. 
15036
15037         * scm/define-markup-commands.scm (column): remove empty stencils
15038         from column.
15039
15040         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15041         not have side-effect of creating variable stub.
15042
15043         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15044
15045 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15046
15047         * scm/encoding.scm (coding-alist): 
15048         * scm/font.scm (add-ec-fonts):
15049         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15050         Extended-TeX-Font-Encoding---Latin.
15051
15052         * lily/side-position-interface.cc (general_side_position): Add
15053         actual offset to error message (avoid constant error messages).
15054
15055         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15056         block.
15057
15058         * lily/font-select.cc (select_encoded_font)
15059         (get_font_by_mag_step, get_font_by_design_size): 
15060         * lily/modified-font-metric.cc (Modified_font_metric): 
15061         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15062
15063         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15064         (read-encoding-file): Bugfix: do not require space after bracket.
15065
15066         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15067         these do not exist.
15068
15069 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15070
15071         * Documentation/user/notation.itely: added info about typesetting
15072         boxed bar numbers.
15073
15074 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15075
15076         * flower/interval.cc (T_to_string): gcc4 fixes.
15077
15078         * scm/define-markup-commands.scm (fill-line): use
15079         stack-stencils. This fixes problems with putting already centered
15080         stencils in a line.
15081
15082         * VERSION: release 2.5.1
15083
15084         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15085
15086 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15087
15088         * input/example-[1-3].ly: simplify.
15089
15090         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15091
15092         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15093         show glyphs.
15094
15095         * scm/encoding.scm (decode-byte-string): new function.
15096
15097         * scripts/convert-ly.py (conv): add warning about
15098         set-global-staff-size.
15099
15100         * Doxyfile: add. 
15101
15102         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15103         (conv): warn for TextSpanner split.
15104         (conv): warn for textheight.
15105
15106 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15107
15108         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15109         building the documentation, info with images are installed.
15110         (final-install): Fix description.  Mention sourcing of login
15111         scripts (instead of running).
15112
15113 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15114
15115         * Debian lmodern support.  Note that LilyPond will issue warnings
15116         
15117             no such encoding: "FontSpecific"
15118
15119           The font selection mechanism wants to get the encoding from the
15120           font itself, but the idea of lmodern is that it is usable with
15121           different encodings, ie, Lily should get the encoding from the
15122           font tree, rather than the font itself.  This would require some
15123           more work.
15124         
15125         * configure.in: Test for and accept lmodern if EC fonts not found.
15126
15127         * scm/framework-tex.scm (font-load-command): TeX font name
15128         mangling for latin1 encoded cork-lm fonts.
15129         (convert-to-ps): Load lm.map if available.
15130
15131         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15132         available.
15133
15134         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15135
15136         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15137         available.
15138
15139         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15140         path for absolute file name, that is silly.
15141
15142         * lily/score-engraver.cc (initialize): 
15143
15144         * Documentation/user/GNUmakefile (local-install-info): Invoke
15145         install-info --remove first.
15146
15147         * #include cleanup (Andreas Scherer).
15148
15149 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15150
15151         * input/test/script-abbreviations.ly: fix typos.
15152
15153 2004-11-17  Werner Lemberg  <wl@gnu.org>
15154
15155         * python/lilylib.py (options_help_str): Support pretty-printing of
15156         newlines in fourth element of option description.
15157
15158         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15159         feature.
15160         Sort options.
15161
15162         * Documentation/user/lilypond-book.itely: Finish update.
15163
15164 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15165
15166         * Documentation/user/macros.itexi: Add comment about \command.
15167
15168         * Documentation/user/lilypond.tely:
15169         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15170         and lilypond-book nodes, so that `info lilypond' visits the manual
15171         at top level, and `info lilypond-book' visits the lilypond-book
15172         section.
15173
15174         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15175         and packager messages.
15176
15177         * lily/pangofc-afm-decoder.cc: Update test.
15178
15179 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15180
15181         * scm/lily-library.scm (char->unicode-index): New function.
15182
15183         * scm/output-gnome.scm: 
15184         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15185
15186         * Proper naming of file name throughout; s/filename/file[-_]name/.
15187
15188         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15189
15190         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15191
15192 2004-11-16  Werner Lemberg  <wl@gnu.org>
15193
15194         * scripts/lilypond-book.py: The Lord has commanded me to use only
15195         tabs for indentation.  Your humble servant obeys.
15196
15197 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15198
15199         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15200         including font, if LilyPond-feta font is only feta font in path.
15201
15202         * scm/output-gnome.scm (text): Revert to file name of font if font
15203         has no name.  Fixes ec font selection.
15204         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15205
15206         * scm/framework-svg.scm:
15207         * scm/output-svg.scm: New file.  TODO: figure out how to
15208         do character by index in font.
15209
15210         * scm/output-sodipodi.scm: Remove.
15211
15212         * scm/output-ps.scm (stem): Remove.
15213
15214 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15215
15216         * scm/output-gnome.scm (beam): New function.
15217         (slur): Round corners.
15218         (round-filled-box): Round corners.
15219
15220 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15221
15222         * scm/output-gnome.scm (beam): add function.
15223         (draw-line): new routine.
15224         (dashed-line): stub; call draw-line
15225         (polygon): new routine.
15226
15227 2004-11-15  Werner Lemberg  <wl@gnu.org>
15228
15229         * Documentation/user/lilypond-book.itely: Revise section on
15230         lilypond-book options.
15231         Other minor fixes.
15232
15233         * scripts/lilypond-book.py: Change indentation to 4.
15234         Minor formatting.
15235
15236 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15237
15238         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15239         grobs that have tweaks specced.
15240         
15241 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15242
15243         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15244
15245 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15246
15247         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15248         actual char #, not 0 based index.
15249
15250         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15251
15252         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15253         Warning: do make -C mf clean.
15254
15255         * lily/context-property.cc: Compile fix.
15256
15257         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15258         Grok ec-fonts, braces and dynamics.
15259
15260         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15261
15262 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15263
15264         * lily/include/tweak-registration.hh: new file.
15265
15266         * lily/tweak-registration.cc: new file.
15267
15268         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15269         saving tweaks.
15270
15271         * scm/output-gnome.scm (text): comment dribble.
15272
15273 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15274
15275         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15276
15277         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15278         path-def before using.  Fixes muchtomany slurs in wrong places
15279         bug.
15280
15281 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15282
15283         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15284
15285         * lily/include/object-key-undumper.hh (Module): new file.
15286
15287         * lily/object-key-undumper.cc (Module): New file. Deserialize
15288         keys. SCM bindings
15289
15290         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15291         Provide SCM bindings.
15292
15293         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15294         new file. Serialize object keys.
15295         
15296         * lily/object-key.cc (dump): new function.
15297         (as_scheme): new virtual function
15298         (undump): new function
15299         (undumpers): new table.
15300
15301         * lily/include/global-context.hh (Context): take \score key upon init.
15302
15303         * lily/object-key-dumper.cc (serialize_key): new file.
15304
15305         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15306
15307         * lily/lily-lexer.cc: remove \quote.
15308
15309         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15310
15311         * lily/context.cc (Context): take key argument in ctor.
15312         (create_context): new function
15313
15314         * lily/grob.cc (Grob): take key argument in ctor.  
15315
15316         * lily/lilypond-key.cc (do_compare): new file.
15317
15318         * lily/object-key.cc (Object_key): new file.
15319
15320         * lily/include/object-key.hh (class Object_key): new file.
15321
15322         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15323
15324 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15325
15326         * Documentation/user/lilypond-book.itely: add small warning about
15327         noindent default in lilypond-book.
15328
15329         * Documentation/user/converters.itely: add examples for convert-ly.
15330
15331         * Documentation/user/examples.itely: change version string in templates
15332         to 2.4.0.
15333
15334 2004-11-12  Karl Hammar  <karl@aspodata.se>
15335
15336         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15337         cmdline, use xargs instead (backportme)
15338
15339 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15340         
15341         * Documentation/user/: Numerous fixes in the user manual.
15342
15343 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15344
15345         * lily/parser.yy (re_rhythmed_music): search music expression for
15346         context-id, surround by \new Voice if not found. Fixes:
15347         addlyrics-second-staff.ly
15348
15349         * VERSION: 2.5.0 released.
15350         
15351 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15352
15353         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15354
15355         * Documentation/user/GNUmakefile: Separate rules for split and
15356         unsplit html documents.  Remove perl massaging.  (backportme)
15357
15358 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15359
15360         * Documentation/user/lilypond-book.itely: add short warning about
15361         \lilypond{} in LaTeX docs.
15362
15363 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15364
15365         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15366         found.  (backportme)
15367
15368         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15369         version requirement.  (backportme)
15370
15371         * configure.in: Be explicit about old versions of
15372         ec-fonts-mtraced.  (backportme)
15373
15374         * lily/context-selector.cc (set_tweaks): New function.
15375         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15376         web with -DTWEAK.
15377
15378         * Documentation/user/introduction.itely (Automated engraving):
15379         Remove fragment option.  Fixes web.
15380
15381         * lily/context-property.cc (make_item_from_properties):
15382         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15383         #ifdef.
15384
15385         * scm/define-context-properties.scm
15386         (all-internal-translation-properties): Add tweakRank and tweakCount.
15387
15388         * lily/grob.cc: 
15389         * scm/define-grob-properties.scm (all-internal-grob-properties):
15390         Add tweak-rank and tweak-count.
15391
15392 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15393
15394         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15395         New function.
15396         (text): Use them.
15397
15398         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15399         animated/opaque grob dragging tweaks.
15400
15401         * buildscripts/guile-gnome.sh: Update.
15402
15403 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15404
15405         * scm/define-grobs.scm (all-grob-descriptions): Added
15406         line-interface to the LigatureBracket object.
15407
15408 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15409
15410         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15411         dragging tweaks.
15412
15413         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15414
15415         * lily/context-selector.cc (store_context): New function.
15416
15417         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15418         (store_grob): New function.
15419         (identify_grob): Add Moment parameter.
15420
15421         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15422         exists.
15423
15424         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15425
15426 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15427
15428         * scm/framework-gnome.scm (item-event): Print grob id.
15429         (save-tweaks): New function.
15430         (tweak): New funtion.
15431         (item-event): Use it, bound to arrow keys.
15432
15433         * lily/context-property.cc (make_item_from_properties): Register grob.
15434         * lily/context.cc (add_context): Register context.
15435
15436         * lily/include/context-selector.hh:
15437         * lily/include/grob-selector.hh:
15438         * lily/context-selector.cc:
15439         * lily/grob-selector.cc: New file.
15440
15441 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15442
15443         * lily/slur.cc: add 'positions to interface
15444
15445         * lily/main.cc: reinstate PS as standard output format. 
15446
15447         * scm/framework-tex.scm (output-preview-framework): print systems
15448         up to first non title system.
15449
15450         * lily/grace-engraver.cc (start_translation_timestep): split
15451         scm_cadddr
15452         
15453 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15454
15455         * lily/quote-iterator.cc (Module): remove old quote-iterator
15456
15457         * scm/define-music-types.scm (music-descriptions): move
15458         NewQuoteMusic over QuoteMusic
15459
15460         * Documentation/user/notation.itely (Formatting cue notes): use
15461         \cueDuring.
15462
15463         * lily/new-quote-iterator.cc (quote_ok): new function.
15464
15465         * input/regression/quote-cue-during.ly: new file.
15466
15467         * input/regression/quote-grace.ly: new file.
15468
15469         * scm/define-context-properties.scm (Module): change definition of
15470         graceSettings
15471
15472         * lily/context-property.cc (Module): rename from
15473         translator-property.cc
15474
15475         * lily/context.cc (context_name_symbol): new function
15476
15477         * lily/grace-engraver.cc: new file. Set properties for grobs based
15478         on the grace-ness of now_moment().
15479
15480         * scm/music-functions.scm (add-grace-property): use list
15481         iso. vector for graceSettings
15482         remove set-{start,stop}-grace-properties. 
15483
15484         * lily/new-quote-iterator.cc (construct_children): set
15485         quote_outlet_ if no quoted-context-{id,type} specified.
15486
15487         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
15488
15489         * lily/parser.yy (command_element): remove \quote.
15490
15491         * ly/music-functions-init.ly (location): add quoteDuring music
15492         function. 
15493
15494         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
15495         optional semicolon. (backportme)
15496
15497 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15498
15499         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
15500         need to link to GUILE et al.
15501
15502 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15503
15504         * scm/define-music-properties.scm (all-music-properties): add
15505         quoted-context-type, quoted-context-id.
15506
15507         * scm/lily.scm (type-check-list): new function.
15508         
15509         * scm/lily-library.scm: new file. Generic library routines.
15510
15511         * lily/parser.yy (Generic_prefix_music): move typechecking out of
15512         parser.
15513
15514         * ly/music-functions-init.ly: add quoteDuring function.
15515
15516         * lily/include/music-iterator.hh (class Music_iterator): rename
15517         set_translator -> set_context
15518
15519         * lily/parser.yy (Generic_prefix_music_scm): add
15520         MUSIC_FUNCTION_SCM_SCM_MUSIC
15521
15522         * scm/lily.scm (sanitize-command-option): new function. (backportme)
15523
15524         * scm/framework-tex.scm (header): sanitize TeX paper size.
15525         (backportme)
15526
15527 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15528
15529         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
15530
15531         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
15532
15533         * scm/framework-tex.scm (font-load-command): Use T1 if no
15534         font-encoding set.  (backportme)
15535
15536         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
15537         exists before converting.  (backportme)
15538
15539         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
15540         exists before converting.  (backportme)
15541         (convert-to-ps): Remove .ps file if it exists before
15542         converting.  (backportme)
15543
15544         * lily/lexer.ll: Remove extra progress newline, use present tense.
15545
15546         * scm/paper.scm (paper-alist): public.
15547         * scm/framework-tex.scm (convert-to-ps):
15548         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
15549         command line.
15550
15551 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15552
15553         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
15554
15555         * lily/recording-group-engraver.cc (derived_mark): mark
15556         now_events_. (backportme)
15557
15558 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15559
15560         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
15561
15562         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
15563         invoking latex. (backportme.)
15564
15565         * lily/stem.cc (off_callback): center stems for all rest stems.
15566
15567 2004-11-05  Werner Lemberg  <wl@gnu.org>
15568
15569         * Documentation/user/lilypond.tely: Add more guidelines for writing
15570         lilypond texinfo documents.
15571
15572 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
15573
15574         * Documentation/index.html.in: remove <hr>.
15575
15576         * THANKS: change 2.3 to 2.4.
15577
15578 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
15579
15580         * scm/output-gnome.scm: More fontconfig comment.
15581
15582 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
15583
15584         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
15585         <package> directory in $(builddir)/share according with
15586         PACKAGE_NAME defined in the VERSION file.
15587
15588 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15589
15590         * lily/beam.cc (rest_collision_callback): use local beam
15591         multiplicity.
15592
15593         * input/regression/stem-stemlet.ly: new file.
15594
15595         * lily/stem.cc (add_head): store rests as well.
15596
15597         * scm/define-grob-properties.scm (all-user-grob-properties): add
15598         stemlet-length
15599
15600         * lily/stem.cc: store rests as well.
15601         
15602         * input/regression/new-slur.ly: mention forcing.
15603
15604 2004-11-04  Werner Lemberg  <wl@gnu.org>
15605
15606         * Documentation/user/*: A new round of layout fixes and document
15607         structure cleanup.
15608
15609 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
15610
15611         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
15612
15613 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
15614
15615         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
15616
15617 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
15618
15619         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
15620
15621         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
15622
15623         * lily/main.cc (main): Invoke identify.
15624
15625         * scm/lily.scm (postscript->pdf): Remove progress newline.
15626         Write progress to stderr.
15627
15628         * lily/paper-book.cc (output): Remove progress newline.
15629
15630         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
15631         gettext on user messages, and remove whitespace.
15632
15633         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
15634
15635         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
15636         argv[0] (Thomas Scharkowski).
15637
15638         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
15639         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
15640         for ec-fonts-mtraced.
15641
15642         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
15643         --srcdir build (Bertalan).
15644
15645         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
15646         headers and library too (Laura Conrad).
15647
15648         * Documentation/topdocs/INSTALL.texi (Top): Mention development
15649         package for guile too (Laura Conrad).
15650
15651         * lily/main.cc (usage): Typo.
15652
15653 2004-11-02  Werner Lemberg  <wl@gnu.org>
15654
15655         * Documentation/user/notation.ly: More fixes to improve appearance.
15656
15657         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
15658         better output for multicolumn tables.
15659
15660 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
15661
15662         * lily/main.cc (dir_info): Fixed typo in the printouts.
15663
15664 2004-11-01  Werner Lemberg  <wl@gnu.org>
15665
15666         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
15667         of output.
15668         Set `per_line' to 2; replace hard-coded value with it.
15669
15670         * Documentation/user/*: Many fixes to improve appearance of
15671         printed manual.
15672
15673 2004-11-01  Werner Lemberg  <wl@gnu.org>
15674
15675         * Documentation/user/changing-defaults.itely,
15676         Documentation/user/notation.ly,
15677         Documentation/user/programming-interface.itely: Use @/.
15678         Fix formatting of some lilypond snippets and tables.
15679
15680         * scripts/lilypond-book.py (compose_ly): Provide useful default
15681         for LINEWIDTH in `override'.
15682
15683 2004-10-31  Graham Percival  <gperlist@shaw.ca>
15684
15685         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
15686
15687 2004-10-31  Werner Lemberg  <wl@gnu.org>
15688
15689         Resetting @exampleindent to `5' gives ugly results with texinfo's
15690         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
15691         (if not quoting) to change @exampleindent only locally.
15692
15693         * scripts/lilypond-book.py (NOQUOTE): New variable.
15694         (output) [LATEX]: Remove AFTER and BEFORE.
15695         [TEXINFO]: Remove AFTER and BEFORE.
15696         Fix QUOTE and VERBATIM pattern.
15697         Add NOQUOTE pattern.
15698         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
15699         and BEFORE.
15700         [output_texinfo]: Use NOQUOTE.
15701
15702 2004-10-31  Graham Percival  <gperlist@shaw.ca>
15703
15704         * Documentation/user/changing-defaults.itely: clarify paper
15705         size commands with correct info.
15706
15707         * Documentation/user/lilypond-book.itely: add more docs for
15708         filename extensions.
15709
15710 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15711
15712         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
15713         (PATCH_LEVEL): start 2.5.0.
15714
15715 #Local variables:
15716 #coding: utf-8
15717 #End:
15718