]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* lily/note-column.cc: reformat.
[lilypond.git] / ChangeLog
1 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
4         step positioning for note/rest combinations.
5
6         * input/regression/rest-note-collision.ly: new file.
7
8         * scm/define-grobs.scm (all-grob-descriptions): add
9         springs-and-rods
10
11         * flower/include/std-vector.hh: switch off again.
12
13         * VERSION (PATCH_LEVEL): bump to 2.9.18
14
15         * flower/include/std-string.hh: idem.
16
17         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
18
19 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
20
21         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
22         PianoStaff. 
23
24 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
25
26         * Documentation/user/page.itely: update page breaking documentation
27
28 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
29
30         * lily/note-collision.cc (calc_positioning_done): only access
31         first head if available.
32
33         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
34
35         * scm/framework-ps.scm (output-preview-framework): use new name.
36
37         * lily/program-option.cc (internal_set_option): use new names.
38
39         * Documentation/user/SConscript (lilypond_book_flags): update -d
40         variable names.
41
42         * Documentation/user/lilypond-book.itely (Inserting LilyPond
43         output into other programs): new variable names.
44
45         * scm/lily.scm (define-scheme-options): uniformize var names.
46
47         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
48         tuplets_ is non-empty before popping.
49
50 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
51
52         * lily/spanner.cc (find_broken_piece): 
53         * lily/spacing-spanner.cc (get_columns): 
54         * lily/source-file.cc (get_line): 
55         * lily/simple-spacer.cc (get_column_description): 
56         * lily/keyword.cc (lookup): 
57         use the new binary search.
58
59         * flower/include/std-vector.hh: replace binary_search with
60         a more STL-like version
61
62 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
63
64         * lily/tie-performer.cc: remove unused last_event_ property.
65         (class Tie_performer): add now_tied_heads_ property for
66         partially-tied heads.
67         (acknowledge_audio_element): when adding an Audio_note, put the
68         note in now_tied_heads_ if the audio note is partially tied.
69         (stop_translation_timestep): always include entries in
70         now_tied_heads_ in heads_to_tie_.
71
72         * lily/drum-note-performer.cc (process_music): look for tie-events
73         in the articulations; pass to Audio_note constructor.
74
75         * lily/note-performer.cc (process_music): look for tie-events in
76         the articulations; pass to Audio_note constructor.
77
78         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
79         constructor.
80
81         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
82         include initializer in constructor.
83
84 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
85
86         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
87         unless they are breakable. This fixes discrepancies between the forces
88         calculated here and the forces calculated in get_line_configuration.
89
90         * lily/grob.cc (pure_relative_y_coordinate): fix some
91         mis-estimation that was happening with piano staves.
92
93         * lily/constrained-breaking.cc (resize): don't choke if we get a
94         measure that won't fit on a line.
95         (combine_demerits): don't consider uniformity when ragged
96
97         * lily/page-spacing.cc (solve): why the f* were there two of these?
98         (calc_subproblem): properly handle the case where a system is taller
99         than the page.
100
101         * lily/system.cc (get_paper_system): ensure that all the permissions
102         and penalties are passed to the paper systems.
103
104         * lily/page-breaking.cc (create_system_list): support system-count.
105
106         * scm/define-grobs.scm (pure-print-callbacks): add
107         ly:script-interface::print
108
109         * lily/page-spacing.cc (min_page_count): fix calculation of min
110         pages if we are ragged and there are non-zero springs.
111
112         * scm/layout-page-layout.scm: if the pure-height estimates are under
113         the real height, allow space-systems to ignore padding if it is
114         needed in order to fit the systems on one page
115
116         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
117         ragged properties
118         (solve): fix performance problem. Make sure we always get at least
119         one solution
120
121         * lily/page-breaking.cc (make_pages): include write-page-breaks
122         and page-stencil
123
124         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
125
126         * scm/define-grobs.scm: add the new slur-callback
127         fix pure-relevant to not exclude grobs whose extent is already
128         calculated
129
130         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
131         page breaker
132
133         * lily/slur.cc (pure_height): new callback to estimate the height
134         of a slur
135
136 2006-09-02  Graham Percival  <gpermus@gmail.com>
137
138         * Documentation/user/invoking.itely: small update on
139         MacOS X notes; thanks Trevor!
140
141 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
142
143         * VERSION (MY_PATCH_LEVEL): release 2.9.17
144
145         * lily/lexer.ll: accept EOF in all states.
146
147         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
148
149         * lily/source-file.cc (Source_file): always 0-terminate character
150         array, to prevent Flex from barfing.
151
152         * lily/global-context.cc (get_output): robustness: don't crash if
153         no Score context found.
154
155         * lily/include/book.hh (class Book): idem.
156
157         * lily/include/context-def.hh (struct Context_def): idem.
158
159         * lily/include/score.hh (class Score): don't derive from Input.
160
161         * lily/book.cc (Book): add a copy ctor. 
162
163         * buildscripts/output-distance.py (FileLink.calc_distance): count
164         orphans in distance too.
165
166         * python/midi.c (midi_parse_track): robustness: don't read past
167         end of string.
168
169         * ly/performer-init.ly: add Control_track_performer, move
170         Tempo_performer and Time_signature_performer to Score.        
171
172         * lily/score-performer.cc (acknowledge_audio_elements): override
173         from base class: add to audio-columns
174
175         * lily/control-track-performer.cc (add_text): new file: generate
176         the control track.
177
178         * lily/performance.cc: move output_header_track to
179         Control_track_performer ()
180
181         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
182
183         * lily/include/midi-item.hh (class Midi_channel_item): insert
184         class into hierarchy, for items that can have a channel setting. Dehungarify.
185
186         * lily/include/performer.hh (class Performer): remove
187         play_element();  move functionality into announce/acknowledge.
188
189         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
190
191         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
192         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
193
194 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
195
196         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
197         ambituses.
198
199         * lily/all-font-metrics.cc: remove TFM support.
200
201         * lily/include/tfm.hh: remove TFM support, TFM reader.
202
203         * lily/include/binary-source-file.hh: remove Binary_source_file.
204
205 2006-08-27  Graham Percival  <gpermus@gmail.com>
206
207         * Documentation/topdocs/NEWS.itely: add @c marker for
208         stuff I've processed.
209
210         * Documentation/user/ various: info from NEWS.
211
212 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
213
214         * lily/paper-column-engraver.cc (finalize): Oops, this change
215         should have gone in on 2006-08-23
216
217 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
218
219         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
220         quotes to quote arguments. Fixes Windows problem.
221
222         * python/lilylib.py (progress): idem
223
224 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
225
226         * scripts/musicxml2ly.py: fix for importing
227         minor key signatures from MusicXML.  (Phillip Kirlin)
228
229 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
230
231         * python/musicxml.py: 
232         (Attributes.get_key_signature): now correctly retrieves mode from 
233         MusicXML. 
234
235 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
236
237         * lily/parser.yy (output_def_body): take ownership of identifier
238         back to C++.
239
240         * Documentation/user/advanced-notation.itely (Metronome marks):
241         update use of \tempo in \midi.
242
243         * VERSION: release 2.9.16
244         
245 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
246
247         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
248         web partially)
249
250 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
251
252         * input/regression/tie-chord-partial.ly: clarify example.
253
254         * scm/define-music-properties.scm (all-music-properties): remove
255         untied.
256
257         * ly/music-functions-init.ly: remove \untied.
258
259         * lily/tie-engraver.cc (struct Head_event_tuple): store both
260         stream events and music events.
261         (stop_translation_timestep): search acknowledged heads for
262         tie-event.
263
264         * input/regression/tie-chord-partial.ly: new file.
265
266         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
267         for \char markup command.
268
269         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
270
271         * scm/define-music-types.scm (music-descriptions): consistency:
272         Use solo-{one,two}-event iso. solo-[12]-event.
273
274         * lily/part-combine-engraver.cc (process_music):
275         Use solo-{one,two}-event iso. solo-[12]-event.
276
277         * ly/declarations-init.ly (partCombineListener): add Timing as
278         alias
279
280         * flower/std-string.cc (string_copy): use copy ()
281
282         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
283
284 2006-08-24  Graham Percival  <gpermus@gmail.com>
285
286         * Documentation/user/changing-defaults.itely, global.itely,
287         lilypond-book.itely, page.itely: minor changes from mailist.
288
289 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
290
291         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
292         snippet-map
293
294         * scm/define-context-properties.scm
295         (translator-property-description): robustness: detect type errors
296         in property definitions.
297
298         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
299         after getting it from SCM. 
300
301         * lily/smobs.cc (protect_smob): switch off fancy smob protection
302         for now. 
303
304         * lily/include/performer.hh (class Performer): strip get_tempo()
305         method.
306
307         * lily/midi-def.cc: strip file.
308
309         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
310
311         * lily/include/context-def.hh (struct Context_def): use
312         VIRTUAL_COPY_CONSTRUCTOR().
313
314         * lily/source-file.cc: smobification.
315
316         * lily/include/source-file.hh (class Source_file): smobify
317         Source_file. Trim redundant members.
318
319         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
320         clones after creation. This plugs a huge memory leak.
321
322         * python/convertrules.py (FatalConversionError.sub_tempo):
323         complete rule for \midi{ \tempo }
324
325         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
326
327         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
328
329 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
330
331         * input/regression/optimal-page-breaking-hstretch.ly: test for
332         ragged-last-bottom also
333
334         * lily/paper-column-engraver.cc (finalize): make the end of a score
335         breakable by default. This is to balance out a change in behaviour
336         of the page-turn-breaker which no longer makes the end of a score
337         breakable.
338
339         * lily/paper-book.cc (pages): set the systems_ once the pages are
340         broken
341
342         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
343         Page_breaking interface.
344
345         * lily/page-breaking.cc (class Page_breaking): make the interface
346         more consistent and provide abstractions for dealing with
347         Line_divisions.
348
349         * lily/optimal-page-breaking.cc (solve): use a more straightforward
350         algorithm. Use the new interface to Page_breaking.
351
352         * lily/page-spacing.cc: better support for ragged-bottom and
353         ragged-last-bottom
354
355 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
356
357         * python/convertrules.py (conv): warning on \tempo{}
358
359         * ly/performer-init.ly: set tempoWholesPerMinute.
360
361         * ly/midi-init.ly: remove \midi
362
363         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
364         MIDI tempo.
365
366         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
367         tempoUnitDuration for determining what to print.
368
369         * lily/lyric-extender.cc: typo.
370
371         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
372
373         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
374         function.
375
376         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
377
378         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
379         eps-pad-boxes is set.
380
381         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
382
383         * THANKS: update sponsors.
384
385         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
386
387         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
388
389         * input/regression/tie-chord-untied.ly: new file.
390
391         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
392
393         * scm/define-music-properties.scm (all-music-properties): add
394         'untied property.
395
396         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
397         than .ly.txt.
398         (headertext_nopics): sanitize no-examples text.
399
400         * scm/page.scm (make-page-stencil): don't rely on extents of
401         page-stencil. This fixes spurious space around .EPS files produced
402         with the EPS backend.
403
404 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
405
406         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
407
408         * lily/hara-kiri-engraver.cc (process_music): remember
409         keepAliveInterfaces after processing \set
410
411         * lily/lyric-extender.cc (print): support left/right-padding for
412         extenders.
413
414         * scm/documentation-generate.scm (string-append): revert lilypond/
415         path, doc why.
416
417 2006-08-20  Graham Percival  <gpermus@gmail.com>
418
419         * Documentation/user/lilypond.tely: clarification to
420         license presentation (not to actual license).
421
422         * Documentation/user/basic-notation.itely,
423         instrument-notation.itely: minor changes.
424
425         * input/ {regression, test}/+.ly: clarification to
426         text (you can click on examples).  Thanks, Mats!
427
428         * input/manual/bar-lines.ly: adds ||: repeats.
429
430 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
431
432         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
433
434         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
435
436         * Documentation/user/lilypond.tely: strip lilypond/ from info
437         links, rename to category LilyPond
438
439         * lily/pango-font.cc (description_string): new function.
440
441         * VERSION: release 2.9.15
442
443         * lily/spacing-engraver.cc (stop_translation_timestep): use
444         Dscho's fix for spacing spanner. 
445
446         * scm/define-music-types.scm (music-descriptions): use
447         apply-output-event for ApplyOutputEvent
448
449         * lily/output-property-engraver.cc (listen_apply_output): rename
450         from listen_layout_instruction.
451
452         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
453         function protect()
454
455 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
456
457         * scm/lily.scm (lilypond-all): option read-file-list: substitute
458         commandline args with contains, split by \n.
459
460         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
461         write snippet-names file, call with -dread-file-list. Fixes
462         command limitations on 64-bit systems.
463
464         * input/regression/stencil-color-rotation.ly: new file.
465
466         * lily/include/translator.hh (struct Acknowledge_information):
467         revert: don't use Protected_scm in global objects, as GUILE can't
468         handle gc_unprotect from automated destructors on MacOS X.
469  
470         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
471         color, not the original stencil. Fixes combinations of
472         color/transparency/rotation. Backportme.
473
474         * scripts/lilypond-book.py (main): add --formats=eps for
475         texinfo/latex.
476
477         * lily/spacing-engraver.cc (stop_translation_timestep): don't
478         crash if spacing_ is nonexistent.
479
480 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
481
482         * scripts/lilypond-book.py (output): Remove obsolete(!?)
483         \catcode`\@=12 in the LaTeX output.
484
485 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
486
487         * scm/define-music-types.scm (music-descriptions):
488         use sustain-event iso. sustain-pedal-event.
489
490 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
491
492         * scripts/convert-ly.py: honour the -n command-line switch
493
494 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
495
496         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
497         break specification.
498
499 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
500
501         * Documentation/user: convert-ly the user manual
502
503 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
504
505         * stepmake/aclocal.m4: version check patch (thanks MWD)
506
507         * ly/music-functions-init.ly: robustness. Don't crash if
508         currentBarNumber is not a number.
509
510         * VERSION (PATCH_LEVEL): bump.
511
512 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
513
514         * stepmake/aclocal.m4: better version check; handle fooX.Y
515         binaries too.
516
517         * ly/performer-init.ly: instrument name fixup.
518
519         * input/manual/chord-names-jazz.ly (banterProperties):
520         instrumentName update
521
522         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
523
524         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
525
526         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
527         function. Use hash tables to check membership.
528
529         * lily/general-scheme.cc (LY_DEFINE): new function.
530
531         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
532
533         * lily/include/translator.hh (struct Acknowledge_information): add
534         Protected_scm
535
536         * ly/music-functions-init.ly: change name to BreathingEvent
537
538         * input/regression/*.ly: apply it.
539
540         * python/convertrules.py (conv): better instrumentName conversion
541         rule.
542
543         * scm/define-music-types.scm (music-descriptions): add
544         line-break-event to LineBreakEvent music
545
546         * lily/music.cc (to_event): don't crash if music type not set.
547
548         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
549         spacing not set.
550
551         * lily/spacing-engraver.cc (stop_translation_timestep): set
552         spacing for proportional notation too.
553
554         * scm/translation-functions.scm (format-bass-figure): inspect
555         stream-event.
556
557         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
558
559 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
560
561         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
562
563         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
564
565         * scm/layout-page-layout.scm (make-page-from-systems): new function
566         (optimal-page-breaks): use the new page-breaking calling convention
567
568         * scm/define-context-properties.scm (all-user-translation-properties):
569         add revokePageTurns
570
571         * lily/paper-column-engraver.cc (stop_translation_timestep): add
572         revokePageTurns  functionality. If there is a special barline within
573         the breakable region, break there instead of at the end of the region.
574
575         * lily/paper-book.cc (pages): use the new page-breaking calling
576         convention
577
578 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
579
580         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
581
582         * scripts/lilypond-book.py: insert \sourcefileline command in
583         output, so lilypond error messages refer to the spot in the
584         original .lytex / .itely sourcefile.
585
586 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
587
588         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
589         space to next column for distance to fixed col.
590
591         * VERSION (PACKAGE_NAME): release 2.9.14
592
593         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
594         if no accidental.
595
596         * lily/accidental-engraver.cc (process_acknowledged): don't create
597         accidental for trill span event. This fixes spurious accidentals
598         on trills.
599
600 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
601
602         * scm/define-grob-properties.scm (all-user-grob-properties):
603         Clarify documentation of side-axis and direction. Thanks to Paul
604         for the inspiration.
605
606         * lily/bar-line.cc: Add documentation for "||:" also in the
607         interface documentation.
608
609 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
610
611         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
612
613         * lily/paper-column.cc (set_system): new function.
614
615         * lily/spacing-engraver.cc (stop_translation_timestep): store
616         SpacingSpanner refs in Paper_column.
617
618         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
619         compute loose clique spacing using GraceSpacing/SpacingSpanner.
620
621 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
622
623         * lily/beam-engraver.cc (listen_beam): add method for
624         Grace_beam_engraver too.
625
626 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
627
628         * python/convertrules.py: Fix indentation bug that broke
629         conversion of files older than 1.3.117.
630         Fix escape error in the description for 2.9.6.
631
632 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
633
634         * lily/*-engraver.cc: convert all try_music functions to listen_*
635         functions.
636
637         * lily/piano-pedal-engraver.cc: some additional cleanups: use
638         enums to represent pedal types, and calculate more data statically.
639
640         * scm/part-combiner.scm (recording-group-emulate): create a
641         softcoded substitute for recording-group-engraver.cc.
642
643         * lily/music.cc: make a common transpose function for events and
644         music
645
646         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
647         ManualMelismaEvent, and obsoletes Melisma_translator.
648
649 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
650
651         * input/test/instrument-name-align.ly: update version.
652
653 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
654
655         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
656         Doc the --pdf flag to lilypond-book.
657
658 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
659
660         * Documentation/topdocs/NEWS.tely (Top): add description.
661
662         * input/regression/tuplet-full-length-note.ly: add file.
663
664         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
665         always store axis group.
666
667 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
668
669         * input/regression/instrument-switch.ly: new file.
670
671         * lily/instrument-switch-engraver.cc (process_music): new file.
672
673         * ly/engraver-init.ly: add Instrument_switch_engraver
674
675         * ly/music-functions-init.ly: \instrumentSwitch
676
677         * scm/define-context-properties.scm
678         (all-user-translation-properties): add instrumentCueName
679
680         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
681
682 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
683
684         * ly/music-functions-init.ly: music function \transposition.
685
686         * lily/parser.yy (command_element): softcode \transposition.
687
688         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
689         (process_music): oops.
690
691         * lily/instrument-name-engraver.cc (start_spanner): new
692         function. Create spanner when property changes.
693         (stop_spanner): new function.
694
695         * python/convertrules.py (conv): add rule.
696
697         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
698         shortInstrumentName iso. instr.
699
700         * scm/output-ps.scm (dashed-line): add phase argument to
701         dashed-line.
702
703         * lily/bar-line.cc (dashed_bar_line): new function.
704         (compound_barline): support \bar "dashed". 
705
706         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
707         --output=DIR to DIR/BASE if it is a dir. 
708
709         * flower/file-name.cc (file_part): new function
710         (dir_part): new function
711
712         * lily/lily-parser-scheme.cc (LY_DEFINE): 
713
714         * DEDICATION: update
715
716 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
717
718         * lily/instrument-name-engraver.cc: formatting.
719
720         * python/convertrules.py (conv): bugfix for \epsfile.
721
722 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
723
724         * lily/grob.cc:
725         
726         * lily/gourlay-breaking.cc: Oops, these should have been included
727         in my last commit
728
729 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
730
731         * scripts/*.py (program_name): cleanup relocation snippets.
732
733         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
734
735 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
736
737         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
738         page-breakable by default
739
740         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
741         correctly calculated for a single-system page
742
743         * scm/lily-library.scm (interval-sane?): also check that the first number is no
744         bigger than the second number
745
746         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
747         acknowledge that we aren't satisfying constraints)
748
749         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
750         non-Items
751
752         * lily/grob.cc (pure_height): add minimum-Y-extent
753
754         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
755         ragged
756
757         * lily/constrained-breaking.cc: convert code to use new Matrix class
758         (get_best_solution): new function
759
760         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
761         is a page with no systems
762
763 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
764
765         * VERSION (PACKAGE_NAME): release 2.9.13
766
767         * scm/define-grobs.scm (all-grob-descriptions): remove stray
768         assignment.
769
770 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
771
772         * Documentation/topdocs/NEWS.tely (Top): doc new features.
773
774         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
775         function.
776
777         * scm/define-grob-properties.scm (all-user-grob-properties):
778         remove grace-space-factor.
779
780         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
781         grace-spacing-interface
782         (spacing-options-interface): add.
783
784         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
785
786         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
787
788         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
789         GraceSpacing object.
790
791         * lily/note-spacing.cc: fix prop list formatting
792
793         * lily/beaming-pattern.cc (de_grace): new function. Sensible
794         beaming for grace notes too.
795
796         * input/regression/spacing-grace.ly: update.
797
798         * lily/grace-spacing-engraver.cc: new file.
799
800         * lily/spacing-spanner.cc: add strict-grace-spacing.
801
802 2006-07-20  Graham Percival  <gpermus@gmail.com>
803
804         * lily/parser.yy: compile fix.
805
806 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
807
808         * scm/define-grobs.scm (all-grob-descriptions): typo.
809
810         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
811         .eps extension from includegraphics.
812
813         * scripts/lilypond-book.py (main): add support for --pdf. 
814
815         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
816         callback to compute common shortest duration.
817         (set_springs): typo.
818
819         * scm/define-grob-properties.scm (all-user-grob-properties): add
820         strict-grace-spacing.
821
822         * lily/spacing-determine-loose-columns.cc (is_loose_column):
823         support float_grace_columns_.
824
825         * lily/spacing-options.cc (init_from_grob): new file.
826
827         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
828
829         * input/regression/spacing-loose-grace.ly: new file.
830
831         * Documentation/topdocs/NEWS.tely (Top): document new feature.
832
833         * lily/tuplet-engraver.cc (struct Tuplet_description): read
834         tupletFullLengthNote too. Choose right bound depending on value.
835
836         * input/regression/tuplet-full-length-note.ly: new file.
837
838 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
839
840         * lily/*-performer.cc: Converted try_music to listen_*
841
842         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
843         as a stream-event internally. Introduce event_cause (), deprecate
844         music_cause ().
845
846         * scm/define-music-types.scm: Removed BusyPlayingEvent
847         
848 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
849
850         * Documentation/user/advanced-notation.itely (Font selection):
851         Document how to get a list of available fonts using 'lilypond
852         -dshow-available-fonts blabla'.
853
854 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
855
856         * GNUmakefile.in: filter lily-XXX.pdf files.
857
858         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
859
860         * scm/define-grob-properties.scm (all-internal-grob-properties):
861         remove delta-pitch. Use delta-position everywhere.
862
863         * scm/output-lib.scm (fall::print): use new order.
864
865         * scm/output-ps.scm (path): reorder arguments.
866
867         * scm/output-svg.scm (path): support for path primitive.
868
869         * input/regression/bend-after.ly: new file.
870
871         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
872         recipe for eps -> pdf conversion.
873
874 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
875
876         * lily/parser.yy, lily/lexer.ll: added some simplifications by
877         Angelo Contardi.
878
879 2006-07-19  Graham Percival  <gpermus@gmail.com>
880
881         * input/manual/screech-boink.ly: moved to here.
882
883         * input/screech-boink.ly: deleted.
884
885         * scm/define-grob-properties.scm: clarify doc string.
886
887 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
888
889         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
890
891         * scm/output-ps.scm (path): define path.
892
893         * scm/define-stencil-commands.scm
894         (ly:register-stencil-expression): add path.
895
896         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
897
898         * ly/engraver-init.ly: add Fall_engraver
899
900         * lily/parser.yy (music_function_event): allow musicfunction
901         without music arg as music_function_event.
902
903         * lily/grob-scheme.cc (LY_DEFINE):
904         ly:grob-robust-relative-extent. New function.
905
906         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
907
908         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
909
910         * scm/output-lib.scm (fall::print): new function
911
912         * lily/fall-engraver.cc (stop_fall): new file.
913
914         * ly/music-functions-init.ly: alphabetise.
915
916         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
917         base.
918
919 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
920
921         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
922
923         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
924         doc pdftex usage.
925
926         * lily/translator-group.cc (connect_to_context): non const error message.
927
928         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
929
930         * scm/paper.scm (internal-set-paper-size): define landscape to #f
931         if unset.
932
933         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
934
935         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
936
937         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
938         systems.pdftex too.
939
940         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
941
942         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
943
944         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
945
946         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
947
948         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
949
950         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
951
952 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
953
954         * scm/layout-page-layout.scm: Define module, tidy code, use more
955         functions iso. a single big one.
956
957         * scm/layout-page-dump.scm: move page dump functions used in two
958         pass spacing to this file. Define module.
959
960         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
961          (separate module)
962
963         * ly/paper-defaults.ly: use module layout-page-layout.
964
965 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
966
967         * lily/music.cc: Revised MusicEvent event class. It now contains
968         event data directly instead of encapsulating it in music. The
969         previously used class is renamed to OldMusicEvent.
970
971         * lily/stream-event.cc: Stream events are now probs.
972         
973         * lily/translator-group.cc, lily/translator.cc: Translators can
974         now listen directly to stream events, by using macros
975         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
976
977         * lily/arpeggio-engraver.cc: Converted to use new event system
978
979         * THANKS: Corrected spelling mistake.
980
981 2006-07-12  Graham Percival  <gpermus@gmail.com>
982
983         * Documentation/user/SConscript, make/lilypond-vars.make,
984         input/GNUmakefile: doc build looks in input/manual instead
985         of input/test/
986
987         * input/manual/ GNUmakefile, SConscript: build files for
988         input/manual/
989
990         * input/test/ various: some files moved to input/manual/ 
991
992         * Documentation/user/basic-notation.itely: small updates;
993         thanks Kieren and Charles!
994
995 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
996
997         * VERSION (PACKAGE_NAME): release 2.9.11
998
999         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1000
1001         * Documentation/user/basic-notation.itely (Tuplets): new property
1002         value.
1003
1004 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1005
1006         * python/convertrules.py (conv): tweaks. 
1007
1008         * VERSION (PATCH_LEVEL): bump version.
1009
1010         * python/convertrules.py (conv): add rule for
1011         tupletNumberFormatFunction.
1012
1013         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1014         tupletNumberFormatFunction.
1015
1016         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1017         text through 'text callback.
1018
1019         * lily/time-scaled-music-iterator.cc (construct_children): copy
1020         tweaks generated events.
1021
1022         * scm/define-context-properties.scm
1023         (all-user-translation-properties): remove tupletNumberFormatFunction
1024
1025         * lily/tuplet-engraver.cc (process_music): don't read
1026         tupletNumberFormatFunction
1027
1028         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1029         function.
1030
1031 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1032
1033         * lily/global-context-scheme.cc: Separated ly:run-translator into
1034         smaller pieces.
1035
1036         * lily/score-engraver.cc, lily/score-performer.cc,
1037         scm/define-context-properties.scm: Make paper/midi output
1038         accessable as a context property.
1039
1040         * lily/score-translator.cc, lily/score-context.cc: Removed.
1041
1042 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1043
1044         * scm/ps-to-png.scm (Module): 
1045         * scm/framework-tex.scm (Module): 
1046         * scm/framework-ps.scm (Module): 
1047         * scm/backend-library.scm (Module): 
1048         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1049         "dDEVICEHEIGHTPOINTS".
1050
1051 2006-07-04  Graham Percival  <gpermus@gmail.com>
1052
1053         * Documentation/user/ various: general improvements to
1054         "working with lilypond files" section.
1055
1056 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1057
1058         * lily/sequential-iterator.cc: Change the default get_music_list
1059         to read elements-callback music property
1060
1061         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1062         processing of multimeasure rests. Softcoded
1063         sequential-music-iterator.
1064
1065         * lily/sequential-music-iterator.cc: Removed.
1066
1067 2006-06-28  Graham Percival  <gpermus@gmail.com>
1068
1069         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1070
1071 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1072
1073         * lily/parser.yy: Wrap non-post-events in EventChords before
1074         assigning them to identifiers.
1075
1076 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1077
1078         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1079         gives correct vertical placement of \bar ":" in all staff
1080         sizes. Thanks Martial!
1081
1082 2006-06-26  Graham Percival  <gpermus@gmail.com>
1083
1084         * Documentation/user/invoking.itely : minor update from mailist.
1085
1086 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1087
1088         * lily/ various: Introduce stream events of types Prepare,
1089         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1090         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1091
1092         * lily/global-context*.cc: Time is now -inf before iteration
1093         starts.
1094
1095         * lily/include/context.hh: Removed unique_, init_
1096
1097         * Documentation/topdocs/NEWS: Make the feathered beam example
1098         avoid triggering a bug.
1099
1100 2006-06-24  Graham Percival  <gpermus@gmail.com>
1101
1102         * Documentation/user/ various: small additions from mailist.
1103
1104 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1105
1106         * ly/performer-init.ly: Add some missing links in the context
1107         hierarchy for MIDI output. There are probably some more missing!
1108
1109 2006-06-21  Graham Percival  <gpermus@gmail.com>
1110
1111         * Documentation/user/ various: minor spelling fixes;
1112         thanks Dave Luttinen!
1113
1114         * Documentation/user/ various: small clarifications;
1115         thanks Anthony Youngman!
1116
1117 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1118
1119         * po/fr.po: add \n appropriately.
1120
1121         * lily/lexer.ll: remove ? from version-seen?  
1122
1123 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1124
1125         * po/fr.po; update translation, by Jean-Charles Malahieude and
1126         John Mandereau.
1127
1128 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1129
1130         * THANKS: add Markus Schneider.
1131
1132         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1133         Staff_symbol_engraver
1134
1135         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1136         replace staff_engraver
1137
1138         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1139         spanner.
1140
1141         * lily/staff-collecting-engraver.cc
1142         (acknowledge_end_staff_symbol): new function
1143
1144         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1145
1146         * lily/staff-collecting-engraver.cc
1147         (acknowledge_end_staff_symbol): new function.
1148
1149         * lily/main.cc: switch on relocation by default.
1150
1151 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1152
1153         * lily/spacing-spanner.cc (musical_column_spacing): set
1154         compound_fixed_note_space to 0.0. Document why.
1155
1156         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1157         range of inverse_hooke_
1158         (Simple_spacer): init completely.
1159         (fits): const
1160         (get_line_configuration): don't use cols.resize(); it introduces
1161         initialized data.
1162
1163         * scm/framework-ps.scm (dump-page): add setstrokeadjust. Backportme.
1164
1165         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1166
1167         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1168         try. Divide by beatlength.
1169
1170         * input/regression/beaming-ternary-metrum.ly: update doc.
1171         add beatLength hack.
1172
1173         * scm/music-functions.scm (make-time-signature-set): add
1174         standard-beat-grouping. 
1175
1176 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1177
1178         * input/regression/tie-whole.ly: new file.
1179
1180         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1181         cross center of note head in case of invisible stem. 
1182
1183 2006-06-16  Graham Percival  <gpermus@gmail.com>
1184
1185         * Documentation/user/ various: small fixes from mailist.
1186
1187 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1188
1189         * lily/breathing-sign.cc (offset_callback): idem.
1190
1191         * lily/align-interface.cc (align_to_fixed_distance): remove
1192         hungarian suffix.
1193
1194         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1195         x%2==0.
1196
1197 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1198
1199         * VERSION (PACKAGE_NAME): release 2.9.9
1200
1201         * ly/lilypond-book-preamble.ly: add \version
1202
1203 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1204
1205         * scripts/lilypond-book.py (PREAMBLE_LY): include
1206         lilypond-book-preamble.ly
1207
1208         * lily/stem.cc (get_beaming): return max of 0 and
1209         scm_ilength. Fixes slurring from/to beams.
1210
1211         * ly/lilypond-book-preamble.ly: new file.
1212
1213         * lily/slur.cc: add inspect-index feature.
1214
1215 2006-06-13  Graham Percival  <gpermus@gmail.com>
1216
1217         * Documentation/user/tutorial.itely: trivial fix.
1218
1219 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1220
1221         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1222         all non-event music in the parser via MAKE_SYNTAX.
1223
1224         * lily/parser-scheme.cc: Add ly:parser-error function
1225
1226         * scm/paper.scm: fix typo
1227
1228 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1229
1230         * THANKS: add RT.
1231
1232         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1233         is null.
1234
1235         * buildscripts/output-distance.py (test_compare_signatures):
1236         timing routines.
1237         (read_signature_file): use new signature format.
1238
1239         * scm/stencil.scm (write-system-signature): simpler signature
1240         format.
1241
1242         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1243         for beamed case. 
1244
1245         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1246         stem_end_position, but estimate instead. 
1247
1248         * lily/tuplet-bracket.cc (calc_positions): look at
1249         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1250         brackets narrower than beams. 
1251
1252         * lily/lexer.ll: set version-seen? even if version is
1253         INVALID. 
1254
1255         * lily/rest.cc (y_offset_callback): bugfix: decide position
1256         override based on scm_is_number(). Fixes \rest on center staff
1257         line. 
1258
1259         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1260         patterns for 16th triplets.
1261
1262 2006-06-10  Graham Percival  <gpermus@gmail.com>
1263
1264         * Documentation/user/ page.itely, global.itely: editing
1265         and reorg.
1266
1267         * Documentation/user/ various: findex -> funindex.
1268
1269 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1270
1271         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1272         insert extra tuplet events.
1273
1274 2006-06-10  Graham Percival  <gpermus@gmail.com>
1275
1276         * Documentation/user/programming-interfaces.itely: add
1277         info from NEWS.
1278
1279         * python/convertrules.py: add annotatefoo -> annotate-foo
1280         rules.
1281
1282         * Documentation/user/global.itely: start editing.
1283
1284         * Documentation/user/page.itely: major editing, new spacing
1285         docs.
1286
1287 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1288
1289         * scm/define-markup-commands.scm (wordwrap-markups): use
1290         output-def 'line-width if undefined.
1291
1292         * HACKING: trim outdated info.
1293
1294 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1295
1296         * scm/define-grobs.scm (all-grob-descriptions): Add
1297         line-spanner-interface to all grobs that already have
1298         text-spanner-interface or dynamic-text-spanner-interface
1299
1300         * scm/page.scm: Rename annotate{headers,systems,page}->
1301         annotate-*
1302
1303         * input/regression/page-spacing.ly,
1304         input/regression/page-layout-manual-position.ly: idem
1305
1306 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1307
1308         * lily/line-spanner.cc: cleanup property list.
1309
1310         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1311         generator expressions (2.3 compat). 
1312
1313 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1314
1315         * lily/vertical-align-engraver.cc: Make sure that the
1316         align{Above,Below}Context properties are included in the automatic
1317         documentation.
1318
1319 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1320
1321         * scm/paper-system.scm (paper-system-annotate): also annotate the
1322         estimated pure-Y-extent
1323
1324         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1325
1326         * lily/system.cc (break_into_pieces): set the estimated height
1327         of each child system
1328
1329         * lily/stem.cc (pure_height): new pure-Y-extent callback
1330
1331         * lily/staff-symbol-referencer.cc (callback): don't destroy
1332         the staff-position property
1333
1334         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1335         consider_suicide into two functions
1336
1337         * lily/constrained-breaking.cc (resize): use the new pure
1338         callbacks to estimate the height of a system
1339
1340         * lily/axis-group-interface.cc (pure_group_height): new
1341         side-effect-free VerticalAxisGroup height-callback
1342
1343         * lily/align-interface.cc (get_extents_aligned_translates):
1344         split align_elements_to_extents into two functions
1345         (get_pure_child_y_translation): new function
1346
1347         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1348
1349         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1350
1351         * lily/paper-score.cc: cache break_indices and columns
1352
1353         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1354         
1355 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1356
1357         * lily/font-config.cc (init_fontconfig): do the init if
1358         cache_file, but don't look at cache_file.
1359
1360         * input/regression/quote-tie.ly: new file.
1361
1362         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1363         to Head_event_tuple, so we deal gracefully with ties on
1364         cue-endings.
1365
1366         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1367         for FcChar8*
1368
1369 2006-06-08  Graham Percival  <gpermus@gmail.com>
1370
1371         * input/test/ smart-transpose.ly, reverse-music.ly:
1372         \applyMusic to music functions update, thanks Michael!
1373
1374 2006-06-07  Graham Percival  <gpermus@gmail.com>
1375
1376         * input/test/ add-staccato.ly, add-text-script.ly,
1377         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1378         music functions update, thanks to Michael Meixner.
1379
1380         * Documentation/user/music-glossary.tely: small fix
1381         from Francisco.
1382
1383         * Documentation/user/ various: minor additions from mailist.
1384
1385         * Documentation/user/lilypond.tely, basic-notation.itely:
1386         small test of @funindex.  (works here)
1387
1388         * input/test/font-table.ly: reduce size to partially
1389         de-ugly version in manual.
1390
1391         * Documentation/user/page.itely: new file (split former
1392         "global issues" into "page settings" and "non-musical
1393         output".
1394
1395         * Documentation/user/ various: fix @ref{}s to match
1396         new chapter names (above).
1397
1398 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1399
1400         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1401
1402 2006-06-06  Graham Percival  <gpermus@gmail.com>
1403
1404         * Documentation/user/advanced-notation.itely: add example
1405         for segno/coda on barline.
1406
1407         * tex/texinfo.tex: merge from upstream.
1408
1409 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1410
1411         * scripts/lilypond-book.py (process_snippets): Argument fix.
1412
1413         * SConstruct:
1414         * buildscripts/builder.py:
1415         * lily/SConscript: 
1416         * mf/SConscript: 
1417         * Documentation/user/SConscript:  More SCons fixes.
1418
1419 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1420
1421         * lily/font-config.cc (init_fontconfig): Only initialize if
1422         global cache_file is found.
1423
1424 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1425
1426         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1427         new \applyOutput.
1428
1429 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1430
1431         * VERSION (PACKAGE_NAME): release 2.9.8
1432
1433         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1434         function. Delay ledger modifying ledgered grobs to
1435         stop_translation_timestep(), to ensure that we're ledgering
1436         according to the new spanner.
1437         (acknowledge_staff_symbol): don't check for non-NULL
1438         staff_sym->get_bound()
1439
1440         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1441         creation.
1442
1443         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1444         pictures too.
1445
1446         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1447         directly from srcdir/stepmake/aclocal.m4
1448         
1449         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1450         disting MISC files.
1451
1452         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1453
1454 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1455
1456         * lily/simple-spacer.cc (get_line_configuration): add
1457         keep-inside-line rods
1458         (struct Column_desc): add constructor
1459         (struct Rod_desc): add constructor
1460         (get_line_forces): check for forced page breaks here too
1461
1462         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1463         support/elements cycles between InstrumentNames and AxisGroups
1464
1465 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1466
1467         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1468
1469         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1470         make-txt-files target.
1471
1472         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1473         make-txt-files target.
1474
1475         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1476
1477         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1478         top-build-dir.
1479
1480 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1481
1482         * Documentation/user/instrument-notation.itely,
1483         input/regression/breathing-sign-ancient.ly,
1484         input/test/divisiones.ly: Removed redundant property settings for
1485         vaticana contexts.
1486
1487         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1488         fix lyrics alignment problems.  They are implemented now as scheme
1489         functions that add the appropriate unicode char to the first lyric
1490         event rather than adding a separate lyric event.  Minor edit of
1491         comments.
1492
1493 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1494
1495         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1496         pollute src dir with built .txt files, but install directly from
1497         Documentation/topdocs/out/
1498
1499         * buildscripts/output-distance.py
1500         (ComparisonData.create_html_result_page): put version/directories
1501         in table header.
1502
1503         * Documentation/topdocs/NEWS.tely (Top): document spacing section
1504         feature.
1505
1506         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
1507         Patch by Karl Hammar
1508         
1509         * buildscripts/readlink.py: add  file.
1510         Patch by Karl Hammar
1511
1512 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1513
1514         * lily/tuplet-number.cc (print): prevent stencil from being
1515         garbage collected.
1516
1517 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1518
1519         * scm/stencil.scm (write-system-signature): explicitly 
1520         -well, superfluously- close output port.
1521
1522         * buildscripts/output-distance.py (main): oops. Add extra argument.
1523
1524 2006-06-05  Graham Percival  <gpermus@gmail.com>
1525
1526         * Documentation/user/music-glossary.tely: clarified example
1527         from Francisco Vila, thanks!
1528
1529 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1530
1531         * input/regression/spacing-section.ly: new file.
1532
1533         * lily/input.cc (programming_error): new function.
1534
1535         * lily/spacing-engraver.cc (try_music): new function. Accept
1536         spacing-section-event
1537
1538         * lily/spacing-spanner.cc (set_springs): take slices of all
1539         columns for spacing.
1540
1541         * lily/include/paper-column.hh (class Paper_column): add
1542         Paper_column::compare.
1543
1544         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
1545
1546         * scm/define-music-types.scm (music-descriptions): add
1547         SpacingSectionEvent
1548
1549         * lily/music-iterator.cc (report_event): use programming_error for
1550         sending non-event error.
1551
1552         * lily/input.cc (programming_error): new function
1553
1554         * buildscripts/output-distance.py (main): use compare-XXX for
1555         compare files.
1556         (main): --threshold option, default at 0.30
1557
1558         * output-distance.py (main): add --threshold option.
1559
1560 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1561
1562         * scm/paper-system.scm (paper-system-annotate): fix problem when
1563         annotating an empty system
1564
1565 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1566
1567         * GNUmakefile.in: reinstate old web tar/copying.
1568
1569 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1570
1571         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
1572         nothing changes. (Erik S) 
1573
1574         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
1575         count. (Erik S)
1576
1577 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1578
1579         * scm/define-markup-commands.scm (whiteout): do not force
1580         foreground color of argument markup to black.
1581
1582         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
1583         the left of the arrow, instead of below the arrow name, so that,
1584         when two little arrows are vertically stacked, their dimensions
1585         and name should not overlap. Add a color key parameter.
1586
1587         * scm/paper-system.scm (paper-system-annotate): Annotate
1588         next-space+next-padding instead of next-space. Annotate space
1589         between next-padding and next-space+padding, respectively, and
1590         following system extent and refpoint-Y-extent. Use colors.
1591
1592         * scm/page.scm (annotate-page): translate annotations slightly to
1593         the right.
1594
1595 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1596
1597         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
1598         fix for x-staff slurs. Thanks Joe!
1599
1600         * buildscripts/output-distance.py
1601         (SystemLink.output_expression_change_count): keep track of changed
1602         details, and dump in details html page.
1603  
1604         * input/regression/figured-bass-staff.ly: add note about setting
1605         properties in Staff context.
1606
1607         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
1608         add slurs and ties to support too.
1609
1610         * buildscripts/output-distance.py (main): set dest_dir
1611         argument. Add --max-count option.
1612
1613 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
1614
1615         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
1616         shortcuts for special unicode chars that are useful in chant
1617         notation.  Revised exisiting and added new comments.
1618
1619 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1620
1621         * make/mutopia-rules.make: remove duplicate recipe.
1622
1623 2006-06-02  Werner Lemberg  <wl@gnu.org>
1624
1625         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
1626         Add support for U+0132 (IJ) and U+0133 (ij).
1627
1628 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1629
1630         * buildscripts/output-distance.py (FileLink): new class. collect
1631         info systems from one .ly file. 
1632         (FileLink.link_files_for_html): further tweaks.
1633
1634 2006-06-02  Graham Percival  <gpermus@gmail.com>
1635
1636         * tex/texinfo.tex: partial fix for @funindex.
1637
1638         * Documentation/user/macros.tely: uncomment @funindex (doesn't
1639         break anything).
1640
1641 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1642
1643         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
1644
1645         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
1646         @example too. Backportme.
1647
1648 2006-06-02  Graham Percival  <gpermus@gmail.com>
1649
1650         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
1651         from Werner Lemberg.
1652
1653 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
1654
1655         * Documentation/user/music-glossary.tely: additional spanish
1656         updates and a lyrics fix in an example.
1657
1658 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
1659
1660         * scm/define-grob-properties.scm: Previous patch contained
1661         spurious line from another patch not yet committed.  Fixed.
1662
1663         * scm/define-grob-properties.scm: Add missing doc strings for
1664         ancient notation.
1665
1666 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1667
1668         * buildscripts/output-distance.py
1669         (ComparisonData.write_text_result_page): separate the scores, sort
1670         by geo_score.
1671
1672         * scm/framework-eps.scm (output-classic-framework): start at 1 for
1673         system signatures.
1674
1675         * buildscripts/output-distance.py (me_path): use argv[0] for
1676         sys.path extension
1677         (ComparisonData.img_cell): use colored borders.
1678
1679         * scm/stencil.scm (write-system-signature): escape newlines too.
1680         (write-system-signature): use (1,-1) interval for empty interval
1681
1682 2006-01-01  Graham Percival  <gpermus@gmail.com>
1683
1684         * Documentation/user/music-glossary.tely: Spanish updates
1685         from Francisco Vila.
1686
1687         * Documentation/user/lilypond-book.itely: addition from
1688         Vaclav Smilauer.
1689
1690         * Documentation/user/ various: edits, small additions
1691         from mailist, etc.
1692
1693 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1694
1695         * GNUmakefile.in (tree-lib-prefix-current):
1696         (tree-share-prefix-current): Use version number in tree, add
1697         `current' symlinks.
1698
1699 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1700
1701         * GNUmakefile.in: write VERSION, again.
1702
1703         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
1704         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
1705
1706         * stepmake/aclocal.m4: robuster version detection.
1707
1708         * buildscripts/output-distance.py
1709         (ComparisonData.create_html_result_page): copy only if file
1710         exists, fixup src paths.
1711
1712         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
1713
1714 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1715
1716         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
1717         Another datarootdir reto.
1718
1719         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
1720         available.  This should be moved to postinstall-lilypond-doc.
1721
1722 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1723
1724         * GNUmakefile.in: simplify local-WWW-post. 
1725         remove -type l from find.
1726
1727         * buildscripts/output-distance.py (ComparisonData.compare_trees):
1728         fixes. Don't follow symlinks.
1729         (ComparisonData.create_html_result_page): remove previous results.
1730         insert ../python in path.
1731
1732         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
1733
1734 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
1735
1736         * config.make.in (datadir): Add datarootdir to silence autoconf.
1737
1738         * stepmake/aclocal.m4: Update for autoconf-2.59d.
1739
1740 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
1741
1742         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
1743
1744         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
1745         slash beams too wide.
1746
1747 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1748
1749         * VERSION: release 2.9.7
1750         
1751 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1752
1753         * lily/relocate.cc (read_relocation_dir): Do not blindly
1754         dereference DIR.
1755
1756 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1757
1758         * lily/parser.yy: replace THIS by PARSER
1759
1760         * Documentation/index.html.in: add link to test-results.html page.
1761
1762         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
1763
1764         * scm/translation-functions.scm (format-bass-figure): translate
1765         digits over 10 to the left
1766
1767         * scm/define-markup-commands.scm (translate-scaled): new markup.
1768
1769         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
1770         7 glyph. 
1771
1772         * ly/engraver-init.ly: add Figured_bass_engraver
1773
1774         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
1775
1776         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
1777
1778         * lily/score-engraver.cc (announce_grob): only note START announces.
1779
1780         * lily/include/engraver-group.hh (Translator_group):
1781         acknowledge_hash_table_ is now drul.
1782
1783         * lily/engraver.cc (announce_end_grob): new method.
1784
1785         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
1786
1787         * lily/translator-dispatch-list.cc (create): take start_end argument.
1788
1789         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
1790         acknowledge_static_array_ to drul
1791
1792         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
1793
1794         * scm/define-grob-interfaces.scm
1795         (bass-figure-alignment-interface): add bass-figure-alignment-interface
1796
1797         * scm/define-grobs.scm (all-grob-descriptions): add
1798         BassFigureAlignmentPositioning
1799
1800         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
1801         number stays up to date. Backportme.
1802
1803 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
1804
1805         * Documentation/user/basic-notation.itely (Bar lines): Document
1806         the "||:" bar type. 
1807
1808 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1809
1810         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
1811
1812         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
1813         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
1814         build.
1815
1816         * Resurrect `scons lily' build.
1817
1818         * SConstruct (symlink_tree): Bugfix: link
1819         music-drawing-routines.ps to file iso directory.
1820
1821         * lily/SConscript: Remove kpath-guile from LIBS.
1822
1823         * SConstruct (libdir_package_version): Typo.
1824         (configure): Comment-out fontforge for lack of fontforge.pc .
1825         Also add libdir* to environment.
1826
1827 2006-05-30  Graham Percival  <gpermus@gmail.com>
1828
1829         * Documentation/user/ various: minor additions from mailist and
1830         editing.
1831
1832 2006-05-30  Paco <fravd@ya.com>
1833
1834         * Documentation/user/music-glossary.tely: numerous corrections and
1835         some new translations.
1836
1837 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
1838
1839         * BackportmeStart.
1840         
1841         * buildscripts/output-distance.py
1842         (ComparisonData.create_html_result_page): new routine: summarise
1843         results in HTML page with images. 
1844         (ComparisonData.create_text_result_page): create summary text files too.
1845
1846         * GNUmakefile.in (web-ext): package .signature files too. They
1847         compress well. 
1848
1849         * scm/stencil.scm (write-system-signature): typo.
1850
1851         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
1852
1853         * scm/stencil.scm (write-system-signature): better escaping.
1854         only write signature for music systems, not for markup systems.
1855
1856         * scm/framework-ps.scm (output-framework): dump-signatures support
1857         for plain output.
1858
1859         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
1860
1861         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
1862         for -dno-point-and-click
1863
1864         * lily/grob.cc (get_print_stencil): don't read
1865         point_and_click_global to determine whether to set grob-cause.
1866
1867 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
1868
1869         * buildscripts/output-distance.py (main): new function.
1870         (ComparisonData): new class.
1871
1872         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
1873         careful with generating new LedgerLineSpanners.
1874
1875         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
1876
1877         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
1878         context. This fixes double ledger lines in output. 
1879
1880         * lily/system.cc (get_paper_system): remove 3 layer limit.
1881
1882         * buildscripts/output-distance.py (SystemLink.distance): new
1883         file. Compare signatures.
1884
1885         * python/safeeval.py (SafeEval.visitUnarySub): new file.
1886
1887         * lily/grob-array.cc (remove_duplicates): rename from
1888         uniq(). Sort before calling uniq() so it actually works.
1889
1890 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1891
1892         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
1893         \version from lilypond file snippet.
1894         (Lilypond_file_snippet.ly): oops. typo.
1895         (find_toplevel_snippets): urgh. again.
1896
1897         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
1898         prevent duplicated broken items in output.
1899
1900         * scm/framework-eps.scm (output-classic-framework): only dump if
1901         dump-signatures is set.
1902
1903         * scm/lily.scm (define-scheme-options): add dump-signatures option.
1904
1905         * scm/stencil.scm (write-system-signature): new routine: write
1906         python parseable signature of a separate paper system.
1907         BackportmeEnd.
1908         
1909 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1910
1911         * lily/stanza-number-engraver.cc (process_music): use is_markup()
1912         iso is_string().
1913         include header.
1914
1915 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
1916
1917         * translator-group.cc: send music events to engravers in
1918         non-bottom contexts.
1919
1920         * tuplet-engraver.cc: process tuplet brackets in correct order.
1921
1922 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1923
1924         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
1925         arg 2 might point us to a new binary (patch by Karl Hammar)
1926         
1927 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1928
1929         * VERSION (PACKAGE_NAME): release 2.9.6
1930
1931         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
1932
1933         * Documentation/user/*.itely: 2nd
1934         attempt: replace funindex -> findex globally.
1935
1936 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1937
1938         * input/no-notation/display-lily-tests.ly: fix \applyOutput
1939         test. Add \break, \pageBreak, \pageTurn, etc, tests.
1940
1941         * scm/define-music-display-methods.scm: display methods for
1942         breaks. Fix \applyOutput.
1943
1944 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1945
1946         * Documentation/user/macros.itexi: comment out funindex expansion. 
1947
1948         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
1949         everywhere.
1950
1951         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
1952         Karl Hammar. Backportme.
1953  
1954         * Documentation/user/advanced-notation.itely (Balloon help): idem.
1955
1956         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
1957
1958         * Documentation/user/programming-interface.itely (Running a
1959         function on all layout objects): idem.
1960
1961         * Documentation/user/introduction.itely (Automated engraving):
1962         update \applyOutput syntax
1963
1964         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
1965         remove debugging hook.
1966
1967         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
1968         expansion. 
1969
1970         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
1971
1972         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
1973         TEXI2DVI_FLAGS to texi2dvi invocation. 
1974
1975 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
1976
1977         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
1978         works. More work is done by iterator now, and engraver has been
1979         very much simplified.
1980
1981         * lily/translator-group.cc: try_music is now invoked through a
1982         listener
1983
1984         * lily/*-iterator.cc: Massive cleanups. Junked
1985         try_music_in_children globally. Renamed try_music to report_event,
1986         and made that method descend to a bottom context automatically.
1987
1988         * lily/event-iterator.cc: New file.
1989
1990         * lily/output-property-iterator.cc,
1991         lily/old-lyric-combine-music-iterator.cc: Removed.
1992
1993         * python/convert-rules.py: Modified the syntax for \applyOutput.
1994
1995 2006-05-23  Graham Percival  <gpermus@gmail.com>
1996
1997         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
1998         creation.
1999
2000         * Documentation/user/ various: stuff that might have helped
2001         to fix the pdf creation, plus some minor doc additions.
2002
2003         * Documentation/user/changing-defaults.itely: remove @b from
2004         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2005
2006 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2007
2008         * lily/beaming-pattern.cc (beamify): deal with negative start
2009         moments for beaming patterns.
2010
2011 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2012
2013         * lily/beaming-info.cc (beamify): new function: read beatLength
2014         and beatGrouping from context. 
2015
2016         * input/regression/beam-beat-grouping.ly (Module): new file.
2017
2018         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2019
2020         * lily/beam.cc (get_beam_segments): generate events for
2021         max_connect_ case too.
2022         (get_beam_segments): read Stem::max-beam-connect.
2023
2024         * input/regression/beam-single-stem.ly: new file.
2025
2026         * lily/stem.cc (set_beaming): use #f as signaling value for
2027         beamcount 0.
2028
2029         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2030
2031         * lily/beam.cc (set_beaming): read clip-edges property.
2032         (calc_direction): don't suicide for single stem.
2033
2034         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2035         argument, remove 1<<15 hack. Remove clip_edges() 
2036
2037         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2038
2039 2006-05-21  Graham Percival  <gpermus@gmail.com>
2040
2041         * Documentation/user/basic-notation.itely: reorg.
2042
2043         * Documentation/user/ various: minor fixes.
2044
2045 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2046
2047         * lily/stencil-expression.cc (register_stencil_head): opps, append
2048         to cdr of static SCM object.
2049
2050 2006-05-19  Graham Percival  <gpermus@gmail.com>
2051
2052         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2053         update framework for command index.  DOC WRITERS: use @funindex
2054         instead of @cindex @code{}.
2055
2056         * Documentation/user/ various: replace @cindex @code{} => @funindex
2057
2058 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2059
2060         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2061         case positions is set manually. 
2062
2063 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2064         
2065         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2066         rules to Scheme.
2067
2068 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2069
2070         * Documentation/user/changing-defaults.itely (Contexts explained):
2071         use absolute dimension for @image.
2072
2073         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2074         out image for illustration too.
2075         ($(outdir)/%.png): add more png <-> eps rules. 
2076
2077 2006-05-17  Graham Percival  <gpermus@gmail.com>
2078
2079         * Documentation/user/ various: remove trailing whitespace, cosmetic
2080         change to reduce changes produced by diff.
2081
2082 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2083
2084         * lily/main.cc (do_chroot_jail): correctness tweak.
2085
2086         * python/lilylib.py (system): import subprocess in system () only.
2087
2088         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2089
2090         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2091         variable. Backportme.
2092
2093 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2094         
2095         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2096
2097 2006-05-17  Werner Lemberg  <wl@gnu.org>
2098
2099         * lily/lexer.ll (init_signature_has_table): Add
2100         `scm-scm-music-music'.
2101
2102         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2103         (Generic_prefix_music_scm): Add rule for it.
2104
2105         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2106         `quoted-transposition' property.
2107
2108         * ly/music-functions-init.ly (transposedCueDuring): New function.
2109
2110         * scm/define-music-properties.scm (all-music-properties): Updated.
2111
2112         * Documenation/topdocs/NEWS.itely: Document it.
2113
2114 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2115
2116         * python/lilylib.py (system): move import subprocess to system()
2117         definition. 
2118
2119         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2120
2121         * VERSION (PATCH_LEVEL): release 2.9.5
2122         
2123         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2124         build instructions. 
2125
2126         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2127
2128 2006-05-16  Graham Percival  <gpermus@gmail.com>
2129
2130         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2131
2132         * Documentation/user/ various: minor fixes.
2133
2134 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2135
2136         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2137
2138 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2139
2140         * Documentation/user/advanced-notation.itely (Instrument names):
2141         Modified obsolete instruction on how to move instrument names away
2142         from the staves. Hmm, at second thought the bug probably has been
2143         solved, so the full bug description should probably be removed.
2144
2145 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2146
2147         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2148         currentCommandColumn. 
2149
2150         * lily/hairpin.cc (print): also add padding for non-neighbor
2151         hairpin bounds.
2152
2153         * scm/define-context-properties.scm
2154         (all-user-translation-properties): add hairpinToBarline
2155
2156         * input/regression/hairpin-to-barline.ly: new file.
2157
2158         * lily/context.cc (internal_send_stream_event): thinko fix.
2159
2160         * lily/tie.cc (set_default_control_points): robustness fix.
2161
2162         * python/musicxml.py (Part.interpret): don't complain about
2163         incomplete measures.
2164
2165         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2166         new music if last_event_chord() returned None.
2167
2168         * python/musicxml.py (Part.interpret): skip back over chord notes.
2169
2170 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2171         
2172         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2173         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2174         lily/slash-repeat-engraver.cc,
2175         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2176         iterator sends PercentEvents
2177
2178         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2179         rework tuplets: send start/stop events to engraver
2180
2181         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2182         dispatchers event-source and events-below to Context
2183         
2184 2006-05-15  Graham Percival  <gpermus@gmail.com>
2185
2186         * Documentation/user/README.txt: update info for doc writers.
2187
2188         * Documentation/user/programming-interface.itely: integrate
2189         Nicolas' fixes for chapter rewrite.
2190
2191         * Documentation/user/ various: minor fixes.
2192
2193 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2194
2195         * lily/clef-engraver.cc: cleanup.
2196
2197         * Documentation/user/GNUmakefile: dist context-example.eps too.
2198
2199         * lily/key-engraver.cc (create_key): use
2200         explicitKeySignatureVisibility for cancellation too. 
2201
2202         * lily/font-config.cc (init_fontconfig): don't close file if
2203         f==NULL. 
2204
2205 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2206
2207         * Documentation/topdocs/NEWS.tely: niente and rotation news
2208
2209 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2210
2211         * lily/include/stencil.hh
2212         * lily/stencil.cc (rotate): new function. Makes it possible
2213         to rotate a stencil around a given offset.
2214
2215         * lily/grob.cc (get_print_stencil): add rotation support
2216
2217         * lily/stencil-interpret.cc (interpret_stencil_expression):
2218         add rotation support
2219
2220         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2221
2222         * scm/define-grob-properties.scm: add 'rotation property
2223
2224         * scm/define-markup-commands.scm: add rotate markup command
2225         
2226         * scm/output-ps.scm: add rotation support in PostScript backend
2227
2228         * scm/output-svg.scm: add rotation support in SVG backend
2229
2230 2006-05-13  Graham Percival  <gpermus@gmail.com>
2231
2232         * Documentation/user/music-glossary.itely: French correction.
2233
2234         * Documentation/user/programming-interface.itely: major
2235         new docs, some reorg, some info from Nicolas.
2236
2237         * Documentation/user/ various: small fixes.
2238
2239 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2240
2241         * Documentation/user/programming-interface.itely (Markup
2242         programmer interface): Remove duplicate text.
2243
2244 2006-05-12  Graham Percival  <gpermus@gmail.com>
2245
2246         * Documentation/user/context-example.eps: new file.
2247
2248         * Documentation/user/changing-defaults.itely: set up file to
2249         use eps image.
2250
2251         * Documentation/user/programming-interface.itely: changes
2252         from mailist.
2253
2254 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2255
2256         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2257
2258 2006-05-11  Graham Percival  <gpermus@gmail.com>
2259
2260         * Documentation/user/programming-interface.itely: first round of
2261         editing and merging emails from Nicolas.
2262
2263         * Documentation/user/scheme-tutorial: minor edit.
2264
2265 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2266
2267         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2268         XML attributes.
2269         (Xml_node.message): use it.
2270
2271         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2272         oops. Add duration argument.
2273
2274 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2275
2276         * lily/paper-column-engraver.cc (make_columns):
2277         * scm/define-grobs.scm: Revert my previous change and set the default
2278         in define-grobs.scm instead.
2279
2280 2006-05-09  Graham Percival  <gpermus@gmail.com>
2281         
2282         * Documentation/user/changing-defaults.itely: general editing,
2283         info about \set and \override.
2284
2285         * Documentation/user/tweaking.itely, advanced-notation.itely:
2286         fixes from Dave Luttinen, thanks!
2287
2288 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2289
2290         * lily/paper-column-engraver.cc (make_columns): By default, a column
2291         needs to be breakable.
2292
2293 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2294
2295         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2296         Attributes methods
2297         (musicxml_time_to_lily): idem
2298         (musicxml_key_to_lily): idem
2299         (instrument_drumtype_dict): dict for supported drumtypes.
2300         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2301         moments and pending mm rests
2302         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2303         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2304         (musicxml_voice_to_lily_voice): add mode change.
2305         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2306         speed and less memory usage (factor 5 to 10).
2307         (convert): write -defs.ly  and driver file separately so people
2308         can script their own part extraction.
2309
2310         * python/musicxml.py (minidom_demarshal_node): new function:
2311         separate minidom handling.
2312         (lxml_demarshal_node): new function: support lxml.etree too.
2313         (Xml_node.message): new function: verbose error message, with XML
2314         path to offending node.
2315         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2316         (Part_list.generate_id_instrument_dict): new method: collect
2317         instrument names, to be able to set drum_type.
2318         (Part.interpret): handle underfull measures
2319         (Part.interpret): assign instrument names.
2320
2321         * python/musicexp.py (Output_printer.close): new method
2322         (MusicWrapper.print_ly): new class: support other modes,
2323         eg. \drummode
2324         (BarCheck.print_ly): new class. Support bar checks, with comments
2325         and fancy barchecks. 
2326         (NoteEvent.__init__): also set drum_type for drum notes.
2327         (MultiMeasureRest.lisp_expression): dump mm rests.
2328
2329         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2330         line-break-permission if forbidBreak is not set.
2331
2332 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2333
2334         * scm/define-context-properties.scm:
2335         * scm/define-grob-properties.scm:
2336         * scm/define-grobs.scm:
2337         * scm/define-music-display-methods.scm:
2338         * scm/define-music-properties.scm:
2339         * scm/define-music-types.scm:
2340         * scm/music-functions.scm:
2341         * ly/declarations-init.ly:
2342         * lily/include/constrained-breaking.hh:
2343         * lily/system.cc:
2344         * lily/spaceable-grob.cc:
2345         * lily/simple-spacer.cc:
2346         * lily/paper-score.cc:
2347         * lily/paper-column.cc:
2348         * lily/paper-column-engraver.cc:
2349         * lily/item.cc:
2350         * lily/gourlay-breaking.cc:
2351         * lily/constrained-breaking.cc:
2352         * python/convertrules.py:
2353         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2354         "page-break-penalty" and "line-break-permission".
2355         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2356         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2357
2358         * lily/bar-engraver.cc:
2359         * lily/beam-engraver.cc:
2360         * lily/forbid-break-engraver.cc:
2361         * lily/ligature-engraver.cc:
2362         * lily/paper-column-engraver.cc:
2363         * lily/percent-repeat-engraver.cc:
2364         * lily/score-engraver.cc:
2365         * lily/score-engraver.hh:
2366         * lily/paper-column-engraver.hh:
2367         Inter-engraver communication regarding line breaks is done through context
2368         properties (Score.forbidBreak) instead of function calls.
2369
2370 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2371
2372         * VERSION (PACKAGE_NAME): release 2.9.4
2373
2374 2006-05-08  Graham Percival  <gpermus@gmail.com>
2375
2376         * Documentation/user/working.itely: proofreading from Dave
2377         Luttinen, thanks.
2378
2379         * Doucmentation/user/README.txt: updated with manual style info.
2380
2381         * Documentation/user/ various: trim linewidth to 78 chars.
2382
2383 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2384
2385         * scm/define-grob-properties.scm (all-internal-grob-properties):
2386         remove chord-tremolo property.
2387
2388         * lily/beam.cc (get_beam_segments): don't use stem position as
2389         base for broken ends.
2390
2391 2006-05-06  Graham Percival  <gpermus@gmail.com>
2392
2393         * Documentation/user/putting.itely: proofreading from Dave
2394         Luttinen, thanks!
2395
2396         * Documentation/user/ various: more reorg and clarifications.
2397
2398 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2399
2400         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2401
2402         * ly/music-functions-init.ly: new function featherDurations
2403
2404         * lily/beam.cc: read grow-direction for feathered beaming.
2405
2406         * Documentation/topdocs/NEWS.tely (Top): typo.
2407
2408 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2409
2410         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2411         tremolo beams.
2412
2413 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2414         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2415         used by music streams.
2416
2417         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2418         lily/stream-event.cc, lily/stream-event-scheme.cc,
2419         lily/listener.cc, lily/scheme-listener.cc,
2420         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2421         lily/include/stream-event.hh, lily/include/listener.hh,
2422         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2423         Created data structures for music streams.
2424         
2425 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2426
2427         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2428         construction of a beam. 
2429         (print): rewrite. 
2430
2431         * flower/include/std-vector.hh (default_compare): use only one comparison.
2432
2433         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2434         (note-by-number): further attachment fixes.
2435
2436         * scm/lily-library.scm (ordered-cons): new function.
2437         (interval-index): new function
2438
2439         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2440
2441         * lily/note-head.cc (get_stem_attachment): new function.
2442
2443         * scm/define-markup-commands.scm (note-by-number): read 'style
2444         property. 
2445
2446         * input/regression/markup-note.ly: show note-head style option.
2447
2448         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2449         triangle head.
2450
2451 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2452
2453         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2454
2455         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2456
2457         * lily/include/constrained-breaking.hh: GCC 4 fix.
2458
2459 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2460
2461         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2462         Replace it with functions get_line_forces and get_line_configuration.
2463         (class Simple_spacer): Make data private.
2464         Rewrite compression algorithm to be faster and simpler.
2465
2466         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2467         * lily/gourlay-breaking.cc (solve):
2468         * lily/constrained_breaking.cc (space_line):
2469         Change it to the new simple-spacer code.
2470
2471         * lily/paper-score.cc (get_paper_systems):
2472         (Paper_score):
2473         (process):
2474         Delay breaking the systems until they are requested.
2475         (find_break_indices):
2476         Use vsize for indices.
2477         (calc_breaking):
2478         Move the "Calculating line breaks" message here.
2479
2480         * lily/system.cc (pre_processing):
2481         Move the "Calculating line breaks" message away from here.
2482         (break_into_pieces):
2483         Allow multiple calls to this function in sequence (with touching-but-
2484         not-overlapping breakpoints).
2485
2486         * lily/constrained-breaking.cc:
2487         Replace most of the get_XXXX functions with get_line_details.
2488         Only calculate the force for each line. Calculate configurations only
2489         for the lines we will actually use.
2490         Replace cols_ with lines_.
2491
2492 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2493
2494         * mf/GNUmakefile (depth): remove FC_FIND.
2495
2496         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2497
2498         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
2499
2500         * scm/framework-ps.scm (write-preamble): new function.
2501         (write-preamble): load mac fonts via fondu, even if gs-font-load
2502         is set.
2503
2504 2006-05-03  Werner Lemberg  <wl@gnu.org>
2505
2506         * mf/GNUmakefile (FC_FIND): Fix typo.
2507
2508 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
2509
2510         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
2511
2512 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2513
2514         * stepmake/aclocal.m4: run python-config for crosscompiling
2515         flags. 
2516
2517         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
2518         -f png for HTML, TEXINFO formats. 
2519
2520         * input/tutorial/lbook-html-test.html: new file.
2521
2522         * lily/include/tie-formatting-problem.hh (class
2523         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
2524         [column, direction]. This fixes laissez vibrer ties.
2525  
2526         * flower/include/tuple.hh (struct Tuple2): new file.
2527
2528         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
2529         $(FCMATCH), only if $(NCSB_DIR) not set. 
2530
2531         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
2532
2533         * config.make.in (DOCUMENTATION): set FCMATCH.  
2534
2535         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
2536
2537 2006-05-03  Graham Percival  <gpermus@gmail.com>
2538
2539         * Documentation/user/ various: final round of reorg.
2540
2541         * Documentation/user/instrument-notation.itely: some more
2542         fixes from Eduardo, thanks!
2543
2544 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2545
2546         * VERSION (PACKAGE_NAME): release 2.9.3
2547
2548         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
2549
2550         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
2551
2552 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
2553
2554         * scm/define-grob-properties.scm (all-user-grob-properties):
2555         Correct typo, thanks to Eduardo.
2556
2557 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2558
2559         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
2560
2561         * buildscripts/lilypond-words.py (F): indent fix.
2562
2563         * input/regression/tie-arpeggio-collision.ly: new file.
2564
2565         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
2566         function: store outlines per column rank.
2567
2568         * lily/include/tie-configuration.hh (class Tie_configuration): add
2569         column_ranks_ to specification and configuration, to distinguish
2570         between ties for different heads in arpegiated chords.
2571
2572         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
2573
2574         * *.py: more 4 space indents.
2575
2576         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
2577
2578 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
2579
2580         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
2581
2582 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2583
2584         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
2585
2586         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
2587
2588         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
2589
2590 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2591
2592         * python/convertrules.py (conv): indent 4 for python files.
2593
2594 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
2595
2596         * Documentation/user/changing-defaults.itely (Creating contexts):
2597         Clarify \new semantics.
2598
2599 2006-04-28  Graham Percival  <gpermus@gmail.com>
2600
2601         * Documentation/user/ various: major new sections in the
2602         Learning manual, slight reorg elsewhere.
2603
2604 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2605
2606         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
2607
2608         * scm/framework-ps.scm (output-framework): remove PageMedia
2609
2610 2006-04-27  Graham Percival  <gpermus@gmail.com>
2611
2612         * Documentation/user/ tweaks.itely, working.itely: new
2613         files, being more advanced "learning manual" chapters.
2614
2615         * Documentation/user/ tutorial, putting, lilypond: reorg.
2616
2617 2006-04-26  Graham Percival  <gpermus@gmail.com>
2618
2619         * input/regression/lyric-combine-polyphonic.ly: fixed test
2620         (no more "can't find context `one'" error).
2621
2622 2006-04-25  Joe Neeman <joeneeman@gmail.com>
2623
2624         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
2625
2626         * input/regression/stem-tremolo.ly: add 2 more whole note examples
2627         
2628 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2629
2630         * lily/relocate.cc (read_relocation_dir): new function.
2631
2632 2006-04-26  Graham Percival  <gpermus@gmail.com>
2633
2634         * Documentation/user/instrument-notation.itely: a few more fixes
2635         from Eduardo, thanks!
2636
2637         * Documentation/user/README.txt: new file; contains info on
2638         style that used to be in lilypond.tely.
2639
2640         * Documentation/user/ various: first round of doc reorg.
2641
2642         * Documentation/user/baer-flat-bw.png: remove alpha bit from
2643         graphic; this probably causes problems on some pdf
2644         viewers, notably Adobe Acrobat.
2645
2646 2006-04-24  Graham Percival  <gpermus@gmail.com>
2647
2648         * Documentation/user/instrument-notation.itely: many alterations
2649         to Vocal music, from Eduardo Viera.
2650
2651 2006-04-23  Graham Percival  <gpermus@gmail.com>
2652
2653         * Documentation/user/instrument-notation.itely: fix \new
2654         instead of \context problem.
2655
2656 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2657
2658         * lily/relocate.cc (expand_environment_variables): new function.
2659         (read_line): id.
2660         (read_relocation_file): id.
2661
2662         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
2663
2664 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
2665
2666         * ly/engraver-init.ly: remove old comments from TabVoice
2667
2668 2006-04-20  Graham Percival  <gpermus@gmail.com>
2669
2670         * Documentation/user/instrument-notation.itely: added Erlend's
2671         latest doc patch, thanks!
2672
2673 2006-04-19  Erlend Aasland <erlenda@gmail.com>
2674
2675         * lily/include/slur.hh:
2676         * lily/slur.cc:
2677         * lily/phrasing-slur-engraver.cc:
2678         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
2679         acknowledge_extra_object () from Phrasing_slur_engraver:: and
2680         Slur_engraver:: and putting it in
2681         Slur::auxiliary_acknowledge_extra_object ().
2682
2683         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
2684
2685         * lily/note-collision.cc: fix a comment
2686
2687 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2688
2689         * stepmake/bin/add-html-footer.py: fix footer position in
2690         generated html files: before </body> and </html> tags.
2691
2692 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2693
2694         * scripts/GNUmakefile: revert last "fix", which rather broke make.
2695         Earlier successive `make' commands finally compiled ok.
2696
2697         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
2698
2699 2006-04-18  Erlend Aasland <erlenda@gmail.com>
2700
2701         * lily/include/stem-tremolo.hh:
2702         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
2703         callers.
2704
2705         * lily/lookup.cc:
2706         * lily/include/lookup.hh: add rotated_box ()
2707
2708 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2709
2710         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
2711         been generated. Fixes "can't get `--help'" bug after make clean.
2712
2713         * THANKS: alphabetize contributors.
2714
2715 2006-04-17  Graham Percival  <gpermus@gmail.com>
2716
2717         * Documentation/user/instrument-notation.itely: added Erlend's
2718         tabs and banjo doc patch.  Thanks!
2719
2720 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
2721
2722         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
2723
2724         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
2725
2726         * scm/output-lib.scm: add some more predefined string tunings.
2727
2728         * Documentation/user/instrument-notation.itely: and doc them.
2729
2730 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
2731
2732         * ly/engraver.ly: Remove obsolete comments.
2733
2734         * ly/gregorian-init.ly: Define default layout block.
2735
2736         * input/puer-fragment.ly: Updated and extended.
2737
2738 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2739
2740         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
2741         pdf conversion behaviour.
2742
2743         * flower/file-name.cc (dir_name)
2744         (get_working_directory): Move from relocate.cc.
2745
2746         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
2747         
2748         * lily/relocate.cc: Encapsulate sys/stat.h in
2749         HAVE_STAT_H.
2750
2751 2006-04-14  Graham Percival  <gpermus@gmail.com>
2752
2753         * Documentation/user/ various: small updates from Cameron
2754         and Juergen, thanks!
2755
2756         * Documentation/user/ various: small updates of my own.
2757
2758         * THANKS: 2.7 -> 2.8.
2759
2760 2006-04-11  Graham Percival  <gpermus@gmail.com>
2761
2762         * scm/define-context-properties.scm: typo.
2763
2764         * Documentation/user/ : many more small updates.
2765
2766 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
2767
2768         * scm/define-music-types.scm: disposed "docme".
2769
2770 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
2771
2772         * lily/hairpin.cc: make niente circles a bit smaller.
2773
2774 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
2775
2776         * mf/GNUmakefile: remove redundant mftrace check. Also remove
2777         get-pfa and get-*-fonts targets.
2778
2779 2006-04-10  Graham Percival  <gpermus@gmail.com>
2780
2781         * THANKS, Documentation/user/ basic-notation, advanced-notation,
2782         music-glossary, programming-interface: more minor fixes
2783         from mailist.
2784
2785         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
2786
2787         * scm/define-context-properties.scm: another old \property update.
2788         This time tested for compiling!
2789
2790 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
2791
2792         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
2793
2794 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2795
2796         * scm/define-context-properties.scm (all-user-translation-properties): 
2797         * Documentation/user/global.itely (Page formatting): Compile fix.
2798
2799 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
2800
2801         * Documentation/user/advanced-notation.itely (Polymetric
2802         notation): Update the example to use the "+" symbol and add link
2803         to input/test/compound-time.ly.
2804
2805 2006-04-08  Graham Percival  <gpermus@gmail.com>
2806
2807         * scm/define-grob-properties.scm: clarify docs for #'direction.
2808
2809         * scm/define-context-properties.scm: update old \property override.
2810
2811         * Documentation/user/ advanced-notation, global, lilypond-book:
2812         more minor doc updates.
2813
2814 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2815
2816         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
2817
2818         * scm/backend-library.scm (search-gs): oops.
2819
2820 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2821
2822         * scripts/lilypond-book.py (output): use base, not filename for href.
2823
2824         * scm/backend-library.scm: only look for gs.
2825
2826         * scripts/lilypond-book.py (output): fix printfilename.
2827
2828         * lily/parser.yy (music_function_musicless_prefix): fold together
2829         definitions of signature (SCM*) (Music|post_event|chord_body_element)
2830
2831         * lily/slur.cc (print): only set font-size if not set yet.
2832
2833         * lily/slur-configuration.cc (add_score): improved layout of debug
2834         scoring output.
2835
2836 2006-04-05  David Feuer  <David.Feuer@gmail.com>
2837
2838         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
2839         (draw_circle): Hopefully fixed regression.
2840         Improved documentation for several procedures.
2841         
2842 2006-03-04  Werner Lemberg  <wl@gnu.org>
2843
2844         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
2845
2846 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2847
2848         * scripts/musicxml2ly.py (bindir): add dynamic
2849         relocation. 
2850
2851 2006-04-04  Graham Percival  <gpermus@gmail.com>
2852
2853         * Documentation/user/ basic-notation, advanced-notation, putting,
2854         instrument-notation, invoking, lilypond, THANKS: another ream of small
2855         fixes from the Doc Helpers.
2856
2857 2006-04-03  David Feuer  <David.Feuer@gmail.com>
2858
2859         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
2860
2861         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
2862
2863         * Cleaned up interfaces between PostScript and Scheme, and moved
2864         computations from PostScript to Scheme:
2865
2866         * music-drawing-routines.ps
2867         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
2868         with stroke_and_fill throughout.
2869         (euclidean_length, print_letter, draw_box): Deleted unused
2870         procedures.  If someone needs draw_box, implement it using
2871         draw_round_box; don't duplicate code.
2872         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
2873         Refactored/cleaned up interfaces.
2874         (mark_URI): Moved.
2875
2876         * output-ps.scm: reordered arguments to PostScript functions to
2877         match new interfaces
2878         (glyph-string): Rewrote glyph-string.
2879         (grob-cause): Replaced string-append with format.
2880         (repeat-slash): Rewrote to do computation here.
2881         (round-filled-box): Rewrote to do computation here.
2882
2883 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
2884
2885         * stepmake/stepmake/generic-targets.make: add cvs-clean target
2886
2887         * stepmake/stepmake/toplevel- targets.make: print help info about
2888         cvs-clean
2889
2890 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
2891
2892         * input/regression/hairpin-circled.ly: new file
2893
2894 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
2895
2896         * lily/hairpin.cc (print): add support for circled tip
2897
2898         * scm/define-grob-properties.scm: add circled-tip parameter
2899
2900         * scm/define-grobs.scm: init circled-tip to false
2901         
2902 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2903
2904         * scm/music-functions.scm (quote-substitute): set
2905         iterators-ctor. 
2906
2907 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2908
2909         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
2910         BSTINPUTS. 
2911
2912         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
2913
2914         * scm/output-ps.scm (glyph-string): revert cid selectfont.
2915
2916 2006-03-31  David Feuer  <david.feuer@gmail.com>
2917         
2918         * scm/framework-ps.scm:
2919         
2920         * scm/output-ps.scm: glyph-string now produces smaller, more
2921         readable, and probably faster PostScript.  Several findfont
2922         scalefont setfont instances changed to selectfont
2923         Hacked-up string-appends changed to formats.
2924
2925         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
2926         
2927 2006-03-30  Graham Percival  <gpermus@gmail.com>
2928
2929         * scm/lily-library.scm: make "no version" warning message more polite.
2930
2931         * lily/music.cc: add double quotes to failed octave check.
2932
2933         * Documentation/user/ advanced-notation, changing-defaults,
2934         instrument-notation, invoking, music-glossary: whole bunch of minor
2935         fixes from mailist.
2936
2937 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2938
2939         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
2940         $(buildscriptdir) iso. depth.
2941
2942         * VERSION (PACKAGE_NAME): release 2.9.1
2943
2944 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2945
2946         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
2947
2948         * VERSION (PATCH_LEVEL): bump version number.
2949
2950         * flower/include/guile-compatibility.hh (scm_from_uint32): add
2951         scm_from_uint32 ()
2952
2953         * lily/pango-font.cc (pango_item_string_stencil): use
2954         scm_from_uint32 ()
2955
2956         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
2957         $(outdir)/emmentaler-%.svg): remove canary.
2958
2959         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
2960         glyphnames if we have a ttf font.
2961
2962 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
2963
2964         * Documentation/user/advanced-notation.itely (Font selection):
2965         Corrected reference to the font-family-override.ly example.
2966
2967 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
2968         
2969         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
2970         stem-tremolo object in the stem (or else the stem might not be
2971         long enough).
2972
2973 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2974
2975         * lily/ttf.cc (print_trailer): only print existing glyphs.
2976
2977 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
2978
2979         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
2980         position the tremolo based on the position of the notehead.
2981
2982         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
2983         notes and update the texidoc line with the new positioning rules.
2984         
2985 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2986
2987         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
2988
2989         * scripts/lilypond-book.py (Module): set default for linewidth if
2990         preamble not found.
2991
2992 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2993
2994         * VERSION (PACKAGE_NAME): release 2.9.0.
2995
2996         * input/regression/stem-tremolo-position.ly: new file.
2997
2998         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
2999
3000 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3001
3002         * lily/stem-tremolo.cc (print): position
3003         the tremolo depending only on the end of the stem
3004         and not on the notehead
3005         (raw_stencil): center, on the middle staff line, the
3006         flag that is closest to the end of the stem (previously
3007         the bottom flag)
3008         (calc_width): add this callback to shorten a tremolo when
3009         it is beamed or it is stemup with a flag
3010         (style): add this callback to make a tremolo rectangular when
3011         it is beamed or it is stemup with a flag
3012         (rotated_box): this is like Lookup::beam but makes a rotated
3013         rectangle instead of a parallelogram
3014
3015         * lily/stem.cc (calc_stem_info): make sure the stem
3016         is long enough to fit the tremolo
3017         (calc-length): reduce the length of tremolo stems since the
3018         tremolo code is now capable of better positioning
3019
3020         * scm/define-grobs.scm: make calc_width the default beam-width
3021         callback for stem-tremolo and add the style callback
3022                 
3023 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3024
3025         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3026         case. 
3027
3028 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3029
3030         * lily/ttf.cc (make_index_to_charcode_map): restore old
3031         cmap. 
3032
3033 2006-03-28  Werner Lemberg  <wl@gnu.org>
3034
3035         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3036
3037 2006-03-28  Graham Percival  <gpermus@gmail.com>
3038
3039         * THANKS: update for 2.9, add section for Documentation helpers.
3040
3041         * Documentation/topdocs/NEWS.tely: compile fix.
3042
3043         * Documentation/user/ basic-notation, global, advanced-notation,
3044         examples.itely: minor fixes from mailist.
3045
3046 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3047
3048         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3049         note heads. 
3050
3051         * lily/ttf.cc (print_trailer): use it.
3052
3053         * lily/pango-font.cc (get_unicode_name): new function.
3054
3055         * lily/ttf.cc (make_index_to_charcode_map): move function from
3056         open-type-font.cc
3057         (print_trailer): substitute uniXXXX name if applicable. 
3058
3059         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3060         (pango_item_string_stencil): use it to generate uniXXXX names.
3061
3062         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3063         note heads, for uniform widths in shape note output.
3064         (overdone_heads): hmm. remove them again.
3065
3066         * scripts/lilypond-book.py (output): add links to filenames.
3067
3068         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3069
3070         * lily/note-collision.cc (get_clash_groups): only consider when
3071         Note_column::dir <> CENTER. 
3072
3073         * scripts/lilypond-book.py (get_option_parser): init output_name
3074         to ''. 
3075
3076 2006-03-24  Graham Percival  <gpermus@gmail.com>
3077
3078         * Documentation/topdocs/NEWS.tely: add @end itemize
3079
3080         * Documentation/user/ global, advanced-notation: minor
3081         stuff from mailist.
3082
3083 2006-03-23  Graham Percival  <gpermus@gmail.com>
3084
3085         * Documentation/user/ lilypond.tely, music-glossary,
3086         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3087
3088 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3089
3090         * mf/GNUmakefile: don't install .enc files.
3091
3092         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3093
3094         * VERSION (PATCH_LEVEL): bump to 2.9.0
3095
3096 2006-03-22  Graham Percival  <gpermus@gmail.com>
3097
3098         * Documentation/user/advanced-notation.itely: minor fixes
3099         from mailist.
3100
3101 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3102
3103         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3104
3105         * branch lilypond_2_8
3106
3107 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3108
3109         * scripts/lilypond-book.py (samefile): new function, for windoze
3110         compatibility.
3111
3112 2006-03-21  Graham Percival  <gpermus@gmail.com>
3113
3114         * ly/engraver-init.ly: add info about StaffGroup.
3115
3116 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3117
3118         * input/regression/stem-direction-context.ly: idem.
3119
3120         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3121
3122         * THANKS: add Mats.
3123
3124         * input/regression/page-layout-twopass.ly: comment out \markup so
3125         tweak-file is left.
3126
3127         * lily/instrument-name-engraver.cc (finalize): add to instrument
3128         name global System. This also fixes chopped instrument names, but
3129         doesn't crash when there are slurs/beams.
3130
3131         * lily/slur-configuration.cc (add_score): disallow negative slur
3132         scores.
3133         
3134 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3135
3136         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3137
3138         * lily/instrument-name-engraver.cc (process_music): kludge: add
3139         InstrumentName spanner to axis group of left bound. Fixes chopped
3140         off instrument names in EPS images.
3141
3142         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3143
3144         * scripts/abc2ly.py (option_parser): update to 2.7.40
3145
3146 2006-03-20  Graham Percival  <gpermus@gmail.com>
3147
3148         * THANKS: move small doc contributors to SUGGESTIONS.
3149
3150         * Documentation/user/ basic-notation, advanced-notation,
3151         global: small changes from mailist.
3152
3153 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3154
3155         * Documentation/user/advanced-notation.itely (Text marks): update
3156         for new rehearsalMarkAlignSymbol convention.
3157
3158         * VERSION (PATCH_LEVEL): bump version.
3159
3160         * input/test/instrument-name-align.ly: new file.
3161
3162         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3163
3164         * input/test/instrument-name-align.ly: new file. Document how to
3165         align instrument names.
3166
3167         * lily/mark-engraver.cc: remove properties.
3168
3169         * scm/define-context-properties.scm
3170         (all-user-translation-properties): remove align symbol properties
3171         for barnumber/reh. mark.
3172
3173         * lily/break-align-interface.cc (self_align_callback): new
3174         interface, new function. Look at complete alignment. This handles
3175         tunable break alignments in case break-align-symbols are missing.
3176
3177         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3178
3179         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3180
3181         * python/convertrules.py (conv): mark/bar number alignment rule.
3182
3183         * lily/break-align-interface.cc (calc_positioning_done): also
3184         store offset from last visible break-alignment to its
3185         neighbor. This makes alignment on non-visible objects more reliable.
3186
3187         * po/lilypond.pot (Module): ran po-replace.
3188
3189         * input/regression/tie-single-manual.ly (Module): new file.
3190
3191         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3192         look at has_manual_position_.
3193         (from_ties): set has_manual_position_ if tie has staff-position set.
3194
3195         * lily/tuplet-bracket.cc (calc_positions): idem.
3196
3197         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3198         doesn't span time.
3199
3200 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3201
3202         * scm/define-markup-commands.scm (smallCaps): new markup command
3203         for turning a text to small caps using smaller font size and upper
3204         casing.
3205
3206 2006-03-17  Graham Percival  <gpermus@gmail.com>
3207
3208         * Documentation/user/ examples, instrument-notation,
3209         advnaced-notation: minor fixes from mailist.
3210
3211 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3212
3213         * Documentation/user/tutorial.itely (First steps): change example
3214         to verbatim.  
3215
3216 2006-03-17  Graham Percival  <gpermus@gmail.com>
3217
3218         * Documentation/user/ examples, advanced: minor changes from mailist.
3219
3220         * THANKS: add Geoff Horton, for documentation stuff.
3221
3222 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3223
3224         * python/lilylib.py (system): revert have_select kludge.
3225
3226         * Documentation/user/tutorial.itely (Commenting input files):
3227         update version numbers in doc. 
3228
3229         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3230         bound-padding to multi-measure-interface
3231
3232 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3233
3234         * input/test/engraver-example.ily: update version number.
3235
3236         * VERSION (PACKAGE_NAME): release 2.7.39
3237
3238         * lily/note-spacing.cc (get_spacing): heighten threshold where
3239         accidentals/arpeggios influence previous spacing fully.
3240
3241         * lily/rest.cc (y_offset_callback): only use direction if
3242         staff-position wasn't set before.
3243
3244         * lily/bar-number-engraver.cc: add support for
3245         barNumberAlignSymbol. 
3246         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3247
3248         * lily/pointer-group-interface.cc (set_ordered): new function. 
3249         (add_unordered_grob): new function.
3250
3251         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3252         to ordered, unless the opposite has been proved.  This fixes
3253         random reordering of large object groups across linebreaks,
3254         eg. beams.
3255
3256         * lily/main.cc (do_chroot_jail): printf format fix.
3257
3258         * lily/tie-formatting-problem.cc (generate_configuration):
3259         multiply y-shift for dot with direction.
3260  
3261         * scm/define-markup-commands.scm (note-by-number): put (magstep
3262         size) in y-attach too.
3263
3264         * Documentation/topdocs/NEWS.tely (Top): show override.
3265
3266         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3267         direction for stems.
3268         
3269 2006-03-15  Graham Percival  <gpermus@gmail.com>
3270
3271         * Documentation/user/ changing-defaults, global: minor
3272         fixes from mailist.
3273
3274 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3275
3276         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3277
3278         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3279         breakable items after uniformly stretched notes.
3280
3281         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3282         outline with outer edge of note heads. This prevents infinity
3283         problems with tied whole notes.
3284
3285         * scripts/lilypond-book.py (do_file): use os.popen
3286
3287         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3288
3289 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3290
3291         * Documentation/user/invoking.itely: Add ragged-right to bug report
3292         guidelines.
3293
3294 2006-03-14  Graham Percival  <gpermus@gmail.com>
3295
3296         * Documentation/user/global.itely: small fix from mailist.
3297
3298 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3299
3300         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3301         file descriptor returned by tempfile.mkstemp() when writing
3302         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3303         on mingw.
3304
3305 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3306
3307         * po/fi.po: newline bugfix.
3308
3309 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3310
3311         * scm/paper.scm (paper-alist): Rounding fixes.
3312
3313 2006-03-13  Graham Percival  <gpermus@gmail.com>
3314
3315         * Documentation/user/ changing-defaults, instrument-notation,
3316         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3317
3318 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3319
3320         * po/fi.po: update.
3321
3322 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3323
3324         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3325         mailto: to http:// 
3326
3327         * python/lilylib.py (print_environment): move ps_page_count to
3328         lilypond-book.py
3329
3330 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3331
3332         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3333
3334         * scm/framework-ps.scm (embed-document): new function. Use to
3335         embed PFA files.
3336
3337         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3338
3339 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3340
3341         * Documentation/user/instrument-notation.itely (Setting simple
3342         songs): Added \book{...} around the full example, so the separate
3343         markups are included in the printed example. 
3344
3345 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3346
3347         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3348         tmphandle.
3349
3350         * python/lilylib.py (system): rewrite system() using
3351         subprocess. Remove >& redirection trickery.
3352
3353 2006-03-11  Graham Percival  <gpermus@gmail.com>
3354
3355         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3356         notation-appendices.itely: minor fixes from mailist.
3357
3358 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3359
3360         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3361         unsplit man also needs images.
3362
3363         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3364
3365         * VERSION (PACKAGE_NAME): 2.7.38 released.
3366
3367 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3368
3369         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3370         log in output dir.
3371
3372 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3373
3374         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3375         respects the Score.skipTypesetting property.
3376         
3377 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3378
3379         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3380         Prolog. No %%EOF after CFF file.
3381
3382 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3383         
3384         * lily/constrained-breaking.cc (get_max_systems): used to return a
3385         much too big value
3386         (combine_demerits): use pointers to reduce copying data
3387         (calc_subproblem): idem
3388         (get_page_penalty): add page turn penalties
3389         
3390 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3391
3392         * Documentation/user/invoking.itely (Invoking lilypond): better
3393         explanation of -e usage.
3394
3395         * lily/main.cc (main_with_guile): don't append to
3396         init_scheme_code_string
3397
3398         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3399
3400         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3401
3402         * scripts/convert-ly.py (do_options): don't print help for
3403         --show-rules rule.
3404
3405         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3406         @code and @example. Update from texinfo.tex from CVS.
3407
3408 2006-03-08  Graham Percival  <gpermus@gmail.com>
3409
3410         * Documentation/user/scheme-tutorial.itely: clarifies distances
3411         measured in staff-spaces.
3412
3413 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3414
3415         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3416         consider[k] is true.
3417
3418         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3419
3420         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3421         consider columns that have originals.  Unifies spacing for mm
3422         rests around line breaks.
3423
3424         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3425         (set_text_rods): idem.
3426         (calculate_spacing_rods): new function: share code between
3427         set_text_rods and set_spacing_rods.
3428         (set_text_rods): take extents of bounds into account.  
3429
3430 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3431
3432         * Documentation/user/basic-notation.itely (Writing music in
3433         parallel): don't use relative.
3434
3435 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3436
3437         * ly/music-functions-init.ly (Module): add shiftDurations
3438
3439         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3440
3441         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3442
3443         * ly/engraver-init.ly: init vocalName to nil.
3444
3445 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3446
3447         * scm/music-functions.scm (music->make-music): bugfix,
3448         KeyChangeEvents are now handled correctly.
3449
3450         * scripts/lilypond-book.py: Add --debug option.
3451
3452 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3453
3454         * python/lilylib.py: add tempfile.
3455
3456 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3457
3458         * VERSION (PACKAGE_NAME): release 2.7.37
3459
3460         * python/lilylib.py (ps_page_count): remove make_ps_images().
3461         (ps_page_count): remove mkdir_p
3462         (system): remove cleanup_temp.
3463         (exit): remove lilypond_version_(check)
3464         (error_log): remove pseudo_filter_p
3465         remove read_pipe
3466         remove cp_to_dir
3467         remove identify
3468
3469         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3470         use __main__
3471
3472         * lily/accidental-engraver.cc (make_standard_accidental): only add
3473         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3474
3475         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3476         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3477         Make incompatibilities.
3478
3479         * scm/output-ps.scm (grob-cause): replace backslashes by /
3480         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3481
3482 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3483
3484         * cygwin/GNUmakefile: Install fixes.
3485
3486         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3487
3488         * lily/note-head.cc (head::get_balltype): Compile fix.
3489
3490         * flower/file-name.cc (dos_to_posix): Flower string fix.
3491
3492 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3493
3494         * python/lilylib.py: pychecker cleanups.
3495
3496         * scripts/lilypond-book.py
3497         (Lilypond_snippet.output_print_filename): pychecker cleanups
3498
3499         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
3500
3501         * python/lilylib.py (underscore): remove identify() , warranty()
3502
3503         * ps/music-drawing-routines.ps: change Border routine for GSView
3504         compatibility.
3505
3506         * lily/stem.cc (height): use quantize-positions.  This triggers
3507         set_stem_lengths, so scripts on beamed stems are handled correctly.
3508
3509         * lily/side-position-interface.cc (aligned_side): check if edges
3510         of script are inside staff. Fixes accent of edge of the staff.
3511
3512         * input/regression/staccato-pos.ly: more examples.
3513
3514         * stepmake/aclocal.m4 (depth): fix bashism.
3515
3516         * lily/lyric-combine-music-iterator.cc: move from
3517         new-lyric-combine-iterator.cc
3518         (process): add pending_grace_lyric_ member to delay lyrics on
3519         grace notes.
3520
3521         * lily/system-start-text.cc (print): suicide if we don't have any
3522         elements. Fixes hara kiri'd instrument names.
3523
3524         * scripts/mup2ly.py (Module): remove.
3525
3526 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3527
3528         * Documentation/user/global.itely (A single music expression):
3529         close @lilypond properly
3530
3531         * lily/volta-bracket.cc (modify_edge_height): change from
3532         after_line_breaking_callback. Suicide last bracket if appropriate.
3533  
3534         * python/lilylib.py: strip getopt support
3535
3536         * scripts/etf2ly.py (do_options): use optparse
3537
3538         * scripts/midi2ly.py: optparse, strip lilylib copy. 
3539
3540         * scripts/abc2ly.py (voices): use optparse.
3541
3542         * stepmake/stepmake/generic-vars.make: new function absdir.
3543
3544         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
3545
3546         * scripts/lilypond-book.py (find_file): use global_options for
3547         include path
3548
3549         * scm/ps-to-png.scm (ps-page-count): prevent null characters
3550         entering C code.
3551
3552 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3553
3554         * python/lilylib.py (get_global_option): ughness for extracting
3555         global options from lilylib.
3556         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
3557
3558         * scripts/lilypond-book.py (get_option_parser): use optparse for
3559         option handling.  Put options in global_options variable.
3560
3561 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
3562
3563         * Documentation/index.html.in: clarify.
3564
3565 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3566
3567         * scm/layout-page-layout.scm (write-page-breaks): add a
3568         music-system-heights property to the page layout output.
3569
3570         * scm/page.scm (make-page-stencil): take footer into account when
3571         computing the 'space-left page property
3572         (annotate-space-left): take footer into account when annonating
3573         space left.
3574
3575 2006-02-28  Graham Percival  <gpermus@gmail.com>
3576
3577         * Documentation/user/ advanced-notation, global: more (final)
3578         docs for music expressions, removed special fermatas.
3579
3580 2006-02-27  Graham Percival  <gpermus@gmail.com>
3581
3582         * Documentation/user/ basic-notation, global: minor changes
3583         from mailist.
3584
3585 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3586
3587         * scm/framework-ps.scm:         
3588         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
3589         layer for inf? and nan? from framework-ps to lily-library.
3590
3591 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3592
3593         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
3594         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
3595
3596         * buildscripts/substitute-encoding.py (Module): remove file.
3597
3598         * mf/GNUmakefile: more PFA strippage.
3599
3600         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
3601
3602         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
3603         generation
3604
3605         * scm/framework-ps.scm: remove font name munging.
3606
3607         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
3608
3609 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3610
3611         * scm/markup.scm (define-markup-command): change
3612         def-markup-command to define-markup-command
3613
3614         * scm/music-functions.scm (define-music-function): change
3615         def-music-function to define-music-function.
3616
3617         * python/convertrules.py (conv): rules for def-music-function
3618         and def-markup-commands
3619
3620         * Documentation/user/programming-interface.itely,
3621         input/no-notation/display-lily-tests.ly,
3622         input/regression/lily-in-scheme.ly,
3623         input/regression/markup-user.ly,
3624         input/regression/music-function.ly, input/regression/tie-chord.ly,
3625         scm/fret-diagrams.scm, ly/music-functions-init.ly,
3626         ly/gregorian-init.ly: use new macro names (define-music-function,
3627         define-markup-command).
3628
3629 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3630
3631         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
3632         (output): add comments to lp-book latex output.
3633
3634         * GNUmakefile.in (footifymail): use gmane address for webpage bug
3635         address.
3636
3637 2006-02-23  Graham Percival  <gpermus@gmail.com>
3638
3639         * Documentation/user/ tutorial, global: minor changes.
3640
3641 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3642
3643         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
3644         blocks (for make 3.80)
3645
3646         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
3647         \notemode so that user should not have to explicitely type it.
3648
3649         * scm/define-music-display-methods.scm: various
3650         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
3651         constructs)
3652
3653         * input/no-notation/display-lily-tests.ly: new tests for
3654         \applyOutput and \applyContext
3655
3656 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3657
3658         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
3659         changed it slightly so that the number of systems returned by
3660         solve () will be the same as the last value passed to resize
3661         (). I've also added more documentation, removed casts, fixed style
3662         problems and put in some recovery if constraints aren't satisfied."
3663
3664 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
3665
3666         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
3667         for emacs < 22 compatibility.
3668         (count-rexp): Use it.
3669         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
3670         substring juggling (Milan Zamazal).
3671
3672 2006-02-23  Graham Percival  <gpermus@gmail.com>
3673
3674         * Documentation/user/ basic-notation, advanced-notation,
3675         global.itely, invoking.itely, tutorial,itely:
3676         minor fixes from mailist.
3677
3678         * scm/define-markup-commands.scm: improve docs of \filled-box.
3679
3680 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
3681
3682         * Documentation/index.html.in: changes concern the previous release.
3683
3684         * input/regression/+.ly: cultivate typographical terminology.
3685
3686 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3687
3688         * scm/define-grob-interfaces.scm (parentheses-interface): add
3689         padding to parentheses-interface.
3690
3691         * Documentation/user/GNUmakefile: remove $(CROSS) support from
3692         Documentation/user/GNUmakefile. Use --disable-documentation for that.
3693
3694         * VERSION (PATCH_LEVEL): release 2.7.36
3695
3696         * lily/slur.cc: add avoid-slur (ugh.)
3697         
3698         * lily/slur-configuration.cc (fit_factor): oops, skip point if
3699         intersection gets smaller. This fixes slurs over extreme points.
3700
3701         * lily/melody-engraver.cc (stop_translation_timestep): ignore
3702         stems with neutral-direction set.
3703
3704         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
3705
3706         * lily/open-type-font.cc (load_table): format error.
3707
3708         * lily/change-iterator.cc (process): format fix.
3709
3710         * flower/include/international.hh (_f): idem.
3711
3712         * flower/include/std-string.hh: add format printf attribute.
3713
3714         * scm/define-grobs.scm (all-grob-descriptions): height of all
3715         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
3716
3717         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
3718         ambitus lines.
3719
3720         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
3721
3722 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
3723
3724         * input/regression/: upgraded syntax for some files.
3725
3726         * THANKS: Add bughunters.
3727
3728 2006-02-22  Graham Percival  <gpermus@gmail.com>
3729
3730         * Documentation/user/ invoking.itely, advanced-notation.itely,
3731         global.itely: long-awaited "let's make chapter 10 not suck"
3732         update.  Rearrange chapter 10; now called "global issues",
3733         addresses file structure, etc.  Some info from other files
3734         moved into global.itely.
3735
3736 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3737
3738         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
3739         catch trill-span-event notes.
3740
3741         * Documentation/user/examples.itely (Ancient notation templates): typo.
3742         (Jazz combo): typo.
3743
3744         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
3745
3746         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
3747
3748         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
3749
3750         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
3751
3752         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
3753         froum Laissez_vibrer_engraver.
3754
3755         * ly/declarations-init.ly (repeatTie): add \repeatTie
3756
3757         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
3758
3759         * scm/define-grob-properties.scm (all-user-grob-properties): add
3760         head-direction property.
3761
3762         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
3763         from_lv_ties. Take head direction argument.
3764
3765         * lily/semi-tie-column.cc: rename from
3766         laissez-vibrer-tie-column.cc. Rename class too.
3767
3768         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
3769         class too.
3770
3771         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
3772
3773         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
3774         0 case.
3775         (find_breaks): idem.
3776
3777 2006-02-21  Graham Percival  <gpermus@gmail.com>
3778
3779         * Documentation/user/advanced-notation.itely: fixed make-moment]
3780         example.
3781
3782         * Documentation/user/basic-notation.itely: more clarification to
3783         transpose.
3784
3785 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3786
3787         * lily/include/constrained-breaking.hh (class
3788         Constrained_breaking): new file.
3789
3790         * lily/constrained-breaking.cc (resize): new file.
3791
3792         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
3793
3794         * Documentation/user/advanced-notation.itely (Clusters): insert
3795         end ignore too.
3796
3797         * lily/tie-column.cc (calc_positioning_done): support for
3798         tie-score debugging
3799
3800         * lily/tie-formatting-problem.cc
3801         (generate_extremal_tie_variations): factor out.
3802         (score_ties_configuration): annotate all tie 
3803         (print_ties_configuration): new routine.
3804         (generate_configuration): nudge extremal ties outside of the head
3805         Y extents.
3806         (score_ties_configuration): oops. convert to staff-space before
3807         determining position symmetry.
3808
3809 2006-02-20  Graham Percival  <gpermus@gmail.com>
3810
3811         * Documentation/user/*-notation.itely: misc minor editing,
3812         shifting doc sections around.
3813
3814         * Documentation/user/*-notation-itely, global.itely,
3815         changing-defaults.itely: added new stuff from NEWS.
3816
3817 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
3818
3819         * po/fi.po: update.
3820
3821 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3822
3823         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
3824         lilypond --verbose for lp-book.
3825
3826         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3827         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
3828
3829         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
3830         $(buildscript-dir) iso. absolute depth.
3831
3832         * buildscripts/genicon.py (dir): thinko.
3833
3834         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
3835
3836 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
3837
3838         * scm/output-lib.scm: swap darkcyan/darkyellow
3839
3840         * THANKS: Add bughunters.
3841
3842 2006-02-19  Graham Percival  <gpermus@gmail.com>
3843
3844         * Documentation/user/programming-interfaces.itely: fixed example.
3845
3846         * Documentation/user/instrument-notation.itely: fix @{ @}.
3847
3848         * scm/script.scm: add avoid-slur for \open.
3849
3850 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3851
3852         * lily/tie-formatting-problem.cc (score_configuration): use
3853         sliding score for min-length. 
3854
3855         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
3856         spaghetti for icons.
3857
3858         * buildscripts/genicon.py (program_name): new file.
3859
3860         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
3861         in outline too.  
3862         (generate_configuration): for small ties, also look for collisions
3863         at Y + DIR*h + DELTA_Y.
3864         (get_variations): consider variation for dot positions too.
3865
3866         * lily/side-position-interface.cc (aligned_side): take abs for
3867         quantized rounded position. Fixes tenuto below staff.
3868
3869         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
3870         markers when necessary.
3871
3872         * lily/program-option.cc (internal_set_option): add
3873         strict_infinity_checking option.
3874
3875         * scm/output-lib.scm (cyan): swap yellow and cyan.
3876
3877 2006-02-19  Graham Percival  <gpermus@gmail.com>
3878
3879         * darwin.patch: trivial linenumber update.
3880
3881         * Documentation/user/ {various}: `\context foo = named' changed
3882         to `\new foo = "name"' in docs.
3883
3884 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3885
3886         * scm/stencil.scm (annotate-y-interval): use it.
3887
3888         * scm/lily-library.scm (interval-sane?): new function.
3889
3890         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
3891         tfm_checksum stuff.
3892
3893         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
3894         common refpoint.
3895
3896         * flower/include/std-vector.hh (iterof): add iterof macro.
3897
3898         * lily/enclosing-bracket.cc (width): new function.
3899
3900         * lily/align-interface.cc (align_elements_to_extents): reinstate
3901         warning.
3902
3903 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
3904
3905         * Documentation/index.html.in: fix spelling: thankyous.
3906
3907 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3908
3909         * lily/lyric-hyphen.cc: typo.
3910
3911 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3912
3913         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
3914         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
3915         builds don't work. 
3916
3917         * VERSION: release 2.7.35
3918
3919         * lily/beam.cc (get_default_dir): oops. Take abs () for
3920         extremes[DOWN].
3921         (get_default_dir): use extreme position criterion only in absence
3922         of forced stem directions.
3923
3924         * VERSION (PATCH_LEVEL): bump VERSION.
3925
3926         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
3927         dependencies. Necessary for -jX builds.  
3928
3929 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
3930
3931         * lily/relocate.cc (setup_paths): Yet another const fix.
3932
3933 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3934
3935         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
3936
3937         * lily/relocate.cc (setup_paths): oops.
3938
3939 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
3940
3941         * Documentation/index.html.in: order links: html before PDF.
3942
3943 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3944
3945         * lily/tie-column-format.cc (Module): remove.
3946
3947         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
3948
3949         * lily/text-spanner.cc (print): idem.
3950
3951         * lily/dynamic-text-spanner.cc (print): only print line if longer
3952         than dash-period.
3953
3954         * lily/auto-change-iterator.cc (change_to): formatting.
3955
3956         * lily/beam.cc (get_default_dir): take extreme note head as input
3957         for stem direction.
3958
3959         * lily/tie.cc (get_default_dir): only look directions for visible
3960         stems. 
3961
3962         * lily/side-position-interface.cc (aligned_side): oops. Don't
3963         mutiply with direction. This fixes quantized (staccato, tenuto)
3964         scripts below notes.
3965
3966         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
3967         direction. Fixes c-lyrics-center-align.ly
3968
3969 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3970
3971         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
3972         constructor.
3973
3974         * lily/std-string.cc:
3975         * lily/include/std-vector.hh (split_string): Move and rename from
3976         lily/include/misc.hh, lily/misc.cc.  Update callers.
3977
3978 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3979
3980         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
3981
3982 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3983
3984         * flower/test-file.cc: New file.
3985
3986         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
3987         libraries.
3988
3989         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
3990
3991 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3992
3993         * flower/include/file-storage.hh: remove file.
3994
3995         * lily/include/midi-item.hh (class Midi_track): idem.
3996
3997         * lily/include/source.hh (class Sources): idem.
3998
3999         * lily/include/performance.hh (class Performance): use vector
4000         iso. Cons<>
4001
4002         * flower/include/cons.hh (class Cons): remove file.
4003
4004         * flower/include/flower-proto.hh: remove template cruft.
4005
4006         * lily/include/font-metric.hh: use size_t not vsize for indices.
4007
4008         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4009         from proto.
4010
4011         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4012
4013         * lily/include/paper-book.hh (class Paper_book):
4014         make get_system_specs() public.
4015
4016         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4017         the force=10000 case if we don't have a current-best. 
4018
4019         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4020         vsize 
4021
4022         * flower/include/flower-proto.hh: remove outdated templates.
4023
4024         * scm/page.scm: use annotate-spacing
4025
4026 2006-02-15  Graham Percival  <gpermus@gmail.com>
4027
4028         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4029
4030         * THANKS: moved Erlend Aasland to contributors.
4031
4032 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4033
4034         * config.hh.in: remove HAVE_PANGO_16
4035
4036         * lily/tuplet-bracket.cc (calc_positions): multiply with
4037         staff-space for beam case. This fixes tuplets+beams on scaled
4038         staves.
4039
4040         * config.hh.in: remove all Kpathsea related defines.
4041
4042         * lily/dot-column.cc (side_position): reach stem via dots->
4043         head->stem. Inspect all stems for dot collisions. 
4044
4045         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4046         stem handling.
4047
4048         * lily/bar-number-engraver.cc (process_music): document function
4049         of whichBar.
4050
4051         * lily/score.cc (default_rendering): add pscore, not systems
4052         themselves.
4053
4054         * lily/paper-book.cc (get_system_specs): separate generation of
4055         titles and systems.
4056
4057         * flower/include/std-vector.hh: don't include config.hh
4058
4059 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4060
4061         * flower/include/std-vector.hh: Better wrapper compatibility with
4062         std::vector.
4063
4064         * flower/include/flower-proto.hh: Remove cheap forward declaration
4065         attempts.
4066
4067         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4068
4069 2006-02-14  Graham Percival  <gpermus@gmail.com>
4070
4071         * Documentation/user/invoking.itely: add warning about command line.
4072
4073 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4074
4075         * lily/include/lily-proto.hh: add Prob, rm Page.
4076
4077         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4078
4079         * VERSION: release 2.7.34
4080
4081         * lily/relocate.cc (framework_relocation): show canary if
4082         GHOSTSCRIPT_VERSION undefined.
4083
4084         * GNUmakefile.in: remove $(VERSION) symlink.
4085
4086         * lily/relocate.cc (setup_paths): add + 
4087
4088 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4089
4090         * Documentation/index.html.in: specify sizes for all big HTML pages.
4091
4092 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4093
4094         * config.hh.in: remove @FRAMEWORKDIR@
4095
4096         * lily/system-start-text.cc (get_stencil): new file: separate out
4097         system-start-delimiter text support.
4098
4099         * input/**ly: replace \context with \new where appropriate.
4100         
4101         * THANKS: add Don.
4102
4103         * lily/slur-scoring.cc (get_base_attachments): use
4104         robust_relative_extent. This fixes problems with empty paper-columns. 
4105
4106 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4107
4108         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4109
4110         * scm/define-music-properties.scm (all-music-properties):
4111         create-new property.
4112
4113         * lily/context-specced-music-iterator.cc (construct_children):
4114         inspect 'create-new property iso. magical $uniqueContextId context
4115         id.
4116
4117         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4118
4119         * lily/context-key-manager.cc (Module): new file. Encapsulate
4120         object key generation.
4121
4122         * lily/include/context-key-manager.hh (Module): new file.
4123
4124 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4125
4126         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4127         names vertically
4128
4129         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4130         options.
4131         (reloc_b): excise --enable-framework-dir
4132
4133         * lily/relocate.cc (framework_relocation): use getenv
4134         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4135
4136 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4137
4138         * flower/include/std-string.hh: 
4139         * flower/include/std-vector.hh: Finish std:: conversion; move
4140         flower extensions from std:: namespace.  Update users.
4141
4142         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4143         their expansion to vector<*>.  Update users.
4144
4145 2006-02-10  Graham Percival  <gpermus@gmail.com>
4146
4147         * Documentation/user/invoking.itely: add example to File structure.
4148
4149         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4150         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4151
4152 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4153
4154         * ly/paper-defaults.ly: typo.
4155
4156         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4157         set_parent() for parentheses. This will make it show up in bbox
4158         calculations.
4159
4160         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4161         ly:grob-common* functions.
4162
4163         * lily/grob-scheme.cc (LY_DEFINE):
4164         ly:grob-common-refpoint-of-array: new function 
4165         ly:grob-common-refpoint: new function 
4166         ly:grob-relative-coordinate: new function 
4167
4168         * lily/instrument-name-engraver.cc (process_music): use
4169         Text_interface::is_markup(). This fixes \markup on instrument names.  
4170
4171         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4172         for ties and slurs.
4173
4174         * lily/slur.cc (print): idem.
4175
4176         * lily/tie.cc: add line-thickness for ties. 
4177
4178 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4179
4180         * scm/output-svg.scm: Document diversion from GNU coding standards
4181         as a workaround for a bug in Microsoft Internet Explorer.
4182
4183 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4184
4185         * lily/instrument-name-engraver.cc (process_music): use
4186         is_markup() iso. is_string()
4187
4188         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4189
4190         * lily/percent-repeat-engraver.cc (process_music): only look at
4191         main_part_ for % repeats.
4192
4193         * lily/stem-tremolo.cc (get_beam_translation): new function.
4194         (calc_slope): new function.
4195         (height): don't use real slope.
4196
4197 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4198
4199         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4200         new connect-to-neighbor, control-points and staff-padding
4201         properties to make ligature brackets showing up again.
4202
4203 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4204
4205         * VERSION: release 2.7.33
4206
4207         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4208         too many.
4209
4210         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4211         remove applyOutput example.
4212         (Objects connected to the input): document \tweak, \parenthesize
4213
4214         * lily/relocate.cc (prefix_relocation): allow "current"
4215         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4216         changing VERSION in a lily tree less painful.
4217
4218         * input/regression/parenthesize.ly: new file. 
4219
4220         * scm/output-lib.scm (parenthesize-element): new function.
4221
4222         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4223
4224         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4225
4226         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4227         cause: accidentals are caused by note heads, not note events. 
4228
4229 2006-02-08  Graham Percival  <gpermus@gmail.com>
4230
4231         * darwin.patch: small patch from Erlend, thanks!
4232
4233         * Documentation/user/basic-notation.itely: add stem-neutral example.
4234
4235         * Documentation/user/putting.itely: clarifications.
4236
4237 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4238
4239         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4240         note, add more guidelines to what should go into NEWS.
4241
4242         * input/sakura-sakura.ly: document how to override font.
4243
4244         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4245
4246 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4247
4248         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4249
4250 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4251
4252         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4253         convertrules.  Add explicit grouping, needed for python2.2.
4254
4255 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4256
4257         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4258
4259 2006-02-07  Graham Percival  <gpermus@gmail.com>
4260
4261         * Documentation/user/global.itely: fix line-width in (text) docs.
4262
4263         * Documentation/user/lilypond-book.itely: same.
4264
4265 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4266
4267         * VERSION (PACKAGE_NAME): release 2.7.32
4268
4269         * Documentation/topdocs/NEWS.tely (Top): document new variable
4270         naming.
4271
4272         * flower/include/array.icc (Message): remove file.
4273
4274         * flower/include/std-vector.hh: make sure vsize and VPOS are
4275         defined for binary_search_bounds().
4276
4277         * flower/std-string.cc (std): add to_string(long unsigned).
4278
4279         * configure.in (gui_b): excise std_string option.
4280         (gui_b): excise std_vector option.
4281
4282         * flower/string.cc (Module): excise flower array & string
4283
4284         * flower/include/std-string.hh: excise flower string.
4285
4286         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4287
4288         * python/convertrules.py (lilypond_version_re_str): require
4289         only numbers and dots in \version string.
4290
4291 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4292
4293         * lily/system-start-delimiter.cc (print): allow style = text too.
4294
4295         * lily/system-start-delimiter-engraver.cc
4296         (acknowledge_system_start_text): new function, also add add to
4297         support of system-start-text (instrument names). This fixes
4298         instrument names on piano staves.
4299
4300         * lily/instrument-name-engraver.cc: rewrite. Use
4301         system-start-delimiter approach. This save memory and cpu.
4302
4303         * scm/define-grobs.scm (all-grob-descriptions): remove
4304         instrument-name from break-alignment.
4305
4306         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4307
4308 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4309
4310         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4311         jobserver going.
4312
4313         * configure.in (std_vector): On by default.
4314
4315         * lily/include/font-metric.hh:
4316         * lily/include/tfm-reader.hh: 
4317         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4318         Update users.
4319
4320         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4321
4322 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4323
4324         * VERSION (PACKAGE_NAME): 2.7.31
4325
4326         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4327         EPS edge at 0, but take minimum with left-overshoot. This fixes
4328         cut off system start delims. 
4329
4330         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4331         hack: add to axis group if not added yet. This fixes hara kiri'd
4332         piano staves.
4333
4334         * lily/hara-kiri-group-spanner.cc
4335         (force_hara_kiri_in_y_parent_callback): fix signatures.
4336
4337         * lily/hairpin.cc (print): check next hairpin to see whether or
4338         not to be continuing.
4339
4340 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4341
4342         * Remove trailing whitespace from makefiles.
4343         
4344         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4345         for earlier gcc.
4346
4347         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4348
4349         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4350
4351         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4352
4353         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4354
4355         * configure.in: Use it.
4356
4357 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4358
4359         * scm/music-functions.scm (pitch-of-note): new function.
4360
4361         * ly/music-functions-init.ly: add \octave and \addquote
4362
4363         * lily/parser.yy (music_function_chord_body): softcode \octave.
4364         (lilypond_header): softcode \addquote
4365
4366 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4367
4368         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4369         array.hh, parray.hh at all.  Getting ready to flip the
4370         configure default.
4371
4372         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4373
4374         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4375         a bit.
4376
4377         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4378
4379 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4380
4381         * flower/include/array.hh: typo. 
4382
4383 2006-02-02  Graham Percival  <gpermus@gmail.com>
4384
4385         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4386
4387 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4388
4389         * flower/include/pqueue.hh: Derive from std::vector.
4390
4391         * flower/include/parray.hh: Conform to std::vector interface.
4392         Update users.
4393
4394 2006-02-02  Graham Percival  <gpermus@gmail.com>
4395
4396         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4397
4398 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4399
4400         * flower/file-path.cc (is_file): remove if 0 section.
4401
4402         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4403         selecting afii61352.
4404
4405 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4406
4407         * flower/include/std-vector.hh (boundary): Oops, reverse.
4408
4409         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4410         remove superfluous `d'.
4411
4412         * flower/include/std-vector.hh (boundary, top): Detach from class.
4413         Remove empty vector shell.
4414
4415         * flower/include/array.hh (reverse, swap): Detach from class.
4416         Update users.
4417         
4418         * flower/include/std-vector.hh
4419         * flower/include/array.hh (concat): Globally change to insert ().
4420
4421         
4422         * flower/include/std-vector.hh
4423         * flower/include/parray.hh
4424         * flower/include/array.hh (elem, elem_ref): Globally replace by
4425         at ().
4426
4427 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4428
4429         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4430
4431         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4432         anticipate on identifier substitutions.
4433
4434 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4435
4436         * flower/include/std-vector.hh (insert): Remove, replace by
4437         std::vector interface.  Update callers.
4438
4439         * flower/include/array.icc (insert): Change signature to
4440         match std::vector interface.
4441         
4442         * flower/include/array.icc (vector_sort): Bugfix.
4443
4444 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4445
4446         * lily/parser.yy (output_def_head_with_mode_switch): new
4447         production. Result: dashes and underscores may be used in the
4448         \paper block.
4449
4450         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4451
4452         * python/convertrules.py (conv): oops. One slash too much.
4453
4454 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4455
4456         * flower/include/std-vector.hh (sort): Remove, replace by
4457         ::vector_sort.  Update callers.
4458
4459         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4460         (sort): Bugfix.
4461
4462         * flower/test-std.cc (vector_sort): New test.
4463
4464 2006-02-01  Graham Percival  <gpermus@gmail.com>
4465
4466         * Documentation/user/putting.itely: fixes from Erik.
4467
4468 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4469
4470         * flower/test-std.cc: Add simple unit test for vector migration.
4471
4472         * stepmake/stepmake/test*: Unit test support.
4473
4474         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4475         update callers.
4476
4477         * flower/include/array.hh (begin, end): Add.
4478         (del, get): Remove.
4479
4480 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4481
4482         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4483         std::string not String. 
4484
4485         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4486         iso UINT_MAX.
4487
4488         * lily/prob.cc (Prob): copy type_ too.
4489
4490         * lily/lily-guile.cc (mangle_cxx_identifier): new
4491         function. Class_bla::foo_bar_[px] ->
4492         ly:class-bla::foo-bar[?!]. Changes throughout
4493
4494 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4495
4496         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4497
4498         * lily/beam.cc (calc_direction): take dir from visible stem in
4499         degenerate case.
4500
4501 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4502
4503         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
4504         Fix -1, >=0 boundary checks for unsigned vsize.
4505
4506         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
4507         loop for unsigned vsize.
4508
4509         * configure.in (--enable-std-vector): New option.
4510         (--enable-std-string): On by default.
4511
4512         * flower/include/std-vector.hh: New file.  Enable switch to
4513         std::vector, update client code.
4514
4515 2006-01-30  Graham Percival  <gpermus@gmail.com>
4516
4517         * scm/document-translation.scm: clarify "this context is also
4518         known as".  Thanks, Werner!
4519
4520         * Documentation/user/putting.itely: small fixes from Don Blaheta.
4521
4522         * Documentation/user/invoking.itely: small fix from Don.
4523
4524 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4525
4526         * scm/lily.scm (define-scheme-options): rename option
4527         preview-include-book-title to book-title-preview
4528         (define-scheme-options): move force-eps-font-include (from paper
4529         block) to eps-font-include -d option.
4530
4531         * VERSION (PATCH_LEVEL): release 2.7.30
4532
4533         * input/bach-schenker.ly (staffPiano): new file.
4534
4535         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
4536
4537         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
4538         credits to Nicolas.
4539
4540         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
4541
4542         * ps/lilyponddefs.ps: remove start-system, stop-system,
4543         start-page fluff. This saves putting { } code on the stack, fixing
4544         stack overflows when including EPS files.
4545
4546 2006-01-29  Graham Percival  <gpermus@gmail.com>
4547
4548         * Documentation/user/putting.itely: minor fixes (comments on -devel).
4549
4550 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4551
4552         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
4553
4554 2006-01-28  Graham Percival  <gpermus@gmail.com>
4555
4556         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
4557
4558 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4559
4560         * input/mutopia/claop.py: Update.
4561
4562 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4563
4564         * input/regression/completion-heads.ly (texidoc): fix.
4565
4566         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
4567
4568         * lily/tie-formatting-problem.cc
4569         (set_ties_config_standard_directions): use abs iso fabs for ints.
4570
4571         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
4572
4573         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
4574         little less than noteheight, to prevent overlaps in chords.
4575
4576         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
4577         head, and fudge stem-attachment.
4578
4579         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
4580
4581         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
4582
4583 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
4584
4585         * lily/main.cc (main): Debugging aid: catch exceptions.
4586
4587         * flower/std-string.cc (to_string): Robustification.  Fixes midi
4588         output with std::string.
4589
4590 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4591
4592         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
4593
4594 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4595
4596         * Fix -DSTRING_UTILS_INLINED.
4597
4598 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4599
4600         * VERSION (PATCH_LEVEL): release 2.7.29
4601
4602         * lily/relocate.cc (setup_paths): mingw uses std string too.
4603
4604         * lily/*.cc: various fixes for substr(ARG).
4605
4606         * lily/sustain-pedal.cc (print): 
4607
4608         * flower/file-name.cc (slashify): use std strings.
4609
4610         * flower/string-convert.cc: remove publib.h
4611
4612         * scm/define-markup-commands.scm (verbatim-file): new markup
4613         command \verbatim-file
4614
4615         * Documentation/topdocs/NEWS.tely: fixup URLs
4616
4617         * input/regression/alignment-vertical-manual-setting.ly (Module):
4618         new file.
4619
4620         * lily/align-interface.cc (align_elements_to_extents): overwrite
4621         translations with numbers in alignment-offsets from left bound
4622
4623         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
4624         (page-translate-systems): new function: take into account Y-offset.
4625
4626         * Documentation/topdocs/NEWS.tely (Top): document new features.
4627
4628         * input/regression/page-layout-manual-position.ly (Module): new
4629         file.
4630
4631 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4632
4633         * flower/file-path.cc (path::parse_path): Oops.
4634
4635         * Finish std::string interface.  For now, use std:: marker
4636         throughout for easy s/r.
4637
4638 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4639
4640         * Documentation/user/putting.itely (Score is a single musical
4641         expression): typo.
4642         (Score is a single musical expression): more typos.
4643
4644         * scm/page.scm (annotate-space-left): thinko.
4645         (annotate-page): more thinkos.
4646
4647 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4648
4649         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
4650         for different \score blocks separately.
4651         (post-process-pages): put write-page-layout into paper block.
4652
4653         * lily/output-def.cc (get_parser): new file.
4654
4655         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
4656         file.
4657
4658         * lily/include/output-def.hh (class Output_def): add parser_ member.
4659
4660         * input/regression/page-layout-twopass.ly (Module): new file.
4661
4662         * scm/lily.scm: remove cpp hack.
4663
4664         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
4665
4666 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4667
4668         * GNUmakefile.in (c-clean): New target.
4669
4670         * flower/include/std-string.hh: String/std::string compatibility:
4671         Use NPOS for `not found' (iso -1), use ssize for length () and pos
4672         type.
4673
4674         * flower/rational.cc: 
4675         * flower/include/rational.hh: 
4676
4677         * flower/offset.cc: 
4678         * flower/include/offset.hh: 
4679
4680         * flower/interval.cc: 
4681         * flower/include/interval.hh: 
4682
4683         * flower/string-convert.cc: 
4684         * flower/include/string-convert.hh: Use std::string [interface].
4685         Update callers.
4686
4687 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
4688
4689         * Documentation/index.html.in: clean up.
4690
4691 2006-01-25  Graham Percival  <gpermus@gmail.com>
4692
4693         * Documentation/user/putting.itely: another new untested doc section.
4694
4695 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4696
4697         * scm/layout-page-layout.scm (write-page-breaks): write
4698         \spacingTweaks #ALIST. Handle grace timing.
4699
4700         * scm/: more imports.
4701
4702         * scm/page.scm (make-page): add footer/header.
4703         (annotate-space-left): revise: only take page argument.
4704         (layout->page-init): new function.
4705
4706         * scm/layout-page-layout.scm (write-page-breaks): preliminary
4707         version of the system/spacing/linebreak hack writing to the output
4708
4709         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
4710         ly:make-prob.
4711
4712         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
4713         ly:spanner-bound
4714
4715 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4716
4717         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
4718
4719         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
4720
4721         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
4722         handling to page.scm
4723
4724         * lily/prob-scheme.cc (LY_DEFINE): new file.
4725         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
4726
4727         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
4728         prob functions.
4729
4730         * lily/music.cc (derived_mark): derive Music from Prob.
4731
4732         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
4733
4734         * lily/prob.cc (Module): Implement Prob (Property Object), object
4735         with shared and r/w property alists.  
4736
4737         * lily/include/prob.hh (Module): new file. Declare Prob.
4738
4739         * flower/string.cc: remove is_empty().
4740
4741         * flower/include/string.hh (class String): remove String:: qualifier.
4742
4743         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
4744         substitute appropriate functions.
4745
4746         * flower/include/string.hh (class String): remove to_str0 and
4747         is_empty(). S&R everywhere.
4748
4749 2006-01-23  Graham Percival  <gpermus@gmail.com>
4750
4751         * Documentation/user/basic-notation.itely: add hairpin
4752         after-linebreak tweak to commonprop.
4753
4754         * Documentation/user/putting.itely: added two new sections.
4755
4756 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4757
4758         * flower/international.cc: 
4759         * flower/include/international.hh: 
4760
4761         * flower/getopt-long.cc: 
4762         * flower/include/getopt-long.hh: Use std::string [interface].
4763         Update callers.
4764
4765         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
4766
4767         * stepmake/stepmake/executable-rules.make: Add dependency on
4768         module libraries.
4769
4770 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
4771
4772         * flower/file-path.cc: 
4773         * flower/include/file-path.hh: Use std::string [interface].
4774         Update callers.
4775
4776         * flower/direction.cc: 
4777         * flower/axis.cc: Unused.  Remove.
4778
4779         * configure.in (--enable-std-string): New option.
4780
4781         * flower/std-string.cc: 
4782         * flower/include/std-string.hh: New file.
4783
4784         * flower/file-name.cc[STD_STRING]:
4785         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
4786
4787 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4788
4789         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
4790
4791         * scm/define-markup-commands.scm (with-dimensions):
4792         with-dimensions markup command.
4793
4794         * input/test/font-table.ly: use it.
4795
4796         * lily/open-type-font.cc (glyph_list): new function.
4797
4798         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
4799
4800         * lily/ttf.cc: remove ly:font-glyph-list scheme function
4801
4802 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4803
4804         * ly/music-functions-init.ly (parallelMusic): new music function
4805         for parallel music entry.
4806
4807         * scm/define-music-properties.scm (all-music-properties): new
4808         'void music property
4809
4810         * scm/music-functions.scm (ly:music-message): make public, to be
4811         used in music function definitions
4812
4813         * scm/lily-library.scm (collect-music-for-book): discard music
4814         when the 'void property is set.
4815
4816 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4817
4818         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
4819
4820         * mf/GNUmakefile: idem.
4821
4822         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
4823
4824         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
4825
4826         * Documentation/user/notation-appendices.itely (The Feta font):
4827         use it.
4828
4829         * input/test/font-table.ly: new file. Generate font table within lily.
4830
4831         * Documentation/user/notation-appendices.itely (The Feta font):
4832         use new font-table.ly file. 
4833
4834         * stepmake/stepmake/install-out-targets.make
4835         (local-install-outfiles): only create directory if
4836         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
4837
4838 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4839
4840         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
4841
4842         * VERSION (PACKAGE_NAME): release 2.7.28
4843
4844         * scm/framework-ps.scm (write-preamble): use it to pick exactly
4845         the right font from a Mac dfont.
4846         (write-preamble): don't forget directory, only look at files.
4847
4848         This fixes problems with TTF files in dfonts that don't match
4849         their PostScript names.
4850          
4851         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
4852         PS name from TTF font.
4853
4854         * input/regression/tie-manual.ly: document new feature.
4855
4856         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
4857
4858         * VERSION (MY_PATCH_LEVEL): bump to .28
4859
4860         * Documentation/user/basic-notation.itely (Ties): add tie examples
4861         refs.
4862
4863         * lily/tie-formatting-problem.cc (score_ties_configuration):
4864         symmetry penalties for outer ties.
4865
4866 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4867
4868         * lily/tie-formatting-problem.cc (generate_configuration) 
4869         (set_manual_tie_configuration): skip non-pair manual
4870         tie-configuration, so you can set individual ties as
4871
4872           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
4873
4874         * input/regression/tie-chord.ly: use generateTiePattern to
4875         simplify file.
4876
4877         * lily/tie-formatting-problem.cc (peak_around): new function.
4878         (score_configuration): use sliding criterion for staff line collisions. 
4879         (score_configuration): idem for dot collisions.
4880         (generate_configuration): use separate stem_gap for gap to stem.
4881
4882         * lily/include/tie-formatting-problem.hh (struct Tie_details):
4883         separate penalty factors for x and y distance.
4884         (struct Tie_details): separate penalties for tip and center line collisions.
4885
4886 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
4887
4888         * lily/tie-formatting-problem.cc (generate_configuration): make
4889         large ties avoid stafflines in the horizontal section.
4890         (score_configuration): use softcoded penalties
4891         (score_aptitude): idem.
4892
4893         * lily/tie-helper.cc (from_grob): softcode tie details
4894
4895         * lily/staff-symbol-referencer.cc (on_staff_line): new function
4896
4897         * lily/staff-symbol-referencer.cc (on_line): rename from
4898         on_staffline 
4899
4900 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4901
4902         * ly/music-functions-init.ly: remove duplicate tag.
4903
4904         * lily/include/*.hh: GCC 4.1 fixes.
4905
4906 006-01-16  Erlend Aasland  <erlenda@gmail.com>
4907
4908         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
4909
4910         * scm/define-music-types.scm: fix bug in desc. string
4911         for OverrideProperty
4912
4913 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
4914
4915         * scripts/lilypond-book.py: bugfix
4916
4917         * scm/define-music-types.scm: fix typos.
4918
4919 2006-01-14  Graham Percival  <gpermus@gmail.com>
4920
4921         * Documentation/user/ basic-notation.itely, global.itely,
4922         advanced-notation.itely, instrument-notation.itely: small
4923         additions (bugs and commonly tweaked properties).
4924
4925 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4926
4927         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
4928         detection of mingw build.
4929         (MINGW_BUILD): opps.
4930
4931 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4932
4933         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
4934         i686-mingw32.
4935
4936 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4937
4938         * scm/music-functions.scm (skip->rest): add skip->rest
4939
4940 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4941
4942         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
4943         explicitly.
4944
4945         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
4946         config dirs. Aids debugging. 
4947         (display_config): also display config files.
4948
4949 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4950
4951         * VERSION: release 2.7.27
4952
4953         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
4954         for determining bar size.
4955
4956         * lily/staff-symbol.cc (print): place lines at distance line-positions
4957
4958         * scm/define-grob-properties.scm (all-user-grob-properties): add
4959         line-positions.
4960
4961         * lily/staff-symbol.cc (height): new function.
4962
4963         * input/regression/staff-line-positions.ly:  new file.
4964
4965 2006-01-06  Graham Percival  <gpermus@gmail.com>
4966
4967         * input/test/add-staccato.ly: remove reference to old file.
4968
4969 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4970
4971         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
4972         lilypond binary too.
4973
4974 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4975
4976         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
4977
4978 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4979
4980         * scripts/midi2ly.py: Bugfix: Declare datadir.
4981
4982         * make/ly-rules.make:
4983         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
4984         that seems to be gone). Fixes make web.
4985
4986         * The grand 2005-2006 replace.
4987
4988         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
4989
4990 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4991
4992         * make/lilypond-vars.make: set LILYPOND_BINARY variable
4993         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
4994         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
4995         like -dgs-font-load.
4996
4997         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
4998         remove absolute path to lilypond binary.
4999         
5000 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5001
5002         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5003
5004 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5005
5006         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5007
5008         * mf/GNUmakefile: remove broken dvips map symlink.
5009
5010 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5011
5012         * lily/main.cc: 
5013         * configure.in: Cosmetic fixes.
5014
5015 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5016
5017         * Documentation/user/music-glossary.tely (Pitch names): Added
5018         Spanish pitch names and durations, thanks to Ernesto Gancedo
5019
5020 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5021
5022         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5023         init. Fixes verbose printing of .scm files.
5024
5025         * stepmake/aclocal.m4: add spaces before - options.
5026         
5027 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5028
5029         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5030         of path search in local block variable.
5031
5032 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5033
5034         * configure.in (NCSB_DIR): --enable-ncsb-dir
5035         (LINK_GXX_STATICALLY): denko.
5036
5037         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5038
5039         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5040         use locate to find c059033l.pfb. 
5041         
5042 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5043
5044         * lily/tie-formatting-problem.cc
5045         (problem::generate_base_chord_configuration): Use my_round (was
5046         round).
5047
5048         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5049         do not invoke mbrtowc.
5050
5051         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5052
5053 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5054
5055         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5056
5057 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5058
5059         * Documentation/user/invoking.itely (svg): revise.
5060
5061 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5062
5063         * lily/lexer.ll: use sourcefilename iso. renameinput.
5064
5065 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5066
5067         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5068         <PostScriptName>.ttf instead of c059XXXttf.
5069
5070         * lily/program-option.cc (LY_DEFINE): special support for
5071         --verbose, so it works before option init too.
5072  
5073         * mf/GNUmakefile (local-install): oops.
5074
5075         * lily/lyric-hyphen.cc (print): oops.
5076
5077         * buildscripts/pfx2ttf.fontforge: new file.
5078         
5079         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5080         ($(outdir)/%.ttf): new rule. 
5081
5082         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5083         to LyricHyphen.
5084
5085         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5086         font-size
5087
5088 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5089
5090         * VERSION: release 2.7.26
5091         
5092         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5093
5094 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5095
5096         * lily/font-config.cc (init_fontconfig): verbosity.
5097
5098         * THANKS: add Muziekacademie Lede. 
5099
5100         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5101         (print_score_setup): new function
5102         (convert): read part definition to output staves properly.
5103
5104         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5105         Music_xml notes.
5106
5107         * python/musicexp.py (Output_printer.__init__): use _ in data
5108         members.
5109         (Output_printer.unformatted_output): new function: no formatting,
5110         but count braces.
5111         (Duration.get_length): remove isinstance() checks for
5112         Output_printer everywhere.
5113
5114         * input/regression/lyrics-bar.ly (texidoc): add
5115         Separating_line_group_engraver.
5116
5117 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5118
5119         * lily/relocate.cc (framework_relocation): New function,
5120         factored from set_relocation ().
5121         (prefix_relocation): Rename from set_relocation ().
5122         (setup_paths): Use it.
5123
5124 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5125
5126         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5127         numbers. Patch by Erlend Aasland.
5128
5129 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5130
5131         * lily/font-config.cc (init_fontconfig): print warning if cache
5132         file is not existant.
5133
5134         * lily/main.cc: don't use #ifdef but #if
5135
5136 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5137
5138         * lily/grob-property.cc (internal_set_property): don't abort on
5139         calculation-in-progress.
5140
5141         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5142
5143         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5144         connect-to-neighbor property not connect-to-other
5145
5146         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5147         (LY_DEFINE): oops. don't forget protection.
5148
5149         * flower/parse-afm.cc (Module): strip AFM handling completely.
5150
5151         * lily/stencil-expression.cc: idem.
5152
5153         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5154
5155         * lily/function-documentation.cc (ly_add_function_documentation):
5156         use static member iso. Protected_scm
5157
5158         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5159
5160         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5161
5162 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5163
5164         * lily/relocate.cc (set_env_dir): New function.
5165         (set_relocation): Use it to fix setting PANGO_PREFIX.
5166
5167 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5168
5169         * input/regression/stem-direction-context.ly: remove rest.
5170
5171         * lily/melody-engraver.cc (process_music): restart for bar lines.
5172         (acknowledge_slur): restart for slurs.
5173
5174 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5175
5176         * Documentation/user/invoking.itely: describe how to view SVG 
5177         output using Inkscape which replace embedded fonts with OTF fonts.
5178
5179 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5180
5181         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5182
5183 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5184
5185         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5186         comment.
5187
5188 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5189
5190         * VERSION (PACKAGE_NAME): release 2.7.25
5191
5192         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5193
5194         * input/regression/stem-direction-context.ly: new file.
5195
5196         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5197
5198         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5199         on rest.
5200
5201         * ly/engraver-init.ly: add Melody_engraver
5202
5203         * lily/beam.cc (calc_direction): use default-direction
5204         iso. get_default_direction()
5205
5206         * scm/define-grob-properties.scm (all-user-grob-properties): add
5207         default-direction property.
5208
5209         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5210
5211         * lily/stem.cc (calc_default_direction): remove
5212         Stem::get_default_direction, use default-direction with callback
5213         instead.
5214
5215         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5216
5217         * lily/melody-engraver.cc: new file. Acknowledge stems for
5218         interpolated stem directions. 
5219
5220         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5221
5222         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5223
5224         * lily/slur-configuration.cc (fit_factor): more robust check for
5225         point in curve X-extent.
5226
5227         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5228         (outside_slur_callback): check for 'outside avoidance.
5229
5230         * lily/slur-configuration.cc (score_extra_encompass): don't use
5231         bound->column() == avoid->column() for checking extents, as this
5232         doesn't work for accidentals. 
5233
5234         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5235         DynamicText hardcoding.
5236
5237         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5238         crash if bound stem is NULL
5239
5240         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5241         pedals.
5242
5243 2005-12-22  Graham Percival  <gpermus@gmail.com>
5244
5245         * scm/define-markup-commands.scm: typo.  @code{\raise}
5246         => @code{\\raise}.
5247
5248         * darwin.patch: now used again, includes a
5249         required patch from fink.
5250
5251 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5252
5253         * po/TODO: mention gtranslator along with kbabel.
5254         * po/fi.po: update translations.
5255
5256 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5257
5258         * lily/relocate.cc (setup_paths): Bugfix.
5259
5260 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5261
5262         * lily/slur-configuration.cc (score_extra_encompass): don't use
5263         "avoid" choice for avoid-slur.
5264
5265         * stepmake/bin/install.py (dest): don't create existing dir.
5266
5267 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5268
5269         * stepmake/bin/install.py: Remove file before copying.
5270
5271         * config.make.in: 
5272         * stepmake/aclocal.m4: Do not substitute INSTALL.
5273
5274 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5275
5276         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5277         depend on link-tree.
5278
5279         * lily/relocate.cc (setup_paths): only check path for non-absolute
5280         dir without directory part.
5281
5282         * flower/file-name.cc (is_absolute):  new method.
5283         (is_absolute): check root_ too.
5284
5285 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5286
5287         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5288         relocation code.  Oops, don't comment out too much.
5289
5290         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5291         iso itself.
5292
5293         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5294         compile.
5295
5296 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5297
5298         * .cvsignore: Add install-sh.
5299
5300         * autogen.sh (srcdir): Typo.
5301
5302 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5303
5304         * autogen.sh (srcdir): urg. Touch install-sh.
5305
5306         * stepmake/bin/install-sh (Module): remove.
5307
5308         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5309
5310         * lily/include/relocate.hh: new file.
5311
5312         * lily/relocate.cc: new file. Contain relocation logic.
5313
5314         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5315         (main): read LILYPOND_VERBOSE as the first thing.
5316
5317         * stepmake/aclocal.m4: remove INSTALL variable.
5318
5319         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5320         separate target for making font symlinks.
5321         (documentation-dir): use $(if $(findstring )) for switching off
5322         Documentation.
5323
5324         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5325         something if DOCUMENTATION is no.
5326
5327 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5328
5329         * VERSION: release 2.7.24
5330
5331         * lily/script-column-engraver.cc (stop_translation_timestep):
5332         delay adding to script-column.
5333
5334         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5335
5336         * python/convertrules.py (conv): rule for number-visibility
5337
5338         * lily/slur-configuration.cc (score_extra_encompass): different
5339         distance measure for avoid and inside avoidance.
5340         (score_extra_encompass): use 1/(distance+eps) as penalty.
5341
5342         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5343         encompass objects for generating slur curves.
5344
5345         * lily/slur.cc: use details iso. slur-details property.
5346
5347         * input/regression/slur-tuplet.ly: new file.
5348
5349         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5350
5351         * flower/include/offset.hh (class Offset): new operator /=
5352
5353         * lily/tuplet-number.cc (print): new file, new interface.
5354
5355         * scm/define-grob-properties.scm (all-user-grob-properties):
5356         remove number-visibility property.
5357
5358         * lily/tuplet-bracket.cc (calc_control_points): new function
5359         (calc_connect_to_neighbors): new function.
5360         (print): remove text handling for tuplet numberdef.
5361
5362         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5363         TupletNumbers too. 
5364
5365         * lily/lily-guile.cc (robust_scm2booldrul): new function
5366
5367         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5368
5369         * lily/tuplet-bracket.cc (calc_position_and_height): use
5370         staff-padding to control whether tuplet brackets are over staves.
5371
5372         * lily/grob.cc (suicide): clear dim_caches_.
5373
5374         * lily/dimension-cache.cc (clear): new function.
5375
5376         * lily/grob.cc (extent): swap order of min-extent and extent
5377         calculations. This fixes hara kiri staves. 
5378
5379 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5380
5381         * lily/main.cc: Nitpick: relocation is not based on path, but on
5382         directory (location).
5383
5384 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5385
5386         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5387
5388         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5389
5390         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5391
5392         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5393
5394         * stepmake/stepmake/generic-vars.make (Module): idem.
5395
5396         * stepmake/stepmake/executable-targets.make (default): use it.
5397
5398         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5399
5400         * make/GNUmakefile: don't install make rules.
5401
5402         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5403         slashes.
5404         (prepend_env_path): more verbosity.
5405
5406 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5407
5408         * GNUmakefile.in: add dir argument for find command.
5409
5410         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5411         fixes weird line numbers for point & click.
5412
5413         * lily/source-file.cc (get_counts): init line/column/char counts.
5414
5415 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5416
5417         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5418
5419 2005-12-16  Graham Percival  <gpermus@gmail.com>
5420
5421         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5422         minor fixes from Fredric.  Thanks!
5423
5424 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5425
5426         * ly/music-functions-init.ly: add \bar and \clef music function 
5427
5428         * lily/lily-lexer.cc: idem.
5429
5430         * lily/parser.yy (FIXME): remove BAR and CLEF.
5431
5432 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5433
5434         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5435
5436         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5437         function arguments too
5438
5439         * lily/main.cc (set_relocation): new function.
5440
5441         * scripts/musicxml2ly.py (convert): add \version
5442
5443         * lily/tie.cc: remove get_default_attachments()
5444
5445         * VERSION (PACKAGE_NAME): release 2.7.23
5446         
5447         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5448         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5449
5450         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5451
5452         * lily/tie-formatting-problem.cc (score_ties): new function
5453         (get_variations): new function. Try flipping dirs for collisions.
5454         (generate_optimal_chord_configuration): new function. 1-opt search
5455         for better configuration.
5456
5457         * lily/tie-configuration.cc: new file.
5458
5459         * lily/tie.cc: junk Tie::get_configuration()
5460
5461         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5462         (score_ties_configuration): new function.
5463         (generate_ties_configuration): new function.
5464         (generate_base_chord_configuration): new function.
5465         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5466         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5467
5468         * input/regression/tie-dot.ly: new file.
5469
5470         * lily/tie-formatting-problem.cc (score_configuration): score
5471         tie/dot collisions.
5472
5473         * lily/tie-helper.cc (get_transformed_bezier): new function
5474
5475         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5476
5477         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5478         -undefined suppress iso. -framework Python 
5479
5480         * scm/define-grobs.scm (all-grob-descriptions): set
5481         springs-and-rods (thanks Joe Neeman!)
5482
5483 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5484
5485         * input/no-notation/display-lily-tests.ly (test): 
5486         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5487         changed from \tag #'(a b) to \tag #'a \tag #'b
5488
5489 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5490
5491         * Documentation/topdocs/NEWS.tely: strip out-www.
5492
5493         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5494
5495         * config.make.in (AR): add AR and RANLIB
5496
5497         * flower/libc-extension.cc: include cassert
5498
5499         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
5500         darwin check.
5501
5502 2005-12-11  Graham Percival  <gpermus@gmail.com>
5503
5504         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
5505
5506         * stepmake/stepmake/python-modules-vars.make: define
5507         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
5508
5509         * THANKS: added Johannes Schindelin.
5510
5511 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5512
5513         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
5514
5515         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5516         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
5517
5518         * lily/parser.yy: reorganize file layout.
5519
5520         * ly/music-functions-init.ly: add tweak music function.
5521
5522         * lily/grob-info.cc (ultimate_music_cause): new function:
5523         recursively lookup causes. 
5524
5525         * lily/parser.yy (chord_body_element): allow music functions for
5526         post-events, allow music functions for chord elements. 
5527  
5528         * lily/font-config-scheme.cc (display_fontset): add cast.
5529
5530         * python/convertrules.py (FatalConversionError.sub_syms): \tag
5531         #'(a b) -> \tag #'a \tag #'b rule.
5532
5533         * python/musicexp.py (Output_printer.dump_version): new function
5534
5535 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5536
5537         * lily/parser.yy (FIXME): remove \tag
5538         (FIXME): remove tag_music() function.
5539
5540         * lily/lily-lexer.cc: remove \tag
5541
5542         * ly/music-functions-init.ly: define music-function "tag"
5543
5544         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
5545
5546 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5547
5548         * VERSION (PATCH_LEVEL): release 2.7.22
5549
5550         * input/regression/lyric-hyphen-retain.ly: renew.
5551
5552         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
5553         grob
5554
5555         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
5556         iso. minimum-length property for rods.
5557
5558         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
5559         LyricSpace item to keep lyrics spaced apart.
5560
5561         * ly/engraver-init.ly: remove Separating_line_group_engraver
5562
5563         * Documentation/user/music-glossary.tely: do setfilename before
5564         music-glossary.
5565
5566 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
5567
5568         * Documentation/user/lilypond-book.itely: use `,´ after xref:
5569         See xref documentation, for example.
5570
5571 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5572
5573         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
5574         pending_skip iso. ly_voice[-1]
5575         (main): add if __main__ for debugging.
5576
5577         * python/musicxml.py (Accidental.__init__): new class.
5578
5579         * scripts/musicxml2ly.py (progress): new function
5580         (musicxml_key_to_lily): don't barf on modeless keys.
5581         (create_skip_music): new function.
5582         (musicxml_spanner_to_lily_event): new function. Handle beams too.
5583         (musicxml_note_to_lily_main_event): new function.
5584
5585         * python/musicexp.py (Music.__init__): add comment field.
5586         (NestedMusic.append): new routine.
5587         (SequentialMusic.print_ly): print comment.
5588         (ArpeggioEvent.ly_expression): new class
5589         (BeamEvent.ly_expression): new class
5590         (NoteEvent.__init__): support for cautionary/forced accs.
5591
5592         * lily/lookup.cc (slur): normal order for array loop.
5593
5594         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
5595         to 0.0.
5596
5597         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
5598         collapsed.
5599
5600 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
5601
5602         * scm/music-functions.scm: Make phrasing slurs follow voice direction
5603
5604         * scripts/lilypond-book.py: Introduce option
5605             --preserve-line-breaks, for usage with srcltx
5606
5607 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5608
5609         * scm/output-lib.scm (print-circled-text-callback): draw circle
5610         around text using make-circle-markup.
5611
5612         * Documentation/user/*: strip out-www from file names.
5613
5614 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
5615
5616         * Documentation/user/lilypond.tely (direntry): remove empty lines;
5617         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
5618
5619 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5620
5621         * Documentation/user/GNUmakefile: idem.
5622
5623         * Documentation/user/macros.itexi: strip out-www
5624
5625         * python/rational.py: python 2.3 compat.
5626
5627         * VERSION (PATCH_LEVEL): release 2.7.21
5628
5629         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
5630         option formatting, lilypond style.
5631
5632         * python/musicexp.py: grab from Ikebana: a library for composing
5633         ly music expressions. 
5634         (Output_printer): class for advanced .ly printing.
5635         (eg. tupletting) 
5636
5637         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
5638         convert to pythonesque structure.
5639
5640         * python/rational.py: PD rational number class.
5641
5642         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
5643
5644 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
5645
5646         * lily/part-combine-iterator.cc: Minor bugfix
5647         
5648         * THANKS: Update bughunters
5649
5650 2005-12-02  Werner Lemberg  <wl@gnu.org>
5651
5652         * mf/README: Document process for proper mf2pt1 conversion.
5653
5654         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
5655         overlapping.
5656
5657         * mf/feta-harmonica.mf: Removed.  Unused.
5658
5659 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5660
5661         * scripts/lilypond-book.py (do_file): fix thinkos.
5662
5663 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5664
5665         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
5666         ($(outdir)/parser.cc): 
5667         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
5668
5669 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
5670
5671         * ly/titling-init.ly (tagline): it should be a space between
5672         "Music engraving by LilyPond" and the version number.
5673
5674 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5675
5676         * VERSION (PACKAGE_NAME): release 2.7.20
5677
5678 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5679
5680         * scm/define-markup-commands.scm (pad-to-box): new markup command.
5681
5682         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
5683         1.0.
5684         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
5685
5686 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5687
5688         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
5689
5690         * kpath-guile/: remove directory
5691
5692         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
5693         file. Encapsulate kpathsea using commandline tools.
5694
5695         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
5696         kpathsea) module.
5697
5698 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
5699
5700         * Documentation/user/advanced-notation.itely (Setting automatic
5701         beam behavior): Correct a few typos. Thanks to David Bobroff.
5702
5703         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
5704         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
5705
5706 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5707
5708         * scripts/*.py: gmane address for bugs.
5709
5710 2005-11-28 Pal Benko <benkop@freestart.hu>
5711         
5712         * make/ly-rules.make: add -f switch to mv
5713
5714         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
5715
5716         * lily/bar-line.cc: interpret it
5717
5718 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5719
5720         * configure.in (--disable-documentation): New switch.
5721
5722         * GNUmakefile.in: Use it.
5723
5724         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
5725
5726 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5727
5728         * scripts/lilypond-book.py (do_file): search chunks for
5729         \\begin{document}
5730
5731         * GNUmakefile.in: add copy step in between so we can lose the
5732         out-www directories.
5733
5734 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5735
5736         * lily/pango-font.cc (pango_item_string_stencil): put
5737         geometry.width into glyph-string too.
5738
5739 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5740
5741         * scm/define-music-display-methods.scm (RevertProperty):
5742         (OverrideProperty): Use grob-property-path property, a list of
5743         symbols, instead of grob-property, which used to be a single
5744         symbol.
5745         (BassFigureEvent): a figure can be a plain number, not necessarily a
5746         markup.
5747
5748 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5749
5750         * VERSION: release 2.7.19
5751         
5752         * lily/figured-bass-engraver.cc (process_music): check
5753         figuredBassCenterContinuations first.
5754
5755         * scm/translation-functions.scm (format-bass-figure): make double
5756         sharp larger. 
5757
5758         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
5759         determine X-parent.
5760
5761         * lily/system-start-delimiter-engraver.cc: move from
5762         Nested_system_start_delimiter_engraver, rename
5763         Nested_system_start_delimiter_engraver ->
5764         System_start_delimiter_engraver.
5765
5766         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
5767         bracket type from hierarchy.
5768
5769 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5770
5771         * lily/rest.cc (y_offset_callback): read staff-position.
5772
5773         * scm/define-grob-properties.scm (all-user-grob-properties): don't
5774         mark after-line-breaking-callback as internal.
5775
5776         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
5777
5778 2005-11-25  Werner Lemberg  <wl@gnu.org>
5779
5780         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
5781
5782 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5783
5784         * stepmake/bin/add-html-footer.py (do_file): add google
5785
5786         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
5787         staff if first_start_ is true.
5788
5789 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5790
5791         * scripts/midi2ly.py (split_track): add __repr__ members.
5792         (track_first_item): only return Item if not None. This fixes a
5793         problem when dumping a track that starts with an empty channel.
5794
5795         * python/midi.c: doc module.
5796
5797 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
5798
5799         * Documentation/user/global.itely (Creating MIDI files): Fix
5800         compilation problem.
5801
5802 2005-11-22  Graham Percival  <gpermus@gmail.com>
5803
5804         * Documentation/user/basic-notation.itely: clarify dynamic
5805         padding text.
5806
5807         * Documentation/user/advanced-notation.itely: add unicode
5808         escape control example, whatever that is.  :)
5809
5810         * Documentation/user/global.itely: added "removing dynamics
5811         from MIDI" code.
5812
5813 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5814
5815         * VERSION (PATCH_LEVEL): release 2.7.18
5816
5817         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
5818         System_start_delimiter_engraver by
5819         Nested_system_start_delimiter_engraver.
5820
5821         * lily/nested-system-start-delimiter-engraver.cc (struct
5822         Bracket_nesting_node): new class.
5823         (struct Bracket_nesting_group): new class
5824         (struct Bracket_nesting_staff): new class.
5825         (process_music): create hierarchy of grobs. This allows separate
5826         tuning of different SSDs. 
5827
5828         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
5829         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
5830
5831 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5832
5833         * lily/side-position-interface.cc (aligned_side): multiply
5834         staff_radius by 2.
5835
5836         * lily/script-engraver.cc (make_script_from_event): allow setting
5837         values to '()
5838
5839 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5840
5841         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
5842
5843         * scm/define-grobs.scm (all-grob-descriptions): new grob
5844         NestedSystemStartDelimiter.
5845
5846         * input/regression/system-start-heavy-bar.ly: new file.
5847
5848         * lily/nested-system-start-delimiter-engraver.cc: new file.
5849
5850         * lily/nested-system-start-delimiter.cc: new file.
5851
5852         * input/regression/system-start-nesting.ly: new file.
5853
5854         * scm/define-grobs.scm (all-grob-descriptions): use X side
5855         positioning for positioning braces for nested contexts.
5856
5857         * lily/system-start-delimiter.cc (print): don't divide extent by
5858         staff_space.
5859         (print): use style iso. glyph.
5860         (staff_bracket): translate glyph inside routine already.
5861
5862 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
5863
5864         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
5865         names.
5866
5867 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5868
5869         * scm/define-context-properties.scm
5870         (all-user-translation-properties): rename figuredBassFormatter
5871         from newFiguredBassFormatter.
5872
5873         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
5874
5875         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
5876
5877         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
5878
5879         * lily/beam.cc (calc_beaming): new function.
5880         (calc_shorten): new function.
5881
5882         * THANKS: add Edward Neeman.
5883
5884         * input/regression/accidental-clef-change.ly: new file.
5885
5886         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
5887
5888         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
5889
5890         * lily/clef-engraver.cc (inspect_clef_properties): reset
5891         localKeySignature for clef changes.
5892
5893 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
5894
5895         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
5896         add dummy definition that works in Linux and add information in
5897         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
5898
5899         * Documentation/user/changing-defaults.itely (Modifying context
5900         plug-ins): Add index for \with.
5901
5902         * Documentation/user/music-glossary.tely (dal segno): Updated
5903         example to version >=2.6.
5904
5905 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
5906
5907         * Documentation/user/instrument-notation.itely (Printing chord
5908         names): Reorder \chordmode and \repeat in one example.
5909
5910 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5911
5912         * VERSION: release 2.7.17
5913         
5914         * Documentation/topdocs/NEWS.tely (Top): add note about
5915         refactoring.
5916
5917         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
5918         new function. Search region of 3 positions for best tie.
5919         (score_configuration): new function.
5920         (score_aptitude): new function.
5921         (generate_configuration): new function.
5922         (get_configuration): new function.
5923         (Tie_formatting_problem): new function
5924
5925         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
5926
5927         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
5928
5929         * THANKS: add Eduardo Vieira & Ralph Little
5930
5931         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
5932         narrower.
5933
5934         * lily/include/tie-formatting-problem.hh (class
5935         Tie_formatting_problem): add Tie_details to
5936         Tie_formatting_problem. Update calling conventions.
5937
5938         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
5939         config.make.
5940
5941         * Documentation/user/lilypond.tely: remove musedata2ly entry.
5942
5943 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
5944
5945         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
5946         scm/define-context-properties.scm: Maintenance bugfix: make
5947         ligature brackets work again by removing obsolete ligature
5948         primitive callback push/pop.
5949
5950         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
5951         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
5952         value.
5953
5954 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5955
5956         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
5957         used and do not call it a path.
5958         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
5959
5960 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5961
5962         * lily/include/tie-formatting-problem.hh (class
5963         Tie_formatting_problem): new file.
5964
5965         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
5966
5967         * Documentation/misc/ChangeLog-2.3:  new file.
5968
5969         * lily/audio-staff.cc (output): degarianize.
5970
5971 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5972
5973         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
5974         Unset PYTHONOPTIMIZE.  Fixes install if set.
5975
5976 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5977
5978         * python/convertrules.py (conv): add warning about drums. 
5979
5980         * make/stepmake.make: include toplevel-version.make after config.make.
5981
5982         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
5983         also allow python2.4
5984
5985         * config.make.in (configure-srcdir): remove GXX GCC vars.
5986
5987         * stepmake/aclocal.m4: don't do non-srcdir build with
5988         symlinks. Use inclusion, so the src directory name can be changed.
5989
5990 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5991
5992         * make/mutopia-vars.make:
5993         * make/ly-vars.make: Use src-wildcard iso wildcard for source
5994         files.
5995
5996 2005-11-13  Werner Lemberg  <wl@gnu.org>
5997
5998         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
5999         but the affected path.  This ensures that the (overlapping) outlines
6000         have the same direction, which is a necessary prerequisite for
6001         FontForge's algorithm to remove overlaps.
6002         Formatting.
6003
6004         * mf/feta-haak.mf: Formatting.
6005         (draw_bracket): Slightly modify outline to avoid an unnecessary
6006         corner.
6007         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6008         them from the affected paths.
6009
6010 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6011
6012         * mf/README: remove xpm / accordion notes.
6013
6014         * lily/tie-column-format.cc (set_chord_outline): add dots into
6015         skyline extents. This fixes tie formatting if the left head has dots.
6016
6017         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6018         space inside the staff.
6019         (get_configuration): shift another position if necessary in case
6020         of left head tie  
6021
6022 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6023
6024         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6025         buildscript-dir iso. $(depth)/buildscripts.
6026
6027         * tex/GNUmakefile (local-uninstall): remove
6028         music-drawing-routines.ps juggling.
6029
6030         * stepmake/stepmake/install-targets.make (local-install-files):
6031         prepend src-dir to install targets.
6032
6033         * lily/system-start-delimiter-engraver.cc
6034         (acknowledge_system_start_delimiter): use
6035         add_offset_callback(). This fixes translation of nested
6036         staffgroups.
6037
6038         * lily/grob-closure.cc (add_offset_callback): only encaps in
6039         simple_closure if it's a procedure.
6040         
6041         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6042         from bar-line.
6043
6044         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6045         remove-empty where pertinent.
6046
6047 2005-11-12  Graham Percival  <gpermus@gmail.com>
6048
6049         * Documentation/user/instrument-notation.itely: added
6050         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6051
6052 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6053
6054         * lily/GNUmakefile
6055         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6056         make picture in builddir, not srcdir.
6057
6058 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6059
6060         * VERSION: release 2.7.16
6061         
6062         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6063         shell arguments. 
6064
6065 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6066
6067         * Documentation/user/examples.itely (Piano templates): Minor
6068         modification to the Piano centered lyrics example.
6069
6070 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6071
6072         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6073         $BROWSER.
6074
6075         * Documentation/user/point-and-click.itely: simplify p&c
6076         instruction: don't configure firefox. Put lilypond-invoke-editor
6077         in front of the browser.
6078
6079         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6080         (run-browser): new function.
6081
6082         * lily/parser.yy (Lily_lexer): recognize Book
6083
6084         * lily/book.cc (clone): new function
6085
6086         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6087
6088 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6089
6090         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6091         Maintenance bugfix: reduce number of font related warnings by
6092         updating naming conventions for glyph-name.
6093
6094 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6095
6096         * scm/define-grobs.scm (all-grob-descriptions): add
6097         rhythmic-grob-interface to TabNoteHead.
6098
6099         * scm/layout-beam.scm (check-quant-callbacks): remove
6100         set_stem_lengths()
6101
6102 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6103
6104         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6105         alignment of centered divisiones.
6106
6107         * scm/scripts.scm (articulations): Maintenance bugfix:
6108         follow-into-staff -> quantize-position.
6109
6110         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6111         plica head in porrectus deminutus.
6112
6113 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6114
6115         * make/lilypond.fedora.spec.in (Group): add %clean section.
6116
6117         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6118         less then 1/5th of total length.  
6119         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6120
6121         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6122         events into EventChord. This fixes textspanners on mm rests. Fixes
6123         spanner-rest.ly
6124
6125         * lily/side-position-interface.cc (get_axis): read side-axis
6126         (set_axis): set side-axis.
6127
6128         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6129         properties everywhere.
6130
6131         * lily/spacing-spanner.cc (breakable_column_spacing): add
6132         average-spacing-wishes. Take maximum if not set.
6133         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6134
6135         * scm/define-grobs.scm (all-grob-descriptions): add
6136         average-spacing-wishes.
6137
6138         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6139         offset callbacks. This fixes alignment for Fingering objects.
6140
6141         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6142         space for key - timesig combination. 
6143
6144         * input/regression/script-stem-tremolo.ly (Module): new file.
6145
6146         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6147         to key sig.
6148
6149         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6150         Fixes: c-tremolo-script.ly.
6151         
6152         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6153
6154         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6155         
6156         * scm/define-grobs.scm (all-grob-descriptions): remove
6157         self-X-offset. Fixes alignment of octavate-8.
6158
6159         * scripts/lilypond-book.py (datadir): look in
6160         LILYPONDPREFIX/share/lilypond/current/
6161
6162         * GNUmakefile.in: symlink current to <VERSION>. 
6163
6164 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6165
6166         * lily/main.cc: eps listed as a backend.
6167
6168 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6169
6170         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6171
6172 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6173
6174         * lily/include/score.hh (class Score): remove texts_ member.
6175
6176         * lily/beam.cc (set_stem_lengths): force direction callback.
6177         (print): read quantized-positions, so we can force
6178         Beam::set_stem_lengths to occur.
6179         (rest_collision_callback): use common X parent. 
6180
6181 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6182
6183         * flower/file-path.cc (find): Bugfix: Return name of file found.
6184
6185         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6186         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6187         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6188
6189 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6190
6191         * flower/offset.cc: idem.
6192
6193         * mf/*.mf: update email address.
6194
6195         * lily/font-config-scheme.cc:  new file.
6196
6197         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6198
6199         * lily/*:  cs.uu.nl -> xs4all.nl
6200
6201         * VERSION (PATCH_LEVEL): release 2.7.15
6202
6203         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6204         spec files.
6205
6206         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6207
6208 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6209
6210         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6211
6212         * lily/staff-performer.cc (process_music): add audio
6213         elements. This makes MIDI instrument changes work once again.
6214
6215         * lily/main.cc (LY_DEFINE): add gmane address.
6216
6217         * lily/beam.cc: remove calc_positions()
6218
6219         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6220         original_ in private scope.
6221         (class Grob): drop pscore_ pointer, change to output_def pointer.
6222         (class Grob): cleanup class definition.
6223
6224         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6225
6226 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6227
6228         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6229         absolute.  Better diagnostics.
6230
6231         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6232         This makes lilypond run from the build directory using argv0
6233         relocation (without any --prefix or LILYPONDPREFIX setting).
6234
6235 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6236
6237         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6238
6239         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6240         with simple-closure.
6241
6242         * lily/self-aligment-interface.cc (set_align_self): new function
6243         (set_center_parent): new function.
6244
6245         * lily/side-position-interface.cc (set_axis): new function.
6246
6247         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6248         generic code. 
6249
6250         * scm/define-grob-properties.scm (all-user-grob-properties):
6251         remove [XY]-offset-callbacks add [YX]-offset
6252         
6253 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6254
6255         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6256         entry for time signatures after breathing signs. Bug report by
6257         Scott Russell.
6258
6259 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6260
6261         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6262         not absolute, make it absolute using PATH.
6263
6264 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6265
6266         * python/midi.c (initmidi): Fix type for mingw.
6267
6268 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6269
6270         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6271
6272         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6273         cross compiling.
6274
6275         * stepmake/aclocal.m4: Support python cross compiling.
6276
6277         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6278         Add mingw section.
6279
6280 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6281
6282         * scm/output-lib.scm (chain-grob-member-functions): replace
6283         chained-callback.cc
6284
6285         * lily/chained-callback.cc (Module): remove file.
6286
6287         * lily/rest-collision.cc (force_shift_callback_rest): change to
6288         chained callback.
6289
6290         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6291
6292         * lily/grob.cc (y_parent_positioning): remove axis argument from
6293         parent_positioning callbacks.
6294         (Grob): junk init code
6295         (get_offset): use generic property callbacks for
6296         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6297         (axis_parent_positioning): new function
6298         (axis_offset_symbol): new function
6299         (chain_offset_callback): new function
6300         (add_offset_callback): new function
6301
6302         * lily/beam.cc (rest_collision_callback): change signature; this
6303         is now a chained callback.
6304
6305         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6306         callback administration.
6307
6308         * lily/simple-closure.cc: new file. Smob type that allows "grob
6309         member functions",
6310
6311             (ly:make-simple-closure FUNC A B)
6312
6313         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6314         in various ways.
6315
6316         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6317         callbacks.
6318
6319         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6320
6321         * lily/rest.cc (polyphonic_offset_callback): remove.
6322
6323         * lily/script-engraver.cc (try_music): remove bool* argument.
6324
6325         * scm/script.scm (default-script-alist): set quantize-position
6326         appropriately.
6327
6328         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6329
6330         * lily/side-position-interface.cc (aligned_side): move staff
6331         position quantization from
6332         Side_position_interface::quantised_position().
6333         (quantised_position): remove
6334         
6335 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6336
6337         * input/regression/beam-quant-standard.ly: reindent, set
6338         debug-beam-quanting to #t.
6339
6340         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6341         10000 if this is a "hard" concave beam.
6342
6343         * lily/beam.cc (calc_least_squares_positions): change from
6344         calc_least_squares_dy
6345         (set_stem_lengths): this is now a chained callback.
6346
6347         * lily/context-property.cc (execute_general_pushpop_property):
6348         bugfix override with procedure should have effect.
6349
6350         * scm/define-grob-properties.scm (all-internal-grob-properties):
6351         remove position-callbacks.
6352
6353         * scm/define-grobs.scm (all-grob-descriptions): use
6354         ly:make-callback-chain for positions property.
6355
6356         * scm/layout-beam.scm (check-quant-callbacks): return list of
6357         chained callbacks.
6358
6359         * scm/lily.scm (type-p-name-alist): add callback-chain
6360
6361         * lily/lily-guile.cc (type_check_assignment): type check failure
6362         is warning not message.
6363
6364         * lily/grob-property.cc (try_callback): walk callback chain if
6365         appropriate.
6366
6367         * lily/chained-callback.cc: new file. new smob type.
6368
6369         * lily/lily-guile.cc (procedure_arity): new function.
6370
6371 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6372
6373         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6374
6375 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6376  
6377         * Documentation/user/instrument-notation.itely (Figured bass):
6378         describe new features
6379
6380 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6381
6382         * lily/beam.cc (calc_least_squares_dy): use property callback.
6383
6384         * lily/beam-concave.cc (calc_concaveness): use property callback.
6385
6386         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6387
6388 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6389
6390         * HACKING: Update.
6391
6392 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6393
6394         * scm/layout-page-layout.scm (page-headfoot): annotate
6395         pagetopspace too.
6396
6397         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6398
6399         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6400         doesn't take y-space.
6401
6402         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6403
6404 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6405
6406         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6407         src-wildcard, remove $(wildcard).
6408
6409         * po/GNUmakefile (PO_FILES): 
6410         * ps/GNUmakefile (PS_FILES): 
6411         * tex/GNUmakefile (TEX_FILES): 
6412         * cygwin/GNUmakefile (POSTINSTALLS):
6413         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6414         some wildcard calls.
6415
6416 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6417
6418         * THANKS: add Thomas Bushnell.
6419
6420 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6421
6422         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6423         (lilypond-main): Redirect to gui-main if 'gui is set.
6424
6425         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6426         for alternative installations kludging s/share/lib/g
6427         LILYPONDPREFIX. 
6428
6429         * SConstruct (libdir_package_version): Define.
6430
6431         * python/SConscript: 
6432         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6433         module in libdir.  
6434
6435 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6436
6437         * lily/main.cc: clarify --safe.
6438
6439 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6440
6441         * VERSION: release 2.7.14
6442         
6443         * Documentation/user/*.itely: remove minimumVerticalExtent.
6444
6445         * scm/define-grobs.scm (all-grob-descriptions): remove
6446         RemoveEmptyVerticalGroup
6447
6448         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6449
6450         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6451         compile on MOSX
6452
6453         * python/convertrules.py (conv): add rules.
6454
6455         * lily/grob.cc: remove is_empty()
6456
6457         * lily/grob-property.cc: remove add_to_list_property().
6458
6459         * scripts/convert-ly.py (datadir): add prefix switching hack to
6460         .py too.
6461
6462         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6463         space-function tweak.
6464
6465         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6466
6467         * scm/define-grob-properties.scm (all-user-grob-properties):
6468         remove callback property.
6469
6470         * lily/include/grob.hh (class Grob): remove property_callbacks_
6471         member. Properties of procedure type are assumed to be callbacks.
6472
6473         * lily/ligature-engraver.cc (override_stencil_callback):
6474         rewrite. Use noteHeadLigaturePrimitive as source.
6475
6476         * scm/define-grob-properties.scm (all-internal-grob-properties):
6477         remove ligature-primitive-callback
6478
6479         * lily/include/dimension-cache.hh (class Dimension_cache): make
6480         class, with Grob as friend.
6481
6482         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6483         has_extent_callback()
6484
6485         * scm/translation-functions.scm (format-new-bass-figure): read
6486         figuredBassPlusDirection
6487
6488         * scm/define-context-properties.scm
6489         (all-user-translation-properties): add figuredBassPlusDirection.
6490
6491         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6492
6493         * lily/align-interface.cc (set_ordered): new function.
6494
6495         * lily/grob.cc (flush_extent_cache): rewrite.
6496
6497         * lily/dimension-cache.cc (Dimension_cache): cache extent as
6498         Interval pointer directly.
6499
6500         * lily/main.cc (setup_paths): insert extra / .
6501         (setup_paths): junk cff entry.
6502
6503         * lily/font-config.cc (init_fontconfig): only add type1 / otf
6504         directories.
6505
6506         * lily/axis-group-engraver.cc (finalize): remove
6507         extraVerticalExtent, minimumVerticalExtent verticalExtent.
6508
6509         * lily/grob.cc (Grob): don't set extent from ctor.
6510         (extent): use property callbacks. 
6511
6512         * lily/axis-group-interface.cc: remove set_axes() function.
6513
6514         * lily/grob-property.cc (del_property): new function.
6515
6516 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6517
6518         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
6519         
6520 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6521
6522         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
6523
6524 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6525
6526         * mf/SConscript: Updates.
6527
6528         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
6529
6530         * stepmake/stepmake/*:
6531         * */GNUmakefile:
6532         * config.make.in:
6533         * GNUmakefile.in:
6534         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
6535         from any directory in build-dir.  Cleanups.
6536
6537         * make/srcdir.make.in: Remove.
6538
6539         * lily/main.cc (setup_paths): Fix and document build-dir hack.
6540
6541         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
6542         main).
6543
6544         * lily/SConscript: Remove ttftools.
6545
6546         * SConstruct: Resurrect.
6547
6548 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6549
6550         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
6551         Y coordinate. 
6552
6553         * lily/paper-book.cc (add_score_title): put Paper_score title into
6554         systems_ list.
6555
6556         * scm/translation-functions.scm (format-new-bass-figure): also
6557         allow plus in combination with _
6558
6559 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6560
6561         * VERSION: 2.7.13 released.
6562
6563         * lily/note-collision.cc (check_meshing_chords): don't wipe
6564         stencil, merely set transparent.
6565
6566         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
6567         (Top): document #'callbacks.
6568         (Top): document nested \override.
6569
6570         * input/regression/figured-bass.ly: update for slash and pluses.
6571
6572         * input/regression/figured-bass-continuation-forbid.ly (Module):
6573         new file.
6574
6575         * scm/translation-functions.scm (format-new-bass-figure): use
6576         slashed-digit if diminished is set.
6577         (format-new-bass-figure): add + if 'augmented is set.
6578
6579         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
6580
6581         * input/test/piano-staff-distance.ly: remove file.
6582
6583         * Documentation/user/advanced-notation.itely (Formatting cue
6584         notes): use length-fraction for making stems/beams smaller.
6585
6586         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
6587         modifications.
6588
6589         * lily/new-figured-bass-engraver.cc: new property
6590         centerFiguredBassContinuations
6591
6592         * Documentation/user/changing-defaults.itely (Difficult tweaks):
6593         use callbacks.
6594
6595         * lily/context-property.cc (execute_general_pushpop_property):
6596         robustness checks.
6597
6598         * input/regression/override-nest.ly: new file.
6599
6600         * python/convertrules.py (FatalConversionError.subber): conversion
6601         rule for #'callbacks
6602
6603         * input/regression/override-nest.ly: new function.
6604
6605         * lily/parser.yy (music_property_def): allow \override #'a #'b =
6606         #c too. 
6607
6608         * lily/context-property.cc (lookup_nested_property): new function.
6609         (evict_from_alist): new function.
6610         (general_pushpop_property): new function.
6611         (execute_general_pushpop_property): rewrite. Support nested
6612         properties too.
6613
6614 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6615
6616         * lily/beam.cc: use length-fraction too.
6617
6618         * scm/define-grob-properties.scm (all-user-grob-properties):
6619         remove property flag-width-function
6620         (all-user-grob-properties): remove space-function.
6621
6622         * scm/layout-beam.scm: remove flag-width-function.
6623
6624         * lily/beam.cc: remove flag-width-function
6625
6626         * scm/layout-beam.scm: remove beam dir functions.
6627
6628         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
6629
6630         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
6631         for easier grace tweaks.
6632
6633         * lily/beam.cc: remove dir-function.
6634
6635         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
6636
6637         * lily/grob.cc: remove spacing-procedure.
6638
6639         * lily/note-head.cc (calc_stem_attachment): new function.
6640         (internal_print): use callback to get glyph-name.
6641
6642         * lily/grob-property.cc (get_interfaces): new function.
6643
6644         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
6645
6646         * lily/stem.cc (calc_stem_end_position): new function.
6647         (calc_length): new function.
6648         document details for stem.
6649         remove Stem::get_direction()
6650
6651         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
6652
6653         * lily/grob-property.cc (set_callback): new function.
6654
6655         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
6656
6657         * lily/item-scheme.cc: new file.
6658
6659         * lily/bar-line.cc (before_line_breaking): remove function.
6660         remove bar-size-procedure, break-glyph-function
6661
6662         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
6663
6664         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
6665
6666         * lily/system-start-delimiter.cc (print): suicide from
6667         here. Remove after_line_breaking_callback.
6668
6669         * lily/script-interface.cc (calc_direction): use callback for direction.
6670
6671         * lily/side-position-interface.cc (aligned_side): don't use
6672         Side_position_interface::get_direction directly. Use callback. 
6673
6674         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
6675         calculate stencil.
6676         (get_print_stencil): rename from get_stencil: create stencil with
6677         transparency, color and cause. 
6678
6679         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
6680
6681         * python/convertrules.py (conv): insert temporary warning rule.
6682
6683         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
6684
6685         * lily/grob-property.cc (try_callback): remove marker if applicable.
6686
6687         * lily/grob.cc: elucidate doc about after/before-line-breaking
6688
6689         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
6690
6691         * lily/stem.cc (height): idem.
6692
6693         * lily/stem-tremolo.cc: idem.
6694
6695         * lily/slur.cc (height): don't use get_uncached_stencil()
6696
6697         * lily/rest.cc (y_offset_callback): use offset callback
6698         iso. after-line-breaking callback.
6699
6700         * lily/grob.cc: change after/before-line-breaking-callback to
6701         after/before-line-breaking dummy properties.
6702
6703         * lily/include/grob.hh: remove Grob_status.
6704
6705         * scm/define-context-properties.scm
6706         (all-user-translation-properties): remove verticalAlignmentChildCallback
6707
6708         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
6709         (calc_direction): use callback
6710         (calc_positions): use callback.
6711
6712         * lily/tie.cc (calc_direction): use callback. Only call parent
6713         positioning for more than one tie.
6714
6715         * lily/tie-column.cc (calc_positioning_done): use callback
6716
6717         * lily/slur-scoring.cc (calc_control_points): use callback
6718
6719         * lily/slur.cc (calc_direction): use callback.
6720
6721         * lily/note-collision.cc (force_shift_callback): remove.
6722
6723         * lily/dot-column.cc (force_shift_callback): remove. Use
6724         other_axis_parent_positioning.
6725
6726         * lily/grob.cc (other_axis_parent_positioning): new function.
6727         (same_axis_parent_positioning): new function
6728
6729         * lily/align-interface.cc (alignment_callback): remove function.
6730
6731         * lily/note-collision.cc (calc_positioning_done): use callback.
6732
6733         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
6734         (calc_direction): idem.
6735         remove print function.
6736
6737         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
6738
6739         * lily/dot-column.cc (calc_positioning_done): use callback.
6740
6741         * lily/break-align-interface.cc (calc_positioning_done): use callback.
6742
6743         * lily/beam.cc (calc_direction): use pseudo-property for beam
6744         direction callback.
6745         (calc_positions): use callback 
6746
6747         * lily/align-interface.cc (calc_positioning_done): use
6748         callback. Fold fixed  distance and normal alignment in one function.
6749
6750         * lily/stem.cc (calc_stem_end_position): use callback.
6751         (calc_positioning_done): idem.
6752         (calc_direction): idem.
6753         (calc_stem_end_position): idem
6754         (calc_stem_info): idem.
6755
6756         * lily/grob-property.cc (get_property_data): new function: 
6757         (try_callback): new function.
6758
6759         * scm/define-grob-properties.scm (all-user-grob-properties): doc
6760         callbacks property.
6761
6762         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
6763
6764 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6765
6766         * lily/tie.cc (get_position): robustness fix. Don't crash if a
6767         tie
6768         has no heads.
6769         
6770         * lily/include/*.hh (Module): compile fixes.
6771
6772 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
6773
6774         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
6775         as an argument for char-syntax: use (char-syntax (or nil 0)) 
6776         instead of (char-syntax nil), thanks to Milan Zamazal.
6777
6778 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6779
6780         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
6781         dist.
6782
6783         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
6784         themselves.
6785
6786 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6787
6788         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
6789         add class_name() method.
6790
6791         * lily/music-scheme.cc: remove ly:music-name.
6792
6793 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6794
6795         * cygwin/postinstall-lilypond.sh: Remove cruft.
6796
6797         * cygwin/postremove-lilypond.sh: Remove.
6798
6799         * cygwin/GNUmakefile (default): Remove postremove rules.
6800
6801 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6802
6803         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
6804         even header too.
6805         
6806         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
6807         MacOS 9 users.
6808
6809         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
6810         consider break index for broken spanner.
6811
6812         * scm/define-markup-commands.scm (wordwrap-string): remove \r
6813         characters from string before splitting.
6814
6815 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6816
6817         * scm/framework-ps.scm (output-preview-framework): use
6818         is-book-title to determine whether to chop off the booktitle.
6819
6820         * lily/paper-book.cc (systems): init from book-title-properties
6821         (add_score_title): init score-title-properties.
6822
6823         * ly/paper-defaults.ly: add {score,book}-title-properties.
6824
6825         * scm/document-backend.scm (lookup-interface): error message if
6826         using unknown interface.
6827
6828         * lily/volta-bracket.cc (after_line_breaking): new function. Set
6829         edge-height.
6830
6831         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
6832         make_bracket.
6833         (make_bracket): new function.
6834
6835         * scm/lily.scm (define-scheme-options): add paper-size option.
6836
6837         * ly/declarations-init.ly (laissezVibrer): get paper size from
6838         -dpaper-size
6839
6840         * scm/translation-functions.scm: use \fontsize for changing the
6841         fontsize.
6842
6843         * scm/define-grobs.scm (all-grob-descriptions): set
6844         between-length-limit to 1.0
6845
6846         * lily/tie-helper.cc: add between_length_limit_ detail property.
6847
6848         * mf/feta-bolletjes.mf: typos.
6849
6850         * lily/note-head.cc (internal_print): don't shadow idx
6851         parameter. This fixes wrong attachment for do shape heads.
6852
6853 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6854
6855         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
6856
6857         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
6858
6859         * scm/layout-slur.scm: rename from slur.scm
6860
6861         * scm/layout-page-layout.scm: rename from page-layout.scm
6862
6863         * scm/layout-beam.scm: rename from beam.scm
6864
6865         * scm/define-grob-interfaces.scm (bass-figure-interface): add
6866         bass-figure-interface
6867
6868         * lily/new-figured-bass-engraver.cc (process_music): add
6869         implicitBassFigures property.
6870         
6871         * scm/define-markup-commands.scm (pad-x): new markup.
6872
6873         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
6874         minimumVerticalExtent on FiguredBass context.
6875
6876         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
6877         case the continuation crosses a line break.
6878
6879 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6880
6881         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
6882         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
6883         absolute file name bug.  
6884
6885 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6886
6887         * VERSION (PACKAGE_NAME): release 2.7.12
6888
6889         * input/regression/figured-bass-continuation-center.ly: new file.
6890
6891         * input/regression/beam-outside-beamlets.ly: new file.
6892
6893         * lily/beam.cc (set_beaming): don't clip edges.
6894         (connect_beams): don't clip edges.
6895
6896         * lily/beaming-info.cc (clip_edges): new function.
6897
6898         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
6899
6900         * Documentation/user/instrument-notation.itely (Figured bass):
6901         demonstrate extenders, update seealso links.
6902
6903         * scm/titling.scm (marked-up-headfoot): change tagline
6904         handling. tagline = ##f will blank the tagline as well.
6905
6906 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6907
6908         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
6909
6910         * lily/new-figured-bass-engraver.cc (struct
6911         New_figured_bass_engraver): add new_music_found_ member.
6912
6913         * lily/lilypond-version.cc (Lilypond_version): deal with
6914         incorrectly formatted version strings. 
6915
6916         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
6917         New_figured_bass_engraver by default.
6918
6919         * lily/ttf.cc (print_trailer): only define glyph names when
6920         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
6921
6922 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6923
6924         * lily/horizontal-bracket.cc (make_bracket): new function.
6925
6926         * scm/define-grobs.scm (all-grob-descriptions): new grobs
6927         NewBassFigure, BassFigureBracket, BassFigureContinuation,
6928         BassFigureLine, BassFigureAlignment
6929
6930         * lily/new-figured-bass-engraver.cc (process_music): new file.
6931
6932         * lily/figured-bass-continuation.cc: new file.
6933
6934         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
6935         new file.
6936
6937 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
6938
6939         * scripts/lilypond-book.py: Bug fix, put the quote around the
6940         actual score for LaTeX documents.
6941
6942         * scm/define-grobs.scm (all-grob-descriptions): Change
6943         collapse-height of the SystemStartBracket grob to 5.0, 
6944         so the bracket disappears for single stave score lines (similarly
6945         to SystemStartBraces). 
6946
6947         * Documentation/user/advanced-notation.itely (Polymetric
6948         notation): Clarify the use of compressMusic.
6949
6950         * Documentation/user/basic-notation.itely (Grace notes): Clarify
6951         that the grace spacer note in other staves need the same duration
6952         and document the stroke-style property.
6953
6954 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6955
6956         * Documentation/user/global.itely (Vertical spacing): document
6957         alignment-extra-space and fixed-alignment-extra-space.
6958
6959         * Documentation/topdocs/NEWS.tely (Top): add entry.
6960
6961         * input/regression/alignment-vertical-spacing.ly: new file.
6962
6963         * python/convertrules.py (conv): add rule.
6964
6965         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
6966
6967         * lily/align-interface.cc (stretch_after_break): new
6968         function. Read fixed-alignment-extra-space property.
6969         (align_elements_to_extents): read alignment-extra-space property.
6970
6971         * lily/lily-guile.cc (robust_scm2dir): new function.
6972
6973         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
6974         (annotate-space-left): new function. Annotate space left on page. 
6975         (annotate-y-interval): new function.
6976         (paper-system-annotate-last): new function. Annotate bottom-space.
6977
6978         * mf/feta-beugel.mf (y): 
6979
6980 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6981
6982         * VERSION (PACKAGE_NAME):  release 2.7.11
6983
6984         * scm/lily-library.scm (interval-translate): new function
6985         (interval-center): new function. 
6986
6987         * scm/page-layout.scm (paper-system-annotate): new function. Add
6988         arrows for dimensions.
6989  
6990         * scm/stencil.scm (dimension-arrows): new function.
6991
6992         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
6993
6994         * input/regression/page-spacing.ly: add annotatespacing
6995
6996         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
6997         (LY_DEFINE): new function ly:paper-system-set-property!
6998
6999         * Documentation/user/global.itely (Paper size): explain how to add
7000         sizes.
7001
7002         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7003         correspond to GS's definition.
7004
7005         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7006         tuplet bracket.
7007         (print): only connect to next bracket if the next one is alive.
7008         (print): set padding to 0.0 if the bound is a breakable
7009         column. This makes tupletFullLength brackets reach up to the staff
7010         line if it doesn't connect to the next line.
7011
7012 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7013
7014         * lily/bar-number-engraver.cc: correct docs.
7015
7016         * scm/output-lib.scm (first-bar-number-invisible): rename from
7017         default-bar-number-visibility
7018
7019 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7020
7021         * scm/define-music-properties.scm (all-music-properties): remove
7022         predicate property.
7023
7024 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7025
7026         * po/fi.po: refresh.
7027
7028 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7029
7030         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7031         superfluous s1.
7032         (disappear): bugfix.
7033
7034         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7035
7036         * lily/include/paper-system.hh (class Paper_system): remove
7037         staff_extents_ member.
7038
7039         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7040
7041         * lily/include/paper-system.hh (class Paper_system): remove
7042         number_ variable. Remove is_title_. Remove break_before_penalty_
7043
7044         * lily/paper-book.cc (systems): use 'number property iso. number_
7045         member.
7046
7047         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7048         remove ly:paper-system-number.
7049
7050         * scm/lily-library.scm (paper-system-title?): new function.
7051
7052         * lily/book.cc (process): bugfix: flip ?: cases. 
7053
7054         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7055         add outputProperty.
7056
7057         * ly/music-functions-init.ly: add outputProperty music function.
7058
7059         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7060
7061         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7062         and next-padding.
7063         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7064
7065         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7066
7067         * lily/paper-system.cc (internal_get_property): new function.
7068
7069         * Documentation/user/global.itely (Vertical spacing): refer to
7070         page-spacing.ly
7071
7072         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7073         pagetopspace
7074
7075         * input/regression/page-spacing.ly: new file.
7076
7077         * input/regression/page-top-space.ly: new file.
7078
7079         * lily/spacing-spanner.cc: cmath -> math.h
7080
7081         * lily/paper-system.cc (read_left_bound): new function. Read
7082         line-break-system-details from left bound to determine extents.
7083  
7084         * Documentation/user/programming-interface.itely (Using LilyPond
7085         syntax inside Scheme): change applyxxx -> applyXxx.
7086
7087         * ly/music-functions-init.ly: add outputProperty music function.
7088
7089         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7090
7091         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7092
7093         * python/convertrules.py (conv): rule
7094
7095         * ly/music-functions-init.ly: applyxxx -> applyXxx
7096
7097         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7098         TabVoice to Voice.
7099
7100 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7101
7102         * flower/include/real.hh: include <math.h> iso. <cmath>
7103
7104         * flower/include/offset.hh: include real.hh
7105
7106 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7107
7108         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7109         fix example, now that 'interfaces is no longer directly available.
7110
7111         * lily/book.cc (process): don't crash if paper == NULL.
7112
7113         * po/fr.po: update.
7114
7115 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7116
7117         * scm/define-music-types.scm (music-descriptions): set length and
7118         start-callback for QuoteMusic
7119
7120 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7121
7122         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7123         arguments. Fixes compilation error with gcc 3.3.
7124
7125 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7126
7127         * VERSION: release 2.7.10
7128
7129         * stepmake/stepmake/python-module-rules.make
7130         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7131
7132         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7133         real.hh
7134
7135 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7136
7137         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7138         -Werror. Otherwise GCC barfs over various optimizations.
7139
7140         * scm/define-grob-properties.scm (all-internal-grob-properties):
7141         add note-head property
7142
7143         * Documentation/user/instrument-notation.itely (Laissez vibrer
7144         ties): new node.
7145
7146         * input/regression/laissez-vibrer-ties.ly: new file.
7147
7148         * lily/laissez-vibrer-engraver.cc: new file.    
7149
7150         * lily/include/tie-column-format.hh: new file.
7151
7152         * lily/tie-column-format.cc: new file. 
7153
7154         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7155
7156         * lily/laissez-vibrer-tie.cc: new file.
7157
7158         * lily/include/laissez-vibrer-tie.hh: new file.
7159
7160         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7161
7162         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7163
7164         * scm/define-grobs.scm (all-grob-descriptions): add
7165         LaissezVibrerTie, LaissezVibrerTieColumn
7166
7167         * lily/tie-column.cc (set_tie_config_directions): new function
7168         (final_shape_adjustment): new function.
7169         (shift_small_ties): new function.
7170
7171         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7172
7173         * lily/include/tie.hh (struct Tie_details): add x_gap_
7174         (struct Tie_configuration): add head_position_
7175
7176         * lily/tie-column.cc (set_chord_outline): new function.
7177
7178         * mf/cmr.enc.in:  remove file.
7179
7180 2005-09-11  Graham Percival  <gpermus@gmail.com>
7181
7182         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7183
7184 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7185
7186         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7187         reduce aliasing effects.
7188
7189         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7190         box in skyline.
7191
7192 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7193
7194         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7195
7196         * flower/include/real.hh: std::fabs too.
7197
7198 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7199
7200         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7201
7202         * lily, flower: Include C++ iso C headers.  Import namespace std
7203         throughout.
7204
7205         * lily/side-position-interface.cc: 
7206         * lily/scm-hash.cc: 
7207         * lily/note-head.cc: 
7208         * lily/include/includable-lexer.hh: 
7209         * flower/include/string-data.icc: Remove using std::*.
7210
7211         * lily, flower: Include C++ iso C headers.  Import namespace std
7212         throughout.
7213
7214         * lily/side-position-interface.cc: 
7215         * lily/scm-hash.cc: 
7216         * lily/note-head.cc: 
7217         * lily/include/includable-lexer.hh: 
7218         * flower/include/string-data.icc: Remove using std::*.
7219
7220         * Documentation/user/instrument-notation.itely (Entering lyrics):
7221         Multiple latin-1->utf-8 conversion fix.
7222
7223         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7224
7225 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7226
7227         * lily/tie.cc (get_configuration): also avoid dots for non-space
7228         situations.
7229
7230 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7231
7232         * Documentation/user/instrument-notation.itely: Bugfix.
7233
7234 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7235
7236         * tex/GNUmakefile: don't install texinfo.tex
7237
7238         * tex/ : cleanup: remove unused files.
7239
7240         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7241
7242         * flower/include/real.hh: using std::{isnan,isinf}
7243         
7244         * VERSION (PATCH_LEVEL): release 2.7.9
7245
7246 2005-09-05  Graham Percival  <gpermus@gmail.com>
7247
7248         * Documentation/user/ instrument-notation.itely,
7249         advanced-notation.itely: minor tweaks.
7250
7251         * input/test/script-chart.ly: add item padding.
7252
7253 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7254
7255         * flower/offset.cc: use math.h iso. <cmath>
7256
7257         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7258         of IE users.
7259
7260         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7261         (widen-left-stencil-edges): new function. Fix alignment problems
7262         with LaTeX includegraphics.
7263
7264         * lily/text-interface.cc (interpret_markup): use abort().
7265
7266 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7267
7268         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7269
7270         * lily/tie.cc (get_configuration): update bezier shape as we
7271         change Y positions.
7272         (get_configuration): don't move large ties if we're outside of the
7273         staff.
7274
7275 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7276
7277         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7278         
7279 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7280
7281         * .cvsignore: Add auto-generated configure files and then some.
7282
7283 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7284
7285         * scm/define-grobs.scm (DynamicLineSpanner): Add
7286         X-extent-callback.  Fixes hairpin-slur collision.
7287
7288 2005-08-31  Graham Percival  <gpermus@gmail.com>
7289
7290         * Documentation/user/advanced-notation.itely,
7291         basic-notation.itely: minor changes.
7292
7293 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7294
7295         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7296         \linebreak between each .eps file if \betweenLilyPondSystem is
7297         undefined. 
7298
7299         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7300         music): Document the \linebreak
7301
7302         * Documentation/user/lilypond-book.itely,
7303         input/tutorial/lbook-latex-test.tex,
7304         Documentation/user/examples.itely: Remove \usepackage{graphics}
7305
7306 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7307
7308         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7309
7310         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7311         compat bugfix.
7312
7313         * scripts/lilypond-book.py (PREAMBLE_LY): define
7314         inside-lilypond-book
7315         (modify_preamble): new function. Insert \RequirePackage{graphics}
7316         when no {graphics found in preamble.  
7317
7318 2005-08030  Graham Percival  <gpermus@gmail.com>
7319
7320         * Documentation/user/basic-notation.itely, global.itely,
7321         tutorial.itely: misc small changes.
7322
7323 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7324
7325         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7326         VERSION.
7327
7328 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7329
7330         * lily/tie-column.cc (new_directions): put Tie down on center
7331         staff line. 
7332
7333         * lily/script-interface.cc (before_line_breaking): use
7334         Grob::programming_error
7335
7336         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7337
7338         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7339         of splitext.
7340
7341 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7342
7343         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7344
7345 2005-08-29  Werner Lemberg  <wl@gnu.org>
7346
7347         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7348         the `*.scale.pfa' files to avoid warnings.
7349
7350 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7351
7352         * lily/tempo-performer.cc (process_music): idem.
7353
7354         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7355
7356 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7357
7358         * Documentation/user/advanced-notation.itely (Text markup): not a
7359         fragment.
7360
7361         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7362
7363         * lily/staff-performer.cc (initialize): add tempo/name to
7364         audio_staff_
7365
7366
7367 2005-08-26  Graham Percival  <gpermus@gmail.com>
7368
7369         * Documentation/user/advanced.itely: add text-only example.
7370
7371         * Documentation/user/invoking.itely: add index entries for
7372         convert-ly.
7373
7374         * Documentation/user/ tutorial.itely, basic-notation.itely:
7375         small fixes suggested by Steve D.  Thanks!
7376
7377 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7378
7379         * input/regression/markup-bidi-pango.ly: new file.
7380
7381         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7382         standard. Remove #ifdef. Remove memleak.
7383         (text_stencil): use text_dir to decide how to composite items.
7384         (text_stencil): determine uniform text direction for the entire
7385         string.
7386
7387         * scripts/lilypond-book.py (output_name): remove
7388         latex_filter_cmd. Non-portable to non-Unix systems. 
7389         (get_latex_textwidth): use File.write and os.unlink() instead.
7390
7391         * THANKS: add Vicente & Trevor.
7392
7393         * lily/grob.cc (discretionary_processing): look up origin for
7394         programming_error too. 
7395
7396         * input/regression/tie-broken.ly: new file.
7397
7398         * lily/tie-column.cc (set_chord_outlines): set outline for line
7399         break case too.
7400         
7401 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7402
7403         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7404         unscaled transform, just translate stencils.
7405
7406         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7407         MIDI.
7408
7409         * scm/define-markup-commands.scm (wordwrap-string): use
7410         text-direction
7411         (wordwrap-stencils): idem.
7412         (line): idem.
7413         (fill-line): idem.
7414         (wordwrap-stencils): translate last line to right for
7415         text-direction = LEFT.
7416
7417         * scm/define-grob-properties.scm (all-user-grob-properties): add
7418         text-direction.
7419
7420 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7421
7422         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7423         when copying a Lily_parser object.
7424
7425 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7426
7427         * scm/define-markup-commands.scm (null): add null markup.
7428
7429 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7430
7431         * lily/item.cc: Add documentation of center-invisible
7432
7433 2005-08-24  Graham Percival  <gpermus@gmail.com>
7434
7435         * Documentation/user/advanced-notation.itely: add info about
7436         raising text.
7437
7438         * Documentation/user/programming-interface.itely: fix example
7439         involving raised text.
7440
7441 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7442
7443         * lily/beam.cc (print): fix X start/end points of isolated
7444         beamlets.
7445
7446         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7447
7448         * lily/multi-measure-rest.cc (set_text_rods): new function.
7449
7450         * lily/vertical-align-engraver.cc (process_music): call
7451         Align_interface::set_axis(). This forces #'elements to be ordered,
7452         preventing random vertical reordering of staves.
7453
7454         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7455         add avoid-slur property. 
7456
7457         * Documentation/user/basic-notation.itely (Measure repeats): add
7458         countPercentRepeats example.
7459
7460         * Documentation/user/advanced-notation.itely (Other text markup
7461         issues): remove remark about normal-font.  We have \normal-text
7462
7463         * input/regression/tie-chord.ly: add note about remaining bugs.
7464
7465         * lily/tie.cc (print): try Tie_column::set_directions () if
7466         control-points not yet defined.
7467
7468 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7469
7470         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7471         extent. This fixes braces falling out of the EPS bbox.
7472
7473         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7474         exactly to bbox.
7475
7476 2005-08-23  Graham Percival  <gpermus@gmail.com>
7477
7478         * {various} : change #up->#UP and #down->#DOWN.
7479
7480         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7481
7482         * Documentation/user/advanced-notation.itely: clarify
7483         what objects handles text on a multimeasure rest.
7484
7485 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7486
7487         * VERSION (PATCH_LEVEL): release 2.7.7
7488
7489 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7490
7491         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7492
7493         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7494
7495         * input/regression/*.ly: formatting clean-up. Default layout
7496         before music expression.
7497
7498         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
7499         romanze28-2 example.
7500
7501         * scm/ps-to-png.scm: remove dir-re function.
7502         (make-ps-images): generate page names, instead of globbing them.
7503         This brings down LilyPond memory usage for make web by a factor
7504         10. 
7505
7506         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
7507         don't use glob. With 3000 files, globbing
7508         Documentation/user/out-www/ can take too much time. 
7509         
7510         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
7511
7512         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
7513
7514         * input/regression/tie-manual.ly: new file
7515
7516         * input/regression/tie-chord.ly: update.
7517
7518         * flower/include/interval.hh (struct Interval_t): 
7519
7520         * lily/tie.cc (distance): new function 
7521         (height): new function.
7522         (init): new function
7523         (Tie_details): new struct.
7524
7525         * lily/skyline.cc (skyline_height): new function.
7526
7527         * lily/tie-column.cc (set_chord_outlines): new function.
7528         (new_directions): read tie-configuration
7529
7530         * lily/skyline.cc: fix ASCII art.
7531         
7532 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
7533
7534         * python/convertrules.py (string_or_scheme): Fix spelling error
7535
7536 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7537         
7538         * lily/tie-column.cc (set_directions): set directions only once.
7539         (add_configuration): new function.
7540
7541         * lily/tie.cc (set_control_points): new function
7542
7543         * lily/tie-column.cc (new_directions): new function.
7544
7545         * ly/music-functions-init.ly: set 'pitch property
7546         iso. trill-pitch. This makes \relative work with \pitchedTrill
7547
7548         * lily/tie.cc (get_configuration): new function. Don't generate
7549         control points, rather, generate configuration.
7550         remove head-pair property.
7551
7552         * lily/include/tie.hh (struct Tie_configuration): new struct.
7553
7554 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
7555
7556         * Documentation/topdocs/NEWS.tely: clarify.
7557
7558 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7559
7560         * lily/tie.cc: remove minimum-length
7561
7562         * scm/define-grob-properties.scm (all-user-grob-properties):
7563         remove staffline-clearance, y-offset 
7564
7565         * input/regression/tie-dots.ly (Module): remove.
7566
7567         * lily/tie.cc (get_control_points): rewrite. Put short ties in
7568         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
7569
7570         * input/regression/tie-single.ly: new file.
7571
7572 2005-08-21  Graham Percival  <gpermus@gmail.com>
7573
7574         * ly/bagpipe.ly: fix compile problem.
7575
7576 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7577
7578         * lily/midi-item.cc (name): new method.
7579
7580         * lily/staff-performer.cc (acknowledge_audio_element): use
7581         signature of baseclass.
7582
7583         * lily/engraver-group.cc (do_announces): move recursion call out
7584         of while loop. 
7585
7586         * lily/drum-note-performer.cc (class Drum_note_performer): use
7587         process_music everywhere.
7588
7589         * ly/performer-init.ly: add default children everywhere.
7590
7591         * lily/paper-book.cc (output): call paper-book-write-midis
7592         directly: always write MIDI, even if no \layout {} block. 
7593
7594 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7595
7596         * VERSION (PACKAGE_NAME): release 2.7.6
7597
7598         * lily/percent-repeat-engraver.cc (try_music): don't print warning
7599         about not being able to handle repeat.
7600
7601 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7602
7603         * Documentation/user/examples.itely (Piano templates):
7604         * lily/include/performer-group.hh: Remove last traces of
7605         Performer_group_performer.  Fixes make web.
7606
7607 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7608
7609         * Documentation/user/examples.itely (Piano templates): change
7610         Engraver_group_engraver -> Engraver_group
7611
7612         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
7613         scm_stand_in_procs is not weak_any.
7614
7615         * lily/volta-bracket.cc (print): don't use strcmp().
7616
7617         * lily/volta-engraver.cc (process_music): use
7618         Text_interface::is_markup() for setting the 'text property of the
7619         volta bracket.
7620
7621         * input/mutopia/claop.py (accents): update syntax to 2.6
7622
7623         * scm/define-context-properties.scm
7624         (all-user-translation-properties): add countPercentRepeats.
7625
7626         * Documentation/user/basic-notation.itely (Measure repeats): add
7627         isolated percent example.
7628
7629 2005-08-18  Graham Percival  <gpermus@gmail.com>
7630
7631         * input/ {various}: change direction #1, #-1 to
7632         #up/#down or \fooUp, \fooDown.
7633
7634         * Documentation/user/music-glossary.tely: #-1 to #down.
7635
7636         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
7637         to #up, #-1 to #down.
7638
7639 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7640
7641         * lily/include/engraver-group.hh: rename.
7642
7643         * lily/include/performer-group.hh: rename.
7644
7645 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
7646
7647         * input/test/script-abbreviations.ly: Removed some old LaTeX
7648         left overs.
7649
7650 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7651
7652         * python/convertrules.py (conv): inside-slur -> avoid-slur.
7653         Remove functions.  Remove if 1: constructs, reindent.
7654
7655         * scripts/convert-ly.py (add_version): Add functions from
7656         convertrules.py
7657
7658         * scm/script.scm (default-script-alist):
7659         s/priority/script-priority.  Fixes script stacking.  Backportme.
7660         (Fermata): Very low priority.
7661
7662 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7663
7664         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
7665
7666         * input/regression/slur-script.ly: remove padding tweaks. Add
7667         comment strings.
7668
7669         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
7670         time sigs and related stuff.
7671
7672         * scm/define-grob-properties.scm (all-user-grob-properties): add
7673         @code{} tags to property description.
7674
7675         * lily/include/line-group-group-engraver.hh (Module): remove file.
7676
7677         * python/convertrules.py (conv): add rule for
7678         Engraver_group_engraver -> Engraver_group.
7679
7680         * lily/include/performer-group-performer.hh: analogous.
7681
7682         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
7683
7684         * lily/context-def.cc (instantiate): check for
7685         Engraver_group_engraver and Performer_group_performer not
7686         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
7687  
7688 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7689
7690         * input/les-nereides.ly: Remove three fingering tweaks, update
7691         remaining one.
7692
7693         * input/regression/slur-script-inside.ly: Update, fix doc.
7694
7695         * scm/script.scm: Update to avoid-slur.
7696
7697         * scm/define-grob-properties.scm (avoid-slur): New property.
7698
7699         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
7700         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
7701         outside_slur_callback if avoid-slur != #'inside.
7702
7703         * scm/define-grobs.scm (Fingering, Textscript): No
7704         inside-slur/outside-slur preference.
7705         (DynamicLineSpanner): Always outside slur.
7706
7707         * input/regression/slur-script.ly: More tests.
7708
7709 2005-08-17  Graham Percival  <gpermus@gmail.com>
7710
7711         * Documentation/user/lilypond-book: fix notime entry.
7712
7713         * Documentation/user/advanced-notation.itely: add info on
7714         getting an I rehearsal mark.
7715
7716         * Documentation/user/putting.itely: reinstate "I", re-enforce
7717         the fact that \override numbers are the result of
7718         experimentation and personal taste.
7719
7720         * Documentation/user/invoking.itely: update convert-ly bugs.
7721
7722 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7723
7724         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
7725         to #t.
7726
7727         * lily/timing-translator.cc (initialize): don't initialize timing.
7728
7729         * input/regression/stem-spacing.ly (Module): remove file.
7730
7731         * input/regression/spacing-stick-out.ly: specify Score context for
7732         \override
7733
7734         * input/regression/clefs.ly: remove spurious {}s 
7735
7736 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
7737
7738         * Documentation/topdocs/NEWS.tely,
7739         input/regression/repeat-percent-count.ly: clarify a bit.
7740
7741 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7742
7743         * input/no-notation/display-lily-tests.ly: delete
7744         display-lily-init call.
7745
7746         * ly/music-functions-init.ly (displayLilyMusic): move
7747         display-lily-init call at top level, so that the user should not
7748         have to call it.
7749
7750         * scm/define-music-display-methods.scm (note-name->lily-string):
7751         retrieve note names directly from pitchnames using new function `rassoc'.
7752         (display-lily-init): note names list construction removed.
7753
7754 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7755
7756         * THANKS: spello.
7757
7758         * lily/lily-parser.cc (get_header): copy module, instead of
7759         returning it.
7760
7761         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
7762         counters.
7763
7764         * Documentation/user/basic-notation.itely (Measure repeats): add
7765         links to Counter grobs.
7766
7767         * scm/define-grobs.scm (all-grob-descriptions): add
7768         DoublePercentRepeatCounter
7769         (all-grob-descriptions): add PercentRepeatCounter
7770
7771         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
7772         also create counter grobs.
7773
7774         * lily/separation-item.cc (extremal_break_aligned_grob): don't
7775         return grob without space-alist.
7776
7777         * input/proportional.ly: tune staff-padding.
7778
7779         * input/regression/repeat-percent-count.ly: new file. 
7780
7781 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7782
7783         * input/no-notation/display-lily-tests.ly: moved from
7784         input/regression/ to input/no-notation. Be sure to call
7785         `display-lily-init' before trying to use the display function.
7786
7787 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
7788
7789         * scripts/lilypond-book.py (option_definitions): Don't localize
7790         the empty string. Fixes bug when --psfonts was used with
7791         non-English locale.
7792
7793 2005-08-15  Graham Percival  <gpermus@gmail.com>
7794
7795         * lily/tuplet-bracket.cc: simple build fix.
7796
7797         * Documentation/user/putting.itely: use "we" instead of "I".
7798
7799         * Documentation/user/basic-notation.itely: cautionary accidentals
7800         work with naturals, too.
7801
7802 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7803
7804         * lily/tuplet-bracket.cc (calc_position_and_height): add
7805         staff-padding support.
7806
7807         * input/proportional.ly: set staff-padding.
7808         
7809         * VERSION (PATCH_LEVEL): release 2.7.5
7810
7811         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
7812         fixes. Remove tweaks.
7813
7814         * input/regression/tuplet-slope.ly: add a test case.
7815
7816         * lily/tuplet-bracket.cc (calc_position_and_height): revert
7817         erroneous fix. Add spanner bounds to offset array with relative X
7818         positions.
7819
7820         * ly/engraver-init.ly: add Rest_engraver only once.
7821
7822         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
7823         (*parser*) lookup if (*parser*) != #f.
7824
7825 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
7826
7827         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
7828         Cut-and paste update.
7829
7830         * input/regression/slur-script.ly: Add example of reverting
7831         inside-slur for fingering.
7832
7833         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
7834         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
7835
7836         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
7837         outside_slur_callback if inside-slur == #f (as opposed to unset).
7838
7839 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7840
7841         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
7842         encoding files are already removed.
7843
7844 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
7845
7846         * Documentation/user/advanced-notation.itely (Instrument names):
7847         Document a workaround for instrument names that collide with
7848         system start braces/brackets.
7849
7850 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7851
7852         * lily/rest-collision.cc (do_shift): spello.
7853
7854         * input/proportional.ly: use #'used property. Set break-overshoot
7855         property.
7856
7857         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
7858
7859         * lily/paper-column.cc: add #'used property
7860
7861         * lily/mark-engraver.cc (stop_translation_timestep): set grob
7862         array for staves found.
7863
7864         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
7865         array for stavesFound.
7866
7867         * lily/staff-spacing.cc (next_note_correction): add fixed and
7868         space to calling convention. This fixes spacing of accidentals
7869         after barlines.
7870
7871         * input/regression/spacing-accidental-stretch.ly: add barline -
7872         accidental case.
7873
7874         * scm/framework-ps.scm (page-header): add version number to
7875         creator
7876         (eps-header): idem.
7877
7878         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
7879         
7880 2005-08-13  Graham Percival  <gpermus@gmail.com>
7881
7882         * Documentation/user/global.itely: add "fit as much as
7883         possible onto this page" example (Vertical spacing).
7884
7885 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7886
7887         * *: Nitpick run.
7888
7889         * buildscripts/fixcc.py: Fixes.
7890
7891 2005-08-12  Graham Percival  <gpermus@gmail.com>
7892
7893         * Documentation/user/advanced-notation.itely: add markup
7894         example to Text spanners.
7895
7896 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
7897
7898         * Documentation/user/basic-notation.itely (Ties): Add example of
7899         tying a tremolo to a chord. Thanks to Steve Doonan. 
7900
7901         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
7902         properties and move tieMelismaBusy to the list of written
7903         properties. 
7904
7905 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
7906
7907         * po/TODO: suggest to use a dedicated tool like kbabel.
7908
7909         * po/fi.po: update using kbabel.
7910
7911 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7912
7913         * *: Remove obsolete files.  Nitpick run.
7914
7915         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
7916
7917 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7918
7919         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
7920         too.
7921
7922         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
7923
7924         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
7925         whitespace as symbol separator.
7926
7927         * lily/side-position-interface.cc: Add slur-padding.
7928
7929         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
7930         quite a large fix, and it never worked in a stable release; so not
7931         really a regression.
7932
7933         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
7934         Update cut and paste code from Slur_engraver.
7935
7936         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7937         Add.
7938
7939         * scm/define-grobs.scm (DynamicLineSpanner): Add
7940         dynamic-line-spanner-interface.
7941         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
7942
7943 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7944
7945         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
7946         to_boolean () so that non-set 'inside-slur means false.
7947
7948         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
7949         slur has control-points.  Skip script without direction.  Always
7950         do_shift if script inside slur, even if slur not contained in
7951         script y-extent.  Increment k in loop.
7952
7953 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
7954
7955         * scm/define-markup-commands.scm: Improved regexp to search for
7956         EPS bounding boxes and corrected call to ly:warning.
7957
7958 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7959
7960         * Documentation/user/programming-interface.itely (Displaying music
7961         expressions): doc for \displayLilyMusic. Also some precisions in
7962         "Markup construction in Scheme"
7963
7964 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
7965
7966         * scm/define-markup-commands.scm (normal-text): Added 2 new
7967         markup commands, \normal-text and \medium (the latter thanks to
7968         Bruce Fairchild). 
7969
7970 2005-08-08  Graham Percival  <gpermus@gmail.com>
7971
7972         * Documentation/user/programming-interface.itely: fix @{ @}.
7973
7974         * scm/define-markup-commands.scm: add linewidth info to
7975         \justify and \wordwrap, add "upright is the opposite of italic".
7976
7977         * Documentation/user/advanced-notation.itely: shaped->shape,
7978         add (cons (markup "foo")) type of example to text markup,
7979         reword multi-measure rests section.
7980
7981         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
7982         comment.  No actual code was touched.
7983
7984         * Documentation/user/invoking.itely: add more info about
7985         \include.  Thanks, Bruce!
7986
7987         * THANKS: add Bruce Fairchild, alphabetise.
7988
7989         * Documentation/user/global.itely: document \score{\header{}}
7990         behavior.
7991
7992         * Documentation/user/basic-notation.itely: reword multi-measure
7993         rest discussion in Rests.
7994
7995 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
7996
7997         * Documentation/user/programming-interface.itely (Markup
7998         construction in Scheme): Corrected example and tried to clarify
7999         the implicit \line in the table.
8000
8001 2005-08-07  Graham Percival  <gpermus@gmail.com>
8002
8003         * Documentation/user/instrument-notation.itely: moved
8004         some bagpipe info back into the bagpipe section.  Somehow
8005         it ended up in the "other vocal issues" section?!  :o_O
8006
8007 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8008
8009         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8010         directories, not paths).
8011
8012 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8013
8014         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8015         plain emmentaler/aybabtu.  Backportme.
8016
8017         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8018         missing dir correction.
8019
8020 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8021
8022         * scm/define-markup-commands: fix reversed justify/wordwrap
8023         doc strings.
8024
8025 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8026
8027         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8028         lily/gregorian-ligature-engaver.cc,
8029         lily/include/ligature-engraver.hh,
8030         lily/include/coherent-ligature-engraver.hh,
8031         lily/include/gregorian-ligature-engraver.hh: make these classes
8032         truely abstract.  This should fix some internal oddities such as
8033         duplicate as well as dead translator/property declarations, and
8034         also some dead code.
8035
8036         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8037         bugfix: avoid message "junking empty ligature" on ligature
8038         brackets by collecting dummy grobs.
8039
8040 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8041
8042         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8043
8044         * input/proportional.ly (staffKind): bugfix.
8045         (staffKind): updates by Trevor Baca.
8046
8047         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8048         default layout. 
8049
8050         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8051         pair.
8052
8053         * lily/beam.cc (rest_collision_callback): call position_beam() if
8054         necessary.
8055
8056         * VERSION: release 2.7.4
8057
8058         * input/regression/spacing-uniform-stretching.ly: new file.
8059
8060         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8061
8062         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8063         contributor.
8064
8065         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8066
8067         * input/proportional.ly: new file.
8068
8069         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8070         columns is empty
8071
8072         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8073         bounds to currentCommandColumn for the last step.
8074         (start_translation_timestep): if tupletFullLength is set, set
8075         bound to Paper Column
8076
8077         * input/regression/tuplet-full-length.ly (indent): new file.
8078
8079         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8080         clique of loose columns, eg. a set of grace notes in strict
8081         notespacing.
8082
8083         * input/regression/spacing-strict-spacing-grace.ly: new file.
8084
8085         * lily/key-signature-interface.cc: change property name to
8086         alteration-alist
8087
8088         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8089         keyAccidentalOrder
8090
8091         * python/convertrules.py (conv): keyAccidentalOrder ->
8092         keyAlterationOrder
8093
8094         * lily/key-engraver.cc (create_key): always print a cancellation
8095         for going to C-major/A-minor, regardless of printKeyCancellation.
8096         (create_key): remove typecheck for visibility. This fixes key
8097         signature not being printed.
8098
8099         * lily/spacing-determine-loose-columns.cc: new file.
8100
8101         * input/regression/spacing-strict-notespacing.ly: new file.
8102
8103         * lily/spacing-spanner.cc (generate_springs): rename from
8104         do_measure. 
8105         (generate_pair_spacing): new function.
8106         (init, generate_pair_spacing): set between-cols for floating
8107         nonmusical columns.
8108
8109         * lily/spaceable-grob.cc (get_spring): new function. 
8110
8111         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8112         relative to the right edge of the prefatory matter.
8113
8114         * lily/beam.cc (print): read break-overshoot to determine where to
8115         stop/start broken beams.
8116
8117         * input/regression/spanner-break-overshoot.ly: new file.
8118
8119 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8120
8121         * ly/bagpipe.ly: updated.
8122
8123         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8124
8125 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8126
8127         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8128         support: now (de)crescs avoid slurs as well.
8129
8130         * Documentation/user/instrument-notation.itely (Bagpipe example):
8131         comment out non-functioning bagpipe example.
8132         (Bagpipe definitions): idem.
8133
8134         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8135         (Top): add proportionalNotationDuration example.
8136
8137         * input/regression/spacing-proportional.ly: new file.
8138
8139         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8140         synched to a beam.
8141
8142         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8143         fixes beams with a single stem (eg. beams across linebreaks.)
8144
8145         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8146
8147         * flower/rational.cc (operator +): prevent overflow. This fixes
8148         heavily nested tuplets.
8149
8150         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8151         have to protect even those unlikely to be corrupted data members.  
8152
8153 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8154
8155         * ly/bagpipe.ly: new file.
8156
8157         * THANKS: added Sven Axelsson.
8158
8159 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8160
8161         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8162         copy proportionalNotationDuration into currentMusicalColumn if
8163         set.
8164
8165         * lily/spacing-spanner.cc (musical_column_spacing): if
8166         uniform-stretching set, fixed space is 0.0
8167
8168         * input/regression/spacing-multi-tuplet.ly: show
8169         uniform-stretching property.
8170
8171         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8172
8173         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8174         (struct Spacing_options): new struct.
8175
8176         * lily/spacing-basic.cc: new file.
8177
8178         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8179         delta_t doesn't have to be smaller than shortest_playing_len
8180
8181 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8182
8183         * input/regression/markup-arrows.ly:  new file.
8184
8185         * lily/tuplet-bracket.cc: document new behavior.
8186
8187         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8188         with line breaks.
8189
8190         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8191
8192         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8193         default 
8194
8195         * lily/tuplet-bracket.cc: add edge-text property.
8196         add break-overshoot.
8197         (print): read break-overshoot.
8198         (print): read edge-text, add stencils.
8199
8200         * mf/feta-arrow.mf: new file.
8201
8202         * mf/feta-generic.mf: add feta-arrow.
8203
8204 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8205
8206         * Documentation/user/lilypond-book.itely (An example of a
8207         musicological document): Added flag -o to dvips for people who use
8208         the default setting in teTeX where output is sent to the printer. 
8209
8210         * Documentation/user/global.itely (Vertical spacing): Added
8211         reference to the Axis_group_engraver which documents the *Extent
8212         properties.
8213
8214 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8215
8216         * Documentation/user/basic-notation.itely (Tuplets): add note
8217         about nested tuplets. Remove BUG. 
8218
8219         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8220
8221         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8222         (print): manually call print() for subtuplets.
8223         (calc_position_and_height): add subtuplets to the
8224         support. Vertically shift outer tuplet 
8225
8226         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8227         remove-first for Lyrics, ChordNames and FiguredBass
8228
8229         * scm/define-grob-properties.scm (all-internal-grob-properties):
8230         use ly:grob-array? iso. grob-list?
8231         (all-internal-grob-properties): add tuplets grob-array.
8232
8233         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8234         new function
8235
8236 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8237
8238         * input/test/time-signature-staff.ly: new file.
8239
8240         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8241         spurious #<Music FingerEvent> errors. Backportme.
8242
8243 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8244
8245         * Documentation/user/programming-interface.itely (Markup
8246         construction in Scheme): Corrected markup syntax in the
8247         translation table.
8248
8249 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8250
8251         * Documentation/user/instrument-notation.itely: small update
8252         to bagpipe notation docs; thanks Sven!
8253
8254         * Documentation/user/basic-notation.itely: add link about trills.
8255
8256 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8257
8258         * Documentation/user/music-glossary: remove accidentally committed
8259         fink patch.
8260
8261 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8262
8263         * lily/lily-parser.cc (get_header): new function. Enable multiple
8264         \header definitions.
8265
8266         * lily/parser.yy (lilypond_header_body): use get_header.
8267
8268         * ly/init.ly:
8269         * scm/lily-library.scm (print-score-with-defaults): renamed
8270         $globalheader to $defaultheader
8271             
8272         * Documentation/user/global.itely (Creating titles): added short
8273         explanation that multiple headers are useable.
8274
8275
8276 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8277
8278         * lily/module-scheme.cc (LY_DEFINE): new file. 
8279
8280         * Documentation/user/advanced-notation.itely (Font selection): add
8281         doco for make-pango-font-tree.
8282
8283 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8284
8285         * Documentation/user/music-glossary: more languages
8286         for tenuto.
8287
8288         * Docuemntation/user/instrument-notation.itely: minor
8289         update for bagpipe example.
8290
8291 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8292
8293         * input/regression/+.ly (TODO): add some text.
8294
8295 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8296
8297         * Documentation/user/invoking.itely: \score begins with music.
8298
8299         * Documentation/user/ basic-notation.itely,
8300         instrument-notation.itely: minor changes.
8301
8302         * Documentation/user/music-glossary.itely: began tenuto entry.
8303
8304 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8305
8306         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8307
8308         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8309
8310 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8311
8312         * Documentation/user/examples.itely: remove bagpipe template.
8313
8314         * Documentation/user/instrument-notation.itely: add bagpipe
8315         section, maybe fix quotes in lyrics.  I hate text encoding.
8316         Clarify chord durations, more bagpipe stuff.
8317
8318 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8319  
8320         * lily/accidental-engraver.cc: formatting fixes.
8321
8322         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8323         grob-array.
8324
8325         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8326
8327         * lily/note-column.cc (arpeggio): new function.
8328
8329         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8330         account for spacing.
8331
8332 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8333
8334         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8335         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8336         mingw build.
8337         
8338 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8339
8340         * scm/lily.scm (lilypond-all): clear anonymous modules after
8341         processing files.
8342
8343 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8344
8345         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8346         SCM_I_CONSP
8347
8348         * VERSION: 2.7.3 released
8349
8350         * Documentation/user/invoking.itely (Invoking lilypond): add
8351         LILYPOND_GC_YIELD documentation.
8352
8353         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8354         scm_from_real / scm_make_real.
8355
8356         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8357         higher. This increases memory footprint, but provides overall
8358         speedup of 15 to 20%. 
8359
8360         * lily/include/translator.hh (class Translator): remove
8361         PRECOMPUTED_VIRTUAL everywhere.
8362
8363         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8364
8365         * lily/context.cc (now_mom): non-recursive now_mom() 
8366
8367         * lily/include/profile.hh: new file.
8368
8369         * lily/profile.cc: new file.
8370
8371         * lily/grob.cc (Grob::Grob): look properties up directly.
8372
8373         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8374         lookups.
8375
8376         * lily/include/box.hh (class Box): smob Box type.
8377
8378         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8379
8380         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8381         protect() and unprotect(). Use throughout.
8382
8383 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8384
8385         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8386
8387         * scm/define-music-display-methods.scm (markup->lily-string):
8388         markup elements can also be strings (without simple-markup
8389         appended)
8390
8391 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8392
8393         * lily/context.cc (where_defined): also assign value in
8394         where_defined().
8395
8396         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8397         (curve_coordinate): new function
8398
8399         * lily/simple-spacer.cc (add_columns): only add rods between
8400         column i and begin/end if keep-inside-line is set (this repleces
8401         allow-outside-line as default)
8402
8403 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8404
8405         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8406         tupletSpannerDuration if applicable.
8407
8408         * lily/font-size-engraver.cc (process_music): read fontSize only
8409         once per timestep.
8410
8411         * lily/engraver*cc: use throughout.
8412         
8413         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8414
8415         * lily/translator.cc (add_acknowledger): new file. Directly jump
8416         into an Engraver::acknowledge_xxx () method based on a grobs
8417         interface-list.
8418
8419         * lily/include/translator-dispatch-list.hh (class
8420         Engraver_dispatch_list): new struct, new file.
8421
8422         * scm/define-context-properties.scm
8423         (all-internal-translation-properties): remove acceptHashTable,
8424         acknowledgeHashTable
8425
8426         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8427
8428         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8429         change acknowledgeHashTable to C++ member. 
8430
8431         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8432
8433 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8434
8435         * scm/display-lily.scm: new file. Define a `display-lily-music'
8436         function, that displays the music expression given as an argument,
8437         using LilyPond notation.
8438
8439         * scm/define-music-display-methods.scm: new file. Implementation
8440         of display methods for each music type.
8441
8442         * ly/music-functions-init.ly (displayLilyMusic): new function for
8443         displaying music with LilyPond notation.
8444
8445         * input/regression/display-lily-tests.ly: new regression test file
8446         for `display-lily-music'.
8447
8448         * scm/markup.scm: remove obsolete debugging code (for printing
8449         markups with LilyPond notation).
8450
8451         * scm/define-music-types.scm (music-name-to-property-table):
8452         * scm/clef.scm (supported-clefs): export, in order to be accessible
8453         from the (scm display-lily) module.
8454
8455 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8456
8457         * Documentation/topdocs/NEWS.tely (Top): Typo.
8458
8459 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8460
8461         * Documentation/index.html.in, Documentation/texinfo.css,
8462           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8463           Documentation/bibliography/index.html.in,
8464           Documentation/bibliography/html-long.bst: revert css-width patch,
8465           it does not work with IE6.
8466
8467 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8468
8469         * Documentation/texinfo.css: revert 760px hack. 
8470
8471         * VERSION: release 2.7.2
8472
8473         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8474
8475         * Documentation/user/basic-notation.itely (Barnumber check): add
8476         section.
8477
8478         * scm/music-functions.scm (skip-to-last): new function. Show only
8479         last showLastLength part of the \score.
8480
8481         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8482
8483         * python/convertrules.py (conv): add ly:x-moment rule
8484
8485         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8486
8487         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8488
8489         * Documentation/user/instrument-notation.itely (Flexibility in
8490         alignment): options in subsections.
8491
8492         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8493         syllable text. Instead, assume that the previous lyric text is a
8494         melismated text.
8495
8496         * Documentation/index.html.in: revert 800x600 change.
8497
8498 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8499
8500         * lily/main.cc (main): Remove invalid handle kludge.
8501
8502         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
8503         (lambda): add gui define.
8504
8505 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8506
8507         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
8508
8509         * Documentation/user/instrument-notation.itely (Musica ficta
8510         accidentals): add section Musica ficta accidentals
8511
8512         * lily/accidental-engraver.cc (make_suggested_accidental): new
8513         function.
8514         (make_standard_accidental): move into new function.
8515         (create_accidental): new function.
8516
8517         * scm/define-grobs.scm (all-grob-descriptions): new Grob
8518         AccidentalSuggestion
8519
8520         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
8521
8522         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
8523         undefined.
8524
8525         * Documentation/user/global.itely (Page formatting): document
8526         horizontalshift.
8527
8528         * scm/page-layout.scm (default-page-music-height):
8529         horizontalshift: new variable, shift all systems by
8530         horizontalshift to the right, to make space for instrument names.
8531
8532         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
8533
8534         * lily/input-scheme.cc (LY_DEFINE): take format commands.
8535
8536 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8537
8538         * lily/note-column.cc (dir): idem.
8539
8540         * lily/spacing-spanner.cc (Module): idem.
8541
8542         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
8543
8544         * lily/include/paper-column.hh (class Paper_column): add
8545         non-static get_rank() member.
8546
8547         * VERSION: release 2.7.1
8548         
8549         * scm/framework-null.scm: new file, used for benchmarking.
8550
8551 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
8552
8553         * Documentation/topdocs/INSTALL.texi, configure.in: fix
8554         version dependencies for fontforge and gs.
8555
8556         * Documentation/index.html.in, Documentation/texinfo.css,
8557         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8558         Documentation/bibliography/index.html.in, 
8559         Documentation/bibliography/html-long.bst: optimize width of
8560         html for a 800x600 screen (width:760), increases printability
8561         when 'fit to page' is not set and readability in wide screens.
8562
8563         * stepmake/bin/add-html-footer.py: add missing </p>.
8564
8565 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8566
8567         * scm/define-markup-commands.scm (beam): use polygon in beam
8568         command.
8569
8570         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
8571         all acknowledged grobs, and do potentially expensive merge and
8572         write in one go.
8573
8574         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
8575
8576         * configure.in (reloc_b): add --enable-static-gxx to statically
8577         link to libstdc++
8578
8579         * lily/GNUmakefile (static-gxx-libs): new target
8580         static-gxx-libs. Create symlink to libstdc++.a
8581
8582         * lily/new-lyric-combine-music-iterator.cc: rename to
8583         Lyric_combine_music_iterator
8584
8585         * lily/lyric-combine-music-iterator.cc
8586         (Old_lyric_combine_music_iterator): rename to
8587         Old_lyric_combine_music_iterator
8588
8589         * lily/*-engraver.cc (various): remove double use of
8590         PRECOMPUTED_VIRTUAL function: only use
8591         start_translation_timestep() and stop_translation_timestep(), not
8592         both.
8593
8594         * lily/break-substitution.cc (fast_substitute_grob_array): do
8595         fast_substitute_grob_array for all unordered grob_arrays.
8596         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
8597         (substitute_grob_array): optimize.
8598
8599         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
8600
8601         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
8602
8603         * lily/parser.yy: revert $globalheader patch.
8604         
8605         * lily/include/translator.icc
8606         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
8607         Translator methods, without _static helper.
8608  
8609         * lily/grob-smob.cc (derived_mark): rename from
8610         do_derived_mark(). Return void.
8611
8612         * scm/define-context-properties.scm
8613         (all-internal-translation-properties): remove tweakCount/tweakRank.
8614
8615         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
8616         predefined break-visibilities.
8617
8618         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
8619         booleans for break-visibility.
8620
8621         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
8622
8623         * python/convertrules.py (conv): rule for Timing_translator. 
8624
8625         * lily/include/translator.icc: new file. 
8626
8627         * lily/paper-column-engraver.cc (process_music): new
8628         file. Separate Paper_column factory from Score_engraver.
8629
8630         * lily/vertically-spaced-context-engraver.cc: administer
8631         spaceable-staves property of System.
8632
8633         * lily/translator-group-ctors.cc: new file.
8634
8635         * lily/context-property.cc (make_grob_from_properties): construct
8636         the right Grob class programmatically, looking at the class entry
8637         for the meta property.
8638
8639         * lily/break-align-engraver.cc (stop_translation_timestep): call
8640         Break_align_interface::add_element() directly.
8641
8642         * lily/context.cc (measure_position): measure_position() is now a
8643         normal function.
8644
8645         * lily/include/translator.hh (class Translator): rename
8646         process_acknowledged_grobs() to process_acknowledged() and move to
8647         Translator.
8648
8649         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
8650         field for each grob description.
8651
8652         * lily/include/translator-group.hh (class Translator_group):
8653         change to base class. Separate class from Translator. This gets
8654         rid of virtual inheritance for Engravers/Performers.
8655
8656         * lily/staff-performer.cc (class Staff_performer): derive
8657         Staff_performer from Performer, not Performer_group_performer 
8658
8659         * Lily/translator-group.cc (precomputed_recurse_over_translators):
8660         new function.
8661         (precompute_method_bindings): new function. Precompute lists of
8662         Translators, so we only call methods (process_music,
8663         start_translation_timestep, etc.) for Translators needing
8664         it. Also: dispose of pointer-to-member-function calls.
8665
8666         * lily/engraver-group-engraver.cc: remove engraver_each,
8667         recurse_down_engravers ()
8668
8669         * lily/note-head.cc (internal_print): only call
8670         glyph-name-procedure if style != default. 
8671
8672 2005-07-16  Graham Percival  <gperlist@shaw.ca>
8673
8674         * ly/titling-init.ly: add printallheaders option.
8675
8676         * Documentation/user/global.itely: document printallheaders.
8677
8678 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8679
8680         * lily/system.cc (do_derived_mark): don't mark from object_alist_
8681         anymore, but do it centrally.  
8682
8683         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
8684         hammer hack.
8685
8686         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
8687
8688         * scm/output-lib.scm: remove hammer-print-function.
8689
8690         * lily/include/pointer-group-interface.hh (extract_grob_set): new
8691         macro. Declare a Link_array<Grob> and fill it from a grob.
8692         (extract_item_set): idem for item.
8693
8694         * lily/break-substitution.cc: add header.
8695         (fast_substitute_grob_array): rewrite for Grob_arrays.
8696         (substitute_grob_array): idem.
8697
8698         * lily/group-interface.cc (add_thing): remove file.
8699
8700         * flower/include/parray.hh (class Link_array): slice() is const.
8701
8702         * lily/include/grob-array.hh: new file.
8703
8704         * lily/grob-array.cc (spanner): new file.
8705
8706         * lily/beam-quanting.cc (fill): read details property from beam.
8707
8708         * lily/beam.cc: support details property.
8709
8710         * total speedups below: approx 10%.
8711
8712         * lily/include/beam.hh: new struct, softcode beam quanting parameters
8713
8714         * lily/include/grob.hh (class Grob): add interfaces_ member.
8715
8716         * lily/bezier.cc (init_polynomial_cache): new function: cache
8717         binom(3,j) t^j (1-t)^{3-j}
8718         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
8719
8720         * lily/*.cc: substitution throughout.
8721
8722         * lily/grob-property.cc (internal_get_object): new routine.
8723         (internal_set_object): idem. Store grob refrences in separate
8724         alist. This saves processing time, since properties aren't
8725         break-substituted, and the per grob namespace is smaller, both for
8726         grobs and non-grob properties.
8727
8728         * scm/define-grob-properties.scm (all-internal-grob-properties):
8729         remove center-element.
8730
8731         * lily/grob.cc: remove tweak-count, tweak-rank.
8732
8733 2005-07-15  Graham Percival  <gperlist@shaw.ca>
8734
8735         * Documentation/user/lilypond-book.itely: fixes example.
8736
8737 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8738
8739         * Documentation/user/global.itely (Creating titles):    
8740         * Documentation/user/examples.itely (All headers): change the
8741         place of \header in \score blocks (after music block) to make
8742         examples compile (cf. changes on parser.yy on 2005-07-10)
8743
8744 2005-07-13  Graham Percival  <gperlist@shaw.ca>
8745
8746         * python/convertrules.py: add exc -> ecc rule.
8747
8748         * scripts/convert-ly.py: add location of convertrules.py
8749         in a comment.
8750
8751         * Documentation/user/changing-defaults.itely: fix language.
8752
8753 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8754
8755         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
8756
8757 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8758
8759         * scm/output-socket.scm (grob-bbox): don't use inf? 
8760
8761         * flower/include/rational.hh: add operator bool() 
8762
8763         * scm/define-music-types.scm (music-descriptions): remove
8764         internal-class-name properties.
8765
8766         * lily/include/event.hh: remove file.
8767
8768         * lily/include/music-constructor.hh: remove file.
8769
8770         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
8771         in 'types property.
8772
8773         * lily/music.cc (duration_length_callback): new function.
8774
8775         * lily/event.cc: remove file.
8776
8777         * lily/music-constructor.cc: remove file.
8778
8779         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
8780
8781         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
8782         (get_context_key): idem.
8783
8784         * scm/lily.scm (lambda): new option object-keys (default to #f)
8785
8786         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
8787
8788         * scm/output-gnome.scm: remove beam routine.
8789
8790         * scm/output-ps.scm (scm): idem.
8791
8792         * scm/output-svg.scm: remove beam.
8793
8794         * ps/music-drawing-routines.ps: remove draw_beam.
8795
8796         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
8797
8798         * flower/include/guile-compatibility.hh (scm_from_locale_string):
8799         add scm_from_locale_string compatibility glue. 
8800
8801 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8802
8803         * scripts/lilypond-book.py: Prevent occuring error when
8804         'lilypond-book --output=foo/ somefile.ly' is executed multiple
8805         times and target file shoud be overwritten.  (Error message said
8806         'input file and output file is same'.)
8807
8808 2005-07-13  Graham Percival  <gperlist@shaw.ca>
8809
8810         * input/regression/slur-extreme.ly,
8811         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
8812         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
8813         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
8814         "excentricity" to "eccentricity".
8815
8816         * Documentation/user/converters.itely: fix URL for Noteedit and
8817         Rosegarden.
8818
8819         * THANKS: added Yoshinobu Ishizaki.
8820
8821 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8822
8823         * scm/define-markup-commands.scm (justify-field): add. 
8824
8825         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
8826
8827 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8828
8829         * lily/lookup.cc (filled_box): express filled_box with
8830         round_filled_box
8831
8832         * scm/midi.scm (paper-book-write-midis): new function. Write all
8833         performances in numbered MIDI files.
8834
8835         * lily/performance-scheme.cc (LY_DEFINE): new file.
8836         (LY_DEFINE): new function ly:performance-write.
8837
8838         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
8839         new function.
8840         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
8841
8842         * scm/framework-*.scm: use port arguments throughout.
8843
8844         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
8845
8846         * lily/paper-outputter.cc (Paper_outputter): take port argument.
8847
8848         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
8849
8850         * scm/framework-texstr.scm (output-framework): 
8851
8852         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
8853
8854         * scm/output-lib.scm (tablature-stem-attachment-function):
8855         tablature stem attachment fix. 
8856
8857 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8858
8859         * lily/bezier.cc: hardcode binomial coefficients of order 3.
8860
8861         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
8862
8863         * scm/define-music-types.scm (music-descriptions): don't use
8864         Music_wrapper type.
8865
8866         * lily/paper-column.cc (print): print moment too.
8867
8868         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
8869         remove compatibility cruft.
8870
8871         * lily/parser.yy (score_body): \score can only begin with Music. 
8872
8873         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
8874         make-score. Take music argument only. Move parser interaction to
8875         Scheme.
8876
8877         * scm/lily-library.scm (scorify-music): new function.
8878
8879         * python/lilylib.py (datadir): remove 2.1 compat kludge.
8880         (datadir): remove resource import.
8881         (print_environment): remove get_bbox()
8882         (cp_to_dir): remove pre 1.5.2 compat glue.
8883
8884 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8885
8886         * lily/include/simple-spacer.hh (Module): idem.
8887
8888         * lily/include/spring.hh (struct Spring): store inverse
8889         strength. This prevents division by zero.
8890
8891         * VERSION: release 2.7.0
8892         
8893         * lily/include/music.hh (class Music): remove Music::duration_log()
8894
8895         * lily/stem-engraver.cc (make_stem): take duration log from event.
8896
8897         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
8898
8899 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8900
8901         * scm/lily.scm (ly:load): load autochange.scm
8902
8903         * Documentation/user/tutorial.itely (Running LilyPond for the
8904         first time): remove reference to DVI/TeX
8905
8906         * scm/define-markup-commands.scm (text): add \text markup command.
8907
8908         * configure.in (reloc_b): bump requirement to Python 2.2.
8909
8910         * lily/include/dots.hh (class Dots): make has_interface() static.
8911
8912         * python/convertrules.py (conv): add rule for ly:grob-default-font
8913
8914         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
8915         alphabetical order.
8916
8917         * input/regression/trill-spanner-pitched.ly: new file.
8918
8919         * lily/font-interface-scheme.cc (LY_DEFINE): function
8920         ly:grob-default-font (changed from get-default-font).
8921
8922         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
8923
8924         * lily/note-head.cc (internal_print): if style is not a symbol,
8925         set style to 'default. 
8926         (internal_print): no style suffix if glyph-name-procedure not
8927         set. Default to quarter head.
8928
8929         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
8930
8931         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
8932
8933         * ly/music-functions-init.ly: \pitchedTrill
8934
8935         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
8936
8937         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
8938
8939         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
8940
8941         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
8942
8943         * po/fr.po: update
8944
8945         * po/de.po: update.
8946
8947 2005-07-06  Graham Percival  <gperlist@shaw.ca>
8948
8949         * Documentation/user/changing-defaults.itely: add link
8950         to grob-iterface.
8951
8952         * Documentation/user/advanced-notation.itely: add material
8953         to Setting automatic beam behaviour.  Thanks, Joe!
8954
8955         * Documentation/user/lilypond.itely: change encoding to utf-8.
8956
8957 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
8958
8959         * Documentation/user/advanced-notation.itely (Setting automatic
8960         beam behavior): Correct the documentation of
8961         revert-auto-beam-setting (backportme)
8962
8963 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8964
8965         * lily/ly-module.cc (ly_make_anonymous_module): define
8966         %module-public-interface of module. 
8967
8968         * lily/lily-parser.cc (print_smob): allow printing of parser smob
8969         without lexer.
8970
8971 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8972
8973         * input/regression/fret-diagrams.ly: stretch example.
8974
8975 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8976
8977         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
8978         Fodor).
8979
8980 2005-06-30  Graham Percival  <gperlist@shaw.ca>
8981
8982         * Documentation/topdocs/AUTHORS.texi: update personal web address.
8983
8984         * Documentation/user/examples.itely, lilypond-book.itely:
8985         change \RequirePackage to \usepackage.
8986
8987         * Documentation/user/global.itely: document copyright and tagline.
8988
8989 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8990
8991         * Documentation/user/basic-notation.itely (Transpose): remove link
8992         to nonexistent UntransposableMusic.
8993
8994         * scm/output-svg.scm: remove old definitions.
8995
8996         * scripts/lilypond-book.py (do_file): search for kpsewhich before
8997         invoking.
8998
8999         * python/lilylib.py (search_exe_path): new function.
9000
9001 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9002
9003         * python/lilylib.py (mkdir_p): remove setup_environment()
9004         (backportme)
9005
9006         * buildscripts/mutopia-index.py (headertext): trim text.
9007
9008         * Documentation/topdocs/NEWS.tely (Top): refresh.
9009
9010         * scm/define-markup-commands.scm (wordwrap-string): new function:
9011         split string in paras and words.
9012         (wordwrap-markups): new function.
9013         (wordwrap-stencils): new function. 
9014         (justify): use it.
9015         (wordwrap): use it.
9016         (wordwrap-string): use it
9017         (justify-string): use it.
9018
9019         * scm/lily-library.scm (regexp-split): new function.
9020
9021         * scm/define-markup-commands.scm: remove encoded-simple. 
9022         remove font-markup.
9023         (fontsize): remove old version  of fontsize.
9024         (wordwrap): new markup function. Wrap into paragraphs.
9025
9026         * VERSION: Branch lilypond_2_6
9027         (MINOR_VERSION): go to 2.7.0
9028
9029 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9030
9031         * po/zh_TW.po: update from translation project.
9032
9033 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9034
9035         * scm/midi.scm: compile fix.
9036
9037 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9038
9039         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9040         patch. Now, the tempfile module is loaded too, not only used.
9041
9042 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9043
9044         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9045         0.05 - 1.00 to 0.25 - 1.00
9046
9047         * scm/midi.scm: moved the default-instrument-equalizer procedure
9048         to just under the insturment-equalizer-alist it takes as an
9049         argument.
9050
9051 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9052
9053         * Documentation/user/advanced-notation.itely (Font selection):
9054         remove CMR note.
9055
9056         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9057
9058 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9059
9060         * THANKS: Add UTF-8 marker.
9061
9062         * Documentation/user/point-and-click.itely (http): Update: use
9063         lilypond-invoke-editor.  Fix: instruct to use user.js.
9064
9065 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9066
9067         * ly/titling-init.ly: implements printpagenumber, increases
9068         space between dedication and title (to avoid collisions with
9069         "g" and "q" in dedication), and nicer logic about copyright
9070         and instrument fields being printed on the first page.
9071         Thanks Vincent!
9072
9073         * Documentation/user/global.itely: document printpagenumber.
9074
9075 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9076
9077         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9078
9079 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9080
9081         * THANKS: update to 2.6
9082
9083         * VERSION: 2.6.0 released.
9084
9085 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9086
9087         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9088         rule, errorneously removed probably because of misleading comment.
9089
9090 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9091
9092         * python/lilylib.py (datadir): py2exe comments.
9093
9094         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9095
9096         * configure.in (reloc_b): make fontconfig REQUIRED.
9097
9098 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9099
9100         * po/fi.po: add latest translations.
9101
9102 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9103
9104         * ChangeLog: recode utf-8
9105
9106         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9107         logo.
9108
9109         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9110
9111         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9112
9113         * python/convertrules.py (do_conversion): don't print program_name
9114         from within a module
9115
9116         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9117
9118         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9119
9120 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9121
9122         * Documentation/user/lilypond-book.itely,
9123         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9124
9125         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9126         fixes baseline-skip.  Thanks Vincent!
9127
9128         * Documentation/user/advanced-notation.itely, global.itely:
9129         moved "Selecting font sizes" to global, since it deals with
9130         notation font size, not text fonts.
9131
9132 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9133
9134         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9135         to fonts.
9136
9137 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9138
9139         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9140         workaround since /dev/stdin doesn't work on Cygwin. Using a
9141         temporary file in the current directory since latex doesn't
9142         understand the path name to the default TMP in Cygwin (at least on
9143         win XP).
9144         
9145         * Documentation/user/global.itely (Creating titles): Correct
9146         misprint in example. Thanks to Rob Vlasaty.
9147
9148 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9149
9150         * VERSION (PATCH_LEVEL): release 2.5.32
9151
9152         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9153         variable in lily module
9154
9155         * scm/framework-ps.scm (output-classic-framework): error message
9156         regarding the classic framework.
9157
9158         * Documentation/user/henle-flat-gray.png (Module): new file.
9159
9160         * Documentation/user/baer-flat-gray.png (Module): new file.
9161
9162         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9163         whiteout for markups.
9164
9165         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9166         regex too. This fixes change clef appearance in PDF. 
9167
9168         * ttftool/include/*: remove.
9169
9170         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9171
9172         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9173
9174         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9175
9176         * ttftool/*: remove ttftool subdirectory.
9177
9178         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9179
9180         * lily/ttf.cc (print_header): new file. Convert to type42, using
9181         FreeType to parse the TTF. 
9182
9183         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9184         and post table may differ. Pass around post_nglyphs as well.
9185
9186 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9187
9188         * ly/music-functions-init.ly (musicMap): new music function
9189         musicMap. 
9190         
9191 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9192
9193         * make/mutopia-rules.make: anti-alias-factor = 2
9194
9195         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9196         page switch.
9197
9198         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9199         anti-alias-factor for lilypond-book runs.
9200
9201         * scm/ps-to-png.scm (scale-down-image): new function.
9202         (my-system): new function.
9203         (make-ps-images): blow up GS resolution by anti-alias-factor,
9204         scale down image by anti-alias-factor.  This improves appearance
9205         of bitmaps
9206         (make-ps-images): remove showpage. Fixes spurious empty png at
9207         end.
9208
9209         * scm/framework-ps.scm (write-preamble): downcase filename before
9210         string-matching. Should fix .TTF files (as opposed to ttf files)  
9211
9212         * Documentation/user/tutorial.itely (Running LilyPond for the
9213         first time): separate subsections for windows, macos and unix.  
9214
9215         * Documentation/user/invoking.itely (Updating files with
9216         convert-ly): add MacOS X note.
9217
9218 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9219
9220         * Documentation/user/introduction.itely (Engraving): don't include
9221         file optical-spacing, add directly.
9222
9223         * lily/paper-outputter.cc (file): open file in binary mode. This
9224         fixes OTF embedding on windows.
9225
9226 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9227
9228         * scm/framework-ps.scm (write-preamble): remove debugging output.
9229
9230         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9231
9232         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9233         outdir.
9234         (install-fc-cache): install font cache in installation directories.
9235
9236 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9237
9238         * scm/editor.scm (editor-command-template-alist): Use char iso
9239         column, except for Emacs.
9240         (get-editor-command): Substitute char too (Bertalan Fodor).
9241
9242 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9243
9244         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9245         quoted ~s.  This should fix PNG output on Windows; single quotes
9246         are regular characters on Windows.
9247
9248 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9249
9250         * Documentation/user/basic-notation.itely: include ChoirStaff
9251         in System start delimiters.
9252
9253         * Documentation/user/putting.itely: new doc section on
9254         fixing overlapping notation.
9255
9256 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9257
9258         * Documentation/user/global.itely (Paper size): \paper is in
9259         \book, not \score.
9260
9261         * make/mutopia-rules.make: -ddelete-intermediate-files
9262
9263         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9264
9265 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9266
9267         * ChangeLog: Recode utf-8.
9268
9269         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9270         datadir with .py modules.
9271
9272 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9273
9274         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9275
9276 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9277
9278         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9279         
9280         * scm/framework-ps.scm (write-preamble): remove status check.
9281
9282         * Documentation/user/invoking.itely (Updating files with
9283         convert-ly): remove -o option.
9284
9285         * VERSION (PACKAGE_NAME): release 2.5.31
9286
9287         * scm/framework-ps.scm (write-preamble): use ly:system.
9288         (write-preamble): verbosity.
9289
9290         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9291
9292         * python/convertrules.py: new file. Store conversion rules
9293         separately.
9294
9295 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9296
9297         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9298
9299 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9300
9301         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9302         \musicDisplay 
9303
9304         * Documentation/user/instrument-notation.itely (More stanzas): Add
9305         reference to StanzaNumber.
9306
9307 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9308
9309         * THANKS: separate section for website translators.
9310
9311 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9312
9313         * Documentation/topdocs/INSTALL.texi: update vim info;
9314         thanks Simon Bailey!
9315
9316         * Documentation/user/advanced-notation.itely: included
9317         color names.
9318
9319         * Documentation/user/advanced-notation.itely,
9320         Documentation/usr/notation-appendices.itely: moved
9321         color names into an appendix.
9322
9323 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9324         
9325         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9326
9327         * scm/lily.scm (lambda): initialize program options from here.
9328
9329         * scm/framework-*.scm: add header info.
9330
9331         * lily/main.cc (parse_argv): only set output format to pdf if no
9332         other format specified.
9333
9334         * scm/backend-library.scm (postprocess-output): process
9335         'delete-intermediate-files after running convert-to-*. This fixes
9336         PNG generation when 'delete-intermediate-files is set.
9337         
9338 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9339
9340         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9341         links on website. 
9342
9343 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9344
9345         * Documentation/topdocs/INSTALL.texi,
9346         Documentation/user/lilypond-book.itely: typos.
9347
9348 2005-06-12  Pal Benko  <benkop@freestart.hu>
9349
9350         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9351         added between program name and switch; -b changed to -f not
9352         to generate pdf
9353
9354 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9355
9356         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9357         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9358
9359         * input/sakura-sakura.ly: add \midi.
9360
9361         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9362         iso. python find. 
9363
9364         * ttftool/test.c (main): cosmetics.
9365
9366         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9367
9368         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9369         create a ttf2ps binary.
9370
9371         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9372
9373         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9374         true.
9375
9376 2005-06-11  Graham Percival <gperlist@shaw.ca>
9377
9378         * Documentation/user/lilypond-book.itely: add warning about
9379         the font warnings in dvips.
9380
9381 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9382
9383         * THANKS: typo
9384
9385         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9386
9387         * GNUmakefile.in: remove links for .map, .enc
9388         don't fail if out/ doesn't exist yet.
9389
9390 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9391
9392         * ttftool/util.c (surely_read): return nbytes
9393
9394         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9395
9396         * VERSION (PACKAGE_NAME): release 2.5.30
9397
9398         * flower/string-convert.cc (precision_string): >? fix.
9399
9400         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9401         (make-ps-images): add verbose -q too.
9402
9403         * lily/default-actions.cc (Module): new file. default
9404         {book,score}-print functions.
9405
9406         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9407         pass results via parseStringResult, lookup via ly:parser-lookup.  
9408
9409         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9410         constructors.
9411         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9412         (parse_string): idem.
9413
9414         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9415
9416         * lily/main.cc (main_with_guile): copy be_verbose_global into
9417         ly_set_option()
9418
9419 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9420
9421         * scm/backend-library.scm (postscript->pdf):
9422         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9423         verbose mode.  Search for several names of gs executable.
9424
9425 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9426
9427         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9428         directly. This fixes a massive memory leak, provided you use CVS
9429         GUILE.
9430
9431 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9432
9433         * ly/property-init.ly: Added tieDashed.
9434
9435         * THANKS: Added some bughunters for 2.5.
9436
9437 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9438
9439         * lily/program-option.cc: add debug-gc option.
9440
9441         * lily/include/lily-guile-macros.hh: don't protect exported module
9442         objects.
9443
9444         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9445
9446         * scm/backend-library.scm (postscript->pdf): use
9447         delete-intermediate-files iso. running-from-gui? 
9448
9449         * ttftool/util.c (surely_read): robustness. Allow read() to return
9450         less bytes than requested, as per posix standards.
9451
9452         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9453         program option.
9454
9455         * ttftool/include/ttftool.h ("C"): rename verbosity to
9456         ttf_verbosity. Add to public interface.
9457
9458         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9459
9460         * lily/program-option.cc: rename from scm-option.cc
9461
9462         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9463         (get_help_string): Print pretty help string.
9464
9465         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9466         to snippet preamble.
9467
9468         * lily/scm-option.cc: remove command-line-settings option. Fold
9469         all command-line options plus default settings in a generic
9470         interface. 
9471
9472         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9473         texts too.
9474
9475 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9476
9477         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9478         or EXT_ components non-empty.
9479
9480 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9481
9482         * scm/lily.scm (running-from-gui?): Export.
9483
9484         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9485         output in .ly source directory.
9486
9487 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9488
9489         * ttftool/util.c (surely_lseek): more verbosity.
9490
9491         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9492         compile.
9493
9494         * lily/parser.yy (Repeated_music): remove >? 
9495
9496         * scm/backend-library.scm (postscript->pdf): Support for
9497         -dgs-font-load=1
9498
9499         * scm/framework-ps.scm (write-preamble): make font loading
9500         switchable to GS via --define-default gs-font-load=1
9501
9502 2005-06-09  Graham Percival  <gperlist@shaw.ca>
9503
9504         * Documentation/user/global.itely: added \layout docs.
9505
9506 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9507
9508         * lily/lily-parser-scheme.cc: add unistd.h
9509
9510 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9511
9512         * scm/editor.scm: add char argument.
9513
9514         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
9515
9516         * ttftool/util.c (syserror): use errno for better error reporting.
9517
9518         * lily/source-file.cc (get_counts): new function. Calc column,
9519         line and char count in one go.
9520
9521         * lily/binary-source-file.cc (quote_input): rename to quote_input
9522
9523         * lily/input.cc (set): new function.
9524
9525 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9526
9527         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
9528         directory part of file name to search directory.
9529
9530         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
9531         search path and chdir to DIR if --outname=DIR used.
9532
9533         * lily/main.cc (prepend_env_path): Bugfix: Check directory
9534         existence before appending original path.
9535
9536 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9537
9538         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
9539         file" massage.
9540
9541         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
9542         texinfo.tex is always used.
9543         
9544 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9545
9546         * flower/include/axis.hh: rename from axes.hh
9547
9548         * lily/include/text-interface.hh (Module): rename from text-item.hh
9549
9550         * VERSION (PATCH_LEVEL): release 2.5.29
9551
9552         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
9553
9554         * scm/framework-ps.scm (font-file-as-ps-string): new function.
9555         (handle-macfont): new function. Call fondu for Native mac fonts.
9556
9557         * scm/define-markup-commands.scm (fill-line): handle text-widths =
9558         '() case.
9559
9560 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9561
9562         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
9563         multi-page.  Fix .eps regular expression.
9564
9565 2005-06-07  Graham Percival  <gperlist@shaw.ca>
9566
9567         * Documentation/user/putting.itely: add info on modifying templates.
9568
9569         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
9570         misc small changes.
9571
9572 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9573
9574         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
9575
9576         * scripts/lilypond-ps2png.scm
9577
9578         * VERSION (PACKAGE_NAME): release 2.5.28
9579
9580 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9581
9582         * lily/main.cc (prepend_env_path): Do not append /, that does not
9583         work.  Localedir lives in datadir, not in prefix.
9584
9585         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
9586         hack for windows.
9587
9588         * flower/include/file-cookie.hh: Compile fix.
9589
9590 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9591
9592         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
9593
9594         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
9595         system primitives.
9596         (gulp-port): using read-string!/partial. We don't want to read an
9597         entire PS file  (GUILE 1.6 limits strings to 16M) 
9598
9599         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
9600         properties. Add font-interface. 
9601
9602         * scm/define-grob-properties.scm (all-user-grob-properties):
9603         remove old bracket properties.
9604
9605         * scm/x11-color.scm: reformat. 
9606
9607         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
9608         LedgerLineSpanner if new StaffSymbol is found. 
9609
9610         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
9611         staff-symbol for finishing staff. 
9612
9613         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
9614
9615         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
9616         change black to currentColor everywhere. This fixes color support
9617         in SVG.
9618
9619 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
9620
9621         * input/regression/fret-diagrams.ly: new file to test fret diagram
9622         capability
9623
9624         * scm/output-tex.scm: remove white-dot and white-text
9625
9626         * scm/output-ps.scm: remove white-dot and white-text
9627
9628         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
9629         using ly:stencil-in-color instead
9630         (draw-dots) : remove call to white-dot
9631
9632 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9633
9634         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
9635         support.
9636
9637         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
9638
9639         * flower/include/file-cookie.hh: new file. lily_cookie extension 
9640
9641         * flower/file-cookie.cc: new file. lily_cookie extension.
9642         
9643 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9644
9645         * scm/editor.scm (editor-command-template-alist): Add syn
9646         editor (Jaap [de Vos]).
9647
9648 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
9649
9650         * scripts/lilypond-ps2png.scm:
9651         * scm/ps-to-png.scm: New file.
9652
9653         * scm/backend-library.scm (postscript->png): Use it.
9654
9655         * scripts/lilypond-ps-to-png.py: Remove file.
9656
9657         * python/lilylib.py (get_bbox, make_ps_images): Remove.
9658
9659 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9660
9661         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
9662
9663         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
9664         start on grace moment. Fixes autobeam-grace.ly.
9665
9666         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
9667         process anything unless we're at the end of a pending beam. Fixes
9668         syncopated 8ths beamed across a beat.
9669
9670 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
9671
9672         * scm/editor.scm (editor-command-template-alist): Start emacs if
9673         emacslient fails.
9674
9675         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
9676
9677         * flower/file-path.cc (is_file, is_dir): Export.
9678
9679         * lily/main.cc (prepend_env_path, set_env_file): Use them.
9680
9681 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
9682
9683         * lily/easy-notation.cc: Added include cctype to correct
9684         compilation error.
9685
9686 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9687
9688         * scm/backend-library.scm (postscript->pdf): set resolution to
9689         1200, so bitmap fonts aren't that ugly. 
9690
9691         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
9692
9693         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
9694         parent if we have a notehead. Fixes incorrect offsets when
9695         Paper_column is very wide in the X direction.
9696
9697         * input/regression/font-family-override.ly (Module): new file.
9698
9699         * scm/font.scm (make-pango-font-tree): new function.
9700
9701         * lily/beam.cc (before_line_breaking): remove warning about less
9702         than 2 visible stems. We still get a warning when there is only
9703         one stem.
9704
9705 2005-06-01  Werner Lemberg  <wl@gnu.org>
9706
9707         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
9708         correctly.
9709
9710 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9711
9712         * lily/slur-scoring.cc (generate_avoid_offsets): new
9713         function. Generate avoid offsets once per slur.
9714
9715         * lily/slur.cc (add_extra_encompass): add dependency to
9716         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
9717
9718         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
9719         too. Fixes inf error with added bass notes.
9720
9721         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
9722         argument anymore.
9723
9724         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
9725
9726         * input/tutorial/lbook-latex-test.tex: add line length test.
9727
9728         * scripts/lilypond-book.py (set_default_options): new
9729         function. Call this before dissecting snippets, so linewidth
9730         settings reach the snippets.
9731
9732 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9733
9734         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
9735
9736 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9737
9738         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
9739
9740 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9741
9742         * stepmake/aclocal.m4: More autopackage friendliness.
9743
9744 2005-05-31  Graham Percival  <gperlist@shaw.ca>
9745
9746         * Documentation/index.html.in: remove link to LSR.
9747
9748         * Documentation/user/global.itely: remove duplicate
9749         "dedication" \header{} section.
9750
9751 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9752
9753         * VERSION (PACKAGE_NAME): release 2.5.27.
9754
9755         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
9756         too. Plugs memory leak.
9757
9758         * make/lilypond.fedora.spec.in (Group): remove
9759         lilypond-pdfpc-helper.
9760
9761         * scripts/GNUmakefile (SEXECUTABLES): remove
9762         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
9763
9764         * scm/font.scm (make-century-schoolbook-tree): add Mono as
9765         'typewriter family.
9766
9767         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
9768         memory leak.
9769
9770         * lily/parser.yy (score_body): don't clone Score, that's done in
9771         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
9772
9773         * lily/score-engraver.cc (derived_mark): new function.
9774         (initialize): unprotect Paper_score. This fixes a memory leak.
9775
9776         * lily/score-performer.cc (derived_mark): new function.
9777
9778         * lily/score-translator.cc (get_output): use SCM for get_output() call.
9779
9780         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
9781         spurious warning.
9782
9783         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
9784         serif.
9785
9786 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9787
9788         * configure.in (reloc_b): Add --enable-relocation.
9789
9790 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9791
9792         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
9793
9794         * input/regression/alignment-order.ly: add Staff example.
9795
9796 2005-05-31  John Mandereau   <john.mandereau@free.fr>
9797
9798         * po/fr.po: update.
9799
9800 2005-05-31  Graham Percival  <gperlist@shaw.ca>
9801
9802         * Documentation/index.html.in: add link to LSR.
9803
9804 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9805
9806         * scm/define-stencil-commands.scm (Module): new file. Register all
9807         allowed stencil expression heads in a central place.
9808
9809         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
9810         ly:make-stencil
9811
9812         * lily/stencil-expression.cc (all_stencil_heads): registering
9813         stencil expressions.
9814
9815         * lily/stencil-interpret.cc: new file. Stencil expression
9816         interpreting.
9817
9818         * input/xiao-haizi-guai-guai.ly: move file back.
9819
9820 2005-05-30  Graham Percival  <gperlist@shaw.ca>
9821
9822         * Documentation/user/advanced.itely, converters.itely,
9823         instrument-notation.itely, lilypond-book.itely: misc small
9824         changes.
9825
9826 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9827
9828         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
9829
9830         * make/lilypond.fedora.spec.in: Fix source url.
9831
9832         * cygwin: Update from mingw patches.
9833
9834         * scm/editor.scm (editor-command-template-alist): Use jedit
9835         -reuseview (Bertalan), add uedit (Patrick Huberts).
9836
9837         * input/xiao-hai-zi-guai-guai.ly: Rename from
9838         xiao-haizi-guai-guai.ly.
9839
9840         * input/*: Reindent, do not use TAB.
9841
9842         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
9843         white background.
9844
9845 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
9846
9847         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
9848         numerical overflow error.
9849
9850 2005-05-29 Laura Conrad <lconrad@laymusic.org>
9851         
9852         * abc2ly.py: fix to syntax error in multi-part output.
9853
9854 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9855
9856         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
9857         with disappearing span bars when alignAboveContext is active
9858
9859         * lily/property-iterator.cc (check_grob): use is-grob?
9860         object-property. Fixes crash-key-sig-font-size.ly. 
9861
9862 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9863
9864         * lily/bar-line.cc (print): don't round barlines; this produces
9865         odd aliasing effects in Acroread.
9866
9867         * lily/timing-engraver.cc (process_music): robustness fix.
9868
9869         * lily/context-def.cc (filter_engravers): bugfix.
9870
9871 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9872
9873         * lily/lilypond.rc.in: Add ly-icon.
9874
9875         * lily/GNUmakefile: 
9876         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
9877         rules.
9878
9879 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9880
9881         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
9882
9883         * ps/music-drawing-routines.ps: 
9884
9885         * scm/output-ps.scm: remove draw ez_ball.
9886
9887         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9888         EasyNotation context definition.
9889
9890         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
9891         Text_interface and color for making easy note heads.
9892
9893         * lily/stencil.cc (with_color): new function.
9894
9895         * ps/music-drawing-routines.ps: remove draw_zigzag_line
9896
9897         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
9898         output routine. Zigzag now works in SVG too.
9899
9900         * scm/output-tex.scm (filledbox): idem.
9901
9902         * scm/output-svg.scm (filledbox): idem.
9903
9904         * scm/output-ps.scm (lily-def): remove horizontal-line. 
9905
9906         * lily/lookup.cc (horizontal_line): use draw-line. 
9907
9908         * lily/system-start-delimiter.cc: remove old staff bracket code.
9909
9910         * mf/feta-haak.mf: further tweaks.
9911
9912         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
9913
9914         * mf/feta-generic.mf: include feta-haak.
9915
9916         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
9917
9918         * scm/framework-ps.scm (write-preamble): only load fonts if their
9919         filename is a string. 
9920
9921 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9922
9923         * scm/output-svg.scm (circle): support circle.
9924         (bracket): stub for bracket.
9925
9926         * scripts/lilypond-book.py (main): make sure --psfonts warning is
9927         correct.
9928
9929 2005-05-26  Graham Percival  <gperlist@shaw.ca>
9930
9931         * Documentation/user/lilypond.tely, advanced-notation.itely,
9932         basic-notation.itely, instrument-notation.itely, global.itely,
9933         introduction.itely, tutorial.itely: rearranging, editing,
9934         clean-up.
9935
9936         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
9937         for compiling on FreeBSD.
9938
9939 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9940
9941         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
9942         otf files.
9943
9944         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
9945         bugfixes.
9946
9947         * VERSION: 2.5.26 released.
9948
9949         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
9950
9951 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
9952
9953         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
9954         if printpagenumber is false.
9955
9956 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9957
9958         * lily/font-config.cc (init_fontconfig): comment out FontConfig
9959         cache warning.
9960
9961         * lily/tie.cc (print): support dotted ties.
9962         
9963 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9964
9965         * scm/define-grobs.scm (all-grob-descriptions): switch off
9966         debugging
9967         (all-grob-descriptions): Arpeggio has Y-extent.
9968
9969         * scm/define-music-properties.scm (all-music-properties): document
9970         length-callback and start-callback as "read-only".
9971
9972         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
9973         length-callback after creation. 
9974
9975         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
9976         compressmusic -> compressMusic.
9977
9978         * ly/music-functions-init.ly (oldaddlyrics): idem.
9979
9980         * lily/parser.yy: NewLyricCombineMusic ->
9981         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
9982
9983 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
9984
9985         * ly/Welcome_to_LilyPond.ly: typo.
9986
9987 2005-05-24  Graham Percival  <gperlist@shaw.ca>
9988
9989         * Documentation/user/lilypond.tely: move changing-defaults to be
9990         before global issues.
9991
9992         * Documentation/user/basic-notation.itely: move Transpose section
9993         here from advanced/Other.
9994
9995         * Documentation/user/changing-defaults.itely,
9996         advanced-notation.itely: move Fonts to advanced, edit.
9997
9998 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9999
10000         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10001         # before negative integers.
10002
10003 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10004
10005         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10006
10007         * Documentation/user/lilypond.tely: change Unified index to
10008         LilyPond index.
10009
10010         * Documentation/user/advanced-notation.itely,
10011         instrument-notation.itely: editing.
10012
10013 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10014
10015         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10016
10017         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10018
10019 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10020
10021         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10022         ly:port-move.  Needs to be stderr-specific on mingw.
10023         Run fixcc.
10024
10025 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10026
10027         * lily/general-scheme.cc (ly:port-move): Remove.
10028
10029         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10030         windows.
10031
10032         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10033         variables.  This eliminates the need for a gs.bat wrapper, which
10034         opens a console.
10035
10036         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10037         * scm/lily.scm (running-from-gui?): 
10038         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10039         artifact of not compiling with -mwindows.
10040
10041         * scm/editor.scm: Define PLATFORM.
10042
10043 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10044
10045         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10046         can start to cut & paste lilypond-book fragments.  
10047
10048         * scm/define-music-types.scm (music-descriptions): remove
10049         UntransposableMusic
10050
10051 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10052
10053         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10054
10055 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10056
10057         * Documentation/user/instrument-notation.itely: remove *Engraver.
10058
10059         * Documentation/user/advanced-notation.itely: edit, rearrange.
10060
10061 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10062
10063         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10064         findresource iso. findfont for CID CFF fonts.
10065
10066         * VERSION (PACKAGE_NAME): release 2.5.25
10067
10068         * ly/Welcome_to_LilyPond.ly: add  \version
10069
10070 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10071
10072         * Documentation/user/programming-interface.itely: move
10073         \displayMusic into its own section.
10074
10075         * Documentation/user/basic-notation.itely: finish editing.
10076
10077 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10078
10079         * flower/file-path.cc (find): don't throw away file_name.dir, but
10080         append to it. Fixes \include with directories.
10081
10082         * flower/include/file-path.hh (class File_path): don't derive from
10083         Array<String>.
10084
10085         * flower/include/file-name.hh (class File_name): remove to_str0()
10086
10087         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10088         Hara_kiri_engraver in separate file.
10089
10090         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10091         translation went wrong. Fixes vertically translated slurs.
10092
10093 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10094
10095         * Documentation/user/basic-notaton.itely: editing.
10096
10097 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10098
10099         * Documentation/user/macros.itexi, basic-notation.itely:
10100         add @commonprop (commonly used properties) macro.
10101
10102 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10103
10104         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10105
10106         * scripts/lilypond-book.py (invokes_lilypond): new function
10107         (main): only run fontextract if invokes_lilypond() is true.
10108
10109         * lily/function-documentation.cc (ly_add_function_documentation):
10110         duh, use !=
10111
10112         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10113
10114         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10115
10116         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10117
10118         * lily/function-documentation.cc (ly_add_function_documentation):
10119         use scm_hash_table_p() for checking.
10120
10121 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10122
10123         * Documentation/user/advanced-notation.itely (Text scripts):
10124         Change nonexisting @internalsref{Text markup} to @ref{Text
10125         markup}.  Change @internalsref{Text script} to
10126         @internalsref{TextScript}.
10127
10128         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10129
10130 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10131
10132         * Documentation/user/tutorial.itely, basic-notation.itely,
10133         changing-defaults.itely: remove duplicate cindex entries
10134         that appear on the same page.
10135
10136         * scm/define-grobs.scm: change default padding for TextSpanner.
10137
10138         * Documentation/topdocs/AUTHORS.texi: update email address.
10139
10140         * Documentation/user/global.itely: add info about \include.
10141
10142 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10143
10144         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10145         when running-from-gui.
10146
10147         * scm/editor.scm (get-editor): Add platform defaults.
10148
10149         * scm/backend-library.scm (postscript->pdf): Typo.
10150
10151 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10152
10153         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10154
10155         * lily/font-config.cc (init_fontconfig): add warning about cache.
10156
10157 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10158
10159         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10160
10161 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10162
10163         * lily/horizontal-bracket.cc (print): Take care of the direction
10164         property so brackets above the stave point downwards. 
10165
10166         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10167         for HorizontalBracket so it doesn't end up within the stave.
10168
10169 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10170
10171         * lily/GNUmakefile (default): Typo.
10172
10173         * scm/lily.scm (PLATFORM): Export.
10174
10175         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10176         load-font-via-GS, ttftool or fopencookie is broken on windows.
10177         
10178         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10179         -dSAFER, that is broken on windows.
10180
10181 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10182
10183         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10184         for FlexLexer.h
10185
10186         * scripts/lilypond-invoke-editor.scm: remove stray -
10187
10188 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10189
10190         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10191         Fixes deprecation warning.
10192
10193         * flower/include/string.icc (to_string): Only inline if
10194         -DSTRING_UTILS_INLINED.
10195
10196         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10197         name.  Remove windows comment.
10198
10199         * scm/editor.scm (slashify): New function.
10200         (get-editor-command): Use it.
10201         (get-command-template): Do not alter editor command if
10202         environment value includes `%(file)s' magic.
10203
10204         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10205         (dissect-uri): Use it.
10206         (unquote-uri): Bugfix.
10207
10208 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10209
10210         * scm/framework-ps.scm (write-preamble): add TTF rule.
10211
10212         * Documentation/topdocs/README.texi (Top): remove note about
10213         xdelta.
10214
10215         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10216         requirement.
10217
10218         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10219         function. Figure out where FlexLexer.h lives
10220
10221         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10222         
10223 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10224
10225         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10226         with Windows root in file name.
10227
10228         * scm/backend-library.scm (ly:system): Only redirect output (using
10229         system and shell, ugh) if /dev/null is writable.
10230
10231         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10232         windows icon.
10233
10234         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10235         on Mingw.
10236
10237         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10238         click.
10239
10240         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10241         use result of stat when available.
10242
10243         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10244         absolute file name and root.
10245
10246         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10247
10248         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10249
10250         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10251         slashes in file name.
10252
10253 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10254
10255         * Documentation/user/preface.itely (Preface): Run
10256         texinfo-all-menus-update.
10257
10258         * scm/editor.scm (get-editor-command): Bugfix: allow full
10259         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10260
10261         * Documentation/pictures/lilypond-48.xpm: New file.
10262
10263         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10264
10265         * ly/Welcome_to_LilyPond.ly: New file.
10266
10267         * lily/main.cc (main): Only identify if we have a terminal.
10268
10269         * scm/backend-library.scm (postscript->png)
10270         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10271         non-/bin/sh).
10272
10273 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10274
10275         * Documentation/topdocs/AUTHORS.texi: polish, update.
10276
10277 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10278
10279         * Documentation/user/preface.itely (Notes for version 2.6): new
10280         notes for 2.6
10281
10282         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10283         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10284         is not fully contained" warnings.
10285
10286         * lily/slur-scoring.cc (get_bound_info): remove warning.
10287
10288         * lily/staff-symbol-engraver.cc (process_music): start initial
10289         spanner in process_music(). This fixes overrides of StaffSymbol
10290         properties.
10291
10292         * scm/framework-pdf.scm (Module): remove.
10293
10294         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10295
10296         * lily/ambitus-engraver.cc: formatting cleanups.
10297
10298         * mf/feta-solfa.mf (Module): remove.
10299
10300         * ChangeLog: more details about contributions.
10301
10302 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10303
10304         * lily/align-interface.cc (align_elements_to_extents): warn if
10305         called too early. Fixes: disappearing-staff-lines.ly
10306
10307         * VERSION (PACKAGE_NAME): release 2.5.24
10308
10309 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10310
10311         * stepmake/aclocal.m4: Typo.
10312
10313         * flower/string.cc (substitute): Take two strings or two
10314         characters.  Update callers.
10315
10316 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10317
10318         * flower/file-name.cc (File_name): Slashify.
10319
10320         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10321
10322         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10323
10324         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10325
10326         * configure.in (gui_b): Use it.
10327
10328         * lily/lilypond.rc.in: New file.
10329
10330         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10331
10332 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10333
10334         * Documentation/user/advanced-notation.itely: edit of Text
10335         section; clarify text scripts vs. text markup.
10336
10337 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10338
10339         * lily/multi-measure-rest-engraver.cc
10340         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10341         separation items on start. Fixes mm rests in start of score.
10342
10343         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10344         don't access StaffSymbol if not there.
10345         Fixes: crash-staff-symbol-engraver.ly.
10346
10347         * lily/instrument-name-engraver.cc (class
10348         Instrument_name_engraver): data member first_. Create
10349         InstrumentName on start. 
10350
10351 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10352
10353         * Documentation/user/instrument-notation.itely: add guitar
10354         position.
10355
10356         * Documentation/user/introduction.itely,
10357         Documentation/user/lilypond.tely,
10358         Documentation/user/tutorial.itely: begin pruning
10359         unused (duplicated) cindex entries and misc cleanup.
10360
10361 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10362
10363         * input/test/volta-chord-names.ly: Bring the explanation up to
10364         date.
10365
10366 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10367
10368         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10369         Specify `@documentencoding utf-8' for html, ignore warnings.
10370
10371 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10372
10373         * THANKS: Added bughunters.
10374
10375 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10376
10377         * lily/main.cc: update help string for `lilypond -H'.
10378
10379         * po/fi.po: update.
10380         
10381 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10382
10383         * Documentation/user/advanced-notation.itely: minor fixes.
10384
10385 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10386
10387         * scm/editor.scm: New module.
10388
10389         * scm/lily.scm (gui-main): Use it.
10390
10391         * scm/framework-gnome.scm (spawn-editor): Use it.
10392
10393         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10394
10395 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10396
10397         * scm/framework-ps.scm (load-font-via-GS):  new function.
10398
10399         * lily/pango-font.cc (pango_item_string_stencil): add support for
10400         CID keyed font.
10401
10402         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10403
10404 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10405
10406         * Documentation/user/basic-notation.itely: add @ref.
10407
10408         * Documentation/user/advanced-notation.itely: add example
10409         of 5/8 beaming.
10410
10411 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10412
10413         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10414
10415         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10416         going through ps2pdf wrappers.
10417
10418 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10419
10420         * Documentation/user/instrument-notation.itely: petrucci note
10421         heads: updated docu
10422
10423         * input/regression/note-head-style.ly: updated regression test;
10424         indentation fixes
10425
10426         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10427         heads as default
10428
10429         * mf/parmesan-heads.mf: minor editing; use musicological names
10430         (rather than optical description) as note head names
10431
10432         * scm/output-lib.scm: complete petrucci heads
10433
10434 2005-05-09  Pal Benko  <benkop@freestart.hu>
10435
10436         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10437         heads, but bigger)
10438
10439 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10440
10441         * lily/main.cc (main_with_guile): Remove no files check.
10442
10443         * lily/main.cc (ly:usage): Export to Scheme.
10444
10445         * scm/lily.scm (no-files-handler): New function.
10446
10447         * scm/lily.scm (lilypond-main): Use it.
10448
10449         * configure.in (gui_b): Add mbrtowc checking.
10450         Resurrect [utf8/]wchar.h checking.
10451
10452 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10453
10454         * Documentation/user/advanced-notation.itely (Metronome marks):
10455         Add link to the program reference for MetronomeMark
10456
10457         * Documentation/user/lilypond-book.itely (An example of a
10458         musicological document): Correct the example using psfonts 
10459
10460 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10461
10462         * po/fi.po: update after a lesson how to update entries against
10463         source.
10464         
10465         * po/TODO: document the lesson.
10466
10467 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10468
10469         * configure.in (gui_b): remove wcrtomb checking.
10470
10471         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10472         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10473
10474 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10475
10476         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10477         keep Scheme expressions and strings unmodified when doing the
10478         conversion to postfix notation for slurs and beams. Should
10479         hopefully solve most related conversion problems. 
10480
10481         * Documentation/user/lilypond-book.itely : Clarify and correct how
10482         to call dvips with -h psfonts.
10483
10484 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10485
10486         * Documentation/user/instrument-notation.itely (Entering lyrics):
10487         Typo.  Fixes build.
10488
10489 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10490
10491         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10492
10493         * Documentation/user/lilypond.tely, lilypond-book.itely,
10494         tutorial.itely: change references to 2.5.x to 2.6.x.
10495
10496         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10497         vs \lyricmode.
10498
10499         * Documentation/user/invoking.itely: remove old info about
10500         lilypond-profile.
10501
10502         * Documentation/topdocs/INSTALL.texi: remove old info about
10503         lilypond-profile, add warning about needing international fonts
10504         to build docs.
10505
10506 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10507
10508         * lily/include/grob-info.hh (class Grob_info): make data member
10509         private. Changes throughout.
10510
10511         * input/regression/alignment-order.ly: new file. 
10512
10513         * lily/vertical-align-engraver.cc (acknowledge_grob): read
10514         alignAboveContext and alignBelowContext
10515
10516 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10517
10518         * lily/pfb.cc (LY_DEFINE): add cast.
10519
10520         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
10521         matches .otf
10522         (write-preamble): warn about unknown fonts.
10523
10524         * lily/pfb.cc (Module): new function ly:otf->cff
10525
10526         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
10527         (get_otf_table): new function.
10528
10529 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10530
10531         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
10532         iso. ps2png.
10533
10534 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
10535
10536         * po/fi.po: apply second round of update.
10537
10538 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10539
10540         * scm/x11-color.scm (make-x11-color-handler): don't use
10541         #\sp. Apparently doesn't work on all platforms. 
10542
10543 2005-05-06  Graham Percival  <gperlist@shaw.ca>
10544
10545         * Documentation/user/advanced-notation.itely, putting.itely,
10546         tutorial.itely, global.itely, introduction.itely: really minor fixes.
10547
10548 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10549
10550         * VERSION (PACKAGE_NAME): release 2.5.23
10551
10552 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10553
10554         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
10555         convert to utf-8.
10556
10557         * THANKS: Add translators for this release, convert to utf-8.
10558
10559         * mf/GNUmakefile (MFTRACE_FLAGS):
10560         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
10561         outdir as option (WAS: hardcoded).
10562
10563 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10564
10565         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
10566         finished_span_
10567
10568         * THANKS: add Hans Forbrich.
10569
10570         * Documentation/topdocs/NEWS.tely (Top): document new feature.
10571
10572         * Documentation/user/basic-notation.itely (Staff symbol): document
10573         start/stop staff. Reference to ossia.ly
10574
10575         * input/test/ossia.ly: new example using stop and startStaff.
10576
10577         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
10578         in other words, don't create "|" barline at start of the score.
10579         (start_translation_timestep): don't set whichBar for start of score.
10580
10581         * input/regression/staff-halfway.ly: use new functionality.
10582
10583         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
10584         start and stop staff based on events.
10585
10586         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
10587
10588         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
10589
10590 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10591
10592         * Documentation/user/programming-interface.itely (How markups work
10593         internally ): remove \encoding reference.
10594
10595 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
10596
10597         * scripts/convert-ly.py: Attempt to do a smarter update of 
10598         text markups from versions < 1.9.0 with arbitrary nesting.
10599
10600 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
10601
10602         * po/fi.po: convert to utf-8, and update.
10603
10604 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10605
10606         * make/lilypond.suse.spec.in: update from suse 2.4 package.
10607
10608         * lily/*.cc: more <? >? to min/max changes
10609
10610         * lily/include/interpretation-context-handle.hh: rename
10611         Interpretation_context_handle to Context_handle.
10612
10613 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
10614
10615         * input/regression/GNUmakefile (local_delete): use `find` together 
10616         with `xargs` to avoid too long argument-lists in cmd line.
10617
10618 2005-05-04  Graham Percival  <gperlist@shaw.ca>
10619
10620         * Documentation/user/introduction.itely: updates "About this manual".
10621
10622         * Documentation/user/advanced-notation.itely,
10623         invoking.itely: minor fixes.
10624
10625 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10626
10627         * COPYING: add font exception. Update FSF address. 
10628
10629         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
10630         should be taken without child context.
10631
10632         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
10633
10634         * scm/define-markup-commands.scm (triangle): new command, as
10635         robust replacement for unicode Delta/Triangle.
10636
10637 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10638
10639         * ps/music-drawing-routines.ps: add fillp argument.
10640
10641         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
10642
10643         * lily/font-config.cc (init_fontconfig): don't add cff/
10644
10645         * VERSION (PACKAGE_NAME): release 2.5.22
10646
10647         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
10648
10649         * lily/grace-engraver.cc (consider_change_grace_settings): use
10650         is_alias(). Fixes problem with CueVoice grace notes. 
10651
10652         * lily/simultaneous-music-iterator.cc (construct_children): call
10653         Music_iterator::quit() for iterators that start out invalid. This
10654         fixes indefinitely continuing contexts.
10655
10656         * buildscripts/substitute-encoding.py: new file
10657
10658         * Documentation/user/basic-notation.itely (Basic polyphony): fix
10659         missing @end 
10660
10661         * scripts/lilypond-book.py (write_if_updated): print file name.
10662
10663         * Documentation/user/basic-notation.itely (Explicitly
10664         instantiating voices): idem.
10665
10666         * Documentation/user/advanced-notation.itely (Text spanners):
10667         remove stray { } 
10668
10669         * lily/context.cc (default_child_context_name): the default child
10670         is now first in accepts_list_.
10671
10672         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
10673         \defaultchild to all relevant contexts.  This fixes:
10674         drums-pitch.ly.
10675
10676         (Probably also fixes similar problems with ancient
10677         transcriptions getting CueVoices instead of the desired voices.)
10678  
10679         * lily/context-def.cc (get_default_child): new function.
10680         (get_accepted): place default child in front of list.
10681
10682         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
10683
10684         * lily/include/context-def.hh (struct Context_def): add
10685         default_accept_
10686
10687 2005-05-03  Graham Percival  <gperlist@shaw.ca>
10688
10689         * scm/define-grobs.scm: remove "remove-first" line, since
10690         the absent property is set to #f anyway.
10691
10692         * Documentation/user/basic-notation.itely,
10693         advanced-notation.itely, instrument-notation.itely: minor
10694         fixes.
10695
10696         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
10697
10698         * Documentation/user/advanced-notation.itely,
10699         changing-defaults.itely: consolidate Text stuff in
10700         advanced notation.
10701
10702         * Documentation/user/global.itely: better docs for \header.
10703
10704         * Documentation/user/putting.itely: new chapter; placeholder
10705         for future expansion.
10706
10707         * Documentation/user/examples.itely: moved "suggestions for
10708         writing LP files" section into putting.itely.
10709
10710         * Documentation/user/lilypond.itely: added new chapter,
10711         fixed the short table of contents.
10712
10713 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10714
10715         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
10716         infinity for unfeasible beams.
10717
10718         * make/lilypond.fedora.spec.in (Group): idem.
10719
10720         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
10721
10722         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
10723
10724         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
10725         fonts directly.
10726
10727         * buildscripts/gen-emmentaler-scripts.py (i): idem.
10728
10729         * mf/GNUmakefile: remove all CFF rules.
10730
10731         * scm/framework-ps.scm (ps-embed-cff): reinstate.
10732
10733         * lily/open-type-font-scheme.cc (LY_DEFINE):
10734         new function ly:otf-font-table-data.
10735         (LY_DEFINE): new function otf-font?
10736
10737 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10738
10739         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
10740         ($(outdir)/Fontmap.lily): idem.
10741
10742         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
10743         for PFAEmmentaler-XXX.pfa. 
10744
10745         * Documentation/user/music-glossary.tely (accidental): NL
10746         translation of accidental.
10747
10748 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
10749
10750         * flower/include/international.hh: Bugfix: include "string.hh".
10751
10752         * lily/include/mingw-compatibility.hh: New file.
10753
10754         * flower/include/libc-extension.hh (memrev): Rename from strrev.
10755
10756         * configure.in: Search for mingw wcrtomb library.
10757
10758 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
10759
10760         * scripts/convert-ly.py: Bug fix
10761
10762         * Documentation/user/changing-defaults.itely (Common tweaks):
10763         Added example where the context has to be specified explicitly
10764         (MetronomeMark). 
10765
10766 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10767
10768         * scripts/lilypond-book.py (ly_options): set timing to #f for
10769         notime option.
10770
10771         * scripts/convert-ly.py (conv): typo.
10772
10773         * flower/*.cc: remove <? and >?
10774         
10775         * lily/*.cc: remove <? and >?
10776
10777         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
10778         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
10779         editor.
10780
10781 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10782
10783         * lily/part-combine-engraver.cc: add space to variable list.
10784
10785 2005-04-30  Graham Percival  <gperlist@shaw.ca>
10786
10787         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
10788         remove-first to false (matches docs)
10789
10790         * Documentation/user/advanced-notation.itely: corrected docs
10791         concerning remove-first.
10792
10793 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
10794
10795         * lily/part-combine-engraver.cc: make sure that the relevant
10796         properties are included in the documentation.
10797
10798 2005-04-28  Graham Percival  <gperlist@shaw.ca>
10799
10800         * Documentation/user/lilypond-book.itely: Bernard's docs
10801         for \betweenLilyPondSystem.
10802
10803 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10804
10805         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
10806         remarks.
10807
10808 2005-04-28  Pal Benko  <benkop@freestart.hu>
10809
10810         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
10811         only on vertical lines of flexa shape, and use a constant
10812         thickness value for horizontal lines (patch slightly modified by
10813         Jürgen Reuter)
10814
10815         * lily/include/mensural-ligature.hh: make 2 comments clearer
10816
10817 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
10818
10819         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
10820         to need_extra_horizontal_space; bugfix: use class scope to avoid
10821         global namespace pollution
10822
10823         * Documentation/user/instrument-notation.itely (ligatures): added
10824         comment on possible future syntax change and how to work around
10825
10826         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
10827         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
10828         intervals (fixes agnus dei example)
10829
10830         * Documentation/user/instrument-notation.itely (white mensural
10831         ligatures): selected a more illustrative example
10832
10833 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
10834
10835         * Documentation/index.html.in: specify utf-8 charset in meta content.
10836
10837 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10838
10839         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
10840         empty 2nd page for single page.
10841
10842         * scm/lily.scm: remove p&c definitions.
10843
10844         * po/zh_TW.po (Module): new translation.
10845
10846         * lily/lily-guile.cc (ly_chain_assoc): remove.
10847
10848         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
10849         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
10850
10851 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10852
10853         * lily/beaming-info.cc: remove infinity_i
10854
10855         * scripts/abc2ly.py (out_filename): fix thinko with \version.
10856
10857 2005-04-26  Graham Percival  <gperlist@shaw.ca>
10858
10859         * Documentation/user/basic-notation.itely,
10860         instrument-notation.itely, advanced-notation.itely,
10861         changing-defaults.itely: minor fixes.  Added docs
10862         for colors to advanced-notation.itely.
10863
10864         * Documentation/user/advanced-notation.itely: fixed compile
10865         problem and added Bernard's x11-color doc patch.
10866
10867 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
10868
10869         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
10870         alright this time round.
10871
10872 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10873
10874         * Documentation/topdocs/INSTALL.texi (Top): idem.
10875
10876         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
10877
10878         * VERSION (MAJOR_VERSION): release 2.5.21
10879
10880         * scm/output-ps.scm (grob-cause): bugfix.
10881
10882 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
10883
10884         * cygwin/*: Update.
10885
10886         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
10887         stuff.
10888
10889         * scm/output-ps.scm (grob-cause): Bugfix.
10890
10891         * scm/lily.scm (ly:load): Remove x11-color.
10892
10893         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
10894         quote executable, fixes getting version from program --with
10895         --options.
10896         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
10897         $ac_exeect.
10898
10899         * Documentation/user/GNUmakefile: Only build music-glossary with
10900         rendered lilypond snippets during web.
10901
10902 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10903
10904         * po/de.po: update.
10905
10906         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
10907
10908 2005-04-22  Laura Conrad <lconrad@laymusic.org>
10909  
10910         * scripts/abc2ly:
10911         second title line append with punctuation dash character;
10912         encode abc2ly python strings in utf-8
10913        
10914 2005-04-21  Laura Conrad <lconrad@laymusic.org>
10915
10916         * scripts/abc2ly fix chords (again)
10917  
10918 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
10919
10920         * scm/x11-color.scm: new file
10921         All x11 color names can be accessed with:
10922         #(x11-color 'ColorName),
10923         #(x11-color "ColorName") or:
10924         #(x11-color "color name")
10925         If the x11 color name is not recognised then it defaults
10926         to black
10927
10928         * scm/lily.scm: amended to call scm/x11-color.scm
10929
10930 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10931
10932         * Documentation/user/invoking.itely (Reporting bugs): comment out
10933         reference to online PNG bug repository.
10934
10935 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10936
10937         * lily/translator-scheme.cc (ly:translator-property): Remove.
10938         Update callers.
10939
10940         * lily/context-scheme.cc (ly:context-now): Move from translator.
10941         Update callers.
10942
10943 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10944
10945         * input/regression/grid-lines.ly (skips): refine example.
10946
10947         * scm/define-context-properties.scm
10948         (all-user-translation-properties): doc autoBeamCheck
10949
10950         * input/regression/grid-lines.ly (Module): new file.
10951
10952         * lily/grid-point-engraver.cc (Module): new file.
10953
10954         * lily/grid-line.cc (Module): new file.
10955
10956         * lily/grid-line-span-engraver.cc (Module): new file.
10957
10958         * lily/grid-line-interface.cc (Module): new file.
10959
10960 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10961
10962         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
10963         missing parameter, actualy cdr through list.  Actually return a
10964         list with ENTRY removed (was '()).
10965
10966         * scripts/convert-ly.py: Update.  Print warning if file cannot be
10967         opened.
10968         (do_conversion): Fix printing of continuation comma.
10969
10970         * Documentation/user/advanced-notation.itely (Beam formatting):
10971         Remove refbugs about compound time and mixed duration.
10972
10973         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
10974         modulo moments explicitely.
10975
10976         * lily/moment.cc (operator %): New function.
10977
10978         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
10979
10980         * lily/translator-scheme.cc (ly:translator-now,
10981         ly:translator-property): New function.
10982
10983         * scm/auto-beam.scm (default-auto-beam-check): New function.
10984
10985         * lily/auto-beam-engraver.cc (test_moment): Use it.
10986
10987         * flower/rational.cc (operator %): Bugfix.
10988
10989 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
10990
10991         * scripts/abc2ly: Bugfix
10992
10993 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10994
10995         * python/fontextract.py (write_extracted_fonts): bugfix, too many
10996         %'s on EndFont comment.
10997
10998         * lily/ledger-line-spanner.cc: some more words of explanation.
10999
11000 2005-04-20  John Williams <williams@tni.com>  
11001         
11002         * scripts/lilypond-book.py: htmlquote bugfix.
11003         Allow snippets to be given distinct filenames.
11004         Allow the default alt text to be overridden.
11005
11006 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11007
11008         * ly/performer-init.ly: Bugfix
11009
11010         * THANKS: Added bughunters.
11011
11012 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11013
11014         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11015
11016         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11017         position (was: use modulo measure length).
11018
11019         * configure.in (no gui_b): Remove optional gtk+ requirement.
11020
11021 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11022
11023         * Documentation/user/basic-notation.itely (Pitches): add
11024         LedgerLineSpanner.
11025
11026         * lily/dynamic-engraver.cc (process_music): set right bound to
11027         script if present. Else, do not set.
11028         (acknowledge_grob): only set right bound of finished spanner to
11029         note column if no other bound is set.
11030
11031         * python/lilylib.py (make_ps_images): switch back to png16m.
11032         
11033 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11034
11035         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11036         writing up to date file.  Add dvips usage suggestion.
11037
11038         * scripts/convert-ly.py: Fix error message.
11039         Print usage if no files on command line.
11040         (usage): Add example usage.
11041
11042         * input/test/compound-time.ly: New file.
11043
11044         * input/test/circle.ly: New file.
11045
11046         * Documentation/topdocs/NEWS.tely: Use them.
11047
11048         * input/test/boxed-stencil.ly: Remove \score.
11049
11050         * buildscripts/mf-to-table.py (base): Add .log dependency.
11051
11052         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11053         pfa's.  Add .log dependency
11054
11055         * scm/define-markup-commands.scm (lower): New command.
11056
11057         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11058         make it default.
11059
11060 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11061
11062         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11063         also to finished cresc as right bound. This fixes:
11064         skip-string-decresc.ly
11065
11066         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11067         relative_coordinate if extent is empty.
11068
11069         * lily/stem.cc (width_callback): determine correct extent if flag
11070         is not there. This fixes slur-no-flag.ly
11071
11072         * lily/grace-engraver.cc (consider_change_grace_settings): new
11073         function.
11074         (initialize): also consider_change_grace_settings() on
11075         initialization. Fixes large grace notes at start of score.
11076
11077         * lily/break-align-interface.cc (do_alignment): don't translate if
11078         total_extent is empty.
11079
11080         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11081
11082 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11083
11084         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11085         with slash.
11086
11087 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11088
11089         * stepmake/aclocal.m4: Remove tfm_path.
11090
11091 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11092
11093         * scm/music-functions.scm (markup-expression->make-markup): fix
11094         bug with cons arguments of markup commands.
11095         (music->make-music): fix music expression property list building
11096
11097 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11098
11099         * aclocal.m4: Massage package names.
11100
11101         * SCons updates.
11102
11103 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11104
11105         * VERSION (PACKAGE_NAME): release 2.5.20
11106
11107         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11108         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11109
11110         * lily/percent-repeat-engraver.cc (try_music): add measure before
11111         next_moment to future processing moment. Fixes:
11112         percent-repeat-mm-rest.ly
11113         (process_music): don't add moment for 2nd time.
11114
11115         * input/regression/repeat-percent.ly: add mmrests as extra test.
11116
11117         * lily/axis-group-engraver.cc (acknowledge_grob): read
11118         keepAliveInterfaces to decide what to kill.
11119
11120         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11121         percent-repeat-interface to keepAliveInterfaces. This fixes
11122         percent-repeat-harakiri.
11123
11124 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11125
11126         * SCons updates.
11127
11128 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11129
11130         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11131
11132         * aclocal.m4: remove --enable-tfm-path configure option
11133
11134         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11135
11136         * scm/backend-library.scm (postscript->png): newline after
11137         finishing command.
11138
11139         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11140         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11141
11142         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11143
11144         * lily/score.cc (default_rendering): use Music_output too.
11145
11146         * input/test/chord-names-languages.ly (Module): rename file.
11147
11148         * lily/text-spanner.cc: add bound-padding.
11149
11150         * lily/paper-book.cc (systems): accept Paper_score
11151         iso. Paper_system vector. 
11152
11153         * input/regression/line-arrows.ly: new file.
11154
11155         * lily/paper-score.cc (process): run get_paper_systems() only once.
11156
11157         * lily/line-spanner.cc (line_stencil): add arrows.
11158
11159 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11160
11161         * lily/line-interface.cc (make_arrow): new function. 
11162         (arrows): idem.
11163
11164 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11165
11166         * input/test/chord-names-german.ly: update for italian/french
11167         chords.
11168         
11169         * Documentation/user/instrument-notation.itely (Printing chord
11170         names): update.
11171
11172 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11173
11174         * lily/include/paper-score.hh (class Paper_score): remove unused
11175         prototypes.
11176
11177         * lily/book.cc (process): add -COUNT to midi output.
11178
11179         * lily/score.cc (book_rendering): remove outname argument
11180         (book_rendering): return list of Music_outputs. 
11181
11182         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11183
11184         * lily/book.cc (process): loop over Music_outputs returned from
11185         Score::book_rendering().
11186
11187         * lily/*.cc (width_callback): remove spurious "unused" warnings
11188         for assert (axis==[XY]_AXIS); 
11189
11190         * lily/include/music-output.hh (class Music_output): smobify class.
11191
11192         * lily/include/paper-score.hh (class Paper_score): make members
11193         private.
11194
11195         * lily/performance.cc (process): return #f iso. #<undefined>. This
11196         prevents #<undefined> leaking into GUILE-userspace.
11197
11198 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11199
11200         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11201
11202 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11203
11204         * scm/chord-name.scm : support for italian and french
11205         chords names.
11206
11207         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11208         a space defined by chordPrefixSpacer when the root name is
11209         direclty followed by a prefix.
11210
11211         * ly/engraver-init.ly : chordPrefixSpacer       
11212         * scm/define-context-properties.scm : chordPrefixSpacer
11213         * ly/property-init.ly : italianChords, frenchChords 
11214
11215 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11216
11217         * mf/feta-din.mf: Remove.
11218
11219         * mf/GNUmakefile (fontdir): Bugfix.
11220
11221         * mf/SConstruct: Some updates.
11222
11223         * SConstruct: Require pkg-config.
11224         (test_program): Bugfix for double digit version compares, use
11225         integer (not string-) compare.
11226         Optionally require gs 8.14.
11227
11228         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11229
11230         * lily/*: s/ifdef HAVE_*/if have/.
11231
11232         * SConstruct (test_lib): New function.  Update pkg-config and some
11233         other requirements.
11234
11235         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11236         freetype, pangof2t.
11237
11238 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11239
11240         * po/lilypond.pot, ...: Update using bison-CVS.
11241
11242         * python/lilylib.py (make_ps_images): Fixo.
11243
11244 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11245
11246         * python/lilylib.py (make_ps_images): typo.
11247
11248         * configure.in (gui_b): make bison optional.
11249
11250         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11251
11252 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11253
11254         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11255         with one parameter can be defined in a LaTeX file when processed
11256         by lilypond-book this will be evaluated between the systems of
11257         a multi-system score. The parameter is the number of systems processed.
11258
11259 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11260
11261         * python/lilylib.py (make_ps_images): Escape newline.
11262
11263         * Documentation/user/music-glossary.tely: Run
11264         texinfo-all-menus-update.
11265
11266 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11267
11268         * scm/lily-library.scm (old-relative-not-used-message)
11269         (version-not-seen-message): Add input-file-name-location to message.
11270
11271         * lily/parser.yy (lilypond): Add token aliases.
11272
11273         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11274         not confuse with alteration.
11275         (alteration): Add.
11276
11277 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11278
11279         * python/lilylib.py (make_ps_images): use -dEPSCrop
11280
11281         * VERSION (PACKAGE_NAME): release 2.5.19 
11282
11283         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11284         only put xrefs in info documentation.
11285
11286         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11287         .pdf rule to tex-rules.make.
11288
11289         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11290         from -systems.* output.
11291
11292         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11293         directly, remove -$(PAGESIZE) target.
11294
11295         * input/test/embedded-postscript.ly: update.
11296
11297 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11298
11299         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11300
11301         * Documentation/user/changing-defaults.itely (Font selection):
11302         document font-name.
11303
11304         * input/regression/font-name.ly: show Pango fonts for
11305         font-name. Update example. 
11306
11307         * lily/pango-select.cc (properties_to_pango_description): don't
11308         convert symbol font-size to number, but use to lookup.
11309
11310         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11311
11312         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11313         (NAME . FILE-NAME) tuples for font descriptions. 
11314         (write-preamble): display BeginFont DSC comments.
11315
11316         * python/fontextract.py (write_extracted_fonts): new file. Extract
11317         font resources from a PS file.
11318
11319         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11320         (Compile_error.process_include): do_file returns chunks.
11321
11322         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11323
11324         * make/lysdoc-targets.make: .texi is .PRECIOUS
11325
11326         * scripts/lilypond-book.py (write_if_updated): new function.
11327
11328 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11329
11330         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11331
11332 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11333
11334         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11335
11336         * input/regression/markup-syntax.ly: remove \score.
11337
11338         * scm/define-markup-commands.scm (draw-circle): add fill argument
11339
11340         * scm/stencil.scm (make-circle-stencil): add fill argument
11341
11342         * ps/music-drawing-routines.ps: add fill argument.
11343
11344         * ly/performer-init.ly: add CueVoice to MIDI too.
11345
11346         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11347         EndEPSF.
11348
11349         * input/regression/markup-eps.ly: new file.
11350
11351         * scm/framework-ps.scm (write-preamble): change order: vars should
11352         be inited before procedures.
11353
11354         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11355         for EPS files.
11356
11357         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11358
11359 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11360
11361         * configure.in (gui_b): add check for ghostscript 8.15
11362
11363 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11364
11365         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11366         start of line. Fixes cresc-after-newline.ly
11367
11368         * lily/source-file.cc (file_line_column_string): use get_column().
11369
11370 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11371
11372         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11373
11374 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11375
11376         * lily/*: use message () iso progress_indication () for messages.
11377         Revise/uniformise user messages.
11378
11379         * flower/warn.cc (progress_indication): New function.
11380         (message): Use it.  Fixes newline problems.
11381
11382         * config.make.in (webdir): Sort out install dirs.
11383
11384         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11385
11386         * python/lilylib.py (command_name): Bugfix.
11387         (make_ps_images):
11388
11389 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11390
11391         * lily/main.cc: --help says what types of backends are availabe
11392
11393 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11394
11395         Fix ./VERSION dependency, and without need to reconfigure.
11396
11397         * lily/main.cc (setup_paths): Update.
11398
11399         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11400
11401         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11402
11403         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11404         Add \line for some simplistic cases.
11405
11406         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11407
11408 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11409
11410         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11411         to compile LY files (useful for adding eg. "-I" args)
11412         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11413         2Gnome command for gnome backend.
11414         (LilyPond-command-formatgnome): call the 2Gnome command. key
11415         binding: C-c C-g
11416
11417 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11418
11419         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11420         depend on all PNG images.
11421
11422 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11423
11424         * GNUmakefile.in: Bugfix: also link .map files.
11425
11426 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11427
11428         * scm/music-functions.scm (music->make-music): generate 
11429         a (make-music ...) sexpr from a music expression.
11430         (display-scheme-music): use guile pretty printer to display the
11431         make-music sexpr.
11432
11433 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11434
11435         * ly/engraver-init.ly: reindent.
11436         Add CueVoice.
11437
11438         * scm/music-functions.scm (music-pretty-string): handle moments
11439         too.
11440         (music-pretty-string): only print non-empty lists.
11441         (cue-substitute): create CueVoice context, which has smaller type.
11442
11443         * lily/moment-scheme.cc (LY_DEFINE): new methods
11444         ly:moment-grace-{numerator,denominator}
11445
11446         * lily/context-handle.cc: remove quit() method. 
11447
11448         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11449         (init_fontconfig): success is 0, not !0
11450
11451 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11452
11453         * mf/feta-nummer-code.mf (code): add plus glyph.
11454
11455         * lily/tie.cc (print): idem.
11456
11457         * lily/slur.cc (print): don't use thickness property for
11458         slur shape-thickness.
11459
11460         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11461         while adding stencils.
11462
11463         * scm/define-markup-commands.scm (with-color): with-color markup
11464         command.
11465         (whiteout): new markup command 
11466         (filled-box): new markup command
11467
11468 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11469
11470         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11471         test for PDF docs.
11472
11473         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11474         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11475         
11476         Notes for tetex-3.0 make web:
11477            psclean.map: s/uhv8a/uhvr8a/
11478            config.ps add:
11479                 p +psfonts_t1.map
11480                 p +psclean.map
11481                 p +typeface.map
11482
11483 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11484
11485         * scm/music-functions.scm (music-pretty-string): fix bug with
11486         string argument.
11487
11488 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11489
11490         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11491
11492 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11493
11494         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11495         only process options if they're there.
11496         (write_file_map): add version-seen? to snippet-map.ly
11497
11498 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11499
11500         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
11501         formatting cleanups.
11502
11503         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
11504         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
11505
11506 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11507
11508         * scm/framework-ps.scm (ps-font-command): don't hash, just use
11509         name directly.
11510
11511         * lily/main.cc (setup_paths): either add mf/out to search path or 
11512         fonts/{otf,type1,etc}
11513         
11514         * lily/font-config.cc (init_fontconfig): either add mf/out to
11515         FontConfig or fonts/{otf,type1,etc}
11516
11517         * GNUmakefile.in: don't put mf/ link in share/ dir.
11518
11519         * lily/staff-spacing.cc: move same-direction-correction to
11520         note-spacing-interface
11521
11522         * scm/lily.scm (lilypond-main): use variable argument count for
11523         exception handler.
11524
11525         * lily/font-config.cc (init_fontconfig): add operator pacification
11526         message.
11527
11528         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
11529
11530         * buildscripts/gen-emmentaler-scripts.py (i): generate
11531         PFAEmmentaler as well.
11532
11533         * scm/framework-ps.scm (munge-lily-font-name): new function
11534         (write-preamble): hack: insert PFA equivalent of CFF into
11535         .PS. This makes LilyPond output printable on normal PS printers
11536         again.
11537
11538         * buildscripts/gen-emmentaler-scripts.py (i): generate
11539         PFAEmmentaler.pfa aswell.
11540
11541 2005-04-06  John Williams <williams@tni.com>  
11542         
11543         * scripts/lilypond-book.py: refactor the compose_ly procedure.
11544         
11545 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11546
11547         * scm/page-layout.scm (default-page-make-stencil): always combine
11548         the header stencil, even if empty. This prevents the body text to
11549         reach up to the margins.
11550
11551         * po/rw.po (Module): new file, for Kinyarwanda.
11552
11553         * input/test/spacing-optical.ly (Module): new file.
11554
11555         * lily/staff-spacing.cc: add same-direction-correction
11556
11557 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11558
11559         * Documentation/user/introduction.itely (Engraving): Comment-out
11560         non-existent file.
11561
11562 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11563
11564         * scm/define-grob-properties.scm (all-user-grob-properties): add
11565         same-direction-correction
11566
11567         * VERSION: release 2.5.18
11568
11569 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
11570
11571         * lily/grob.cc (mark_smob): Check pscore->layout_ before
11572         dereferencing.  Fixes make web.
11573
11574         * lily/midi-stream.cc: Handle unwritable midi file.  Include
11575         errno.h.
11576
11577         * Documentation/user/: Fix links.
11578
11579 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11580
11581         * lily/text-interface.cc (Module): rename from text-item.cc
11582
11583         * input/regression/apply-output.ly (texidoc): function naming fix.
11584
11585         * lily/time-signature-performer.cc (derived_mark): new function.
11586
11587         * lily/lily-parser-scheme.cc:  print mapped file name for progress
11588
11589         * scripts/lilypond-book.py (find_linestarts): new function.
11590         (find_toplevel_snippets): keep track of line numbers.
11591
11592         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
11593         all key changes.
11594
11595         * ly/declarations-init.ly (partCombineListener): use
11596         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
11597
11598         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
11599
11600 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
11601
11602         * lily/text-item.cc: Fix link.
11603
11604         * Documentation/user/changing-defaults.itely (Changing defaults):
11605         Fix programs reference links.
11606
11607         * Documentation/user/music-glossary.tely: Convert to utf-8.
11608
11609 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11610
11611         * make/lilypond-vars.make: remove TEXMF from variables.
11612         remove DEB_BUILD pk font variables.
11613         remove GUILE_LOAD_PATH
11614         remove TeX memory vars.
11615
11616 2005-04-04  Werner Lemberg  <wl@gnu.org>
11617
11618         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
11619
11620 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11621
11622         * ps/lilyponddefs.ps: remove reencode-font
11623
11624         * lily/simple-spacer.cc (add_columns): also compare
11625         directly. Column rank doesn't distinguish between broken and
11626         unbroken columns. This fixes large spaces before time sig changes.
11627
11628         * Documentation/user/point-and-click.itely: document ly:set-option.
11629
11630         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
11631         point_and_click_global is set.
11632
11633         * lily/scm-option.cc (LY_DEFINE): add point-and-click
11634         ly:set-option argument.
11635
11636 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11637
11638         * GNUmakefile.in: Include symlinks in webball.
11639
11640         * Documentation/user/GNUmakefile (source-links): Add symlinks to
11641         source dir for split and non-split manuals.
11642
11643         * Documentation/user/*y: Fix @uref/@inputfile links for
11644         split/non-split HTML documents.
11645
11646         * Documentation/user/GNUmakefile (local-WWW): Do not generate
11647         .ps.gz.
11648         
11649 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11650
11651         * GNUmakefile.in: Add newline.
11652
11653 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
11654
11655         * tex/lilyponddefs.tex: use color instead of xcolor
11656         * scm/output-tex.scm: minor editing
11657
11658 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11659
11660         * scm/music-functions.scm (display-scheme-music): pretty printer
11661         for music expressions.
11662
11663 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11664
11665         * buildscripts/install-info-html.sh (index_file): Fix link.
11666
11667 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
11668
11669         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
11670
11671         * Documentation/index.html.in: Add size estimates with some big pages.
11672
11673         * Documentation/user/tutorial.itely (Running LilyPond for the
11674         first time): Add/replace some @rglos links.  TODO: add more
11675         @rglos links in tutorial, test non-intrusiveness (.css).
11676
11677         * stepmake/bin/add-html-footer.py (do_file): Remove info's
11678         annoying's indication of referencing external document.
11679
11680         * Documentation/user/GNUmakefile: Split version of glossary too.
11681         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
11682         links, not only for html.
11683
11684         * Documentation/user/introduction.itely: Fix some links for other
11685         than html, do not use `here' as link name.
11686
11687 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
11688
11689         * scm/documentation-generate.scm (string-append): Fix @usermanref,
11690         @glossaryref.
11691
11692 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11693
11694         * scm/page-layout.scm (default-page-make-stencil): only add header
11695         if existing and not empty. Fixes spurious programming error.
11696
11697         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
11698
11699 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
11700
11701         * scm/output-tex.scm: implement {re,}setcolor
11702         * tex/lilyponddefs.tex: use color package
11703
11704 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
11705
11706         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
11707         additions to website.
11708
11709         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
11710
11711         * Documentation/user/macros.itexi: Fix @usermanref html links in
11712         split documents: use @inforef.
11713
11714 2005-03-30  Graham Percival  <gperlist@shaw.ca>
11715
11716         * Documentation/user/programming-interface.itely: minor fix.
11717
11718         * Documentation/user/advanced-notation.itely: added info to
11719         Metronome markings.
11720
11721 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
11722
11723         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
11724         use box-stencil.  Remove y-padding argument.
11725         (make-stencil-circler): New function.
11726
11727         * buildscripts/lilypond-words.py (F): 
11728         * elisp/SConscript (a): 
11729         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
11730         * vim/SConscript (a): 
11731         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
11732
11733         * lily/general-scheme.cc: Build fix.
11734
11735         * scm/markup.scm:
11736         * input/regression/markup-scheme.ly: 
11737         * input/regression/markup-syntax.ly: Drop 'new-' from name.
11738
11739         * scm/stencil.scm (make-circle-stencil): New function.
11740
11741         * scm/define-markup-commands.scm (draw-circle): Use it.  New
11742         name (was cicle).  Update callers.
11743         (circle): New markup command, similar to box.
11744
11745         * scm/stencil.scm (circle-stencil): New function.
11746
11747 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
11748
11749         * configure.in: Detect libutf8/wchar.h variant.
11750
11751         * stepmake/aclocal.m4: Modify shared size test.
11752
11753 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11754
11755         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
11756
11757 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11758
11759         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
11760         
11761         * VERSION (PACKAGE_NAME):  release 2.5.17
11762
11763 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
11764
11765         * scm/backend-library.scm (postscript->png): Fix comment and png
11766         message.
11767
11768         * GNUmakefile.in (link-tree): Fix locales.
11769
11770 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11771
11772         * lily/stencil-scheme.cc (LY_DEFINE): change to
11773         ly:stencil-aligned-to, non mutating.
11774
11775         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
11776
11777         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
11778
11779         * lily/quote-iterator.cc (derived_mark): call
11780         Music_wrapper_iterator::derived_mark() too.
11781
11782         * lily/grace-engraver.cc (derived_mark): change signature, add
11783         const.
11784
11785 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11786
11787         * SConstruct (symlink): 
11788         * GNUmakefile.in (link-tree): Add scripts to prefix.
11789
11790         * lily/general-scheme.cc (ly:effective-prefix): New function.
11791
11792         * scm/backend-library.scm (postscript->png): Use it.
11793
11794 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11795
11796         * lily/paper-score.cc (process): don't delete grobs after
11797         producing stencils. 
11798
11799         * scm/part-combiner.scm (determine-split-list): switch off
11800         debugging info.
11801
11802         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
11803         if available.
11804
11805         * scm/define-context-properties.scm
11806         (all-user-translation-properties): add stringNumberOrientations.
11807
11808         * lily/new-fingering-engraver.cc (position_scripts): make generic,
11809         so fingering and string-numbers are separately controlled.
11810
11811 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11812
11813         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
11814         not use debugging.
11815
11816 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11817
11818         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
11819
11820         * config.hh.in: add HAVE_FONTCONFIG.
11821
11822         * Documentation/user/instrument-notation.itely (String number
11823         indications): new node.
11824
11825         * input/regression/new-markup-syntax.ly (texidoc): add circle.
11826
11827         * lily/new-fingering-engraver.cc (add_string): new function. 
11828         (acknowledge_grob): accept string-number-event as well.
11829
11830         * scm/define-markup-commands.scm (circle): new markup command.
11831
11832         * scm/output-lib.scm (print-circled-text-callback): new function.
11833
11834         * lily/GNUmakefile: move ifeq after include stepmake.make.
11835
11836 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11837
11838         * config.make.in (HAVE_LIBKPATHSEA_SO):
11839         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
11840
11841         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
11842         add KPATHSEA_LIBS.
11843
11844         * debian/watch: 
11845         * debian/control: Update.
11846
11847 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11848
11849         * input/test/title-markup.ly (spaceTest): remove.
11850
11851         * input/test/embedded-tex.ly (Module): remove.
11852
11853         * input/test/music-box.ly: use 'name property, not ly:music-name.
11854
11855         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
11856
11857         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
11858
11859 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11860
11861         * Documentation/topdocs/INSTALL.texi (Top): Remove information
11862         about xdeltas.  Add information about CVS.
11863
11864         * scm/lily.scm (lilypond-main): Fix invocation of handler,
11865         gracefully handle failed files.
11866
11867         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
11868
11869         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
11870         small fixes.
11871
11872         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
11873         No unnecessarily specific i18n messages.  Remove stray `1'.
11874
11875 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11876
11877         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
11878         documentencoding
11879
11880         * scm/documentation-lib.scm (texi-file-head): set utf-8
11881         documentencoding.
11882
11883         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
11884         Delta, not the Symbol one. 
11885
11886         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
11887         for the .map file.
11888
11889         * Documentation/topdocs/INSTALL.texi (Top): add running
11890         requirement as compilation requirement.
11891
11892 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11893
11894         * buildscripts/mutopia-index.py (headertext): add h1 header and
11895         utf-8 charset meta field.
11896
11897         * input/GNUmakefile: prune example list.
11898
11899         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
11900         options.
11901
11902         * lily/slur-scoring.cc (get_base_attachments): only look at stem
11903         extent for visible stems.
11904
11905         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
11906
11907 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
11908
11909         * Documentation/topdocs/INSTALL.texi (Top): Updates.
11910
11911         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
11912
11913 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11914
11915         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
11916         pass inf/nan into slur scoring.
11917
11918         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
11919         page.
11920
11921         * scripts/abc2ly.py (dump_voices): use alphabet().
11922
11923 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
11924         
11925         * mf/GNUmakefile (depth): use $(FONTFORGE). 
11926
11927 2005-03-27 Matthias Neeracher <neeracher@mac.com>
11928         
11929         * flower/include/virtual-methods.hh: simplify. Patch by
11930
11931 2005-03-25  John Williams <williams@tni.com>  
11932
11933         * scripts/lilypond-book.py (main): add png for HTML too, guess
11934         only if necessary. 
11935
11936 2005-03-25  Graham Percival  <gperlist@shaw.ca>
11937
11938         * Documentation/topdocs/INSTALL.texi: now recommends
11939         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
11940
11941         * Documentation/user/basic-notation.itely,
11942         Documentation/user/tutoria.itely: warn about
11943         only one (phrasing) slur at once.
11944
11945 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
11946
11947         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
11948
11949 2005-03-23  Graham Percival  <gperlist@shaw.ca>
11950
11951         * Documentation/user/basic-notation.itely: fixed info about
11952         ending a (de)cresc.
11953
11954         * Documentation/user/lilypond-book.itely: fixed
11955         lilypond-book filter example and warned about not doing
11956         --filter and --process at the same time.
11957
11958 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
11959
11960         * lily/parser.yy (bass_number),
11961         Documentation/user/instrument-notation.itely (Figured bass): 
11962         Add the possibility to use text markup in figured bass. 
11963
11964 2005-03-19  Graham Percival  <gperlist@shaw.ca>
11965
11966         * Documentation/user/global.itely: added info about naming
11967         identifiers and breakbefore.
11968
11969         * Documentation/user/invoking.itely: added info about batch
11970         processing files with convert-ly, removed references to TeX
11971         in the jail section.
11972
11973         * Documentation/user/examples.itely: possibly fixed piano
11974         dynamics.
11975
11976         * Documentation/user/advanced-notation.itely: added info
11977         about removing other types of Staff.
11978
11979         * Documentation/user/instrument-notation.itely: possibly
11980         fixed piano staff line switch.
11981
11982         * Documentation/user/changing-defaults.itely: added info
11983         about using normal font in titles.
11984
11985 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11986
11987         * VERSION (PATCH_LEVEL): release 2.5.16
11988
11989         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
11990         explicitly.
11991
11992 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11993
11994         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
11995         whitespace.
11996
11997         * python/lilylib.py (make_ps_images):
11998         * scm/backend-library.scm (postscript->pdf, postscript->png):
11999         Quote file name.  Use format rather than string-append juggling.
12000
12001 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12002
12003         * python/lilylib.py (make_ps_images): add x to -g argument. 
12004
12005         * lily/key-performer.cc (create_audio_elements): don't use
12006         scm_eval_string. Check for minor 3rd directly.
12007   
12008         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12009         (sarabandeCelloGlobal): key is D minor, not F major.
12010
12011 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12012
12013         Fix truncated --png output (Peter Danenberg).
12014         
12015         * python/lilylib.py (make_ps_images):
12016         * scripts/ps2png.py (copyright): Grok --papersize option.
12017
12018         * scm/backend-library.scm (postscript->png): Add parameter
12019         PAPERSIZE.  Update callers.
12020
12021         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12022         Fixes symbol placement.
12023
12024         * lily/spanner.cc: 
12025         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12026         <libc-extension.hh>).
12027
12028 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12029
12030         * Nitpick run.
12031
12032         * buildscripts/fixcc.py: Update.
12033
12034         Builddir run fixes.
12035
12036         * HACKING (datadir): Add VERSION.
12037
12038         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12039         higher up.
12040
12041 2005-03-15  Werner Lemberg  <wl@gnu.org>
12042
12043         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12044         diagonal stem doesn't become thinner.
12045
12046 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12047
12048         * buildscripts/fixcc.py: Fixes (Werner).
12049
12050 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12051
12052         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12053         Emmentaler/Aybabtu.
12054
12055         * GNUmakefile.in: fix lilypond-words path.
12056
12057         * po/tr.po: update to 2.3.21
12058
12059         * lily/new-fingering-engraver.cc (position_scripts): take priority
12060         from head position.
12061
12062         * input/regression/finger-chords-order.ly (texidoc): new file.
12063
12064 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12065
12066         * make/ly-rules.make: 
12067         * stepmake/aclocal.m4: 
12068         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12069
12070         * buildscripts/fixcc.py (rules): Leave space after operator.
12071
12072 2005-03-14  Werner Lemberg  <wl@gnu.org>
12073
12074         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12075         top of the glyph with smooth curve.
12076
12077 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12078
12079         * Documentation/user/global.itely (Page layout): remove
12080         printpagenumber.
12081
12082 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12083
12084         * input/regression/mensural-ligatures.ly: new file (with examples
12085         compiled by Pal Benko).
12086
12087         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12088         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12089         musicglyph access.  Many small beautifications in ancient
12090         examples.
12091
12092         * input/test/divisiones.ly: fixed indentation; small
12093         beautifications
12094
12095         * ly/engraver-init.ly: added FIXME comment
12096
12097         * scripts/lilypond-book.py,
12098         Documentation/user/lilypond-book.itely: added music fragment
12099         option "packed" to lilypond-book
12100
12101         * Documentation/user/instrument-notation.itely: Bugfix: added
12102         missing LedgerLineSpanner color setting in several places.  Added
12103         music fragment option "packed" to VaticanaContext example.
12104
12105 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12106
12107         * scm/define-grobs.scm (all-grob-descriptions): switch off
12108         Hyphen_spanner::set_spacing_rods 
12109
12110         * lily/lyric-hyphen.cc (print): add padding between syllable and
12111         hyphen.
12112         (print): shorten hyphen in tight situations (determine using
12113         minimum-length)
12114
12115         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12116         0.4pt.
12117
12118 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12119
12120         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12121
12122         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12123         header/footer markings for regression-test.
12124
12125         * scm/backend-library.scm (output-scopes, header-to-file): Move
12126         from framework-tex.scm.
12127
12128         * scm/framework-ps.scm (output-framework)
12129         (output-preview-framework):
12130         * scm/framework-eps.scm (output-classic-framework)
12131         (output-framework): Use it.  Fixes collated files.
12132
12133 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12134
12135         * input/sakura-sakura.ly: 
12136         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12137
12138         * buildscripts/guile-gnome.sh: Update.
12139
12140         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12141
12142         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12143
12144 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12145
12146         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12147         culprit: always exit the loop if we find a rod, even if it has
12148         distance < 0. 
12149
12150         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12151         algorithm.
12152
12153         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12154         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12155
12156         * scm/output-svg.scm (dashed-line): new  function body.
12157         
12158         * GNUmakefile.in: create .htaccess.
12159
12160 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12161
12162         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12163
12164 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12165
12166         * VERSION (PACKAGE_NAME): release 2.5.15
12167
12168         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12169
12170         * scm/framework-svg.scm (output-framework): put scaling in
12171         document header. Apply scaling only once.
12172         (output-framework): dump page size in px, not mm. 
12173
12174         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12175         from font-size.
12176
12177         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12178         ly:outputter-output-scheme, new function.
12179
12180         * scm/output-svg.scm (pango-description-to-svg-font): new function
12181
12182 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12183
12184         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12185         target.
12186
12187         * input/typography-demo.ly: new file.
12188
12189 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12190
12191         * Documentation/user/global.itely (File structure): Add markup blocks
12192         to toplevel expressions.
12193         (Multiple movements, Creating titles): Add markup blocks.
12194
12195         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12196         <libc-extension.hh>).
12197
12198         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12199
12200         * flower
12201         * lily
12202         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12203
12204 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12205
12206         * lily/accidental.cc: special bboxes for natural. 
12207
12208         * mf/feta-toevallig.mf: make stems heavier.
12209
12210         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12211         texts as well.
12212
12213         * mf/feta-klef.mf: revise. 
12214
12215         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12216
12217         * mf/feta-klef.mf: add rounded curve at top. 
12218         make thinnib a little heavier.
12219
12220 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12221
12222         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12223
12224         * buildscripts/fixcc.py: New file.
12225
12226         * input/regression/utf8.ly: Update Debian font description.
12227
12228 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12229
12230         * stepmake/aclocal.m4: Fix test.
12231
12232 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12233
12234         * Documentation/user/invoking.itely: added Sebastino Vigna's
12235         docs for the --jail option.
12236
12237 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12238
12239         * lily/stem.cc (print): only produce stemlets if there are no
12240         noteheads on this stem.
12241
12242         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12243         don't crash on stemlet (visible stem without heads).
12244
12245         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12246         unbroken situations. 
12247
12248         * scm/output-lib.scm (center-invisible): new function.
12249
12250         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12251         wishes to determine loose column space.
12252
12253         * lily/font-config.cc (init_fontconfig): add
12254         fonts/{otf,type1,cff}  to path.
12255
12256         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12257
12258         * mf/GNUmakefile (Module): install all fonts under otf/
12259
12260         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12261         replace /fonts/otf/ by /ps/ 
12262
12263         
12264 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12265
12266         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12267
12268         * lily/book.cc (process): Oops, add score_.header_.
12269
12270         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12271
12272         * lily/parser.yy: Handle toplevel and book texts as score.
12273
12274         * scm/page-layout.scm (default-page-make-stencil):
12275         Bugfix: (page-properties rename.
12276
12277         * scm/backend-library.scm (ly:system): Typo.
12278
12279 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12280
12281         * stepmake/stepmake/executable-targets.make (installexe): don't
12282         strip installed executables
12283
12284         * lily/font-select.cc (get_font_by_design_size): revert
12285         pango_description_string as well.
12286
12287         * lily/system.cc (set_loose_columns): put loose column just left
12288         of next column.
12289
12290         * lily/include/group-interface.hh (extract_grob_array): rename
12291         from Pointer_group_interface__extract_grobs
12292
12293         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12294
12295         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12296         function. Keep ledgered note heads at a minimum distance.
12297         Introduce minimum-length-fraction
12298         (print): introduce length-fraction property.
12299
12300 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12301
12302         * tex/GNUmakefile: remove latin1.enc rules.
12303
12304 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12305
12306         * scm/titling.scm: Typo.
12307
12308         * input/regression/score-text.ly: Really add.
12309
12310         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12311
12312 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12313
12314         * lily/open-type-font-scheme.cc:  new file.
12315
12316 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12317
12318         * scm/titling.scm (layout-extract-page-properties): Rename from
12319         page-properties.  Update callers.
12320
12321         * lily/lexer.ll (Lily_lexer):
12322         * lily/parser.yy: Junk lyric_markup state.
12323
12324         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12325
12326         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12327         Add texts parameter.
12328
12329 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12330
12331         * lily/lexer.ll (lyric_markup): New mode.
12332         (Lily_lexer::push_lyric_markup_state): New method.
12333         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12334
12335         * lily/parser.yy (book_body):
12336         (toplevel_expression): Grok \markup texts.
12337
12338         * lily/score-scheme.cc (ly:music-scorify): 
12339         * scm/lily-library.scm (collect-music-for-book): Take texts
12340         parameter.
12341
12342         * lily/score.cc (texts_): New member.
12343
12344         * lily/paper-book.cc (systems): Format score texts.
12345
12346         * score-text.ly: New file.
12347
12348         * ttftool/SConscript:
12349         * kpath-guile/SConscript: New file.
12350
12351         * lily/SConscript:
12352         * SConstruct: Update.
12353
12354 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12355
12356         * VERSION (PACKAGE_NAME): release 2.5.14
12357
12358 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12359
12360         * lily/main.cc: Add dummy xgettext markers.
12361
12362 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12363
12364         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12365         requirements
12366
12367         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12368         executable is < 40k
12369
12370         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12371         hack.
12372
12373 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12374
12375         * flower/libc-extension.cc:
12376         * flower/include/libc-extension.hh: [Open]BSD simply cast
12377         cookie/funopen declarations.
12378
12379         * stepmake/aclocal.m4: Check for libkpathsea.so.
12380
12381         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12382         dl_kpse_find_file.
12383
12384 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12385
12386         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12387         (open_library): alternative for static library.
12388
12389 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12390
12391         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12392
12393         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12394
12395         Drop run-time dependency on teTeX.
12396
12397         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12398
12399         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12400         KPATHSEA_LIBS in LIBS.
12401         (STEPMAKE_DLOPEN): New function.
12402
12403         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12404         not path.
12405
12406         * flower/file-path.cc (directories): Rename from paths, as this
12407         return an array of directories (a single path).
12408
12409 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12410
12411         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12412
12413         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12414         new ly:kpathsea-find-file
12415
12416         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12417
12418         * kpath-guile/GNUmakefile: new file
12419
12420         * buildscripts/gen-emmentaler-scripts.py (i): generate
12421         emmentaler-X.fontname as well.
12422
12423         * buildscripts/ps-embed-cff.py: new script
12424
12425         * scm/lily-library.scm: remove ps-embed-cff.
12426
12427         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12428         font loading. 
12429
12430         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12431         fontconfig as well.
12432
12433         * lily/font-config.cc (init_fontconfig): add cff/ too.
12434
12435         * ly/generate-embedded-cff.ly: capitalize.
12436
12437         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12438         so as to register the pango font.
12439
12440         * lily/font-config.cc (init_fontconfig): add
12441         prefix/{otf,type1,mf/out} to fontconfig path.
12442
12443         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12444         overrides all. 
12445
12446         * configure.in (gui_b): remove ec mftrace check
12447
12448         * config.hh.in: use lilypond-Major.Minor as data directory.
12449
12450         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12451
12452         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12453         name.
12454
12455 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12456
12457         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12458         error messages.
12459
12460         * flower/libc-extension.cc:
12461         * flower/include/libc-extension.hh: [Open]BSD fixes for
12462         cookie/funopen declarations.
12463
12464 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12465
12466         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12467         emmentaler.
12468
12469         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12470         lcrm10.
12471
12472         * scm/define-markup-commands.scm (fontsize): new markup
12473         command. Also set baseline-skip
12474
12475 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12476         
12477         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12478         use.
12479
12480 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12481
12482         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12483
12484         * lily/pdf.cc: remove PDF related files
12485
12486 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12487
12488         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12489         <hamamatsu@gmx.de>
12490
12491 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12492
12493         * Documentation/user/advanced-notation.itely: first draft
12494         of reorg done.
12495
12496         * Documentation/user/global.itely: fixed (sub)section
12497         bits of MIDI.
12498
12499 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12500
12501         * cygwin/mknetrel (extras): Bufix (Bertalan).
12502
12503         * Documentation/user/basic-notation.itely (Chords): @ref fix.
12504         * Documentation/user/instrument-notation.itely (Introducing chord
12505         names): Compile fix: must have unique name.
12506
12507 2005-03-02  Graham Percival  <gperlist@shaw.ca>
12508
12509         * Documentation/user/instrument-notation.itely: reorg.
12510
12511 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12512
12513         * scm/output-gnome.scm:
12514         * scm/output-svg.scm: Fix font scaling.
12515
12516 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12517
12518         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
12519         what link to use best.
12520
12521         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
12522         * Documentation/user/tutorial.itely (Automatic and manual beams):
12523         Fix @ref.
12524
12525         * lily/tweak-registration.cc (replace_grob_tweak): New function.
12526         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
12527         * scm/framework-gnome.scm (tweak): Use it.
12528
12529 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12530
12531         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
12532
12533         * scm/output-ps.scm (white-text): reinstate white-text
12534
12535 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12536
12537         * scm/output-ps.scm (offset-add): Remove.
12538
12539         * scm/lily-library.scm (offset-flip-y): New function.
12540         * scm/framework-gnome.scm (tweak): Use it.
12541
12542         * scm/output-gnome.scm (grob-cause): Add parameter.
12543
12544         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
12545         * scm/output-ps.scm (url-link): Move.
12546         (white-text): Warn user about brokenness.
12547
12548         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
12549         wrt ghostscript.
12550
12551 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12552
12553         * lily/slash-repeat-engraver.cc (try_music): always make slashes
12554         if body length smaller than measure length.
12555
12556         * scm/define-markup-commands.scm (with-url): oops. use Y extent
12557         for Y.
12558
12559         * ly/titling-init.ly (tagline): put default tagline in \paper
12560
12561 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12562
12563         * lily/kpath.cc: 
12564         * lily/pdf.cc (Pdf_file): Use more generic error messages.
12565
12566         * scm/lily-library.scm (version-not-seen-message): New function.
12567         * ly/init.ly: Use it.
12568
12569         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
12570         breaks as progess.
12571
12572         * scripts/lilypond-book.py (do_process_cmd): Do not lump
12573         whitespace with l10n message.
12574
12575         * scm/framework-tex.scm (convert-to-ps):
12576         (convert-to-dvi): Do not use overly specific l10n messages.
12577
12578         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
12579
12580         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
12581         merge stderr with stdout.  
12582
12583 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12584
12585         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
12586         Neeracher).
12587
12588 2005-02-29  Graham Percival  <gperlist@shaw.ca>
12589
12590         * Documentation/user/instrument-notation.teily: moved
12591         \arpeggio to Basic.
12592
12593         * Documentation/user/advanced-notation.itely: Articulation to
12594         Basic, a bunch of stuff from Basic moved to Advanced.
12595
12596         * Documentation/user/basic.itely: swapped various sections,
12597         reorganized Basic.
12598
12599 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12600
12601         * flower/memory-stream.cc: 
12602         * flower/libc-extension.cc: Remove obsolete #undefs.
12603
12604         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
12605         more carefully.
12606
12607 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12608
12609         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
12610         dependency.
12611
12612         * VERSION (PACKAGE_NAME): release 2.5.13
12613
12614         * GNUmakefile.in (web-ext): don't ship ps.gz
12615
12616         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
12617         stdout
12618
12619 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12620
12621         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
12622         without libintl.  Now it compiles too.
12623
12624 2005-02-28  Graham Percival  <gperlist@shaw.ca>
12625
12626         * Documentation/user/basic-notation.itely,
12627         instument-notation.itely, advanced-notation.itely:
12628         split up contents of notation.itely.
12629
12630         * Documentation/user/notation.itely: file removed.
12631
12632         * Documentation/user/invoking.itely, converters.itely:
12633         moved convert-ly info to invoking.itely.
12634
12635         * Documentation/user/global.itely, changing-defaults.itely,
12636         sound-output.itexi: moved global settings, file layout, and
12637         sound into global.itely.
12638
12639         * Documentation/user/sound-output.itexi: file removed.
12640
12641         * Documentation/user/lilypond.tely: removed links to
12642         notation.itely and sound.itely.
12643
12644 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12645
12646         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
12647
12648         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
12649  
12650         * THANKS: add sponsor.
12651
12652         * scm/define-markup-commands.scm (with-url): new markup command.
12653
12654         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
12655         tagline.
12656         
12657         * scm/output-tex.scm (url-link): stub.
12658
12659         * scm/output-ps.scm (url-link): new function.
12660
12661         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
12662         ly:set-point-and-click
12663
12664 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12665
12666         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
12667         based on pdf-viewer setting.
12668
12669         * scm/framework-ps.scm (write-preamble): Find and set preferred
12670         pdf-viewer.
12671
12672 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12673
12674         * Documentation/user/point-and-click.itely: update for PDF point &
12675         click.
12676
12677         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
12678         editors based on EDITOR setting.
12679
12680 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12681
12682         * scm/*: Oops, more grand 2005 replace bits.
12683
12684 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12685
12686         * ps/music-drawing-routines.ps: new routine: insert PDF mark
12687
12688         * scm/output-ps.scm (grob-cause): point & click support for
12689         PostScript
12690
12691 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12692
12693         * lily/input-scheme.cc (LY_DEFINE): rename to
12694         ly:input-file-line-column
12695
12696 2005-02-26  Graham Percival  <gperlist@shaw.ca>
12697
12698         * Documentation/user/examples.itely: small fix from Steve Doonan.
12699
12700         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
12701
12702         * THANKS: added Yuval Harel.
12703
12704         * Documentation/user/{various}: inserted two spaces after a period.
12705
12706         * Documentation/user/lilypond.tely: added framework for reorg.
12707
12708         * Documentation/user/basic-notation.itely, instrument-notation.itely,
12709         advanced-notation.itely, global.itely: new files, placeholder for
12710         future reorg.
12711
12712 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
12713
12714         * Documentation/user/notation.itely: revamped Polyphony section
12715         
12716 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12717
12718         * Documentation/user/lilypond-book.itely (Music fragment options):
12719         doc fontload.
12720
12721         * Documentation/user/changing-defaults.itely (Text encoding): add
12722         fontload option to utf8 include
12723
12724         * scripts/lilypond-book.py (compose_ly): add fontload option
12725
12726         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
12727         force-eps-font-include option.
12728
12729         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
12730         black triangle
12731
12732         * Documentation/user/invoking.itely (Editor support): remove
12733         lilypond-latex section.
12734
12735         * scripts/lilypond-latex.py (Module): remove script.
12736
12737         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
12738         overwrite .log. 
12739
12740         * lily/main.cc: remove -m, --no-layout
12741
12742         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
12743         to define. We don't want to override fprintf everywhere.
12744
12745 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
12746
12747         * cygwin/lilypond.hint: 
12748         * cygwin/README.in: Update dependencies.
12749
12750         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
12751         Bugfix: do not pollute CPPFLAGS, LIBS.
12752
12753         * cygwin/mknetrel (extras): Cross compile fixes.
12754
12755         * ttftool/util.c: 
12756         * ttftool/ttfps.c: 
12757         * ttftool/ps.c: #include libc-extension.hh
12758
12759         * flower/include/libc-extension.hh:
12760         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
12761         wrapper using funopen.
12762         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
12763         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
12764
12765         * config.hh.in:
12766         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
12767         (AC_CHECK_HEADERS): Add libio.h
12768
12769         * scripts/convert-ly.py: Uniformize, internationalize.
12770         (2.5.2): Remove fatal encoding rule.
12771         (2.5.13): Handle latin1 encoding gracefully.
12772
12773 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
12774
12775         * HACKING: Fix line breaks.
12776
12777 2005-02-23  Werner Lemberg  <wl@gnu.org>
12778
12779         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
12780         contains those two files.
12781
12782 2005-02-21  Werner Lemberg  <wl@gnu.org>
12783
12784         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
12785         to improve overlap removal process.
12786
12787         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
12788         left and right ending.  This ensures better overlapping.
12789         Update all callers.
12790         ("lineprall"): Don't use draw_gridline to get better overlapping.
12791
12792 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12793
12794         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
12795
12796         * Documentation/topdocs/NEWS.tely (Top): oops.
12797
12798 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
12799
12800         * HACKING: new file.
12801
12802         * input/regression/utf8.ly (portuguese): added a portuguese example
12803         to show latin1 accents.
12804
12805 2005-02-21  Pal Benko  <benkop@freestart.hu>
12806
12807         * lily/mensural-ligature-engraver.cc:
12808         * lily/mensural-ligature.cc:
12809         * lily/include/mensural-ligature.hh: new algorithm implemented
12810
12811         * scm/define-grob-properties.scm: join-left killed (add-join may
12812         be used); join-left-amount changed to join-right-amount
12813
12814 2005-02-21  Graham Percival  <gperlist@shaw.ca>
12815
12816         * Documentation/user/notation.itely: small but urgent fix.
12817
12818 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
12819
12820         * lily/duration-scheme.cc: bugfix: correct parameters to
12821         SCM_ASSERT_TYPE.
12822
12823         * THANKS: added Pal.
12824
12825         * Documentation/user/notation.itely: bugfix: unTeXified
12826         $\\backslash$.  Bugfix: yet another glyph renaming victim:
12827         "timesig.*x/y" -> "timesig.*xy".
12828
12829 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12830         
12831         * VERSION (PACKAGE_NAME): release 2.5.12
12832
12833 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12834
12835         * ly/engraver-init.ly: set tieWaitForNote to #t by default
12836
12837         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
12838
12839         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
12840
12841         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
12842
12843 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
12844
12845         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
12846         latin1..utf-8.
12847
12848         * input/regression/stanza-number.ly:
12849         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
12850
12851         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
12852
12853 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12854
12855         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
12856         NEWS. Refer to website for older news.  
12857
12858         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
12859         .HTML. This should be done for specific servers only.
12860
12861         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
12862         .ly image examples.
12863
12864         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
12865         in layer 0 too.
12866
12867         * scm/define-context-properties.scm
12868         (all-user-translation-properties): add tieWaitForNote
12869
12870         * scm/define-grobs.scm (all-grob-descriptions): add
12871         Tie_column::before_line_breaking
12872
12873         * lily/tie.cc (get_column_rank): new function
12874
12875         * lily/tie-column.cc (before_line_breaking): new function.
12876         (werner_directions): take into account ties that start on
12877         different columns.  
12878
12879         * lily/score-engraver.cc (set_columns): move add_column() so we
12880         have column rank available.
12881
12882         * lily/tie.cc (get_column_rank): new function.
12883
12884         * input/regression/utf8.ly (japanese): add japanese lyrics.
12885
12886         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
12887
12888         * THANKS: add Steve D
12889
12890         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
12891         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
12892
12893 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
12894
12895         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
12896         to show harmonic notes
12897         * scm/define-markup-commands.scm: in \markup-by-number
12898         "dots-dot" -> "dots.dot" to show dotted notes
12899
12900 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12901
12902         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
12903
12904         * flower/memory-stream.cc (writer): new file.
12905
12906         * configure.in: add endian test.
12907
12908 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
12909
12910         * Documentation/user/examples.itely: small
12911         simplification/beautification
12912
12913         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
12914         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
12915         notation manual.
12916
12917         * lily/mensural-ligature.cc: bugfix: another few victims of the
12918         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
12919
12920         * ly/gregorian-init.ly: commit some experimental code for hi-level
12921         ligature input language lying around here for several months.
12922
12923         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
12924         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
12925
12926         * lily/vaticana-ligature-engraver.cc: bugfix: another few
12927         "x-y-z"->"x.y.s-z" fixes.
12928
12929 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12930
12931         * scm/framework-pdf.scm (scm): new file
12932
12933         * lily/include/pdf.hh (class Pdf_file): new file.
12934
12935         * lily/pdf.cc (write_trailer): new file.
12936
12937 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
12938
12939         * input/regression/color.ly: new file
12940
12941         * lily/stencil.cc (interpret_stencil_expression):
12942         when a color expression is encountered: save current color,
12943         process the rest of the expression, and restore previous color.
12944
12945         * lily/system.cc (get_line): check all grobs for color property and
12946         prepare the stencil scheme expressions for further processing.
12947         Fix layer-loop.
12948
12949         * scm/define-grob-properties.scm: introduce the color property.
12950
12951         * scm/output-lib.scm: color helper functions.
12952
12953         * scm/output-ps.scm: introduce setcolor/resetcolor.
12954
12955 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
12956
12957         * ly/*.ly, input/regression/*.ly: Added missing \version
12958         statements in some files.
12959
12960 2005-02-15  Graham Percival  <gperlist@shaw.ca>
12961
12962         * Documentation/user/notation.itely: minor editing.
12963
12964         * Documentation/user/converters.itely: updated convert-ly bugs.
12965
12966         * Documentation/user/lilypond-book.itely: add info about using
12967         feta characters in latex.
12968
12969 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12970
12971         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
12972
12973 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12974
12975         * scm/define-grob-properties.scm (all-user-grob-properties):
12976         removed 'dashed property.
12977
12978 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12979
12980         * scm/lily.scm (define-safe-public): new macro for defining
12981         variables that can be used in --safe mode. Use it in *.scm
12982         instead of manually setting safe-objects in safe-lily.scm.
12983
12984 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12985         
12986         * lily/slur.cc: Slur-dash patch by Bertalan.
12987
12988         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
12989
12990         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
12991
12992 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12993
12994         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
12995
12996 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12997
12998         * mf/GNUmakefile: teTeX-3.0 install fix.
12999
13000         * Cygwin patch from Bertalan.
13001
13002         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13003
13004 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13005
13006         * GNUmakefile.in: 
13007         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13008
13009         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13010         2.0.x compatibility.
13011
13012 2005-02-08  Werner Lemberg  <wl@gnu.org>
13013
13014         * mf/feta-din-code.mf: Format; clean up code.
13015         Replace `---' with `--' plus explicit path directions.
13016         (linethickness#, stafflinethickness#): Remove.
13017         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13018         ("dynamic s"): Improve shape.
13019         ("dynamic p"): Improve shape.
13020         Replace `draw' with better outline approximation.
13021         ("dynamic r"): Improve shape.
13022         Don't call `fill' and `draw' at the same time.
13023
13024 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13025
13026         * SConstruct (symlink):
13027         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13028         build fix: add enc symlink.
13029
13030         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13031
13032         Support for DESTDIR besides prefix=/foo
13033
13034         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13035
13036         * stepmake/stepmake/*.make:
13037         * */GNUmakefile:
13038         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13039
13040         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13041
13042         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13043         mawk in fontforge (date) test.
13044
13045 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13046
13047         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13048         font-family=roman. Add Luxi Sans as sans
13049
13050 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13051
13052         * Documentation/user/notation.itely: add warning about
13053         percent repeats and Voice contexts.
13054
13055         * Documentation/user/lilypond-book.itely: clarified the
13056         necessity of dvips -u arguments.
13057
13058 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13059
13060         * THANKS: Added a bunch of bug hunters.
13061
13062 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13063
13064         * scm/framework-ps.scm (output-preview-framework): bugfix.
13065
13066         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13067         o/ for chord modifier..
13068
13069         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13070
13071         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13072         Welsh Duggan). 
13073
13074 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13075
13076         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13077
13078         * ly/titling-init.ly: Do not also print intstrument in header on
13079         first page.  Do not print page number on first and only page.
13080
13081 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13082
13083         * input/regression/*.ly: remove old-relative everywhere
13084
13085         * lily/music-sequence.cc (simultaneous_relative_callback): do
13086         what-if analysis on copy, not on original. Fixes old-relative
13087         compatibility.
13088
13089         * scm/backend-library.scm (postscript->png): space before
13090         --verbose.
13091         
13092 2005-02-05  Werner Lemberg  <wl@gnu.org>
13093
13094         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13095         is defined.
13096
13097         * mf/feta-alphabet.mf: Define `staffsize#'.
13098         Include `feta-params.mf'.
13099         s/staffheight/design_size/.
13100
13101         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13102
13103         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13104
13105         * mf/feta-nummer-code.mf: Reformatted.
13106         (draw_six): Use outline intersection to avoid a self-intersecting
13107         path.
13108         ("Numeral comma"): Fix serious outline glitches.  This slightly
13109         changes the glyph shape.
13110         ("Numeral dash"): Use `draw_rounded_block'.
13111         ("Numeral dot"): Use `drawdot'.
13112         ("Numeral 1"): Assure identical tangent directions for the
13113         intersection points of paths.  The glyph shape improvement is only
13114         visible at very high magnifications.
13115         ("Numeral 2"): Use `solve' macro to make the lower right part of
13116         the glyph outline touch the x axis exactly.  This changes the
13117         glyph shape.
13118         Minor fixes for better overlap removal support.
13119         ("Numeral 4"): Make lefter corner `rounder'.
13120         ("Numeral 5"): Assure identical tangent directions for the
13121         intersection points of paths.  This improves the glyph shape at
13122         high magnifications.
13123         ("Numeral 7"): Use `solve' macro to make the upper right part of
13124         the glyph outline touch the metrics box exactly.  This changes the
13125         glyph shape.
13126         Avoid corner in the upper left part of the glyph (causing a minor
13127         shape change).
13128
13129         * mf/feta-ital-*.mf: Removed.  Unused.
13130
13131 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13132
13133         * VERSION (PATCH_LEVEL): release 2.5.11
13134
13135         * input/regression/fill-line-test.ly: new file.
13136
13137         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13138         emmentaler name, eg. emmentaler-23. 
13139
13140 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13141
13142         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13143         alignment with centered texts
13144
13145         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13146         list of paddings
13147
13148 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13149
13150         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13151
13152         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13153         of parents when translating rests. Fixes: c-chord-rest.ly 
13154
13155         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13156         dimension_callback_ member.
13157
13158         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13159         of extents.
13160
13161 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13162
13163         * all but lily/*: The grand 2004/2005 replace.
13164
13165 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13166
13167         * lily/*: add space after ,  
13168
13169         * scm/music-functions.scm (has-request-chord): don't use
13170         ly:music-name anywhere. Fixes <<\\>> notation. 
13171
13172         * scm/define-markup-commands.scm (box): use font-size for
13173         padding. Fixes boxed-rehearsal-marks.ly
13174
13175         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13176         identifier definition too, so foo = \lyrics { ...   } bar = #1
13177         doesn't complain about "bar" being LYRICS_STRING.
13178
13179         * lily/paper-def.cc (find_pango_font): new routine; Store
13180         pango_fonts in hash tab too. This is necessary for retrieving
13181         Pango_fonts::physical_font_tab() later on.
13182  
13183         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13184         crash if psname is null.
13185
13186         * lily/lily-guile.cc (ly_hash2alist): new function
13187
13188         * Documentation/user/changing-defaults.itely (Text encoding):
13189         rewrite. 
13190
13191         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13192         -> font_filename mapping.
13193
13194         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13195         ly_pango_font_physical_fonts
13196
13197         * scm/framework-ps.scm (supplies-or-needs): extract names from
13198         physical Pango_fonts.
13199
13200         * utf8.ly: new file.
13201
13202 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13203
13204         * Documentation/user/changing-defaults.itely (Page layout): add
13205         doco about systemSeparatorMarkup.
13206
13207         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13208         function.
13209         (default-page-make-stencil): insert system separators.
13210
13211         * scm/define-markup-commands.scm (hcenter): add
13212         (beam): add.
13213
13214 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13215
13216         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13217
13218 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13219
13220         * lily/main.cc: Spell backend consistently.  Sort options.
13221
13222 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13223
13224         * scripts/lilypond-book.py (Module): revert @include.
13225         
13226 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13227
13228         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13229         Bugfix: @include .tex (not .texi).  Small cleanups.
13230
13231         * stepmake/bin/add-html-footer.py (i18n): New function.
13232
13233 2005-01-31  Werner Lemberg  <wl@gnu.org>
13234
13235         * mf/feta-nummer.mf: Removed.  Unused.
13236
13237 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13238
13239         * lily/ : 2004 -> 2005 s&r
13240
13241         * scm/file-cache.scm (cached-file-contents): add file. Read each
13242         file only once.
13243
13244         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13245         now default.
13246
13247         * VERSION: release 2.5.10
13248         
13249         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13250
13251         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13252
13253         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13254         that both X and Y extents of bbox are non-nil.
13255
13256 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13257
13258         * scm/chord-name.scm (alteration->text-accidental-markup): change
13259         - to . 
13260
13261         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13262
13263         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13264
13265         * Documentation/user/invoking.itely (Invoking lilypond): add note
13266         about EPS backend.
13267
13268         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13269         files for inclusion in lilypond-book document.
13270
13271         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13272
13273         * input/tutorial/lbook-texi-test.texi: new file.
13274
13275         * scm/safe-lily.scm (safe-objects): add
13276         {begin,end}-of-line-(in)?visible as safe.
13277  
13278 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13279
13280         * Documentation/user/changing-defaults.itely: fixed example
13281         of (dynamics).
13282
13283 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13284
13285         * lily/main.cc: fix info about -o=FILE.
13286
13287 2005-01-29  Werner Lemberg  <wl@gnu.org>
13288
13289         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13290         construction to assure smooth transition from straight to curved
13291         lines.
13292
13293 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13294
13295         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13296         stencils.
13297
13298         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13299         translate to top of page. Fixes alignment problems of
13300         lilypond-generated EPS files.
13301
13302 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13303
13304         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13305         crescendo-end as well, since Decrescendo maybe ended with Stop
13306         Crescendo.). Fixes: partcombine-diminuendo.ly
13307
13308         * scm/script.scm (default-script-alist): swap portato symbols.
13309
13310         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13311
13312         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13313         ly:outputter-port. New function.
13314
13315         * scm/framework-ps.scm (output-classic-framework): dump a
13316         -systems.texi too
13317         (output-classic-framework): dump multiple systems on an "infinite"
13318         page EPS including fonts. 
13319
13320         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13321         .eps files for both texi and tex formats. Use PNG coming from
13322         lilypond.
13323         
13324 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13325
13326         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13327
13328         * scripts/lilypond-latex.py: fix info about -o=FILE.
13329
13330 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13331
13332         * ly/generate-embedded-cff.ly: write .cff.ps files.
13333
13334         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13335
13336         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13337         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13338
13339 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13340
13341         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13342
13343 2005-01-28  Werner Lemberg  <wl@gnu.org>
13344
13345         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13346         macros.
13347         (draw_bulb): Improved.
13348
13349         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13350         metapost bug.
13351         (draw_pedal_P): Use soft_end_penstroke.
13352         (draw_pedal_d): Use soft_start_penstroke.
13353
13354         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13355         path.
13356         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13357         doesn't change the glyph shape.
13358
13359         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13360         changing the shape) to avoid fontforge warnings.
13361
13362         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13363         soft_end_penstroke and fix glyph shape.
13364
13365 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13366
13367         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13368
13369 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13370
13371         * scm/define-markup-commands.scm (line): filter out empty stencils
13372         from line command.
13373
13374         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13375         amount.
13376
13377 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13378
13379         * Documentation/user/notation.itely: added info about what
13380         \voiceFoo does.  Also rewrote warning about marks at
13381         a line break.
13382
13383         * Documentation/user/changing-defaults.itely: added info
13384         about putting dynamics in parenthesis and brackets.
13385
13386 2005-01-27  Werner Lemberg  <wl@gnu.org>
13387
13388         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13389
13390 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13391
13392         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13393         portato-direction.ly
13394
13395         * lily/beam.cc (consider_auto_knees): add beam height to
13396         threshold. Fixes: knee-multiple-beam.ly
13397
13398         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13399         pedal line spanners. Fixes: instrument-center-pedal.ly
13400
13401         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13402         if encountering barline. Fixes: auto-beam-repeat.ly
13403
13404 2005-01-26  Werner Lemberg  <wl@gnu.org>
13405
13406         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13407         overlapping.
13408
13409         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13410         with inflections for the 1/2 sharp glyph.
13411
13412         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13413         connection between `t' and `r'.
13414         Unify bulb with the rest of `r' to avoid grazing outlines which
13415         confuses the overlap removal algorithm of fontforge.
13416
13417         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13418         inflections.
13419         (draw_cross): Fix shape to have uniform thickness in corners.
13420
13421         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13422         to avoid an uneven number of self-intersections; this confuses
13423         fontforge.
13424         Fix a slight bug in the shape at left bottom (which is visible only
13425         at high magnifications).
13426         `Center' the stem horizontally to avoid overlapping.
13427
13428 2005-01-24  Werner Lemberg  <wl@gnu.org>
13429
13430         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13431         to `asis'.
13432         (fet_begingroup): Save group name in string `feta_group'.
13433         (fet_endgroup): Updated.
13434         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13435
13436         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13437
13438         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13439         in metapost.
13440
13441 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13442
13443         * Documentation/user/notation.itely: really minor editing.
13444
13445 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13446
13447         * Documentation/user/examples.itely: minor editing.
13448
13449         * Documentation/user/changing-defaults.itely: minor editing.
13450
13451         * Documentation/user/notation.itely: clarified info on polyphony
13452         and \addlyrics.
13453
13454 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13455
13456         * scm/output-gnome.scm: 
13457         * scm/output-svg.scm:
13458         * scm/lily-library.scm (font-name-style): Update font name
13459         kludging for fontconfig use.
13460
13461 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13462
13463         * scm/define-markup-commands.scm: Document right-align and
13464         larger markup commands. Remove "TODO" from the topmost comment
13465         "each markup function should have a doc string." More consistent
13466         use of new-lines.
13467
13468 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13469
13470         * Documentation/user/changing-defaults: removed info about
13471         copyright symbol, since it's likely to change soon.
13472         Added info about betweensystemspace.
13473
13474         * Documentation/user/notation.itely: minor fixes.
13475
13476         * Documentation/user/lilypond.tely,
13477         Documentation/user/music-glossary.tely: changed copyright
13478         date to 2005 instead of 2004.
13479
13480         * input/test/volta-chord-names.ly: added old example back.
13481
13482 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13483
13484         * mf/feta-beugel.mf: use design size 20 (not 15).
13485
13486         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13487         change name to aybabtu completely
13488
13489 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13490
13491         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13492         design_size to fontname
13493
13494 2005-01-19  Werner Lemberg  <wl@gnu.org>
13495
13496         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13497         mf/feta-schrift.mf: s/p/pat/ if a path variable.
13498
13499         * mf/feta-autometric.mf (set_char_box): Add code which emits
13500         specials for mf2pt1 if run with metapost.
13501         (to_bp): New macro for mf2pt1.
13502
13503 2005-01-18  Graham Percival  <gperlist@shaw.ca>
13504
13505         * Documentation/user/changing-defaults: added info on
13506         creating a copyright symbol.
13507
13508 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13509
13510         * VERSION: release 2.5.9
13511         
13512 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
13513
13514         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
13515
13516         * Documentation/user/notation.itely: Document
13517         score-override-auto-beam-setting Fix documentation for
13518         revert-auto-beam-setting.
13519
13520 2005-01-18  Werner Lemberg  <wl@gnu.org>
13521
13522         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
13523         (procset): New function to define a procset resource.
13524         (ps-embed-pfa): New function to define a font resource.
13525         (setup): New function to define a `Setup' environment.
13526         (preamble): Use new functions.
13527
13528         * ps/lilypond.defs (init-lilypond-parameters): New function to
13529         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
13530
13531 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13532
13533         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
13534
13535 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
13536
13537         * scm/define-markup-commands.scm: Change number->markletter-string
13538         to take two arguments (vector number). Add number->mark-alphabet-vector
13539         and markalphabet markup command.
13540
13541         * scm/translation-functions.scm: Add format-mark-box-alphabet,
13542         format-mark-alphabet, format-mark-box-barnumbers and
13543         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
13544
13545 2005-01-17  Graham Percival  <gperlist@shaw.ca>
13546
13547         * Documentation/user/examples.itely: add SATB automatic piano
13548         reduction template.
13549
13550         * Documentation/user/notation.itely: added info about changing
13551         partcombine texts.  Also adds examples of alternate lyrics.
13552
13553         * Documentation/user/changing-defaults.itely: added warning
13554         about \RemoveEmptyStaffContext overriding previous changes.
13555
13556 2005-01-17  Werner Lemberg  <wl@gnu.org>
13557
13558         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
13559         feta-alphabet*.
13560
13561 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13562
13563         * python/lilylib.py (make_ps_images): don't do final showpage for
13564         multi-page documents.
13565         
13566         * VERSION (MY_PATCH_LEVEL): release 2.5.8
13567
13568 2005-01-16  Graham Percival  <gperlist@shaw.ca>
13569
13570         * Documentation/user/lilypond.tely: changed order of appendices;
13571         unified index should be last.
13572
13573         * Documentation/user/notation.itely: add example of key signatures
13574         and info about Staff.printKeyCancellation.
13575
13576 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13577
13578         * lily/include/repeated-music.hh (class Repeated_music): change
13579         into "namespace" class.
13580
13581         * lily/event.cc: remove Key_change_event.
13582
13583         * lily/include/transposed-music.hh (class Transposed_music): remove.
13584
13585         * lily/transposed-music.cc: remove
13586
13587         * lily/include/relative-music.hh: remove.
13588
13589         * lily/include/music-sequence.hh (struct Music_sequence): change
13590         into "namespace" class.
13591
13592         * lily/untransposable-music.cc (Module): remove
13593
13594         * lily/include/un-relativable-music.hh (Module): remove
13595
13596         * lily/include/untransposable-music.hh (Module): remove
13597
13598         * lily/include/music-list.hh (Module): remove file
13599
13600         * lily/un-relativable-music.cc: remove file.
13601
13602 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13603
13604         * lily/parser.yy: Compile fix.
13605
13606 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13607
13608         * lily/include/music.hh (class Music): unvirtualize transpose().
13609
13610         * lily/sequential-music.cc: remove file.
13611
13612         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
13613
13614         * lily/slur-scoring.cc (get_best_curve): only switch on
13615         DEBUG_SLUR_SCORING for non NDEBUG builds.
13616
13617         * lily/include/music.hh (class Music): replace Music::start_mom()
13618         by start-callback property
13619
13620         * lily/include/grace-music.hh: remove file. 
13621
13622         * lily/stem.cc (height): robustness fix.
13623
13624         * lily/time-scaled-music.cc: remove file.
13625
13626         * lily/include/music.hh (class Music): include SCM init argument.
13627         (class Music): replace Music::get_length() virtual by
13628         length-callback property everywhere.
13629
13630         * scripts/convert-ly.py (conv): add  # to \property scalar value.
13631
13632         * mf/GNUmakefile: don't install *list.ly
13633
13634 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13635
13636         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
13637
13638 2005-01-12  Werner Lemberg  <wl@gnu.org>
13639
13640         This patch addresses the following problems in the feta sources
13641         files which contribute to the fetaXX fonts.
13642
13643         . Many fixes for rasterization at low resolutions (consistent use of
13644           `vround' and `hround', integer shift values for paths, applying
13645           `eps' for mirrored paths, use of `define_whole_pixels' and
13646           friends, etc.) -- while this probably looks like a waste of time
13647           it has revealed deficiencies in some glyph shapes.  See comment at
13648           the end of feta-params.mf how vertical symmetry is achieved.
13649
13650         . The `---' operator has been replaced everywhere with `--'; this
13651           both improves and considerably reduces the font size after
13652           conversion with mf2pt1.
13653
13654         These change aren't explicitly mentioned below since virtually all
13655         glyphs are affected.
13656
13657         Other notable differences:
13658
13659         . Glyphs from feta-accordion.mf now have charboxes around the
13660           outline.
13661
13662         . Fixed incorrect charbox for `accDot'.
13663
13664         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
13665
13666         . Fixed position of the bow in the `upprall' glyph and its siblings.
13667
13668         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
13669           dependent on the staff line thickness to avoid touching the middle
13670           staff line at smaller sizes.
13671
13672         . Largely extended output for feta-testXX: Where useful, glyphs
13673         are shown both between and on staff lines.
13674
13675
13676         * mf/feta-params.mf (staff_space_rounded,
13677         stafflinethickness_rounded, linethickness_rounded,
13678         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
13679         Update all code which uses them where appropriate.
13680         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
13681         New variables used to control rasterization at low resolutions.  Set
13682         to zero if feta code is processed with metapost.
13683
13684         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
13685         (draw_rounded_block, draw_square_block): Updated to use `--' only.
13686         (flare_path): Updated.
13687         Make it work with `filldraw' (but only circular pens).
13688         (hfloor, vfloor, hceiling, vceiling): New macros.
13689
13690         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
13691         Use `draw' again in mf mode to have good pixel dropout control.
13692         Fix intersection points of horizontal lines with circle.
13693         ("accDot"): Fix parameters for set_char_box.
13694         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
13695         control.
13696
13697         * mf/feta-banier.mf: Updated.
13698
13699         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
13700         testing.
13701         (undraw_inside_ellipse): Remove `center' argument.  Update all
13702         callers.
13703         (draw_brevis): New macro, called by "Brevis notehead".
13704         (draw_whole_triangle_head): New macro, called by "Whole
13705         trianglehead".
13706         (draw_small_triangle_head): Use `filldraw'.
13707
13708         * mf/feta-eindelijk.mf: Remove useless global group.
13709         Updated.
13710
13711         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
13712         `filldraw'.
13713
13714         * mf/feta-pendaal.mf: Updated.
13715
13716         * mf/feta-puntje.mf: Updated.
13717
13718         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
13719         less points.
13720         ("Flageolet"): Use `draw' again in mf mode to have good pixel
13721         dropout control.
13722         ("Varied Coda"): Use `draw_block'.
13723         (draw_comma): Fix typo.
13724         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
13725         pixel dropout control.
13726
13727         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
13728         position of bow.
13729
13730         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
13731         sizes.
13732
13733         * mf/feta-toevallig.mf (remember_pic): New variable, used for
13734         testing.
13735         (draw_meta_sharp): Much simplified.
13736         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
13737
13738         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
13739
13740 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
13741
13742         * Documentation/user/notation.itely (Ancient rests): Fix typo
13743         (thanks Anthony)
13744
13745 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
13746
13747         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
13748
13749         * lily/main.cc (setup_paths): Add cff.
13750
13751         * mf/GNUmakefile (foe): Include actual target %.cff.
13752         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
13753
13754 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13755
13756         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
13757         suffix for main_input_b_.
13758
13759         * scm/music-functions.scm (toplevel-music-functions):
13760         precompute music lengths for music expressions.  
13761
13762 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13763
13764         * lily/include/input.hh (class Input): new `end_' slot for end of
13765         input. Renamed defined_str0_ to start_.
13766
13767         * lily/input.cc (Input): Add Input::Input (Input const &) and
13768         remove Input::Input (Source_file*, char const *). Use the new
13769         slots.
13770         (set_location): method used by bison to propagate input
13771         locations (YYLLOC_DEFAULT).
13772         (end_line_number, end_column_number, step_forward): new methods
13773         
13774         * lily/input-scheme.cc (ly:input-both-locations): new function,
13775         similar to ly:input-location, but also return the end line and
13776         column.
13777
13778         * lily/include/includable-lexer.hh: 
13779         * lily/includable-lexer.cc: 
13780         * lily/include/lily-lexer.hh (class Lily_lexer): 
13781         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
13782         Includable_lexer to Lily_lexer, in order to update lexloc (the
13783         yylloc), a new slot of Lily_lexer.
13784         (here_input, LexerError): simplify by using the lexloc slot (aka
13785         yylloc)
13786
13787         * lily/lexer.ll: #define yylloc to use input locations (it may
13788         be useless here?). Fixed the #embedded_scm rule (step the location
13789         forward in order to skip the sharp sign before parsing the scheme
13790         expression)
13791
13792         * lily/include/lily-parser.hh (class Lily_parser): 
13793         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
13794         here_input()
13795         (parser_error): overload for more precise locations of errors.
13796
13797         * lily/parser.yy (YYLTYPE): set location type to Input
13798         (YYLLOC_DEFAULT): use Input::set_location()
13799         (yylex): add the YYLTYPE* location parameter.
13800         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
13801         Give an Input parameter to THIS->parser-error() for more accurate
13802         messages.
13803
13804 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13805
13806         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
13807
13808         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
13809         on BEAMQUANTING for non-NDEBUG builds.
13810
13811         * lily/stem.cc (head_count): performance: avoid String::String()
13812         inside oft called function.
13813
13814 2005-01-09  Graham Percival  <gperlist@shaw.ca>
13815
13816         * Documentation/user/examles.itely: attempted fix for broken
13817         string quartet template.
13818
13819         * Documentation/user/notation.itely: remove unnecessary broken
13820         link.
13821
13822 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13823
13824         * VERSION (PACKAGE_NAME): release 2.5.7
13825
13826 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13827
13828         * config.make.in (METAFONT): Append -progname=mf, fixes use with
13829         mf-nowin for teTeX-3.0.  Backportme.
13830
13831         * scm/output-svg.scm (utf8-string): New function.
13832
13833         * scm/output-gnome.scm (utf8-string): New function.
13834         (otf-name-mangling): Remove.
13835
13836         * lily/pango-font.cc (Pango_font): Use font string iso font
13837         filename for utf8-text.
13838
13839         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
13840         name.
13841
13842 2005-01-08  Graham Percival  <gperlist@shaw.ca>
13843
13844         * Documentation/user/notation.itely: add info about
13845         Staff.extraNatural = ##f in Pitches section.  Also
13846         fixed some minor issues in the Vocal music section.
13847
13848 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13849
13850         * scm/output-ps.scm (white-text): comment out Helvetica font,
13851         which is broken for my GS install.
13852
13853         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
13854         which provides a tighter bbox.
13855
13856         * scm/define-grobs.scm (all-grob-descriptions): remove all
13857         extra-offsets from definitions.
13858
13859 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
13860
13861         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
13862         add tuning for 4-string bass and some common 4/5-string banjo
13863         tunings.  New function (four-string-banjo) turns a 5-string tuning
13864         into a 4-string tuning.  New function
13865         (fret-number-tablature-format-banjo) computes correct fret numbers
13866         on 5-string banjos.
13867
13868         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
13869         Add beam correction to TabVoice.
13870
13871         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
13872         using bold font; makes tabs more readable.
13873
13874 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13875
13876         * lily/font-select.cc (get_font_by_design_size): don't make
13877         Modified_font_metric; this causes trouble, since we don't know the
13878         font magnification from inside Pango_font::text_stencil()
13879
13880         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
13881
13882         * Documentation/user/notation.itely (The Lyrics context): comment out
13883         broken {Small ensembles} link.
13884
13885         * scm/framework-svg.scm (output-framework): change calling convention.
13886
13887         * lily/object-key-dumper-scheme.cc: new file.
13888
13889         * lily/object-key-undumper-scheme.cc: new file.
13890
13891         * lily/tweak-registration-scheme.cc: new file.
13892
13893         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
13894
13895         * Documentation/user/examples.itely (String quartet): uncomment
13896         broken example.
13897
13898         * lily/font-config.cc: new file.
13899
13900 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13901
13902         * scm/output-svg.scm: 
13903         * scm/output-gnome.scm: s/bigcheese/emmentaler.
13904
13905         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
13906
13907 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13908
13909         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
13910         Add headers.
13911
13912         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
13913
13914 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13915
13916         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
13917
13918         * lily/include/main.hh: lose _b hungarian suffixes for global
13919         variables.
13920
13921         * lily/include/lily-guile-macros.hh: new file.
13922
13923         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
13924
13925         * lily/general-scheme.cc: new file. 
13926
13927         * lily/font-select.cc (get_font_by_design_size): retrieve
13928         PangoFont for (designsize . "pango-descr") entries.
13929
13930         * lily/lily-parser-scheme.cc: new file.
13931
13932         * lily/output-def-scheme.cc: new file.
13933
13934         * lily/paper-book-scheme.cc: new file.
13935
13936         * lily/duration-scheme.cc (LY_DEFINE): new file.
13937
13938         * lily/pitch-scheme.cc:  new file.
13939
13940         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
13941
13942 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13943
13944         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
13945
13946 2005-01-06  Graham Percival  <gperlist@shaw.ca>
13947
13948         * Documentation/user/notation.itely: minor editing.
13949
13950         * Documentation/user/changing-defaults: minor editing.
13951
13952         * Documentation/user/examples.itely: add template for
13953         string quartet part extraction; demonstrates tag.
13954
13955 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
13956
13957         * Documentation/user/notation.itely: documents
13958         format-mark-box-letters and format-mark-box-numbers
13959
13960         * scm/define-context-properties.scm: change comment.
13961
13962 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13963
13964         * scm/framework-ps.scm (output-classic-framework): new function:
13965         dump systems as separate .eps files (without fonts) and write a
13966         single collecting .tex file.
13967
13968 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
13969
13970         * Documentation/user/notation.itely (Setting simple songs):
13971         Correct several errors in the equivalent formulation of
13972         \addlyrics. 
13973         (The Lyrics context): Corrected link to the SATB example.
13974
13975 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13976
13977         * scm/lily.scm (completize-formats): new function
13978         (postprocess-output): new function
13979
13980         * lily/paper-book.cc (classic_output): change calling
13981         convention. Give basename as first argument. 
13982         remove Paper_book::post_processing().
13983
13984         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
13985
13986 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13987
13988         * lily/paper-outputter.cc (LY_DEFINE): new function
13989         ly:outputter-close.
13990
13991         * lily/main.cc: change --format,-f to --backend,-b
13992
13993         * lily/include/main.hh: rename format to backend.
13994
13995         * scm/translation-functions.scm (format-mark-box-numbers): add.
13996         patch by Erlend Aasland
13997
13998 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13999
14000         * lily/pango-font.cc (text_stencil): dump string as
14001         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14002
14003 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14004
14005         * configure.in (gui_b): Remove handy developer-only
14006         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14007         CVS source installations (but break other non-default but correct
14008         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14009
14010         * SConstruct: 
14011         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14012         compatibility (backportme).
14013
14014         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14015
14016 2005-01-03  Werner Lemberg  <wl@gnu.org>
14017
14018         Prepare glyph shapes for mf2pt1 conversion.
14019
14020         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14021         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14022         `penstroke'.
14023         (accDot): Use `drawdot'.
14024         (accBayanbase): Replace `draw' with `draw_gridline'.
14025         (print_penpos): Moved to feta-macros.mf.
14026         (accOldEE): Replace `filldraw' with `penstroke'.
14027         Replace `draw' with `penstroke' and `drawdot'.
14028
14029         * mf/feta-banier.mf: Code clean-up.
14030         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14031         `fill'.
14032
14033         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14034
14035         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14036         paremeter to control drawing of labels.  Update all callers.
14037
14038         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14039         (new_bulb): Return a bulb as a single path.  To do that, it now
14040         takes some more parameters.  Updated all callers.
14041         (draw_gclef): Major clean-up.  `draw' has been replaced with
14042         `penstroke', unnecessary outlines have been removed.
14043         Remove (unused) gnome-canvas code.
14044
14045         * mf/feta-macros.mf (print_penpos): New macro (from
14046         feta-accordion.mf).
14047         Other minor fixes.
14048
14049         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14050         ("Pedal dot"): Use `drawdot'.
14051         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14052         all callers.
14053         Fix shape at top.
14054         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14055         all callers.
14056         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14057         all callers.
14058         Revert drawing direction.
14059
14060         * mf/feta-schrift.mf (draw_fermata): Use single path.
14061         (draw_short_fermata): Replace `filldraw' with `fill'.
14062         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14063         `draw_rounded_block' with a single path.
14064         ("Thumb"): Draw full circle instead of mirroring segments.
14065         (draw_accent): New macro.
14066         ("> accent", "espr"): Use it.
14067         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14068         ("open (unstopped)"): Draw full circle instead of mirroring
14069         segments.
14070         (draw_vee): Removed.
14071         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14072         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14073         path.
14074         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14075         partial pieces drawn with `fill' -- these do still overlap with the
14076         stem of the `t' but just once, not multiple times so that fontforge
14077         can handle it gracefully.
14078         Change other parts of the glyph so that fontforge's overlapping
14079         algorithm reliably works.
14080         (draw_heel): Replace `draw' with `fill'.
14081         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14082         ("Flageolet"): Replace `draw' with `penstroke'.
14083         ("Segno"): Replace `filldraw' with `penstroke'.
14084         Replace `draw' with `drawdot'.
14085         ("Coda"): Replace `fill' with `penstroke', using a single path.
14086         ("Varied Coda"): Use less overlapping paths.
14087         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14088         single path.
14089
14090         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14091         group to better control the `labels' command.
14092         Rename argument to `offset' and use it actually.  Update all
14093         callers.
14094         Replace `filldraw' with `fill'.
14095         ("mordent", "prallmordent", "upmordent", "downmordent",
14096         "lineprall"): Replace `draw' with `draw_gridline'.
14097         ("upprall", "downprall"): Replace `draw' with `fill'.
14098
14099         * mf/feta-timesig.mf: Formatting.
14100
14101         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14102         to...
14103         ("Flat"): Here.
14104         (draw_paren): Move code to draw labels to...
14105         ("Right Parenthesis"): Here.
14106
14107 2005-01-02  Graham Percival <gperlist@shaw.ca>
14108
14109         * Documentation/user/notation.itely: add example of \setTextDecresc
14110         and \setTextDim.
14111
14112 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14113
14114         * scm/define-markup-commands.scm :  fix glyph-strings of
14115         accidentals and \note-by-number
14116
14117 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14118
14119         * VERSION: 2.5.6 released.
14120         
14121         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14122
14123         * input/regression/new-markup-scheme.ly: oops. font-family=music
14124         -> font-encoding fetaMusic.  
14125
14126         * lily/main.cc: put default to PS.
14127
14128         * lily/tfm.cc: idem.
14129
14130         * lily/afm.cc: idem.
14131
14132         * lily/include/modified-font-metric.hh (struct
14133         Modified_font_metric): remove coding_scheme() method.
14134
14135         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14136
14137         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14138
14139         * input/les-nereides.ly: convert to utf8
14140
14141         * lily/modified-font-metric.cc (text_dimension): idem.
14142
14143         * lily/parser.yy (TODO): idem.
14144
14145         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14146
14147         * lily/lexer.ll: remove encoding
14148
14149         * scm/framework-ps.scm (output-variables): separately scale the
14150         page to mm 
14151
14152         * lily/pango-font.cc (Pango_font): fix scaling.
14153
14154         * lily/font-metric.cc (design_size): design_size returns a
14155         dimension now as well.
14156
14157 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14158
14159         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14160         brace generation. 
14161
14162         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14163
14164 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14165
14166         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14167         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14168
14169 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14170
14171         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14172         in first run as well.
14173
14174         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14175         dimension less points (ie. 12 = 12 point)
14176
14177         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14178
14179         * lily/all-font-metrics.cc (find_pango_font): set description_
14180
14181         * lily/pango-font.cc (text_stencil): export size as well.
14182         (text_stencil): fix scaling and extents box.
14183
14184 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14185
14186         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14187
14188         * Documentation/user/invoking.itely (Invoking lilypond): document
14189         texstr
14190
14191         * scripts/convert-ly.py (conv): add ancient rules.
14192
14193         * scm/clef.scm (c0-pitch-alist): replace - with .
14194
14195         * scripts/lilypond-book.py (process_snippets): add texstr support.
14196
14197         * scm/framework-texstr.scm (header): change extension to .textmetrics
14198
14199         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14200         -f tex.
14201
14202         * lily/text-metrics.cc: new file.
14203         (try_load_text_metrics): new function
14204
14205         * lily/include/text-metrics.hh: new file.
14206
14207 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14208
14209         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14210         ly_scheme_function to ly_lily_module_constant.
14211
14212         * lily/modified-font-metric.cc (text_dimension): try
14213         lookup_tex_text_dimension() first.
14214
14215         * lily/tfm.cc: new function ly:load-text-dimensions
14216
14217 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14218
14219         * scm/output-texstr.scm (text): use \lilygetmetrics
14220
14221         * scm/framework-texstr.scm (header): dump in new format.
14222
14223         * tex/lilypond-tex-metrics: new file.
14224         
14225 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14226
14227         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14228         mapping.
14229         (index_to_charcode): New method.
14230
14231         * scm/output-ps.scm (glyph-string): 
14232         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14233
14234 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14235
14236         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14237         implement fully, need FONT to get to charcode.
14238
14239         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14240
14241         * scm: Cleanups.
14242
14243         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14244         {Tunable context properties},
14245         {All layout objects},
14246         {Music definitions}.
14247
14248 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14249
14250         * VERSION: release 2.5.5
14251         
14252         * lily/main.cc: use TeX as default output format.
14253
14254         * flower/file-path.cc (find): try to open directly as well, so we
14255         find absolute path files. 
14256
14257         * lily/pango-select.cc: new file.
14258
14259         * scm/framework-ps.scm: remove all encoding code. 
14260         load pfb/pfa for PangoFont too.
14261         
14262         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14263
14264 2004-12-22  Werner Lemberg  <wl@gnu.org>
14265
14266         Prepare glyph shapes for mf2pt1 conversion.
14267
14268         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14269
14270         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14271         (define_triangle_shape): Use it to replace `draw' with `fill' and
14272         `unfill'.  Update all callers.
14273         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14274         (draw_cross): Ditto.
14275         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14276         Use penrazor for better conversion with mf2pt1.
14277         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14278         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14279         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14280         draw_la_head, draw_ti_head): Replace `filldraw' with
14281         `fill'.  Update all callers.
14282
14283 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14284
14285         * lily/paper-book.cc (output): revert: only allow a single output
14286         format.
14287
14288         * lily/include/pango-font.hh: new file.
14289
14290         * lily/pango-font.cc: new file.
14291
14292         * lily/font-metric.cc (text_stencil): new routine
14293
14294         * lily/all-font-metrics.cc (find_pango_font): new routine.
14295
14296         * lily/include/font-metric.hh (struct Font_metric): add
14297         text_stencil()
14298
14299         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14300
14301 2004-12-22  Werner Lemberg  <wl@gnu.org>
14302
14303         Prepare glyph shapes for mf2pt1 conversion.
14304
14305         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14306
14307         * mf/feta-toevallig.mf: Formatting.
14308         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14309         ("Natural"): Fix paths to allow better postprocessing.
14310         (draw_meta_flat): Use `z3l' as additional point in path to get
14311         better conversion with mf2pt1.
14312         Other minor cleanups.
14313         ("3/4 Flat"): Add auxiliary points and modify path to replace
14314         `draw' with `fill'.
14315         ("Double Sharp"): Mirror path segments instead of picture elements
14316         to get a single outline.
14317         Modify path to replace `filldraw' with `fill'.
14318
14319 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14320
14321         * input/test/unfold-all-repeats.ly: added file back.
14322
14323         * Documentation/user/notation.itely,
14324         Documentation/user/programming-interface.itely
14325         Documentation/user/changing-defaults.itely: fixed misc broken
14326         links to input/test/ files.
14327
14328 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14329
14330         * tex/texinfo.tex: Update.  We should not be distributing this,
14331         but since we do, use latest version.
14332
14333         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14334         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14335         macros for feta glyphs.
14336
14337 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14338
14339         * Documentation/user/changing-defaults.itely: fix index for set.
14340
14341         * Documentation/user/converters.itely: added convert-ly bugs list
14342         from CVS.
14343
14344 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14345
14346         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14347         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14348         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14349         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14350
14351         * mf/GNUmakefile (pfa_warning): Use less broken check.
14352
14353         * python/lilylib.py (setup_environment): Remove cruft from
14354         GS_FONTPATH.
14355
14356         * configure.in: Bump mftrace requirement to 1.1.1.
14357
14358 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14359
14360         * scm/output-svg.scm (beam): Use polygon.
14361
14362         * scm/lily-library.scm: Bugfix.
14363
14364         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14365
14366         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14367
14368 2004-12-19  Werner Lemberg  <wl@gnu.org>
14369
14370         Prepare glyph shapes for mf2pt1 conversion.
14371
14372         * mf/feta-eindelijk: Some formatting.
14373         (multi_rest_x, multi_beam_height): Removed.  Unused.
14374         ("Quarter rest"): Use `intersectiontimes' to create a single
14375         outline.
14376         (rest_crook): Removed.  Unused.
14377         (draw_rest_bulb): Return path (without filling).  Update callers.
14378         Simplified.
14379         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14380         "128th rest"): Simplify `pat'.
14381         Create single outline.
14382
14383 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14384
14385         * mf/GNUmakefile (ALL_GEN_FILES):
14386         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14387
14388         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14389         function.
14390
14391 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14392
14393         * scm/output-texstr.scm (placebox): add routine
14394
14395         * VERSION (PACKAGE_NAME): release 2.5.4
14396
14397         * scm/framework-texstr.scm (output-framework): new file.  
14398
14399         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14400         processing.
14401
14402         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14403
14404         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14405         rule.
14406
14407         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14408
14409         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14410
14411         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14412
14413 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14414
14415         * scm/framework-svg.scm (dump-page): Implement landscape.
14416
14417 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14418
14419         * lily/main.cc (setup_paths): Add svg to search path.
14420
14421         * scm/output-svg.scm:
14422         * scm/framework-svg.scm: Add pageSet.  Update.
14423         (dump-fonts): New function.
14424         (output-framework): Use it.
14425
14426         * mf/GNUmakefile: 
14427         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14428
14429 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14430
14431         * tex/lilyponddefs.tex: comment out new ifpdf code.
14432
14433 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14434
14435         * GNUmakefile.in: 
14436         * SConstruct (symlink): Replace afm by otf.
14437
14438         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14439         ly:pango-add-afm-decoder.
14440
14441         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14442
14443 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14444
14445         * scm/output-ps.scm (new-text): don't access t glyph for getting
14446         space dimension.
14447
14448         * ly/init.ly: warn about \version
14449
14450         * lily/lexer.ll: set version-seen?
14451
14452 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14453
14454         * scm/output-svg.scm (string->entities): Update.
14455
14456 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14457
14458         * lily/main.cc (setup_paths): replace afm by otf for path. 
14459
14460         * lily/pangofc-afm-decoder.cc: remove.
14461
14462         * lily/include/pangofc-afm-decoder.hh: remove.
14463
14464         * scm/framework-scm.scm (output-framework): new file.
14465
14466         * mf/GNUmakefile: remove SAUTER_FONTS.
14467         remove SVG/sodipodi hacks.
14468
14469         * scm/lily-library.scm (stderr): move stderr.
14470
14471         * mf/GNUmakefile: remove AFM support.
14472
14473         * buildscripts/mf-to-table.py (base): remove AFM support.
14474
14475         * lily/open-type-font.cc (design_size): use design_size
14476
14477 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14478
14479         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14480
14481 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14482
14483         * mf/GNUmakefile: Generate combined aybabtu info.
14484         * mf/aybabtu.pe.in (i): Load it.
14485
14486         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14487         are not symbols.
14488
14489         * lily/include/open-type-font.hh (count): New method.
14490
14491         * mf/aybabtu.pe.in: Typo.
14492
14493         * Documentation/user/out/lilypond-internals.nexi (Scheme
14494         functions): Typo.
14495
14496         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14497
14498 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14499
14500         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
14501         subfonts.
14502
14503         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
14504
14505         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
14506         (tex-font-command-raw): new function.
14507
14508         * lily/include/virtual-font-metric.hh (Module): remove file
14509
14510         * lily/virtual-font-metric.cc (Module): remove file.
14511         
14512
14513         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
14514         (get_indexed_char): read bbox from lily table if present.
14515
14516 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14517
14518         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
14519         aybabtu.subfonts
14520
14521         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
14522         global glyphname. Enables more than 64 glyphs in the OTF.
14523
14524 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
14525
14526         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
14527         braces.
14528
14529         * lily/open-type-font.cc (design_size): Use 12 as default for
14530         design size.
14531
14532         * mf/aybabtu.pe.in: New file.  Merge all our braces.
14533
14534         * mf/GNUmakefile: Generate aybabtu.
14535
14536         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
14537
14538 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14539
14540         * scm/lily-library.scm (char->unicode-index): Remove.
14541
14542         * scm/output-gnome.scm (text): Bugfix for plain string input.
14543         Updates.
14544
14545         * scm/output-svg.scm (svg-font): Add weight to font selection.
14546
14547 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
14548
14549         * Documentation/topdocs/INSTALL.texi (Top): Point to
14550         buildscripts/out/clean-fonts instead of
14551         buildscripts/clean-fonts.sh. 
14552
14553 2004-12-13  Graham Percival  <gperlist@shaw.ca>
14554
14555         * input/regression/figured-bass.ly: attempt to clarify text.
14556
14557         * Documentation/user/notation.tely: add cindex for tag, attempt to
14558         add figured bass example.
14559
14560         * Documentation/user/changing-defaults: basic editing.
14561
14562 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14563
14564         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
14565
14566         * lily/open-type-font.cc (LY_DEFINE): new function
14567         ly:font-sub-fonts
14568
14569         * lily/include/font-metric.hh (struct Font_metric): new method
14570         sub_fonts()
14571
14572         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
14573         . with - in add.stem.
14574         
14575 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14576
14577         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
14578         and fetaDynamic.
14579
14580         * lily/rest.cc (glyph_name): Change - to . .
14581
14582         * scm/output-gnome.scm (text): Hello world, again.
14583
14584         * scm/output-svg.scm (named-glyph): New function.  Hello world!
14585
14586         * lily/modified-font-metric.cc (index_to_charcode): New method.
14587
14588         * lily/include/font-metric.hh (index_to_charcode): New function.
14589
14590         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
14591         new function.
14592         (ly:font-glyph-to-index): Remove.
14593
14594 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14595
14596         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
14597
14598         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
14599
14600         * lily/open-type-font.cc (load_scheme_table): new function
14601
14602         * lily/dots.cc (print): replace - 
14603
14604         * lily/open-type-font.cc (attachment_point): new function.
14605         (load_table): read LILC table
14606
14607         * buildscripts/gen-bigcheese-scripts.py (Module): new
14608         file. Generate FF scripts.
14609
14610         * mf/feta-din10.mf: idem.
14611
14612         * mf/feta-nummer10.mf: remove mf files.
14613
14614         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
14615
14616 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14617
14618         * lily/lily-guile.cc: Use scm_from_locale_stringn.
14619
14620         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
14621         compatibility.
14622
14623 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14624
14625         * lily/open-type-font.cc (get_indexed_char): scale metrics by
14626         design-size and units_per_EM.
14627
14628         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
14629
14630 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14631
14632         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
14633         does not crash fontforge.
14634
14635         * scm/lily-library.scm (char->unicode-index): Hack to map onto
14636         PUA.
14637
14638 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14639
14640         * scm/framework-ps.scm (ps-embed-cff): new function.
14641
14642         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
14643
14644 2004-12-12  Werner Lemberg  <wl@gnu.org>
14645
14646         * mf/bigcheese.pe.in: Add PUA mapping.
14647         Don't create Type 42 but bare CFF font.
14648
14649 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14650
14651         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
14652         within canvas boundaries.
14653
14654         * mf/merge.pe.in: Set font names, version, license GPL.
14655
14656         * make/substitute.make: Add FONTFORGE.
14657
14658         * config.make.in (FONTFORGE): Add.
14659
14660         * configure.in (gui_b): Use PATH_PROG for fontforge.
14661
14662 2004-12-11  Graham Percival  <gperlist@shaw.ca>
14663
14664         * scm/define-markup-commands.scm: add baseline-skip to info
14665         about \column.
14666
14667 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
14668
14669         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
14670
14671         * scm/output-gnome.scm (named-glyph): Use it.
14672
14673         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
14674
14675         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
14676         (upper_string, lower_string, reverse_string): Remove.
14677
14678         * configure.in (fontforge): Reinstate version check.
14679
14680         * ly/engraver-init.ly: Fix clef glyph names.
14681
14682         * lily/time-signature.cc (special_time_signature): Fix fraction
14683         glyph names.
14684
14685 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14686
14687         * mf/merge.pe: new file.
14688
14689         * lily/freetype.cc: new file.
14690
14691         * lily/include/open-type-font.hh (class Open_type_font): new file.
14692
14693         * lily/include/freetype.hh: new file.
14694
14695         * lily/open-type-font.cc: new file.
14696
14697         * lily/all-font-metrics.cc (find_otf): new function.
14698
14699 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
14700
14701         * lily/time-signature.cc (special_time_signature): Fix.
14702
14703         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
14704         GTK2 before checking for pango.  Fixes -fgnome.
14705
14706         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
14707         Scheme name.
14708
14709         * scm/define-markup-commands.scm:
14710         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
14711
14712         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
14713
14714         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
14715         date versions.  Fixes configure.
14716         (STEPMAKE_CHECK_VERSION): Support optional actual program version
14717         argument.
14718
14719 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14720
14721         * buildscripts/mf-to-table.py (write_ps_encoding): write real
14722         names in .enc
14723
14724         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
14725
14726 2004-12-09  Graham Percival  <gperlist@shaw.ca>
14727
14728         * Documentation/user/changing-defaults.itely: add info about
14729         make-dynamic-script
14730
14731         * Documentation/user/notation.itely: add link in dynamics to
14732         section about make-dynamic-script.
14733
14734 2004-12-09  Christian hitz  <chhitz@gmx.net>
14735
14736         * lily/lily-guile.cc: change MACOS_X to __APPLE__
14737
14738 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14739
14740         * buildscripts/mf-to-table.py (parse_logfile): use . for
14741         concatting name and group.
14742         (parse_logfile): use M for Minus (negative.)
14743
14744         * lily/include/type-swallow-translator.hh
14745         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
14746
14747         * lily/*.cc: cosmetics around = sign.
14748
14749         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
14750         lyric spacing on the penultimate column.
14751
14752 2004-12-05  Christian Hitz  <chhitz@gmx.net>
14753
14754         * configure.in:
14755         * lily/accidental-placement.cc:
14756         * lily/bar-line.cc:
14757         * lily/beam-concave.cc:
14758         * lily/beam-quanting.cc:
14759         * lily/beam.cc:
14760         * lily/bezier-bow.cc:
14761         * lily/bezier.cc:
14762         * lily/break-align-interface.cc:
14763         * lily/custos.cc:
14764         * lily/dimension-cache.cc:
14765         * lily/dot-column.cc:
14766         * lily/font-metric.cc:
14767         * lily/font-select.cc:
14768         * lily/gourlay-breaking.cc:
14769         * lily/grob-property.cc:
14770         * lily/grob.cc:
14771         * lily/lily-guile.cc:
14772         * lily/line-spanner.cc:
14773         * lily/lookup.cc:
14774         * lily/lyric-extender.cc:
14775         * lily/lyric-hyphen.cc:
14776         * lily/mensural-ligature.cc:
14777         * lily/midi-def.cc:
14778         * lily/misc.cc:
14779         * lily/note-collision.cc:
14780         * lily/note-column.cc:
14781         * lily/note-head.cc:
14782         * lily/paper-outputter.cc:
14783         * lily/percent-repeat-item.cc:
14784         * lily/rest-collision.cc:
14785         * lily/side-position-interface.cc:
14786         * lily/simple-spacer.cc:
14787         * lily/slur-configuration.cc:
14788         * lily/slur-scoring.cc:
14789         * lily/slur.cc:
14790         * lily/spaceable-grob.cc:
14791         * lily/spacing-spanner.cc:
14792         * lily/spanner.cc:
14793         * lily/staff-symbol-referencer.cc:
14794         * lily/stem.cc:
14795         * lily/stencil.cc:
14796         * lily/system-start-delimiter.cc:
14797         * lily/system.cc:
14798         * lily/text-item.cc:
14799         * lily/tie.cc:
14800         * lily/tuplet-bracket.cc:
14801         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
14802         <cmath> beacause isinf/isnan is undefined in <cmath>
14803
14804 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
14805
14806         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
14807
14808 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14809
14810         * VERSION: release 2.5.3
14811         
14812 2004-11-29  Arno Waschk <arno@arnowaschk.de>
14813
14814         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
14815
14816 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14817
14818         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
14819
14820         * lily/note-head.cc (internal_print): always try the "s" head if
14821         u/d not found.
14822
14823         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
14824
14825 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14826
14827         * mf/parmesan-heads.mf (overdone_heads): typos.
14828
14829 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14830
14831         * lily/parser.yy (markup): in markups, { .. } without command
14832         before are also flattened, ie \line must be explicitely used.
14833
14834         * Documentation/user/changing-defaults.itely:
14835         * Documentation/user/notation.itely: 
14836         * input/wilhelmus.ly: 
14837         * input/regression/instrument-name-markup.ly: 
14838         * input/regression/markup-score.ly: 
14839         * input/regression/new-markup-scheme.ly: 
14840         * input/regression/new-markup-syntax.ly: 
14841         * input/test/coriolan-margin.ly: use \line in markups where
14842         appropriate
14843         
14844 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14845
14846         * scm/new-markup.scm (map-markup-command-list): helper function
14847         used in parser.yy to map markup commands on a markup list.
14848
14849         * lily/parser.yy: get rid off < > in markups by treating { } as
14850         real lists.
14851
14852         * lily/lexer.ll: remove < > from markup lexer mode.
14853
14854         * scripts/convert-ly.py (conv): add rule for converting 
14855         \markup < > to \markup { }
14856
14857         * ly/titling-init.ly: 
14858         * input/test/coriolan-margin.ly: 
14859         * input/regression/new-markup-syntax.ly: 
14860         * input/regression/new-markup-scheme.ly: 
14861         * input/regression/multi-measure-rest-text.ly: 
14862         * input/regression/markup-stack.ly: 
14863         * input/regression/markup-score.ly: 
14864         * input/regression/instrument-name-markup.ly: 
14865         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
14866         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
14867         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
14868         * input/wilhelmus.ly: 
14869         * Documentation/user/notation.itely: 
14870         * Documentation/user/music-glossary.tely: 
14871         * Documentation/user/changing-defaults.itely: change < > to { } in
14872         markups
14873
14874 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14875
14876         * lily/accidental-placement.cc (position_accidentals): shortcut if
14877         no accidentals to place.
14878
14879 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14880
14881         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
14882         typo s/ly:dimension ?/ly:dimension?/
14883
14884         * input/regression/lily-in-scheme.ly: 
14885         * input/regression/music-function.ly: 
14886         * ly/spanners-init.ly (assertBeamSlope): 
14887         * scm/music-functions.scm (def-grace-function): add the paper
14888         argument to music function definitions.
14889
14890 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14891
14892         * lily/moment.cc (LY_DEFINE):
14893         ly:moment-main-{denominator,numberator}, new function.
14894
14895         * lily/score-engraver.cc (typeset_all): assign to column on basis
14896         of axis-group-parent-X setting.
14897
14898         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
14899         add_element() on basis of axis-group-parent-Y setting.
14900
14901         * lily/grob.cc: add axis-group-parent-{XY} properties.
14902
14903         * input/regression/spacing-stick-out.ly: new file.
14904
14905         * lily/simple-spacer.cc (add_columns): use binary search for
14906         setting column rods. Changes O(n^2) to O(n log(n)) for
14907         constructing spacing problem from columns.
14908         (add_columns): read allow-outside-line to make sure no texts stick
14909         out.
14910         (solve): Simple_spacer::is_active() only determines
14911         satisfies_constraints_ for non-ragged typesetting.
14912
14913         * lily/simultaneous-music.cc (to_relative_octave): only set
14914         old_relative_used if return pitch actually changed.
14915
14916         * scm/define-context-properties.scm
14917         (all-user-translation-properties): change to match implementation.
14918
14919         * python/lilylib.py: Replace re.match by re.search and adds "-c
14920         showpage" to the gs command line (Johannes Schindelin)
14921
14922         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
14923         before processing. Prevents crash when inf is in the extent.
14924
14925         * scm/define-markup-commands.scm (note-by-number): add "s" to
14926         "noteheads-" glyphname.
14927  
14928         * lily/parser.yy (Generic_prefix_music): supply parser argument to
14929         music function as well.
14930         
14931 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14932
14933         * VERSION: release 2.5.2
14934
14935         * Documentation/user/changing-defaults.itely (Creating titles):
14936         add breakbefore variable.
14937
14938         * lily/paper-book.cc (set_system_penalty): new function. Set
14939         penalty_ based on breakBefore setting
14940
14941         * lily/context-specced-music-iterator.cc (construct_children):
14942         interpret special context id $uniqueContextId 
14943
14944         * lily/context.cc (create_unique_context): new method. Move
14945         creation of unique (\new) contexts into interpreting phase. This
14946         makes
14947
14948           foo= \new Staff ..
14949           << \foo \foo >>
14950
14951         produce 2 staves.
14952         
14953
14954         * scm/define-music-properties.scm (all-music-properties): add
14955         quoted-voice-direction
14956
14957         * ly/music-functions-init.ly: killCues function.
14958
14959         * scm/music-functions.scm (cue-substitute): move creation of voice
14960         contexts further to the back. 
14961
14962 2004-11-25  Werner Lemberg  <wl@gnu.org>
14963
14964         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
14965         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
14966
14967 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
14968
14969         * buildscripts/guile-gnome.sh: Fixed typo.
14970
14971 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14972
14973         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
14974
14975         * scripts/abc2ly.py (dump_slyrics): add ord(). 
14976
14977         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
14978         to regular engraver. 
14979
14980 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14981
14982         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
14983
14984 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14985
14986         * scm/define-markup-commands.scm (fill-line): Typo.
14987
14988         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
14989         and newer.
14990
14991 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
14992
14993         * ly/dynamic-scripts-init.ly: Fixed typo.
14994
14995 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14996
14997         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
14998         note-head, to have different attachment points for up and down.
14999
15000         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15001
15002         * mf/feta-generic.mf (else): remove solfa.
15003
15004         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15005
15006         * scm/define-context-properties.scm
15007         (all-user-translation-properties): add shapeNoteStyles property.
15008
15009         * lily/shape-note-heads-engraver.cc (process_music): new file.
15010
15011         * lily/event.cc (transpose): call Event::transpose() for
15012         transposing the tonic.
15013
15014 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15015
15016         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15017         Unicode/OpenType and AFM.
15018
15019         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15020
15021 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15022
15023         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15024
15025         * lily/context.cc (Context): unprotect key from ctor.
15026
15027         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15028         is '()
15029         (stack-stencils): idem.
15030
15031         * Documentation/user/changing-defaults.itely (Creating titles):
15032         document new title layout options.
15033
15034         * lily/parser.yy (lilypond_header_body): copy previous
15035         $globalheader if present.
15036
15037         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15038         ly:module-copy
15039         
15040         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15041
15042         * scm/titling.scm: remove old titling functions
15043
15044         * lily/stencil.cc (translate): remove absolute dimension.
15045
15046         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15047         via markup.
15048
15049         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15050         field from user-supplied markup
15051
15052         * scm/define-markup-commands.scm (on-the-fly): new markup
15053         command. Enter SCM markup procedure directly in Scheme.
15054         (fromproperty): new markup command. Read markup from props argument.
15055
15056         * scm/titling.scm (marked-up-title): create title via
15057         user-specified markup. 
15058
15059         * scm/define-markup-commands.scm (column): remove empty stencils
15060         from column.
15061
15062         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15063         not have side-effect of creating variable stub.
15064
15065         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15066
15067 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15068
15069         * scm/encoding.scm (coding-alist): 
15070         * scm/font.scm (add-ec-fonts):
15071         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15072         Extended-TeX-Font-Encoding---Latin.
15073
15074         * lily/side-position-interface.cc (general_side_position): Add
15075         actual offset to error message (avoid constant error messages).
15076
15077         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15078         block.
15079
15080         * lily/font-select.cc (select_encoded_font)
15081         (get_font_by_mag_step, get_font_by_design_size): 
15082         * lily/modified-font-metric.cc (Modified_font_metric): 
15083         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15084
15085         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15086         (read-encoding-file): Bugfix: do not require space after bracket.
15087
15088         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15089         these do not exist.
15090
15091 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15092
15093         * Documentation/user/notation.itely: added info about typesetting
15094         boxed bar numbers.
15095
15096 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15097
15098         * flower/interval.cc (T_to_string): gcc4 fixes.
15099
15100         * scm/define-markup-commands.scm (fill-line): use
15101         stack-stencils. This fixes problems with putting already centered
15102         stencils in a line.
15103
15104         * VERSION: release 2.5.1
15105
15106         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15107
15108 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15109
15110         * input/example-[1-3].ly: simplify.
15111
15112         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15113
15114         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15115         show glyphs.
15116
15117         * scm/encoding.scm (decode-byte-string): new function.
15118
15119         * scripts/convert-ly.py (conv): add warning about
15120         set-global-staff-size.
15121
15122         * Doxyfile: add. 
15123
15124         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15125         (conv): warn for TextSpanner split.
15126         (conv): warn for textheight.
15127
15128 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15129
15130         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15131         building the documentation, info with images are installed.
15132         (final-install): Fix description.  Mention sourcing of login
15133         scripts (instead of running).
15134
15135 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15136
15137         * Debian lmodern support.  Note that LilyPond will issue warnings
15138         
15139             no such encoding: "FontSpecific"
15140
15141           The font selection mechanism wants to get the encoding from the
15142           font itself, but the idea of lmodern is that it is usable with
15143           different encodings, ie, Lily should get the encoding from the
15144           font tree, rather than the font itself.  This would require some
15145           more work.
15146         
15147         * configure.in: Test for and accept lmodern if EC fonts not found.
15148
15149         * scm/framework-tex.scm (font-load-command): TeX font name
15150         mangling for latin1 encoded cork-lm fonts.
15151         (convert-to-ps): Load lm.map if available.
15152
15153         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15154         available.
15155
15156         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15157
15158         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15159         available.
15160
15161         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15162         path for absolute file name, that is silly.
15163
15164         * lily/score-engraver.cc (initialize): 
15165
15166         * Documentation/user/GNUmakefile (local-install-info): Invoke
15167         install-info --remove first.
15168
15169         * #include cleanup (Andreas Scherer).
15170
15171 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15172
15173         * input/test/script-abbreviations.ly: fix typos.
15174
15175 2004-11-17  Werner Lemberg  <wl@gnu.org>
15176
15177         * python/lilylib.py (options_help_str): Support pretty-printing of
15178         newlines in fourth element of option description.
15179
15180         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15181         feature.
15182         Sort options.
15183
15184         * Documentation/user/lilypond-book.itely: Finish update.
15185
15186 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15187
15188         * Documentation/user/macros.itexi: Add comment about \command.
15189
15190         * Documentation/user/lilypond.tely:
15191         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15192         and lilypond-book nodes, so that `info lilypond' visits the manual
15193         at top level, and `info lilypond-book' visits the lilypond-book
15194         section.
15195
15196         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15197         and packager messages.
15198
15199         * lily/pangofc-afm-decoder.cc: Update test.
15200
15201 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15202
15203         * scm/lily-library.scm (char->unicode-index): New function.
15204
15205         * scm/output-gnome.scm: 
15206         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15207
15208         * Proper naming of file name throughout; s/filename/file[-_]name/.
15209
15210         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15211
15212         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15213
15214 2004-11-16  Werner Lemberg  <wl@gnu.org>
15215
15216         * scripts/lilypond-book.py: The Lord has commanded me to use only
15217         tabs for indentation.  Your humble servant obeys.
15218
15219 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15220
15221         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15222         including font, if LilyPond-feta font is only feta font in path.
15223
15224         * scm/output-gnome.scm (text): Revert to file name of font if font
15225         has no name.  Fixes ec font selection.
15226         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15227
15228         * scm/framework-svg.scm:
15229         * scm/output-svg.scm: New file.  TODO: figure out how to
15230         do character by index in font.
15231
15232         * scm/output-sodipodi.scm: Remove.
15233
15234         * scm/output-ps.scm (stem): Remove.
15235
15236 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15237
15238         * scm/output-gnome.scm (beam): New function.
15239         (slur): Round corners.
15240         (round-filled-box): Round corners.
15241
15242 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15243
15244         * scm/output-gnome.scm (beam): add function.
15245         (draw-line): new routine.
15246         (dashed-line): stub; call draw-line
15247         (polygon): new routine.
15248
15249 2004-11-15  Werner Lemberg  <wl@gnu.org>
15250
15251         * Documentation/user/lilypond-book.itely: Revise section on
15252         lilypond-book options.
15253         Other minor fixes.
15254
15255         * scripts/lilypond-book.py: Change indentation to 4.
15256         Minor formatting.
15257
15258 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15259
15260         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15261         grobs that have tweaks specced.
15262         
15263 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15264
15265         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15266
15267 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15268
15269         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15270         actual char #, not 0 based index.
15271
15272         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15273
15274         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15275         Warning: do make -C mf clean.
15276
15277         * lily/context-property.cc: Compile fix.
15278
15279         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15280         Grok ec-fonts, braces and dynamics.
15281
15282         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15283
15284 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15285
15286         * lily/include/tweak-registration.hh: new file.
15287
15288         * lily/tweak-registration.cc: new file.
15289
15290         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15291         saving tweaks.
15292
15293         * scm/output-gnome.scm (text): comment dribble.
15294
15295 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15296
15297         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15298
15299         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15300         path-def before using.  Fixes muchtomany slurs in wrong places
15301         bug.
15302
15303 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15304
15305         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15306
15307         * lily/include/object-key-undumper.hh (Module): new file.
15308
15309         * lily/object-key-undumper.cc (Module): New file. Deserialize
15310         keys. SCM bindings
15311
15312         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15313         Provide SCM bindings.
15314
15315         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15316         new file. Serialize object keys.
15317         
15318         * lily/object-key.cc (dump): new function.
15319         (as_scheme): new virtual function
15320         (undump): new function
15321         (undumpers): new table.
15322
15323         * lily/include/global-context.hh (Context): take \score key upon init.
15324
15325         * lily/object-key-dumper.cc (serialize_key): new file.
15326
15327         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15328
15329         * lily/lily-lexer.cc: remove \quote.
15330
15331         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15332
15333         * lily/context.cc (Context): take key argument in ctor.
15334         (create_context): new function
15335
15336         * lily/grob.cc (Grob): take key argument in ctor.  
15337
15338         * lily/lilypond-key.cc (do_compare): new file.
15339
15340         * lily/object-key.cc (Object_key): new file.
15341
15342         * lily/include/object-key.hh (class Object_key): new file.
15343
15344         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15345
15346 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15347
15348         * Documentation/user/lilypond-book.itely: add small warning about
15349         noindent default in lilypond-book.
15350
15351         * Documentation/user/converters.itely: add examples for convert-ly.
15352
15353         * Documentation/user/examples.itely: change version string in templates
15354         to 2.4.0.
15355
15356 2004-11-12  Karl Hammar  <karl@aspodata.se>
15357
15358         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15359         cmdline, use xargs instead (backportme)
15360
15361 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15362         
15363         * Documentation/user/: Numerous fixes in the user manual.
15364
15365 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15366
15367         * lily/parser.yy (re_rhythmed_music): search music expression for
15368         context-id, surround by \new Voice if not found. Fixes:
15369         addlyrics-second-staff.ly
15370
15371         * VERSION: 2.5.0 released.
15372         
15373 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15374
15375         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15376
15377         * Documentation/user/GNUmakefile: Separate rules for split and
15378         unsplit html documents.  Remove perl massaging.  (backportme)
15379
15380 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15381
15382         * Documentation/user/lilypond-book.itely: add short warning about
15383         \lilypond{} in LaTeX docs.
15384
15385 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15386
15387         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15388         found.  (backportme)
15389
15390         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15391         version requirement.  (backportme)
15392
15393         * configure.in: Be explicit about old versions of
15394         ec-fonts-mtraced.  (backportme)
15395
15396         * lily/context-selector.cc (set_tweaks): New function.
15397         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15398         web with -DTWEAK.
15399
15400         * Documentation/user/introduction.itely (Automated engraving):
15401         Remove fragment option.  Fixes web.
15402
15403         * lily/context-property.cc (make_item_from_properties):
15404         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15405         #ifdef.
15406
15407         * scm/define-context-properties.scm
15408         (all-internal-translation-properties): Add tweakRank and tweakCount.
15409
15410         * lily/grob.cc: 
15411         * scm/define-grob-properties.scm (all-internal-grob-properties):
15412         Add tweak-rank and tweak-count.
15413
15414 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15415
15416         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15417         New function.
15418         (text): Use them.
15419
15420         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15421         animated/opaque grob dragging tweaks.
15422
15423         * buildscripts/guile-gnome.sh: Update.
15424
15425 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15426
15427         * scm/define-grobs.scm (all-grob-descriptions): Added
15428         line-interface to the LigatureBracket object.
15429
15430 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15431
15432         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15433         dragging tweaks.
15434
15435         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15436
15437         * lily/context-selector.cc (store_context): New function.
15438
15439         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15440         (store_grob): New function.
15441         (identify_grob): Add Moment parameter.
15442
15443         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15444         exists.
15445
15446         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15447
15448 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15449
15450         * scm/framework-gnome.scm (item-event): Print grob id.
15451         (save-tweaks): New function.
15452         (tweak): New funtion.
15453         (item-event): Use it, bound to arrow keys.
15454
15455         * lily/context-property.cc (make_item_from_properties): Register grob.
15456         * lily/context.cc (add_context): Register context.
15457
15458         * lily/include/context-selector.hh:
15459         * lily/include/grob-selector.hh:
15460         * lily/context-selector.cc:
15461         * lily/grob-selector.cc: New file.
15462
15463 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15464
15465         * lily/slur.cc: add 'positions to interface
15466
15467         * lily/main.cc: reinstate PS as standard output format. 
15468
15469         * scm/framework-tex.scm (output-preview-framework): print systems
15470         up to first non title system.
15471
15472         * lily/grace-engraver.cc (start_translation_timestep): split
15473         scm_cadddr
15474         
15475 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15476
15477         * lily/quote-iterator.cc (Module): remove old quote-iterator
15478
15479         * scm/define-music-types.scm (music-descriptions): move
15480         NewQuoteMusic over QuoteMusic
15481
15482         * Documentation/user/notation.itely (Formatting cue notes): use
15483         \cueDuring.
15484
15485         * lily/new-quote-iterator.cc (quote_ok): new function.
15486
15487         * input/regression/quote-cue-during.ly: new file.
15488
15489         * input/regression/quote-grace.ly: new file.
15490
15491         * scm/define-context-properties.scm (Module): change definition of
15492         graceSettings
15493
15494         * lily/context-property.cc (Module): rename from
15495         translator-property.cc
15496
15497         * lily/context.cc (context_name_symbol): new function
15498
15499         * lily/grace-engraver.cc: new file. Set properties for grobs based
15500         on the grace-ness of now_moment().
15501
15502         * scm/music-functions.scm (add-grace-property): use list
15503         iso. vector for graceSettings
15504         remove set-{start,stop}-grace-properties. 
15505
15506         * lily/new-quote-iterator.cc (construct_children): set
15507         quote_outlet_ if no quoted-context-{id,type} specified.
15508
15509         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
15510
15511         * lily/parser.yy (command_element): remove \quote.
15512
15513         * ly/music-functions-init.ly (location): add quoteDuring music
15514         function. 
15515
15516         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
15517         optional semicolon. (backportme)
15518
15519 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15520
15521         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
15522         need to link to GUILE et al.
15523
15524 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15525
15526         * scm/define-music-properties.scm (all-music-properties): add
15527         quoted-context-type, quoted-context-id.
15528
15529         * scm/lily.scm (type-check-list): new function.
15530         
15531         * scm/lily-library.scm: new file. Generic library routines.
15532
15533         * lily/parser.yy (Generic_prefix_music): move typechecking out of
15534         parser.
15535
15536         * ly/music-functions-init.ly: add quoteDuring function.
15537
15538         * lily/include/music-iterator.hh (class Music_iterator): rename
15539         set_translator -> set_context
15540
15541         * lily/parser.yy (Generic_prefix_music_scm): add
15542         MUSIC_FUNCTION_SCM_SCM_MUSIC
15543
15544         * scm/lily.scm (sanitize-command-option): new function. (backportme)
15545
15546         * scm/framework-tex.scm (header): sanitize TeX paper size.
15547         (backportme)
15548
15549 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15550
15551         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
15552
15553         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
15554
15555         * scm/framework-tex.scm (font-load-command): Use T1 if no
15556         font-encoding set.  (backportme)
15557
15558         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
15559         exists before converting.  (backportme)
15560
15561         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
15562         exists before converting.  (backportme)
15563         (convert-to-ps): Remove .ps file if it exists before
15564         converting.  (backportme)
15565
15566         * lily/lexer.ll: Remove extra progress newline, use present tense.
15567
15568         * scm/paper.scm (paper-alist): public.
15569         * scm/framework-tex.scm (convert-to-ps):
15570         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
15571         command line.
15572
15573 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15574
15575         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
15576
15577         * lily/recording-group-engraver.cc (derived_mark): mark
15578         now_events_. (backportme)
15579
15580 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15581
15582         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
15583
15584         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
15585         invoking latex. (backportme.)
15586
15587         * lily/stem.cc (off_callback): center stems for all rest stems.
15588
15589 2004-11-05  Werner Lemberg  <wl@gnu.org>
15590
15591         * Documentation/user/lilypond.tely: Add more guidelines for writing
15592         lilypond texinfo documents.
15593
15594 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
15595
15596         * Documentation/index.html.in: remove <hr>.
15597
15598         * THANKS: change 2.3 to 2.4.
15599
15600 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
15601
15602         * scm/output-gnome.scm: More fontconfig comment.
15603
15604 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
15605
15606         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
15607         <package> directory in $(builddir)/share according with
15608         PACKAGE_NAME defined in the VERSION file.
15609
15610 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15611
15612         * lily/beam.cc (rest_collision_callback): use local beam
15613         multiplicity.
15614
15615         * input/regression/stem-stemlet.ly: new file.
15616
15617         * lily/stem.cc (add_head): store rests as well.
15618
15619         * scm/define-grob-properties.scm (all-user-grob-properties): add
15620         stemlet-length
15621
15622         * lily/stem.cc: store rests as well.
15623         
15624         * input/regression/new-slur.ly: mention forcing.
15625
15626 2004-11-04  Werner Lemberg  <wl@gnu.org>
15627
15628         * Documentation/user/*: A new round of layout fixes and document
15629         structure cleanup.
15630
15631 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
15632
15633         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
15634
15635 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
15636
15637         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
15638
15639 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
15640
15641         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
15642
15643         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
15644
15645         * lily/main.cc (main): Invoke identify.
15646
15647         * scm/lily.scm (postscript->pdf): Remove progress newline.
15648         Write progress to stderr.
15649
15650         * lily/paper-book.cc (output): Remove progress newline.
15651
15652         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
15653         gettext on user messages, and remove whitespace.
15654
15655         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
15656
15657         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
15658         argv[0] (Thomas Scharkowski).
15659
15660         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
15661         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
15662         for ec-fonts-mtraced.
15663
15664         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
15665         --srcdir build (Bertalan).
15666
15667         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
15668         headers and library too (Laura Conrad).
15669
15670         * Documentation/topdocs/INSTALL.texi (Top): Mention development
15671         package for guile too (Laura Conrad).
15672
15673         * lily/main.cc (usage): Typo.
15674
15675 2004-11-02  Werner Lemberg  <wl@gnu.org>
15676
15677         * Documentation/user/notation.ly: More fixes to improve appearance.
15678
15679         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
15680         better output for multicolumn tables.
15681
15682 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
15683
15684         * lily/main.cc (dir_info): Fixed typo in the printouts.
15685
15686 2004-11-01  Werner Lemberg  <wl@gnu.org>
15687
15688         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
15689         of output.
15690         Set `per_line' to 2; replace hard-coded value with it.
15691
15692         * Documentation/user/*: Many fixes to improve appearance of
15693         printed manual.
15694
15695 2004-11-01  Werner Lemberg  <wl@gnu.org>
15696
15697         * Documentation/user/changing-defaults.itely,
15698         Documentation/user/notation.ly,
15699         Documentation/user/programming-interface.itely: Use @/.
15700         Fix formatting of some lilypond snippets and tables.
15701
15702         * scripts/lilypond-book.py (compose_ly): Provide useful default
15703         for LINEWIDTH in `override'.
15704
15705 2004-10-31  Graham Percival  <gperlist@shaw.ca>
15706
15707         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
15708
15709 2004-10-31  Werner Lemberg  <wl@gnu.org>
15710
15711         Resetting @exampleindent to `5' gives ugly results with texinfo's
15712         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
15713         (if not quoting) to change @exampleindent only locally.
15714
15715         * scripts/lilypond-book.py (NOQUOTE): New variable.
15716         (output) [LATEX]: Remove AFTER and BEFORE.
15717         [TEXINFO]: Remove AFTER and BEFORE.
15718         Fix QUOTE and VERBATIM pattern.
15719         Add NOQUOTE pattern.
15720         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
15721         and BEFORE.
15722         [output_texinfo]: Use NOQUOTE.
15723
15724 2004-10-31  Graham Percival  <gperlist@shaw.ca>
15725
15726         * Documentation/user/changing-defaults.itely: clarify paper
15727         size commands with correct info.
15728
15729         * Documentation/user/lilypond-book.itely: add more docs for
15730         filename extensions.
15731
15732 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15733
15734         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
15735         (PATCH_LEVEL): start 2.5.0.
15736
15737 #Local variables:
15738 #coding: utf-8
15739 #End:
15740