]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* lily/include/book.hh (class Book): idem.
[lilypond.git] / ChangeLog
1 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * lily/include/book.hh (class Book): idem.
4
5         * lily/include/context-def.hh (struct Context_def): idem.
6
7         * lily/include/score.hh (class Score): don't derive from Input.
8
9         * lily/book.cc (Book): add a copy ctor. 
10
11         * buildscripts/output-distance.py (FileLink.calc_distance): count
12         orphans in distance too.
13
14         * python/midi.c (midi_parse_track): robustness: don't read past
15         end of string.
16
17         * ly/performer-init.ly: add Control_track_performer, move
18         Tempo_performer and Time_signature_performer to Score.        
19
20         * lily/score-performer.cc (acknowledge_audio_elements): override
21         from base class: add to audio-columns
22
23         * lily/control-track-performer.cc (add_text): new file: generate
24         the control track.
25
26         * lily/performance.cc: move output_header_track to Control_track_performer()
27
28         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
29
30         * lily/include/midi-item.hh (class Midi_channel_item): insert
31         class into hierarchy, for items that can have a channel setting. Dehungarify.
32
33         * lily/include/performer.hh (class Performer): remove
34         play_element();  move functionality into announce/acknowledge.
35
36         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
37
38         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
39         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
40
41 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
42
43         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
44         ambituses.
45
46         * lily/all-font-metrics.cc: remove TFM support.
47
48         * lily/include/tfm.hh: remove TFM support, TFM reader.
49
50         * lily/include/binary-source-file.hh: remove Binary_source_file.
51
52 2006-08-27  Graham Percival  <gpermus@gmail.com>
53
54         * Documentation/topdocs/NEWS.itely: add @c marker for
55         stuff I've processed.
56
57         * Documentation/user/ various: info from NEWS.
58
59 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
60
61         * lily/paper-column-engraver.cc (finalize): Oops, this change
62         should have gone in on 2006-08-23
63
64 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
65
66         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
67         quotes to quote arguments. Fixes Windows problem.
68
69         * python/lilylib.py (progress): idem
70
71 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
72
73         * scripts/musicxml2ly.py: fix for importing
74         minor key signatures from MusicXML.  (Phillip Kirlin)
75
76 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
77
78         * python/musicxml.py: 
79         (Attributes.get_key_signature): now correctly retrieves mode from 
80         MusicXML. 
81
82 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
83
84         * lily/parser.yy (output_def_body): take ownership of identifier
85         back to C++.
86
87         * Documentation/user/advanced-notation.itely (Metronome marks):
88         update use of \tempo in \midi.
89
90 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
91
92         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
93         web partially)
94
95 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
96
97         * input/regression/tie-chord-partial.ly: clarify example.
98
99         * scm/define-music-properties.scm (all-music-properties): remove
100         untied.
101
102         * ly/music-functions-init.ly: remove \untied.
103
104         * lily/tie-engraver.cc (struct Head_event_tuple): store both
105         stream events and music events.
106         (stop_translation_timestep): search acknowledged heads for
107         tie-event.
108
109         * input/regression/tie-chord-partial.ly: new file.
110
111         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
112         for \char markup command.
113
114         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
115
116         * scm/define-music-types.scm (music-descriptions): consistency:
117         Use solo-{one,two}-event iso. solo-[12]-event.
118
119         * lily/part-combine-engraver.cc (process_music):
120         Use solo-{one,two}-event iso. solo-[12]-event.
121
122         * ly/declarations-init.ly (partCombineListener): add Timing as
123         alias
124
125         * flower/std-string.cc (string_copy): use copy ()
126
127         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
128
129 2006-08-24  Graham Percival  <gpermus@gmail.com>
130
131         * Documentation/user/changing-defaults.itely, global.itely,
132         lilypond-book.itely, page.itely: minor changes from mailist.
133
134 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
135
136         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
137         snippet-map
138
139         * scm/define-context-properties.scm
140         (translator-property-description): robustness: detect type errors
141         in property definitions.
142
143         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
144         after getting it from SCM. 
145
146         * lily/smobs.cc (protect_smob): switch off fancy smob protection
147         for now. 
148
149         * lily/include/performer.hh (class Performer): strip get_tempo()
150         method.
151
152         * lily/midi-def.cc: strip file.
153
154         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
155
156         * lily/include/context-def.hh (struct Context_def): use
157         VIRTUAL_COPY_CONSTRUCTOR().
158
159         * lily/source-file.cc: smobification.
160
161         * lily/include/source-file.hh (class Source_file): smobify
162         Source_file. Trim redundant members.
163
164         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
165         clones after creation. This plugs a huge memory leak.
166
167         * python/convertrules.py (FatalConversionError.sub_tempo):
168         complete rule for \midi{ \tempo }
169
170         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
171
172         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
173
174 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
175
176         * input/regression/optimal-page-breaking-hstretch.ly: test for
177         ragged-last-bottom also
178
179         * lily/paper-column-engraver.cc (finalize): make the end of a score
180         breakable by default. This is to balance out a change in behaviour
181         of the page-turn-breaker which no longer makes the end of a score
182         breakable.
183
184         * lily/paper-book.cc (pages): set the systems_ once the pages are
185         broken
186
187         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
188         Page_breaking interface.
189
190         * lily/page-breaking.cc (class Page_breaking): make the interface
191         more consistent and provide abstractions for dealing with
192         Line_divisions.
193
194         * lily/optimal-page-breaking.cc (solve): use a more straightforward
195         algorithm. Use the new interface to Page_breaking.
196
197         * lily/page-spacing.cc: better support for ragged-bottom and
198         ragged-last-bottom
199
200 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
201
202         * python/convertrules.py (conv): warning on \tempo{}
203
204         * ly/performer-init.ly: set tempoWholesPerMinute.
205
206         * ly/midi-init.ly: remove \midi
207
208         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
209         MIDI tempo.
210
211         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
212         tempoUnitDuration for determining what to print.
213
214         * lily/lyric-extender.cc: typo.
215
216         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
217
218         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
219         function.
220
221         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
222
223         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
224         eps-pad-boxes is set.
225
226         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
227
228         * THANKS: update sponsors.
229
230         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
231
232         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
233
234         * input/regression/tie-chord-untied.ly: new file.
235
236         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
237
238         * scm/define-music-properties.scm (all-music-properties): add
239         'untied property.
240
241         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
242         than .ly.txt.
243         (headertext_nopics): sanitize no-examples text.
244
245         * scm/page.scm (make-page-stencil): don't rely on extents of
246         page-stencil. This fixes spurious space around .EPS files produced
247         with the EPS backend.
248
249 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
250
251         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
252
253         * lily/hara-kiri-engraver.cc (process_music): remember
254         keepAliveInterfaces after processing \set
255
256         * lily/lyric-extender.cc (print): support left/right-padding for
257         extenders.
258
259         * scm/documentation-generate.scm (string-append): revert lilypond/
260         path, doc why.
261
262 2006-08-20  Graham Percival  <gpermus@gmail.com>
263
264         * Documentation/user/lilypond.tely: clarification to
265         license presentation (not to actual license).
266
267         * Documentation/user/basic-notation.itely,
268         instrument-notation.itely: minor changes.
269
270         * input/ {regression, test}/+.ly: clarification to
271         text (you can click on examples).  Thanks, Mats!
272
273         * input/manual/bar-lines.ly: adds ||: repeats.
274
275 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
276
277         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
278
279         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
280
281         * Documentation/user/lilypond.tely: strip lilypond/ from info
282         links, rename to category LilyPond
283
284         * lily/pango-font.cc (description_string): new function.
285
286         * VERSION: release 2.9.15
287
288         * lily/spacing-engraver.cc (stop_translation_timestep): use
289         Dscho's fix for spacing spanner. 
290
291         * scm/define-music-types.scm (music-descriptions): use
292         apply-output-event for ApplyOutputEvent
293
294         * lily/output-property-engraver.cc (listen_apply_output): rename
295         from listen_layout_instruction.
296
297         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
298         function protect()
299
300 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
301
302         * scm/lily.scm (lilypond-all): option read-file-list: substitute
303         commandline args with contains, split by \n.
304
305         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
306         write snippet-names file, call with -dread-file-list. Fixes
307         command limitations on 64-bit systems.
308
309         * input/regression/stencil-color-rotation.ly: new file.
310
311         * lily/include/translator.hh (struct Acknowledge_information):
312         revert: don't use Protected_scm in global objects, as GUILE can't
313         handle gc_unprotect from automated destructors on MacOS X.
314  
315         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
316         color, not the original stencil. Fixes combinations of
317         color/transparency/rotation. Backportme.
318
319         * scripts/lilypond-book.py (main): add --formats=eps for
320         texinfo/latex.
321
322         * lily/spacing-engraver.cc (stop_translation_timestep): don't
323         crash if spacing_ is nonexistent.
324
325 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
326
327         * scripts/lilypond-book.py (output): Remove obsolete(!?)
328         \catcode`\@=12 in the LaTeX output.
329
330 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
331
332         * scm/define-music-types.scm (music-descriptions):
333         use sustain-event iso. sustain-pedal-event.
334
335 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
336
337         * scripts/convert-ly.py: honour the -n command-line switch
338
339 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
340
341         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
342         break specification.
343
344 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
345
346         * Documentation/user: convert-ly the user manual
347
348 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
349
350         * stepmake/aclocal.m4: version check patch (thanks MWD)
351
352         * ly/music-functions-init.ly: robustness. Don't crash if
353         currentBarNumber is not a number.
354
355         * VERSION (PATCH_LEVEL): bump.
356
357 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
358
359         * stepmake/aclocal.m4: better version check; handle fooX.Y
360         binaries too.
361
362         * ly/performer-init.ly: instrument name fixup.
363
364         * input/manual/chord-names-jazz.ly (banterProperties):
365         instrumentName update
366
367         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
368
369         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
370
371         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
372         function. Use hash tables to check membership.
373
374         * lily/general-scheme.cc (LY_DEFINE): new function.
375
376         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
377
378         * lily/include/translator.hh (struct Acknowledge_information): add
379         Protected_scm
380
381         * ly/music-functions-init.ly: change name to BreathingEvent
382
383         * input/regression/*.ly: apply it.
384
385         * python/convertrules.py (conv): better instrumentName conversion
386         rule.
387
388         * scm/define-music-types.scm (music-descriptions): add
389         line-break-event to LineBreakEvent music
390
391         * lily/music.cc (to_event): don't crash if music type not set.
392
393         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
394         spacing not set.
395
396         * lily/spacing-engraver.cc (stop_translation_timestep): set
397         spacing for proportional notation too.
398
399         * scm/translation-functions.scm (format-bass-figure): inspect
400         stream-event.
401
402         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
403
404 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
405
406         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
407
408         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
409
410         * scm/layout-page-layout.scm (make-page-from-systems): new function
411         (optimal-page-breaks): use the new page-breaking calling convention
412
413         * scm/define-context-properties.scm (all-user-translation-properties):
414         add revokePageTurns
415
416         * lily/paper-column-engraver.cc (stop_translation_timestep): add
417         revokePageTurns  functionality. If there is a special barline within
418         the breakable region, break there instead of at the end of the region.
419
420         * lily/paper-book.cc (pages): use the new page-breaking calling
421         convention
422
423 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
424
425         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
426
427         * scripts/lilypond-book.py: insert \sourcefileline command in
428         output, so lilypond error messages refer to the spot in the
429         original .lytex / .itely sourcefile.
430
431 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
432
433         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
434         space to next column for distance to fixed col.
435
436         * VERSION (PACKAGE_NAME): release 2.9.14
437
438         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
439         if no accidental.
440
441         * lily/accidental-engraver.cc (process_acknowledged): don't create
442         accidental for trill span event. This fixes spurious accidentals
443         on trills.
444
445 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
446
447         * scm/define-grob-properties.scm (all-user-grob-properties):
448         Clarify documentation of side-axis and direction. Thanks to Paul
449         for the inspiration.
450
451         * lily/bar-line.cc: Add documentation for "||:" also in the
452         interface documentation.
453
454 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
455
456         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
457
458         * lily/paper-column.cc (set_system): new function.
459
460         * lily/spacing-engraver.cc (stop_translation_timestep): store
461         SpacingSpanner refs in Paper_column.
462
463         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
464         compute loose clique spacing using GraceSpacing/SpacingSpanner.
465
466 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
467
468         * lily/beam-engraver.cc (listen_beam): add method for
469         Grace_beam_engraver too.
470
471 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
472
473         * python/convertrules.py: Fix indentation bug that broke
474         conversion of files older than 1.3.117.
475         Fix escape error in the description for 2.9.6.
476
477 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
478
479         * lily/*-engraver.cc: convert all try_music functions to listen_*
480         functions.
481
482         * lily/piano-pedal-engraver.cc: some additional cleanups: use
483         enums to represent pedal types, and calculate more data statically.
484
485         * scm/part-combiner.scm (recording-group-emulate): create a
486         softcoded substitute for recording-group-engraver.cc.
487
488         * lily/music.cc: make a common transpose function for events and
489         music
490
491         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
492         ManualMelismaEvent, and obsoletes Melisma_translator.
493
494 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
495
496         * input/test/instrument-name-align.ly: update version.
497
498 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
499
500         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
501         Doc the --pdf flag to lilypond-book.
502
503 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
504
505         * Documentation/topdocs/NEWS.tely (Top): add description.
506
507         * input/regression/tuplet-full-length-note.ly: add file.
508
509         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
510         always store axis group.
511
512 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
513
514         * input/regression/instrument-switch.ly: new file.
515
516         * lily/instrument-switch-engraver.cc (process_music): new file.
517
518         * ly/engraver-init.ly: add Instrument_switch_engraver
519
520         * ly/music-functions-init.ly: \instrumentSwitch
521
522         * scm/define-context-properties.scm
523         (all-user-translation-properties): add instrumentCueName
524
525         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
526
527 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
528
529         * ly/music-functions-init.ly: music function \transposition.
530
531         * lily/parser.yy (command_element): softcode \transposition.
532
533         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
534         (process_music): oops.
535
536         * lily/instrument-name-engraver.cc (start_spanner): new
537         function. Create spanner when property changes.
538         (stop_spanner): new function.
539
540         * python/convertrules.py (conv): add rule.
541
542         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
543         shortInstrumentName iso. instr.
544
545         * scm/output-ps.scm (dashed-line): add phase argument to
546         dashed-line.
547
548         * lily/bar-line.cc (dashed_bar_line): new function.
549         (compound_barline): support \bar "dashed". 
550
551         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
552         --output=DIR to DIR/BASE if it is a dir. 
553
554         * flower/file-name.cc (file_part): new function
555         (dir_part): new function
556
557         * lily/lily-parser-scheme.cc (LY_DEFINE): 
558
559         * DEDICATION: update
560
561 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
562
563         * lily/instrument-name-engraver.cc: formatting.
564
565         * python/convertrules.py (conv): bugfix for \epsfile.
566
567 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
568
569         * lily/grob.cc:
570         
571         * lily/gourlay-breaking.cc: Oops, these should have been included
572         in my last commit
573
574 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
575
576         * scripts/*.py (program_name): cleanup relocation snippets.
577
578         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
579
580 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
581
582         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
583         page-breakable by default
584
585         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
586         correctly calculated for a single-system page
587
588         * scm/lily-library.scm (interval-sane?): also check that the first number is no
589         bigger than the second number
590
591         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
592         acknowledge that we aren't satisfying constraints)
593
594         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
595         non-Items
596
597         * lily/grob.cc (pure_height): add minimum-Y-extent
598
599         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
600         ragged
601
602         * lily/constrained-breaking.cc: convert code to use new Matrix class
603         (get_best_solution): new function
604
605         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
606         is a page with no systems
607
608 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
609
610         * VERSION (PACKAGE_NAME): release 2.9.13
611
612         * scm/define-grobs.scm (all-grob-descriptions): remove stray
613         assignment.
614
615 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
616
617         * Documentation/topdocs/NEWS.tely (Top): doc new features.
618
619         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
620         function.
621
622         * scm/define-grob-properties.scm (all-user-grob-properties):
623         remove grace-space-factor.
624
625         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
626         grace-spacing-interface
627         (spacing-options-interface): add.
628
629         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
630
631         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
632
633         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
634         GraceSpacing object.
635
636         * lily/note-spacing.cc: fix prop list formatting
637
638         * lily/beaming-pattern.cc (de_grace): new function. Sensible
639         beaming for grace notes too.
640
641         * input/regression/spacing-grace.ly: update.
642
643         * lily/grace-spacing-engraver.cc: new file.
644
645         * lily/spacing-spanner.cc: add strict-grace-spacing.
646
647 2006-07-20  Graham Percival  <gpermus@gmail.com>
648
649         * lily/parser.yy: compile fix.
650
651 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
652
653         * scm/define-grobs.scm (all-grob-descriptions): typo.
654
655         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
656         .eps extension from includegraphics.
657
658         * scripts/lilypond-book.py (main): add support for --pdf. 
659
660         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
661         callback to compute common shortest duration.
662         (set_springs): typo.
663
664         * scm/define-grob-properties.scm (all-user-grob-properties): add
665         strict-grace-spacing.
666
667         * lily/spacing-determine-loose-columns.cc (is_loose_column):
668         support float_grace_columns_.
669
670         * lily/spacing-options.cc (init_from_grob): new file.
671
672         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
673
674         * input/regression/spacing-loose-grace.ly: new file.
675
676         * Documentation/topdocs/NEWS.tely (Top): document new feature.
677
678         * lily/tuplet-engraver.cc (struct Tuplet_description): read
679         tupletFullLengthNote too. Choose right bound depending on value.
680
681         * input/regression/tuplet-full-length-note.ly: new file.
682
683 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
684
685         * lily/*-performer.cc: Converted try_music to listen_*
686
687         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
688         as a stream-event internally. Introduce event_cause (), deprecate
689         music_cause ().
690
691         * scm/define-music-types.scm: Removed BusyPlayingEvent
692         
693 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
694
695         * Documentation/user/advanced-notation.itely (Font selection):
696         Document how to get a list of available fonts using 'lilypond
697         -dshow-available-fonts blabla'.
698
699 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
700
701         * GNUmakefile.in: filter lily-XXX.pdf files.
702
703         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
704
705         * scm/define-grob-properties.scm (all-internal-grob-properties):
706         remove delta-pitch. Use delta-position everywhere.
707
708         * scm/output-lib.scm (fall::print): use new order.
709
710         * scm/output-ps.scm (path): reorder arguments.
711
712         * scm/output-svg.scm (path): support for path primitive.
713
714         * input/regression/bend-after.ly: new file.
715
716         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
717         recipe for eps -> pdf conversion.
718
719 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
720
721         * lily/parser.yy, lily/lexer.ll: added some simplifications by
722         Angelo Contardi.
723
724 2006-07-19  Graham Percival  <gpermus@gmail.com>
725
726         * input/manual/screech-boink.ly: moved to here.
727
728         * input/screech-boink.ly: deleted.
729
730         * scm/define-grob-properties.scm: clarify doc string.
731
732 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
733
734         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
735
736         * scm/output-ps.scm (path): define path.
737
738         * scm/define-stencil-commands.scm
739         (ly:register-stencil-expression): add path.
740
741         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
742
743         * ly/engraver-init.ly: add Fall_engraver
744
745         * lily/parser.yy (music_function_event): allow musicfunction
746         without music arg as music_function_event.
747
748         * lily/grob-scheme.cc (LY_DEFINE):
749         ly:grob-robust-relative-extent. New function.
750
751         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
752
753         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
754
755         * scm/output-lib.scm (fall::print): new function
756
757         * lily/fall-engraver.cc (stop_fall): new file.
758
759         * ly/music-functions-init.ly: alphabetise.
760
761         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
762         base.
763
764 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
765
766         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
767
768         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
769         doc pdftex usage.
770
771         * lily/translator-group.cc (connect_to_context): non const error message.
772
773         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
774
775         * scm/paper.scm (internal-set-paper-size): define landscape to #f
776         if unset.
777
778         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
779
780         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
781
782         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
783         systems.pdftex too.
784
785         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
786
787         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
788
789         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
790
791         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
792
793         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
794
795         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
796
797 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
798
799         * scm/layout-page-layout.scm: Define module, tidy code, use more
800         functions iso. a single big one.
801
802         * scm/layout-page-dump.scm: move page dump functions used in two
803         pass spacing to this file. Define module.
804
805         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
806          (separate module)
807
808         * ly/paper-defaults.ly: use module layout-page-layout.
809
810 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
811
812         * lily/music.cc: Revised MusicEvent event class. It now contains
813         event data directly instead of encapsulating it in music. The
814         previously used class is renamed to OldMusicEvent.
815
816         * lily/stream-event.cc: Stream events are now probs.
817         
818         * lily/translator-group.cc, lily/translator.cc: Translators can
819         now listen directly to stream events, by using macros
820         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
821
822         * lily/arpeggio-engraver.cc: Converted to use new event system
823
824         * THANKS: Corrected spelling mistake.
825
826 2006-07-12  Graham Percival  <gpermus@gmail.com>
827
828         * Documentation/user/SConscript, make/lilypond-vars.make,
829         input/GNUmakefile: doc build looks in input/manual instead
830         of input/test/
831
832         * input/manual/ GNUmakefile, SConscript: build files for
833         input/manual/
834
835         * input/test/ various: some files moved to input/manual/ 
836
837         * Documentation/user/basic-notation.itely: small updates;
838         thanks Kieren and Charles!
839
840 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
841
842         * VERSION (PACKAGE_NAME): release 2.9.11
843
844         * Documentation/topdocs/NEWS.tely (Top): update prop value 
845
846         * Documentation/user/basic-notation.itely (Tuplets): new property
847         value.
848
849 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
850
851         * python/convertrules.py (conv): tweaks. 
852
853         * VERSION (PATCH_LEVEL): bump version.
854
855         * python/convertrules.py (conv): add rule for
856         tupletNumberFormatFunction.
857
858         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
859         tupletNumberFormatFunction.
860
861         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
862         text through 'text callback.
863
864         * lily/time-scaled-music-iterator.cc (construct_children): copy
865         tweaks generated events.
866
867         * scm/define-context-properties.scm
868         (all-user-translation-properties): remove tupletNumberFormatFunction
869
870         * lily/tuplet-engraver.cc (process_music): don't read
871         tupletNumberFormatFunction
872
873         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
874         function.
875
876 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
877
878         * lily/global-context-scheme.cc: Separated ly:run-translator into
879         smaller pieces.
880
881         * lily/score-engraver.cc, lily/score-performer.cc,
882         scm/define-context-properties.scm: Make paper/midi output
883         accessable as a context property.
884
885         * lily/score-translator.cc, lily/score-context.cc: Removed.
886
887 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
888
889         * scm/ps-to-png.scm (Module): 
890         * scm/framework-tex.scm (Module): 
891         * scm/framework-ps.scm (Module): 
892         * scm/backend-library.scm (Module): 
893         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
894         "dDEVICEHEIGHTPOINTS".
895
896 2006-07-04  Graham Percival  <gpermus@gmail.com>
897
898         * Documentation/user/ various: general improvements to
899         "working with lilypond files" section.
900
901 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
902
903         * lily/sequential-iterator.cc: Change the default get_music_list
904         to read elements-callback music property
905
906         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
907         processing of multimeasure rests. Softcoded
908         sequential-music-iterator.
909
910         * lily/sequential-music-iterator.cc: Removed.
911
912 2006-06-28  Graham Percival  <gpermus@gmail.com>
913
914         * Documentation/user/basic-notation.itely: clarify \repeatTie.
915
916 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
917
918         * lily/parser.yy: Wrap non-post-events in EventChords before
919         assigning them to identifiers.
920
921 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
922
923         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
924         gives correct vertical placement of \bar ":" in all staff
925         sizes. Thanks Martial!
926
927 2006-06-26  Graham Percival  <gpermus@gmail.com>
928
929         * Documentation/user/invoking.itely : minor update from mailist.
930
931 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
932
933         * lily/ various: Introduce stream events of types Prepare,
934         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
935         ChangeContext, SetProperty, RevertProperty, Override and Revert.
936
937         * lily/global-context*.cc: Time is now -inf before iteration
938         starts.
939
940         * lily/include/context.hh: Removed unique_, init_
941
942         * Documentation/topdocs/NEWS: Make the feathered beam example
943         avoid triggering a bug.
944
945 2006-06-24  Graham Percival  <gpermus@gmail.com>
946
947         * Documentation/user/ various: small additions from mailist.
948
949 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
950
951         * ly/performer-init.ly: Add some missing links in the context
952         hierarchy for MIDI output. There are probably some more missing!
953
954 2006-06-21  Graham Percival  <gpermus@gmail.com>
955
956         * Documentation/user/ various: minor spelling fixes;
957         thanks Dave Luttinen!
958
959         * Documentation/user/ various: small clarifications;
960         thanks Anthony Youngman!
961
962 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
963
964         * po/fr.po: add \n appropriately.
965
966         * lily/lexer.ll: remove ? from version-seen?  
967
968 2006-06-19  John Mandereau  <john.mandereau@free.fr>
969
970         * po/fr.po; update translation, by Jean-Charles Malahieude and
971         John Mandereau.
972
973 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
974
975         * THANKS: add Markus Schneider.
976
977         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
978         Staff_symbol_engraver
979
980         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
981         replace staff_engraver
982
983         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
984         spanner.
985
986         * lily/staff-collecting-engraver.cc
987         (acknowledge_end_staff_symbol): new function
988
989         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
990
991         * lily/staff-collecting-engraver.cc
992         (acknowledge_end_staff_symbol): new function.
993
994         * lily/main.cc: switch on relocation by default.
995
996 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
997
998         * lily/spacing-spanner.cc (musical_column_spacing): set
999         compound_fixed_note_space to 0.0. Document why.
1000
1001         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1002         range of inverse_hooke_
1003         (Simple_spacer): init completely.
1004         (fits): const
1005         (get_line_configuration): don't use cols.resize(); it introduces
1006         initialized data.
1007
1008         * scm/framework-ps.scm (dump-page): add setstrokeadjust. Backportme.
1009
1010         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1011
1012         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1013         try. Divide by beatlength.
1014
1015         * input/regression/beaming-ternary-metrum.ly: update doc.
1016         add beatLength hack.
1017
1018         * scm/music-functions.scm (make-time-signature-set): add
1019         standard-beat-grouping. 
1020
1021 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1022
1023         * input/regression/tie-whole.ly: new file.
1024
1025         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1026         cross center of note head in case of invisible stem. 
1027
1028 2006-06-16  Graham Percival  <gpermus@gmail.com>
1029
1030         * Documentation/user/ various: small fixes from mailist.
1031
1032 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1033
1034         * lily/breathing-sign.cc (offset_callback): idem.
1035
1036         * lily/align-interface.cc (align_to_fixed_distance): remove
1037         hungarian suffix.
1038
1039         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1040         x%2==0.
1041
1042 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1043
1044         * VERSION (PACKAGE_NAME): release 2.9.9
1045
1046         * ly/lilypond-book-preamble.ly: add \version
1047
1048 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1049
1050         * scripts/lilypond-book.py (PREAMBLE_LY): include
1051         lilypond-book-preamble.ly
1052
1053         * lily/stem.cc (get_beaming): return max of 0 and
1054         scm_ilength. Fixes slurring from/to beams.
1055
1056         * ly/lilypond-book-preamble.ly: new file.
1057
1058         * lily/slur.cc: add inspect-index feature.
1059
1060 2006-06-13  Graham Percival  <gpermus@gmail.com>
1061
1062         * Documentation/user/tutorial.itely: trivial fix.
1063
1064 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1065
1066         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1067         all non-event music in the parser via MAKE_SYNTAX.
1068
1069         * lily/parser-scheme.cc: Add ly:parser-error function
1070
1071         * scm/paper.scm: fix typo
1072
1073 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1074
1075         * THANKS: add RT.
1076
1077         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1078         is null.
1079
1080         * buildscripts/output-distance.py (test_compare_signatures):
1081         timing routines.
1082         (read_signature_file): use new signature format.
1083
1084         * scm/stencil.scm (write-system-signature): simpler signature
1085         format.
1086
1087         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1088         for beamed case. 
1089
1090         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1091         stem_end_position, but estimate instead. 
1092
1093         * lily/tuplet-bracket.cc (calc_positions): look at
1094         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1095         brackets narrower than beams. 
1096
1097         * lily/lexer.ll: set version-seen? even if version is
1098         INVALID. 
1099
1100         * lily/rest.cc (y_offset_callback): bugfix: decide position
1101         override based on scm_is_number(). Fixes \rest on center staff
1102         line. 
1103
1104         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1105         patterns for 16th triplets.
1106
1107 2006-06-10  Graham Percival  <gpermus@gmail.com>
1108
1109         * Documentation/user/ page.itely, global.itely: editing
1110         and reorg.
1111
1112         * Documentation/user/ various: findex -> funindex.
1113
1114 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1115
1116         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1117         insert extra tuplet events.
1118
1119 2006-06-10  Graham Percival  <gpermus@gmail.com>
1120
1121         * Documentation/user/programming-interfaces.itely: add
1122         info from NEWS.
1123
1124         * python/convertrules.py: add annotatefoo -> annotate-foo
1125         rules.
1126
1127         * Documentation/user/global.itely: start editing.
1128
1129         * Documentation/user/page.itely: major editing, new spacing
1130         docs.
1131
1132 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1133
1134         * scm/define-markup-commands.scm (wordwrap-markups): use
1135         output-def 'line-width if undefined.
1136
1137         * HACKING: trim outdated info.
1138
1139 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1140
1141         * scm/define-grobs.scm (all-grob-descriptions): Add
1142         line-spanner-interface to all grobs that already have
1143         text-spanner-interface or dynamic-text-spanner-interface
1144
1145         * scm/page.scm: Rename annotate{headers,systems,page}->
1146         annotate-*
1147
1148         * input/regression/page-spacing.ly,
1149         input/regression/page-layout-manual-position.ly: idem
1150
1151 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1152
1153         * lily/line-spanner.cc: cleanup property list.
1154
1155         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1156         generator expressions (2.3 compat). 
1157
1158 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1159
1160         * lily/vertical-align-engraver.cc: Make sure that the
1161         align{Above,Below}Context properties are included in the automatic
1162         documentation.
1163
1164 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1165
1166         * scm/paper-system.scm (paper-system-annotate): also annotate the
1167         estimated pure-Y-extent
1168
1169         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1170
1171         * lily/system.cc (break_into_pieces): set the estimated height
1172         of each child system
1173
1174         * lily/stem.cc (pure_height): new pure-Y-extent callback
1175
1176         * lily/staff-symbol-referencer.cc (callback): don't destroy
1177         the staff-position property
1178
1179         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1180         consider_suicide into two functions
1181
1182         * lily/constrained-breaking.cc (resize): use the new pure
1183         callbacks to estimate the height of a system
1184
1185         * lily/axis-group-interface.cc (pure_group_height): new
1186         side-effect-free VerticalAxisGroup height-callback
1187
1188         * lily/align-interface.cc (get_extents_aligned_translates):
1189         split align_elements_to_extents into two functions
1190         (get_pure_child_y_translation): new function
1191
1192         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1193
1194         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1195
1196         * lily/paper-score.cc: cache break_indices and columns
1197
1198         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1199         
1200 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1201
1202         * lily/font-config.cc (init_fontconfig): do the init if
1203         cache_file, but don't look at cache_file.
1204
1205         * input/regression/quote-tie.ly: new file.
1206
1207         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1208         to Head_event_tuple, so we deal gracefully with ties on
1209         cue-endings.
1210
1211         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1212         for FcChar8*
1213
1214 2006-06-08  Graham Percival  <gpermus@gmail.com>
1215
1216         * input/test/ smart-transpose.ly, reverse-music.ly:
1217         \applyMusic to music functions update, thanks Michael!
1218
1219 2006-06-07  Graham Percival  <gpermus@gmail.com>
1220
1221         * input/test/ add-staccato.ly, add-text-script.ly,
1222         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1223         music functions update, thanks to Michael Meixner.
1224
1225         * Documentation/user/music-glossary.tely: small fix
1226         from Francisco.
1227
1228         * Documentation/user/ various: minor additions from mailist.
1229
1230         * Documentation/user/lilypond.tely, basic-notation.itely:
1231         small test of @funindex.  (works here)
1232
1233         * input/test/font-table.ly: reduce size to partially
1234         de-ugly version in manual.
1235
1236         * Documentation/user/page.itely: new file (split former
1237         "global issues" into "page settings" and "non-musical
1238         output".
1239
1240         * Documentation/user/ various: fix @ref{}s to match
1241         new chapter names (above).
1242
1243 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1244
1245         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1246
1247 2006-06-06  Graham Percival  <gpermus@gmail.com>
1248
1249         * Documentation/user/advanced-notation.itely: add example
1250         for segno/coda on barline.
1251
1252         * tex/texinfo.tex: merge from upstream.
1253
1254 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1255
1256         * scripts/lilypond-book.py (process_snippets): Argument fix.
1257
1258         * SConstruct:
1259         * buildscripts/builder.py:
1260         * lily/SConscript: 
1261         * mf/SConscript: 
1262         * Documentation/user/SConscript:  More SCons fixes.
1263
1264 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1265
1266         * lily/font-config.cc (init_fontconfig): Only initialize if
1267         global cache_file is found.
1268
1269 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1270
1271         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1272         new \applyOutput.
1273
1274 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1275
1276         * VERSION (PACKAGE_NAME): release 2.9.8
1277
1278         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1279         function. Delay ledger modifying ledgered grobs to
1280         stop_translation_timestep(), to ensure that we're ledgering
1281         according to the new spanner.
1282         (acknowledge_staff_symbol): don't check for non-NULL
1283         staff_sym->get_bound()
1284
1285         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1286         creation.
1287
1288         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1289         pictures too.
1290
1291         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1292         directly from srcdir/stepmake/aclocal.m4
1293         
1294         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1295         disting MISC files.
1296
1297         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1298
1299 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1300
1301         * lily/simple-spacer.cc (get_line_configuration): add
1302         keep-inside-line rods
1303         (struct Column_desc): add constructor
1304         (struct Rod_desc): add constructor
1305         (get_line_forces): check for forced page breaks here too
1306
1307         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1308         support/elements cycles between InstrumentNames and AxisGroups
1309
1310 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1311
1312         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1313
1314         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1315         make-txt-files target.
1316
1317         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1318         make-txt-files target.
1319
1320         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1321
1322         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1323         top-build-dir.
1324
1325 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1326
1327         * Documentation/user/instrument-notation.itely,
1328         input/regression/breathing-sign-ancient.ly,
1329         input/test/divisiones.ly: Removed redundant property settings for
1330         vaticana contexts.
1331
1332         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1333         fix lyrics alignment problems.  They are implemented now as scheme
1334         functions that add the appropriate unicode char to the first lyric
1335         event rather than adding a separate lyric event.  Minor edit of
1336         comments.
1337
1338 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1339
1340         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1341         pollute src dir with built .txt files, but install directly from
1342         Documentation/topdocs/out/
1343
1344         * buildscripts/output-distance.py
1345         (ComparisonData.create_html_result_page): put version/directories
1346         in table header.
1347
1348         * Documentation/topdocs/NEWS.tely (Top): document spacing section
1349         feature.
1350
1351         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
1352         Patch by Karl Hammar
1353         
1354         * buildscripts/readlink.py: add  file.
1355         Patch by Karl Hammar
1356
1357 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1358
1359         * lily/tuplet-number.cc (print): prevent stencil from being
1360         garbage collected.
1361
1362 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1363
1364         * scm/stencil.scm (write-system-signature): explicitly 
1365         -well, superfluously- close output port.
1366
1367         * buildscripts/output-distance.py (main): oops. Add extra argument.
1368
1369 2006-06-05  Graham Percival  <gpermus@gmail.com>
1370
1371         * Documentation/user/music-glossary.tely: clarified example
1372         from Francisco Vila, thanks!
1373
1374 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1375
1376         * input/regression/spacing-section.ly: new file.
1377
1378         * lily/input.cc (programming_error): new function.
1379
1380         * lily/spacing-engraver.cc (try_music): new function. Accept
1381         spacing-section-event
1382
1383         * lily/spacing-spanner.cc (set_springs): take slices of all
1384         columns for spacing.
1385
1386         * lily/include/paper-column.hh (class Paper_column): add
1387         Paper_column::compare.
1388
1389         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
1390
1391         * scm/define-music-types.scm (music-descriptions): add
1392         SpacingSectionEvent
1393
1394         * lily/music-iterator.cc (report_event): use programming_error for
1395         sending non-event error.
1396
1397         * lily/input.cc (programming_error): new function
1398
1399         * buildscripts/output-distance.py (main): use compare-XXX for
1400         compare files.
1401         (main): --threshold option, default at 0.30
1402
1403         * output-distance.py (main): add --threshold option.
1404
1405 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1406
1407         * scm/paper-system.scm (paper-system-annotate): fix problem when
1408         annotating an empty system
1409
1410 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1411
1412         * GNUmakefile.in: reinstate old web tar/copying.
1413
1414 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1415
1416         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
1417         nothing changes. (Erik S) 
1418
1419         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
1420         count. (Erik S)
1421
1422 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1423
1424         * scm/define-markup-commands.scm (whiteout): do not force
1425         foreground color of argument markup to black.
1426
1427         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
1428         the left of the arrow, instead of below the arrow name, so that,
1429         when two little arrows are vertically stacked, their dimensions
1430         and name should not overlap. Add a color key parameter.
1431
1432         * scm/paper-system.scm (paper-system-annotate): Annotate
1433         next-space+next-padding instead of next-space. Annotate space
1434         between next-padding and next-space+padding, respectively, and
1435         following system extent and refpoint-Y-extent. Use colors.
1436
1437         * scm/page.scm (annotate-page): translate annotations slightly to
1438         the right.
1439
1440 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1441
1442         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
1443         fix for x-staff slurs. Thanks Joe!
1444
1445         * buildscripts/output-distance.py
1446         (SystemLink.output_expression_change_count): keep track of changed
1447         details, and dump in details html page.
1448  
1449         * input/regression/figured-bass-staff.ly: add note about setting
1450         properties in Staff context.
1451
1452         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
1453         add slurs and ties to support too.
1454
1455         * buildscripts/output-distance.py (main): set dest_dir
1456         argument. Add --max-count option.
1457
1458 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
1459
1460         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
1461         shortcuts for special unicode chars that are useful in chant
1462         notation.  Revised exisiting and added new comments.
1463
1464 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1465
1466         * make/mutopia-rules.make: remove duplicate recipe.
1467
1468 2006-06-02  Werner Lemberg  <wl@gnu.org>
1469
1470         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
1471         Add support for U+0132 (IJ) and U+0133 (ij).
1472
1473 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1474
1475         * buildscripts/output-distance.py (FileLink): new class. collect
1476         info systems from one .ly file. 
1477         (FileLink.link_files_for_html): further tweaks.
1478
1479 2006-06-02  Graham Percival  <gpermus@gmail.com>
1480
1481         * tex/texinfo.tex: partial fix for @funindex.
1482
1483         * Documentation/user/macros.tely: uncomment @funindex (doesn't
1484         break anything).
1485
1486 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1487
1488         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
1489
1490         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
1491         @example too. Backportme.
1492
1493 2006-06-02  Graham Percival  <gpermus@gmail.com>
1494
1495         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
1496         from Werner Lemberg.
1497
1498 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
1499
1500         * Documentation/user/music-glossary.tely: additional spanish
1501         updates and a lyrics fix in an example.
1502
1503 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
1504
1505         * scm/define-grob-properties.scm: Previous patch contained
1506         spurious line from another patch not yet committed.  Fixed.
1507
1508         * scm/define-grob-properties.scm: Add missing doc strings for
1509         ancient notation.
1510
1511 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1512
1513         * buildscripts/output-distance.py
1514         (ComparisonData.write_text_result_page): separate the scores, sort
1515         by geo_score.
1516
1517         * scm/framework-eps.scm (output-classic-framework): start at 1 for
1518         system signatures.
1519
1520         * buildscripts/output-distance.py (me_path): use argv[0] for
1521         sys.path extension
1522         (ComparisonData.img_cell): use colored borders.
1523
1524         * scm/stencil.scm (write-system-signature): escape newlines too.
1525         (write-system-signature): use (1,-1) interval for empty interval
1526
1527 2006-01-01  Graham Percival  <gpermus@gmail.com>
1528
1529         * Documentation/user/music-glossary.tely: Spanish updates
1530         from Francisco Vila.
1531
1532         * Documentation/user/lilypond-book.itely: addition from
1533         Vaclav Smilauer.
1534
1535         * Documentation/user/ various: edits, small additions
1536         from mailist, etc.
1537
1538 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1539
1540         * GNUmakefile.in (tree-lib-prefix-current):
1541         (tree-share-prefix-current): Use version number in tree, add
1542         `current' symlinks.
1543
1544 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1545
1546         * GNUmakefile.in: write VERSION, again.
1547
1548         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
1549         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
1550
1551         * stepmake/aclocal.m4: robuster version detection.
1552
1553         * buildscripts/output-distance.py
1554         (ComparisonData.create_html_result_page): copy only if file
1555         exists, fixup src paths.
1556
1557         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
1558
1559 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1560
1561         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
1562         Another datarootdir reto.
1563
1564         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
1565         available.  This should be moved to postinstall-lilypond-doc.
1566
1567 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1568
1569         * GNUmakefile.in: simplify local-WWW-post. 
1570         remove -type l from find.
1571
1572         * buildscripts/output-distance.py (ComparisonData.compare_trees):
1573         fixes. Don't follow symlinks.
1574         (ComparisonData.create_html_result_page): remove previous results.
1575         insert ../python in path.
1576
1577         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
1578
1579 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
1580
1581         * config.make.in (datadir): Add datarootdir to silence autoconf.
1582
1583         * stepmake/aclocal.m4: Update for autoconf-2.59d.
1584
1585 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
1586
1587         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
1588
1589         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
1590         slash beams too wide.
1591
1592 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1593
1594         * VERSION: release 2.9.7
1595         
1596 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1597
1598         * lily/relocate.cc (read_relocation_dir): Do not blindly
1599         dereference DIR.
1600
1601 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1602
1603         * lily/parser.yy: replace THIS by PARSER
1604
1605         * Documentation/index.html.in: add link to test-results.html page.
1606
1607         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
1608
1609         * scm/translation-functions.scm (format-bass-figure): translate
1610         digits over 10 to the left
1611
1612         * scm/define-markup-commands.scm (translate-scaled): new markup.
1613
1614         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
1615         7 glyph. 
1616
1617         * ly/engraver-init.ly: add Figured_bass_engraver
1618
1619         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
1620
1621         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
1622
1623         * lily/score-engraver.cc (announce_grob): only note START announces.
1624
1625         * lily/include/engraver-group.hh (Translator_group):
1626         acknowledge_hash_table_ is now drul.
1627
1628         * lily/engraver.cc (announce_end_grob): new method.
1629
1630         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
1631
1632         * lily/translator-dispatch-list.cc (create): take start_end argument.
1633
1634         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
1635         acknowledge_static_array_ to drul
1636
1637         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
1638
1639         * scm/define-grob-interfaces.scm
1640         (bass-figure-alignment-interface): add bass-figure-alignment-interface
1641
1642         * scm/define-grobs.scm (all-grob-descriptions): add
1643         BassFigureAlignmentPositioning
1644
1645         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
1646         number stays up to date. Backportme.
1647
1648 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
1649
1650         * Documentation/user/basic-notation.itely (Bar lines): Document
1651         the "||:" bar type. 
1652
1653 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1654
1655         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
1656
1657         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
1658         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
1659         build.
1660
1661         * Resurrect `scons lily' build.
1662
1663         * SConstruct (symlink_tree): Bugfix: link
1664         music-drawing-routines.ps to file iso directory.
1665
1666         * lily/SConscript: Remove kpath-guile from LIBS.
1667
1668         * SConstruct (libdir_package_version): Typo.
1669         (configure): Comment-out fontforge for lack of fontforge.pc .
1670         Also add libdir* to environment.
1671
1672 2006-05-30  Graham Percival  <gpermus@gmail.com>
1673
1674         * Documentation/user/ various: minor additions from mailist and
1675         editing.
1676
1677 2006-05-30  Paco <fravd@ya.com>
1678
1679         * Documentation/user/music-glossary.tely: numerous corrections and
1680         some new translations.
1681
1682 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
1683
1684         * BackportmeStart.
1685         
1686         * buildscripts/output-distance.py
1687         (ComparisonData.create_html_result_page): new routine: summarise
1688         results in HTML page with images. 
1689         (ComparisonData.create_text_result_page): create summary text files too.
1690
1691         * GNUmakefile.in (web-ext): package .signature files too. They
1692         compress well. 
1693
1694         * scm/stencil.scm (write-system-signature): typo.
1695
1696         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
1697
1698         * scm/stencil.scm (write-system-signature): better escaping.
1699         only write signature for music systems, not for markup systems.
1700
1701         * scm/framework-ps.scm (output-framework): dump-signatures support
1702         for plain output.
1703
1704         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
1705
1706         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
1707         for -dno-point-and-click
1708
1709         * lily/grob.cc (get_print_stencil): don't read
1710         point_and_click_global to determine whether to set grob-cause.
1711
1712 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
1713
1714         * buildscripts/output-distance.py (main): new function.
1715         (ComparisonData): new class.
1716
1717         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
1718         careful with generating new LedgerLineSpanners.
1719
1720         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
1721
1722         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
1723         context. This fixes double ledger lines in output. 
1724
1725         * lily/system.cc (get_paper_system): remove 3 layer limit.
1726
1727         * buildscripts/output-distance.py (SystemLink.distance): new
1728         file. Compare signatures.
1729
1730         * python/safeeval.py (SafeEval.visitUnarySub): new file.
1731
1732         * lily/grob-array.cc (remove_duplicates): rename from
1733         uniq(). Sort before calling uniq() so it actually works.
1734
1735 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1736
1737         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
1738         \version from lilypond file snippet.
1739         (Lilypond_file_snippet.ly): oops. typo.
1740         (find_toplevel_snippets): urgh. again.
1741
1742         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
1743         prevent duplicated broken items in output.
1744
1745         * scm/framework-eps.scm (output-classic-framework): only dump if
1746         dump-signatures is set.
1747
1748         * scm/lily.scm (define-scheme-options): add dump-signatures option.
1749
1750         * scm/stencil.scm (write-system-signature): new routine: write
1751         python parseable signature of a separate paper system.
1752         BackportmeEnd.
1753         
1754 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1755
1756         * lily/stanza-number-engraver.cc (process_music): use is_markup()
1757         iso is_string().
1758         include header.
1759
1760 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
1761
1762         * translator-group.cc: send music events to engravers in
1763         non-bottom contexts.
1764
1765         * tuplet-engraver.cc: process tuplet brackets in correct order.
1766
1767 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1768
1769         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
1770         arg 2 might point us to a new binary (patch by Karl Hammar)
1771         
1772 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1773
1774         * VERSION (PACKAGE_NAME): release 2.9.6
1775
1776         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
1777
1778         * Documentation/user/*.itely: 2nd
1779         attempt: replace funindex -> findex globally.
1780
1781 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1782
1783         * input/no-notation/display-lily-tests.ly: fix \applyOutput
1784         test. Add \break, \pageBreak, \pageTurn, etc, tests.
1785
1786         * scm/define-music-display-methods.scm: display methods for
1787         breaks. Fix \applyOutput.
1788
1789 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1790
1791         * Documentation/user/macros.itexi: comment out funindex expansion. 
1792
1793         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
1794         everywhere.
1795
1796         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
1797         Karl Hammar. Backportme.
1798  
1799         * Documentation/user/advanced-notation.itely (Balloon help): idem.
1800
1801         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
1802
1803         * Documentation/user/programming-interface.itely (Running a
1804         function on all layout objects): idem.
1805
1806         * Documentation/user/introduction.itely (Automated engraving):
1807         update \applyOutput syntax
1808
1809         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
1810         remove debugging hook.
1811
1812         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
1813         expansion. 
1814
1815         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
1816
1817         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
1818         TEXI2DVI_FLAGS to texi2dvi invocation. 
1819
1820 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
1821
1822         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
1823         works. More work is done by iterator now, and engraver has been
1824         very much simplified.
1825
1826         * lily/translator-group.cc: try_music is now invoked through a
1827         listener
1828
1829         * lily/*-iterator.cc: Massive cleanups. Junked
1830         try_music_in_children globally. Renamed try_music to report_event,
1831         and made that method descend to a bottom context automatically.
1832
1833         * lily/event-iterator.cc: New file.
1834
1835         * lily/output-property-iterator.cc,
1836         lily/old-lyric-combine-music-iterator.cc: Removed.
1837
1838         * python/convert-rules.py: Modified the syntax for \applyOutput.
1839
1840 2006-05-23  Graham Percival  <gpermus@gmail.com>
1841
1842         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
1843         creation.
1844
1845         * Documentation/user/ various: stuff that might have helped
1846         to fix the pdf creation, plus some minor doc additions.
1847
1848         * Documentation/user/changing-defaults.itely: remove @b from
1849         @b{ @internasref{foo}}; this breaks texi2dvi -E.
1850
1851 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1852
1853         * lily/beaming-pattern.cc (beamify): deal with negative start
1854         moments for beaming patterns.
1855
1856 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
1857
1858         * lily/beaming-info.cc (beamify): new function: read beatLength
1859         and beatGrouping from context. 
1860
1861         * input/regression/beam-beat-grouping.ly (Module): new file.
1862
1863         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
1864
1865         * lily/beam.cc (get_beam_segments): generate events for
1866         max_connect_ case too.
1867         (get_beam_segments): read Stem::max-beam-connect.
1868
1869         * input/regression/beam-single-stem.ly: new file.
1870
1871         * lily/stem.cc (set_beaming): use #f as signaling value for
1872         beamcount 0.
1873
1874         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
1875
1876         * lily/beam.cc (set_beaming): read clip-edges property.
1877         (calc_direction): don't suicide for single stem.
1878
1879         * lily/beaming-info.cc (best_splitpoint_index): take bool*
1880         argument, remove 1<<15 hack. Remove clip_edges() 
1881
1882         * lily/hairpin.cc (print): only do padding for nonmusical bounds
1883
1884 2006-05-21  Graham Percival  <gpermus@gmail.com>
1885
1886         * Documentation/user/basic-notation.itely: reorg.
1887
1888         * Documentation/user/ various: minor fixes.
1889
1890 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1891
1892         * lily/stencil-expression.cc (register_stencil_head): opps, append
1893         to cdr of static SCM object.
1894
1895 2006-05-19  Graham Percival  <gpermus@gmail.com>
1896
1897         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
1898         update framework for command index.  DOC WRITERS: use @funindex
1899         instead of @cindex @code{}.
1900
1901         * Documentation/user/ various: replace @cindex @code{} => @funindex
1902
1903 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1904
1905         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
1906         case positions is set manually. 
1907
1908 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
1909         
1910         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
1911         rules to Scheme.
1912
1913 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1914
1915         * Documentation/user/changing-defaults.itely (Contexts explained):
1916         use absolute dimension for @image.
1917
1918         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
1919         out image for illustration too.
1920         ($(outdir)/%.png): add more png <-> eps rules. 
1921
1922 2006-05-17  Graham Percival  <gpermus@gmail.com>
1923
1924         * Documentation/user/ various: remove trailing whitespace, cosmetic
1925         change to reduce changes produced by diff.
1926
1927 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1928
1929         * lily/main.cc (do_chroot_jail): correctness tweak.
1930
1931         * python/lilylib.py (system): import subprocess in system () only.
1932
1933         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
1934
1935         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
1936         variable. Backportme.
1937
1938 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
1939         
1940         * lily/parser.yy: Change all syntax rules of type Music to SCM type
1941
1942 2006-05-17  Werner Lemberg  <wl@gnu.org>
1943
1944         * lily/lexer.ll (init_signature_has_table): Add
1945         `scm-scm-music-music'.
1946
1947         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
1948         (Generic_prefix_music_scm): Add rule for it.
1949
1950         * lily/quote-iterator.cc (Quote_iterator::process): Handle
1951         `quoted-transposition' property.
1952
1953         * ly/music-functions-init.ly (transposedCueDuring): New function.
1954
1955         * scm/define-music-properties.scm (all-music-properties): Updated.
1956
1957         * Documenation/topdocs/NEWS.itely: Document it.
1958
1959 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1960
1961         * python/lilylib.py (system): move import subprocess to system()
1962         definition. 
1963
1964         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
1965
1966         * VERSION (PATCH_LEVEL): release 2.9.5
1967         
1968         * Documentation/topdocs/INSTALL.texi (Top): update versions and
1969         build instructions. 
1970
1971         * ly/engraver-init.ly: switch on hairpinToBarline by default.
1972
1973 2006-05-16  Graham Percival  <gpermus@gmail.com>
1974
1975         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
1976
1977         * Documentation/user/ various: minor fixes.
1978
1979 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1980
1981         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
1982
1983 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
1984
1985         * Documentation/user/advanced-notation.itely (Instrument names):
1986         Modified obsolete instruction on how to move instrument names away
1987         from the staves. Hmm, at second thought the bug probably has been
1988         solved, so the full bug description should probably be removed.
1989
1990 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1991
1992         * lily/dynamic-engraver.cc (typeset_all): hang ending on
1993         currentCommandColumn. 
1994
1995         * lily/hairpin.cc (print): also add padding for non-neighbor
1996         hairpin bounds.
1997
1998         * scm/define-context-properties.scm
1999         (all-user-translation-properties): add hairpinToBarline
2000
2001         * input/regression/hairpin-to-barline.ly: new file.
2002
2003         * lily/context.cc (internal_send_stream_event): thinko fix.
2004
2005         * lily/tie.cc (set_default_control_points): robustness fix.
2006
2007         * python/musicxml.py (Part.interpret): don't complain about
2008         incomplete measures.
2009
2010         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2011         new music if last_event_chord() returned None.
2012
2013         * python/musicxml.py (Part.interpret): skip back over chord notes.
2014
2015 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2016         
2017         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2018         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2019         lily/slash-repeat-engraver.cc,
2020         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2021         iterator sends PercentEvents
2022
2023         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2024         rework tuplets: send start/stop events to engraver
2025
2026         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2027         dispatchers event-source and events-below to Context
2028         
2029 2006-05-15  Graham Percival  <gpermus@gmail.com>
2030
2031         * Documentation/user/README.txt: update info for doc writers.
2032
2033         * Documentation/user/programming-interface.itely: integrate
2034         Nicolas' fixes for chapter rewrite.
2035
2036         * Documentation/user/ various: minor fixes.
2037
2038 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2039
2040         * lily/clef-engraver.cc: cleanup.
2041
2042         * Documentation/user/GNUmakefile: dist context-example.eps too.
2043
2044         * lily/key-engraver.cc (create_key): use
2045         explicitKeySignatureVisibility for cancellation too. 
2046
2047         * lily/font-config.cc (init_fontconfig): don't close file if
2048         f==NULL. 
2049
2050 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2051
2052         * Documentation/topdocs/NEWS.tely: niente and rotation news
2053
2054 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2055
2056         * lily/include/stencil.hh
2057         * lily/stencil.cc (rotate): new function. Makes it possible
2058         to rotate a stencil around a given offset.
2059
2060         * lily/grob.cc (get_print_stencil): add rotation support
2061
2062         * lily/stencil-interpret.cc (interpret_stencil_expression):
2063         add rotation support
2064
2065         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2066
2067         * scm/define-grob-properties.scm: add 'rotation property
2068
2069         * scm/define-markup-commands.scm: add rotate markup command
2070         
2071         * scm/output-ps.scm: add rotation support in PostScript backend
2072
2073         * scm/output-svg.scm: add rotation support in SVG backend
2074
2075 2006-05-13  Graham Percival  <gpermus@gmail.com>
2076
2077         * Documentation/user/music-glossary.itely: French correction.
2078
2079         * Documentation/user/programming-interface.itely: major
2080         new docs, some reorg, some info from Nicolas.
2081
2082         * Documentation/user/ various: small fixes.
2083
2084 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2085
2086         * Documentation/user/programming-interface.itely (Markup
2087         programmer interface): Remove duplicate text.
2088
2089 2006-05-12  Graham Percival  <gpermus@gmail.com>
2090
2091         * Documentation/user/context-example.eps: new file.
2092
2093         * Documentation/user/changing-defaults.itely: set up file to
2094         use eps image.
2095
2096         * Documentation/user/programming-interface.itely: changes
2097         from mailist.
2098
2099 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2100
2101         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2102
2103 2006-05-11  Graham Percival  <gpermus@gmail.com>
2104
2105         * Documentation/user/programming-interface.itely: first round of
2106         editing and merging emails from Nicolas.
2107
2108         * Documentation/user/scheme-tutorial: minor edit.
2109
2110 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2111
2112         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2113         XML attributes.
2114         (Xml_node.message): use it.
2115
2116         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2117         oops. Add duration argument.
2118
2119 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2120
2121         * lily/paper-column-engraver.cc (make_columns):
2122         * scm/define-grobs.scm: Revert my previous change and set the default
2123         in define-grobs.scm instead.
2124
2125 2006-05-09  Graham Percival  <gpermus@gmail.com>
2126         
2127         * Documentation/user/changing-defaults.itely: general editing,
2128         info about \set and \override.
2129
2130         * Documentation/user/tweaking.itely, advanced-notation.itely:
2131         fixes from Dave Luttinen, thanks!
2132
2133 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2134
2135         * lily/paper-column-engraver.cc (make_columns): By default, a column
2136         needs to be breakable.
2137
2138 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2139
2140         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2141         Attributes methods
2142         (musicxml_time_to_lily): idem
2143         (musicxml_key_to_lily): idem
2144         (instrument_drumtype_dict): dict for supported drumtypes.
2145         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2146         moments and pending mm rests
2147         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2148         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2149         (musicxml_voice_to_lily_voice): add mode change.
2150         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2151         speed and less memory usage (factor 5 to 10).
2152         (convert): write -defs.ly  and driver file separately so people
2153         can script their own part extraction.
2154
2155         * python/musicxml.py (minidom_demarshal_node): new function:
2156         separate minidom handling.
2157         (lxml_demarshal_node): new function: support lxml.etree too.
2158         (Xml_node.message): new function: verbose error message, with XML
2159         path to offending node.
2160         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2161         (Part_list.generate_id_instrument_dict): new method: collect
2162         instrument names, to be able to set drum_type.
2163         (Part.interpret): handle underfull measures
2164         (Part.interpret): assign instrument names.
2165
2166         * python/musicexp.py (Output_printer.close): new method
2167         (MusicWrapper.print_ly): new class: support other modes,
2168         eg. \drummode
2169         (BarCheck.print_ly): new class. Support bar checks, with comments
2170         and fancy barchecks. 
2171         (NoteEvent.__init__): also set drum_type for drum notes.
2172         (MultiMeasureRest.lisp_expression): dump mm rests.
2173
2174         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2175         line-break-permission if forbidBreak is not set.
2176
2177 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2178
2179         * scm/define-context-properties.scm:
2180         * scm/define-grob-properties.scm:
2181         * scm/define-grobs.scm:
2182         * scm/define-music-display-methods.scm:
2183         * scm/define-music-properties.scm:
2184         * scm/define-music-types.scm:
2185         * scm/music-functions.scm:
2186         * ly/declarations-init.ly:
2187         * lily/include/constrained-breaking.hh:
2188         * lily/system.cc:
2189         * lily/spaceable-grob.cc:
2190         * lily/simple-spacer.cc:
2191         * lily/paper-score.cc:
2192         * lily/paper-column.cc:
2193         * lily/paper-column-engraver.cc:
2194         * lily/item.cc:
2195         * lily/gourlay-breaking.cc:
2196         * lily/constrained-breaking.cc:
2197         * python/convertrules.py:
2198         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2199         "page-break-penalty" and "line-break-permission".
2200         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2201         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2202
2203         * lily/bar-engraver.cc:
2204         * lily/beam-engraver.cc:
2205         * lily/forbid-break-engraver.cc:
2206         * lily/ligature-engraver.cc:
2207         * lily/paper-column-engraver.cc:
2208         * lily/percent-repeat-engraver.cc:
2209         * lily/score-engraver.cc:
2210         * lily/score-engraver.hh:
2211         * lily/paper-column-engraver.hh:
2212         Inter-engraver communication regarding line breaks is done through context
2213         properties (Score.forbidBreak) instead of function calls.
2214
2215 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2216
2217         * VERSION (PACKAGE_NAME): release 2.9.4
2218
2219 2006-05-08  Graham Percival  <gpermus@gmail.com>
2220
2221         * Documentation/user/working.itely: proofreading from Dave
2222         Luttinen, thanks.
2223
2224         * Doucmentation/user/README.txt: updated with manual style info.
2225
2226         * Documentation/user/ various: trim linewidth to 78 chars.
2227
2228 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2229
2230         * scm/define-grob-properties.scm (all-internal-grob-properties):
2231         remove chord-tremolo property.
2232
2233         * lily/beam.cc (get_beam_segments): don't use stem position as
2234         base for broken ends.
2235
2236 2006-05-06  Graham Percival  <gpermus@gmail.com>
2237
2238         * Documentation/user/putting.itely: proofreading from Dave
2239         Luttinen, thanks!
2240
2241         * Documentation/user/ various: more reorg and clarifications.
2242
2243 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2244
2245         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2246
2247         * ly/music-functions-init.ly: new function featherDurations
2248
2249         * lily/beam.cc: read grow-direction for feathered beaming.
2250
2251         * Documentation/topdocs/NEWS.tely (Top): typo.
2252
2253 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2254
2255         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2256         tremolo beams.
2257
2258 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2259         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2260         used by music streams.
2261
2262         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2263         lily/stream-event.cc, lily/stream-event-scheme.cc,
2264         lily/listener.cc, lily/scheme-listener.cc,
2265         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2266         lily/include/stream-event.hh, lily/include/listener.hh,
2267         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2268         Created data structures for music streams.
2269         
2270 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2271
2272         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2273         construction of a beam. 
2274         (print): rewrite. 
2275
2276         * flower/include/std-vector.hh (default_compare): use only one comparison.
2277
2278         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2279         (note-by-number): further attachment fixes.
2280
2281         * scm/lily-library.scm (ordered-cons): new function.
2282         (interval-index): new function
2283
2284         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2285
2286         * lily/note-head.cc (get_stem_attachment): new function.
2287
2288         * scm/define-markup-commands.scm (note-by-number): read 'style
2289         property. 
2290
2291         * input/regression/markup-note.ly: show note-head style option.
2292
2293         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2294         triangle head.
2295
2296 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2297
2298         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2299
2300         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2301
2302         * lily/include/constrained-breaking.hh: GCC 4 fix.
2303
2304 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2305
2306         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2307         Replace it with functions get_line_forces and get_line_configuration.
2308         (class Simple_spacer): Make data private.
2309         Rewrite compression algorithm to be faster and simpler.
2310
2311         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2312         * lily/gourlay-breaking.cc (solve):
2313         * lily/constrained_breaking.cc (space_line):
2314         Change it to the new simple-spacer code.
2315
2316         * lily/paper-score.cc (get_paper_systems):
2317         (Paper_score):
2318         (process):
2319         Delay breaking the systems until they are requested.
2320         (find_break_indices):
2321         Use vsize for indices.
2322         (calc_breaking):
2323         Move the "Calculating line breaks" message here.
2324
2325         * lily/system.cc (pre_processing):
2326         Move the "Calculating line breaks" message away from here.
2327         (break_into_pieces):
2328         Allow multiple calls to this function in sequence (with touching-but-
2329         not-overlapping breakpoints).
2330
2331         * lily/constrained-breaking.cc:
2332         Replace most of the get_XXXX functions with get_line_details.
2333         Only calculate the force for each line. Calculate configurations only
2334         for the lines we will actually use.
2335         Replace cols_ with lines_.
2336
2337 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2338
2339         * mf/GNUmakefile (depth): remove FC_FIND.
2340
2341         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2342
2343         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
2344
2345         * scm/framework-ps.scm (write-preamble): new function.
2346         (write-preamble): load mac fonts via fondu, even if gs-font-load
2347         is set.
2348
2349 2006-05-03  Werner Lemberg  <wl@gnu.org>
2350
2351         * mf/GNUmakefile (FC_FIND): Fix typo.
2352
2353 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
2354
2355         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
2356
2357 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2358
2359         * stepmake/aclocal.m4: run python-config for crosscompiling
2360         flags. 
2361
2362         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
2363         -f png for HTML, TEXINFO formats. 
2364
2365         * input/tutorial/lbook-html-test.html: new file.
2366
2367         * lily/include/tie-formatting-problem.hh (class
2368         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
2369         [column, direction]. This fixes laissez vibrer ties.
2370  
2371         * flower/include/tuple.hh (struct Tuple2): new file.
2372
2373         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
2374         $(FCMATCH), only if $(NCSB_DIR) not set. 
2375
2376         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
2377
2378         * config.make.in (DOCUMENTATION): set FCMATCH.  
2379
2380         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
2381
2382 2006-05-03  Graham Percival  <gpermus@gmail.com>
2383
2384         * Documentation/user/ various: final round of reorg.
2385
2386         * Documentation/user/instrument-notation.itely: some more
2387         fixes from Eduardo, thanks!
2388
2389 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2390
2391         * VERSION (PACKAGE_NAME): release 2.9.3
2392
2393         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
2394
2395         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
2396
2397 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
2398
2399         * scm/define-grob-properties.scm (all-user-grob-properties):
2400         Correct typo, thanks to Eduardo.
2401
2402 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2403
2404         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
2405
2406         * buildscripts/lilypond-words.py (F): indent fix.
2407
2408         * input/regression/tie-arpeggio-collision.ly: new file.
2409
2410         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
2411         function: store outlines per column rank.
2412
2413         * lily/include/tie-configuration.hh (class Tie_configuration): add
2414         column_ranks_ to specification and configuration, to distinguish
2415         between ties for different heads in arpegiated chords.
2416
2417         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
2418
2419         * *.py: more 4 space indents.
2420
2421         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
2422
2423 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
2424
2425         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
2426
2427 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2428
2429         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
2430
2431         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
2432
2433         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
2434
2435 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2436
2437         * python/convertrules.py (conv): indent 4 for python files.
2438
2439 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
2440
2441         * Documentation/user/changing-defaults.itely (Creating contexts):
2442         Clarify \new semantics.
2443
2444 2006-04-28  Graham Percival  <gpermus@gmail.com>
2445
2446         * Documentation/user/ various: major new sections in the
2447         Learning manual, slight reorg elsewhere.
2448
2449 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2450
2451         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
2452
2453         * scm/framework-ps.scm (output-framework): remove PageMedia
2454
2455 2006-04-27  Graham Percival  <gpermus@gmail.com>
2456
2457         * Documentation/user/ tweaks.itely, working.itely: new
2458         files, being more advanced "learning manual" chapters.
2459
2460         * Documentation/user/ tutorial, putting, lilypond: reorg.
2461
2462 2006-04-26  Graham Percival  <gpermus@gmail.com>
2463
2464         * input/regression/lyric-combine-polyphonic.ly: fixed test
2465         (no more "can't find context `one'" error).
2466
2467 2006-04-25  Joe Neeman <joeneeman@gmail.com>
2468
2469         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
2470
2471         * input/regression/stem-tremolo.ly: add 2 more whole note examples
2472         
2473 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2474
2475         * lily/relocate.cc (read_relocation_dir): new function.
2476
2477 2006-04-26  Graham Percival  <gpermus@gmail.com>
2478
2479         * Documentation/user/instrument-notation.itely: a few more fixes
2480         from Eduardo, thanks!
2481
2482         * Documentation/user/README.txt: new file; contains info on
2483         style that used to be in lilypond.tely.
2484
2485         * Documentation/user/ various: first round of doc reorg.
2486
2487         * Documentation/user/baer-flat-bw.png: remove alpha bit from
2488         graphic; this probably causes problems on some pdf
2489         viewers, notably Adobe Acrobat.
2490
2491 2006-04-24  Graham Percival  <gpermus@gmail.com>
2492
2493         * Documentation/user/instrument-notation.itely: many alterations
2494         to Vocal music, from Eduardo Viera.
2495
2496 2006-04-23  Graham Percival  <gpermus@gmail.com>
2497
2498         * Documentation/user/instrument-notation.itely: fix \new
2499         instead of \context problem.
2500
2501 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2502
2503         * lily/relocate.cc (expand_environment_variables): new function.
2504         (read_line): id.
2505         (read_relocation_file): id.
2506
2507         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
2508
2509 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
2510
2511         * ly/engraver-init.ly: remove old comments from TabVoice
2512
2513 2006-04-20  Graham Percival  <gpermus@gmail.com>
2514
2515         * Documentation/user/instrument-notation.itely: added Erlend's
2516         latest doc patch, thanks!
2517
2518 2006-04-19  Erlend Aasland <erlenda@gmail.com>
2519
2520         * lily/include/slur.hh:
2521         * lily/slur.cc:
2522         * lily/phrasing-slur-engraver.cc:
2523         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
2524         acknowledge_extra_object () from Phrasing_slur_engraver:: and
2525         Slur_engraver:: and putting it in
2526         Slur::auxiliary_acknowledge_extra_object ().
2527
2528         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
2529
2530         * lily/note-collision.cc: fix a comment
2531
2532 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2533
2534         * stepmake/bin/add-html-footer.py: fix footer position in
2535         generated html files: before </body> and </html> tags.
2536
2537 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2538
2539         * scripts/GNUmakefile: revert last "fix", which rather broke make.
2540         Earlier successive `make' commands finally compiled ok.
2541
2542         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
2543
2544 2006-04-18  Erlend Aasland <erlenda@gmail.com>
2545
2546         * lily/include/stem-tremolo.hh:
2547         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
2548         callers.
2549
2550         * lily/lookup.cc:
2551         * lily/include/lookup.hh: add rotated_box ()
2552
2553 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
2554
2555         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
2556         been generated. Fixes "can't get `--help'" bug after make clean.
2557
2558         * THANKS: alphabetize contributors.
2559
2560 2006-04-17  Graham Percival  <gpermus@gmail.com>
2561
2562         * Documentation/user/instrument-notation.itely: added Erlend's
2563         tabs and banjo doc patch.  Thanks!
2564
2565 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
2566
2567         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
2568
2569         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
2570
2571         * scm/output-lib.scm: add some more predefined string tunings.
2572
2573         * Documentation/user/instrument-notation.itely: and doc them.
2574
2575 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
2576
2577         * ly/engraver.ly: Remove obsolete comments.
2578
2579         * ly/gregorian-init.ly: Define default layout block.
2580
2581         * input/puer-fragment.ly: Updated and extended.
2582
2583 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2584
2585         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
2586         pdf conversion behaviour.
2587
2588         * flower/file-name.cc (dir_name)
2589         (get_working_directory): Move from relocate.cc.
2590
2591         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
2592         
2593         * lily/relocate.cc: Encapsulate sys/stat.h in
2594         HAVE_STAT_H.
2595
2596 2006-04-14  Graham Percival  <gpermus@gmail.com>
2597
2598         * Documentation/user/ various: small updates from Cameron
2599         and Juergen, thanks!
2600
2601         * Documentation/user/ various: small updates of my own.
2602
2603         * THANKS: 2.7 -> 2.8.
2604
2605 2006-04-11  Graham Percival  <gpermus@gmail.com>
2606
2607         * scm/define-context-properties.scm: typo.
2608
2609         * Documentation/user/ : many more small updates.
2610
2611 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
2612
2613         * scm/define-music-types.scm: disposed "docme".
2614
2615 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
2616
2617         * lily/hairpin.cc: make niente circles a bit smaller.
2618
2619 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
2620
2621         * mf/GNUmakefile: remove redundant mftrace check. Also remove
2622         get-pfa and get-*-fonts targets.
2623
2624 2006-04-10  Graham Percival  <gpermus@gmail.com>
2625
2626         * THANKS, Documentation/user/ basic-notation, advanced-notation,
2627         music-glossary, programming-interface: more minor fixes
2628         from mailist.
2629
2630         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
2631
2632         * scm/define-context-properties.scm: another old \property update.
2633         This time tested for compiling!
2634
2635 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
2636
2637         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
2638
2639 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2640
2641         * scm/define-context-properties.scm (all-user-translation-properties): 
2642         * Documentation/user/global.itely (Page formatting): Compile fix.
2643
2644 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
2645
2646         * Documentation/user/advanced-notation.itely (Polymetric
2647         notation): Update the example to use the "+" symbol and add link
2648         to input/test/compound-time.ly.
2649
2650 2006-04-08  Graham Percival  <gpermus@gmail.com>
2651
2652         * scm/define-grob-properties.scm: clarify docs for #'direction.
2653
2654         * scm/define-context-properties.scm: update old \property override.
2655
2656         * Documentation/user/ advanced-notation, global, lilypond-book:
2657         more minor doc updates.
2658
2659 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2660
2661         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
2662
2663         * scm/backend-library.scm (search-gs): oops.
2664
2665 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2666
2667         * scripts/lilypond-book.py (output): use base, not filename for href.
2668
2669         * scm/backend-library.scm: only look for gs.
2670
2671         * scripts/lilypond-book.py (output): fix printfilename.
2672
2673         * lily/parser.yy (music_function_musicless_prefix): fold together
2674         definitions of signature (SCM*) (Music|post_event|chord_body_element)
2675
2676         * lily/slur.cc (print): only set font-size if not set yet.
2677
2678         * lily/slur-configuration.cc (add_score): improved layout of debug
2679         scoring output.
2680
2681 2006-04-05  David Feuer  <David.Feuer@gmail.com>
2682
2683         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
2684         (draw_circle): Hopefully fixed regression.
2685         Improved documentation for several procedures.
2686         
2687 2006-03-04  Werner Lemberg  <wl@gnu.org>
2688
2689         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
2690
2691 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2692
2693         * scripts/musicxml2ly.py (bindir): add dynamic
2694         relocation. 
2695
2696 2006-04-04  Graham Percival  <gpermus@gmail.com>
2697
2698         * Documentation/user/ basic-notation, advanced-notation, putting,
2699         instrument-notation, invoking, lilypond, THANKS: another ream of small
2700         fixes from the Doc Helpers.
2701
2702 2006-04-03  David Feuer  <David.Feuer@gmail.com>
2703
2704         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
2705
2706         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
2707
2708         * Cleaned up interfaces between PostScript and Scheme, and moved
2709         computations from PostScript to Scheme:
2710
2711         * music-drawing-routines.ps
2712         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
2713         with stroke_and_fill throughout.
2714         (euclidean_length, print_letter, draw_box): Deleted unused
2715         procedures.  If someone needs draw_box, implement it using
2716         draw_round_box; don't duplicate code.
2717         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
2718         Refactored/cleaned up interfaces.
2719         (mark_URI): Moved.
2720
2721         * output-ps.scm: reordered arguments to PostScript functions to
2722         match new interfaces
2723         (glyph-string): Rewrote glyph-string.
2724         (grob-cause): Replaced string-append with format.
2725         (repeat-slash): Rewrote to do computation here.
2726         (round-filled-box): Rewrote to do computation here.
2727
2728 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
2729
2730         * stepmake/stepmake/generic-targets.make: add cvs-clean target
2731
2732         * stepmake/stepmake/toplevel- targets.make: print help info about
2733         cvs-clean
2734
2735 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
2736
2737         * input/regression/hairpin-circled.ly: new file
2738
2739 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
2740
2741         * lily/hairpin.cc (print): add support for circled tip
2742
2743         * scm/define-grob-properties.scm: add circled-tip parameter
2744
2745         * scm/define-grobs.scm: init circled-tip to false
2746         
2747 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2748
2749         * scm/music-functions.scm (quote-substitute): set
2750         iterators-ctor. 
2751
2752 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2753
2754         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
2755         BSTINPUTS. 
2756
2757         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
2758
2759         * scm/output-ps.scm (glyph-string): revert cid selectfont.
2760
2761 2006-03-31  David Feuer  <david.feuer@gmail.com>
2762         
2763         * scm/framework-ps.scm:
2764         
2765         * scm/output-ps.scm: glyph-string now produces smaller, more
2766         readable, and probably faster PostScript.  Several findfont
2767         scalefont setfont instances changed to selectfont
2768         Hacked-up string-appends changed to formats.
2769
2770         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
2771         
2772 2006-03-30  Graham Percival  <gpermus@gmail.com>
2773
2774         * scm/lily-library.scm: make "no version" warning message more polite.
2775
2776         * lily/music.cc: add double quotes to failed octave check.
2777
2778         * Documentation/user/ advanced-notation, changing-defaults,
2779         instrument-notation, invoking, music-glossary: whole bunch of minor
2780         fixes from mailist.
2781
2782 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2783
2784         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
2785         $(buildscriptdir) iso. depth.
2786
2787         * VERSION (PACKAGE_NAME): release 2.9.1
2788
2789 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2790
2791         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
2792
2793         * VERSION (PATCH_LEVEL): bump version number.
2794
2795         * flower/include/guile-compatibility.hh (scm_from_uint32): add
2796         scm_from_uint32 ()
2797
2798         * lily/pango-font.cc (pango_item_string_stencil): use
2799         scm_from_uint32 ()
2800
2801         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
2802         $(outdir)/emmentaler-%.svg): remove canary.
2803
2804         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
2805         glyphnames if we have a ttf font.
2806
2807 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
2808
2809         * Documentation/user/advanced-notation.itely (Font selection):
2810         Corrected reference to the font-family-override.ly example.
2811
2812 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
2813         
2814         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
2815         stem-tremolo object in the stem (or else the stem might not be
2816         long enough).
2817
2818 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2819
2820         * lily/ttf.cc (print_trailer): only print existing glyphs.
2821
2822 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
2823
2824         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
2825         position the tremolo based on the position of the notehead.
2826
2827         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
2828         notes and update the texidoc line with the new positioning rules.
2829         
2830 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2831
2832         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
2833
2834         * scripts/lilypond-book.py (Module): set default for linewidth if
2835         preamble not found.
2836
2837 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2838
2839         * VERSION (PACKAGE_NAME): release 2.9.0.
2840
2841         * input/regression/stem-tremolo-position.ly: new file.
2842
2843         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
2844
2845 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
2846
2847         * lily/stem-tremolo.cc (print): position
2848         the tremolo depending only on the end of the stem
2849         and not on the notehead
2850         (raw_stencil): center, on the middle staff line, the
2851         flag that is closest to the end of the stem (previously
2852         the bottom flag)
2853         (calc_width): add this callback to shorten a tremolo when
2854         it is beamed or it is stemup with a flag
2855         (style): add this callback to make a tremolo rectangular when
2856         it is beamed or it is stemup with a flag
2857         (rotated_box): this is like Lookup::beam but makes a rotated
2858         rectangle instead of a parallelogram
2859
2860         * lily/stem.cc (calc_stem_info): make sure the stem
2861         is long enough to fit the tremolo
2862         (calc-length): reduce the length of tremolo stems since the
2863         tremolo code is now capable of better positioning
2864
2865         * scm/define-grobs.scm: make calc_width the default beam-width
2866         callback for stem-tremolo and add the style callback
2867                 
2868 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2869
2870         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
2871         case. 
2872
2873 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2874
2875         * lily/ttf.cc (make_index_to_charcode_map): restore old
2876         cmap. 
2877
2878 2006-03-28  Werner Lemberg  <wl@gnu.org>
2879
2880         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
2881
2882 2006-03-28  Graham Percival  <gpermus@gmail.com>
2883
2884         * THANKS: update for 2.9, add section for Documentation helpers.
2885
2886         * Documentation/topdocs/NEWS.tely: compile fix.
2887
2888         * Documentation/user/ basic-notation, global, advanced-notation,
2889         examples.itely: minor fixes from mailist.
2890
2891 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2892
2893         * mf/feta-bolletjes.mf: match width of solfa notes with normal
2894         note heads. 
2895
2896         * lily/ttf.cc (print_trailer): use it.
2897
2898         * lily/pango-font.cc (get_unicode_name): new function.
2899
2900         * lily/ttf.cc (make_index_to_charcode_map): move function from
2901         open-type-font.cc
2902         (print_trailer): substitute uniXXXX name if applicable. 
2903
2904         * lily/pango-font.cc (get_index_to_charcode_map): new function.
2905         (pango_item_string_stencil): use it to generate uniXXXX names.
2906
2907         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
2908         note heads, for uniform widths in shape note output.
2909         (overdone_heads): hmm. remove them again.
2910
2911         * scripts/lilypond-book.py (output): add links to filenames.
2912
2913         * Documentation/topdocs/INSTALL.texi (Top): update versions.
2914
2915         * lily/note-collision.cc (get_clash_groups): only consider when
2916         Note_column::dir <> CENTER. 
2917
2918         * scripts/lilypond-book.py (get_option_parser): init output_name
2919         to ''. 
2920
2921 2006-03-24  Graham Percival  <gpermus@gmail.com>
2922
2923         * Documentation/topdocs/NEWS.tely: add @end itemize
2924
2925         * Documentation/user/ global, advanced-notation: minor
2926         stuff from mailist.
2927
2928 2006-03-23  Graham Percival  <gpermus@gmail.com>
2929
2930         * Documentation/user/ lilypond.tely, music-glossary,
2931         preface: housekeeping; 2005->2006, remove "notes for 2.6"
2932
2933 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2934
2935         * mf/GNUmakefile: don't install .enc files.
2936
2937         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
2938
2939         * VERSION (PATCH_LEVEL): bump to 2.9.0
2940
2941 2006-03-22  Graham Percival  <gpermus@gmail.com>
2942
2943         * Documentation/user/advanced-notation.itely: minor fixes
2944         from mailist.
2945
2946 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2947
2948         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
2949
2950         * branch lilypond_2_8
2951
2952 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
2953
2954         * scripts/lilypond-book.py (samefile): new function, for windoze
2955         compatibility.
2956
2957 2006-03-21  Graham Percival  <gpermus@gmail.com>
2958
2959         * ly/engraver-init.ly: add info about StaffGroup.
2960
2961 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
2962
2963         * input/regression/stem-direction-context.ly: idem.
2964
2965         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
2966
2967         * THANKS: add Mats.
2968
2969         * input/regression/page-layout-twopass.ly: comment out \markup so
2970         tweak-file is left.
2971
2972         * lily/instrument-name-engraver.cc (finalize): add to instrument
2973         name global System. This also fixes chopped instrument names, but
2974         doesn't crash when there are slurs/beams.
2975
2976         * lily/slur-configuration.cc (add_score): disallow negative slur
2977         scores.
2978         
2979 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2980
2981         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
2982
2983         * lily/instrument-name-engraver.cc (process_music): kludge: add
2984         InstrumentName spanner to axis group of left bound. Fixes chopped
2985         off instrument names in EPS images.
2986
2987         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
2988
2989         * scripts/abc2ly.py (option_parser): update to 2.7.40
2990
2991 2006-03-20  Graham Percival  <gpermus@gmail.com>
2992
2993         * THANKS: move small doc contributors to SUGGESTIONS.
2994
2995         * Documentation/user/ basic-notation, advanced-notation,
2996         global: small changes from mailist.
2997
2998 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2999
3000         * Documentation/user/advanced-notation.itely (Text marks): update
3001         for new rehearsalMarkAlignSymbol convention.
3002
3003         * VERSION (PATCH_LEVEL): bump version.
3004
3005         * input/test/instrument-name-align.ly: new file.
3006
3007         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3008
3009         * input/test/instrument-name-align.ly: new file. Document how to
3010         align instrument names.
3011
3012         * lily/mark-engraver.cc: remove properties.
3013
3014         * scm/define-context-properties.scm
3015         (all-user-translation-properties): remove align symbol properties
3016         for barnumber/reh. mark.
3017
3018         * lily/break-align-interface.cc (self_align_callback): new
3019         interface, new function. Look at complete alignment. This handles
3020         tunable break alignments in case break-align-symbols are missing.
3021
3022         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3023
3024         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3025
3026         * python/convertrules.py (conv): mark/bar number alignment rule.
3027
3028         * lily/break-align-interface.cc (calc_positioning_done): also
3029         store offset from last visible break-alignment to its
3030         neighbor. This makes alignment on non-visible objects more reliable.
3031
3032         * po/lilypond.pot (Module): ran po-replace.
3033
3034         * input/regression/tie-single-manual.ly (Module): new file.
3035
3036         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3037         look at has_manual_position_.
3038         (from_ties): set has_manual_position_ if tie has staff-position set.
3039
3040         * lily/tuplet-bracket.cc (calc_positions): idem.
3041
3042         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3043         doesn't span time.
3044
3045 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3046
3047         * scm/define-markup-commands.scm (smallCaps): new markup command
3048         for turning a text to small caps using smaller font size and upper
3049         casing.
3050
3051 2006-03-17  Graham Percival  <gpermus@gmail.com>
3052
3053         * Documentation/user/ examples, instrument-notation,
3054         advnaced-notation: minor fixes from mailist.
3055
3056 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3057
3058         * Documentation/user/tutorial.itely (First steps): change example
3059         to verbatim.  
3060
3061 2006-03-17  Graham Percival  <gpermus@gmail.com>
3062
3063         * Documentation/user/ examples, advanced: minor changes from mailist.
3064
3065         * THANKS: add Geoff Horton, for documentation stuff.
3066
3067 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3068
3069         * python/lilylib.py (system): revert have_select kludge.
3070
3071         * Documentation/user/tutorial.itely (Commenting input files):
3072         update version numbers in doc. 
3073
3074         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3075         bound-padding to multi-measure-interface
3076
3077 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3078
3079         * input/test/engraver-example.ily: update version number.
3080
3081         * VERSION (PACKAGE_NAME): release 2.7.39
3082
3083         * lily/note-spacing.cc (get_spacing): heighten threshold where
3084         accidentals/arpeggios influence previous spacing fully.
3085
3086         * lily/rest.cc (y_offset_callback): only use direction if
3087         staff-position wasn't set before.
3088
3089         * lily/bar-number-engraver.cc: add support for
3090         barNumberAlignSymbol. 
3091         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3092
3093         * lily/pointer-group-interface.cc (set_ordered): new function. 
3094         (add_unordered_grob): new function.
3095
3096         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3097         to ordered, unless the opposite has been proved.  This fixes
3098         random reordering of large object groups across linebreaks,
3099         eg. beams.
3100
3101         * lily/main.cc (do_chroot_jail): printf format fix.
3102
3103         * lily/tie-formatting-problem.cc (generate_configuration):
3104         multiply y-shift for dot with direction.
3105  
3106         * scm/define-markup-commands.scm (note-by-number): put (magstep
3107         size) in y-attach too.
3108
3109         * Documentation/topdocs/NEWS.tely (Top): show override.
3110
3111         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3112         direction for stems.
3113         
3114 2006-03-15  Graham Percival  <gpermus@gmail.com>
3115
3116         * Documentation/user/ changing-defaults, global: minor
3117         fixes from mailist.
3118
3119 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3120
3121         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3122
3123         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3124         breakable items after uniformly stretched notes.
3125
3126         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3127         outline with outer edge of note heads. This prevents infinity
3128         problems with tied whole notes.
3129
3130         * scripts/lilypond-book.py (do_file): use os.popen
3131
3132         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3133
3134 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3135
3136         * Documentation/user/invoking.itely: Add ragged-right to bug report
3137         guidelines.
3138
3139 2006-03-14  Graham Percival  <gpermus@gmail.com>
3140
3141         * Documentation/user/global.itely: small fix from mailist.
3142
3143 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3144
3145         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3146         file descriptor returned by tempfile.mkstemp() when writing
3147         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3148         on mingw.
3149
3150 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3151
3152         * po/fi.po: newline bugfix.
3153
3154 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3155
3156         * scm/paper.scm (paper-alist): Rounding fixes.
3157
3158 2006-03-13  Graham Percival  <gpermus@gmail.com>
3159
3160         * Documentation/user/ changing-defaults, instrument-notation,
3161         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3162
3163 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3164
3165         * po/fi.po: update.
3166
3167 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3168
3169         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3170         mailto: to http:// 
3171
3172         * python/lilylib.py (print_environment): move ps_page_count to
3173         lilypond-book.py
3174
3175 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3176
3177         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3178
3179         * scm/framework-ps.scm (embed-document): new function. Use to
3180         embed PFA files.
3181
3182         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3183
3184 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3185
3186         * Documentation/user/instrument-notation.itely (Setting simple
3187         songs): Added \book{...} around the full example, so the separate
3188         markups are included in the printed example. 
3189
3190 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3191
3192         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3193         tmphandle.
3194
3195         * python/lilylib.py (system): rewrite system() using
3196         subprocess. Remove >& redirection trickery.
3197
3198 2006-03-11  Graham Percival  <gpermus@gmail.com>
3199
3200         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3201         notation-appendices.itely: minor fixes from mailist.
3202
3203 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3204
3205         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3206         unsplit man also needs images.
3207
3208         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3209
3210         * VERSION (PACKAGE_NAME): 2.7.38 released.
3211
3212 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3213
3214         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3215         log in output dir.
3216
3217 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3218
3219         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3220         respects the Score.skipTypesetting property.
3221         
3222 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3223
3224         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3225         Prolog. No %%EOF after CFF file.
3226
3227 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3228         
3229         * lily/constrained-breaking.cc (get_max_systems): used to return a
3230         much too big value
3231         (combine_demerits): use pointers to reduce copying data
3232         (calc_subproblem): idem
3233         (get_page_penalty): add page turn penalties
3234         
3235 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3236
3237         * Documentation/user/invoking.itely (Invoking lilypond): better
3238         explanation of -e usage.
3239
3240         * lily/main.cc (main_with_guile): don't append to
3241         init_scheme_code_string
3242
3243         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3244
3245         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3246
3247         * scripts/convert-ly.py (do_options): don't print help for
3248         --show-rules rule.
3249
3250         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3251         @code and @example. Update from texinfo.tex from CVS.
3252
3253 2006-03-08  Graham Percival  <gpermus@gmail.com>
3254
3255         * Documentation/user/scheme-tutorial.itely: clarifies distances
3256         measured in staff-spaces.
3257
3258 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3259
3260         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3261         consider[k] is true.
3262
3263         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3264
3265         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3266         consider columns that have originals.  Unifies spacing for mm
3267         rests around line breaks.
3268
3269         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3270         (set_text_rods): idem.
3271         (calculate_spacing_rods): new function: share code between
3272         set_text_rods and set_spacing_rods.
3273         (set_text_rods): take extents of bounds into account.  
3274
3275 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3276
3277         * Documentation/user/basic-notation.itely (Writing music in
3278         parallel): don't use relative.
3279
3280 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3281
3282         * ly/music-functions-init.ly (Module): add shiftDurations
3283
3284         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3285
3286         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3287
3288         * ly/engraver-init.ly: init vocalName to nil.
3289
3290 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3291
3292         * scm/music-functions.scm (music->make-music): bugfix,
3293         KeyChangeEvents are now handled correctly.
3294
3295         * scripts/lilypond-book.py: Add --debug option.
3296
3297 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3298
3299         * python/lilylib.py: add tempfile.
3300
3301 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3302
3303         * VERSION (PACKAGE_NAME): release 2.7.37
3304
3305         * python/lilylib.py (ps_page_count): remove make_ps_images().
3306         (ps_page_count): remove mkdir_p
3307         (system): remove cleanup_temp.
3308         (exit): remove lilypond_version_(check)
3309         (error_log): remove pseudo_filter_p
3310         remove read_pipe
3311         remove cp_to_dir
3312         remove identify
3313
3314         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3315         use __main__
3316
3317         * lily/accidental-engraver.cc (make_standard_accidental): only add
3318         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3319
3320         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3321         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3322         Make incompatibilities.
3323
3324         * scm/output-ps.scm (grob-cause): replace backslashes by /
3325         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3326
3327 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3328
3329         * cygwin/GNUmakefile: Install fixes.
3330
3331         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3332
3333         * lily/note-head.cc (head::get_balltype): Compile fix.
3334
3335         * flower/file-name.cc (dos_to_posix): Flower string fix.
3336
3337 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3338
3339         * python/lilylib.py: pychecker cleanups.
3340
3341         * scripts/lilypond-book.py
3342         (Lilypond_snippet.output_print_filename): pychecker cleanups
3343
3344         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
3345
3346         * python/lilylib.py (underscore): remove identify() , warranty()
3347
3348         * ps/music-drawing-routines.ps: change Border routine for GSView
3349         compatibility.
3350
3351         * lily/stem.cc (height): use quantize-positions.  This triggers
3352         set_stem_lengths, so scripts on beamed stems are handled correctly.
3353
3354         * lily/side-position-interface.cc (aligned_side): check if edges
3355         of script are inside staff. Fixes accent of edge of the staff.
3356
3357         * input/regression/staccato-pos.ly: more examples.
3358
3359         * stepmake/aclocal.m4 (depth): fix bashism.
3360
3361         * lily/lyric-combine-music-iterator.cc: move from
3362         new-lyric-combine-iterator.cc
3363         (process): add pending_grace_lyric_ member to delay lyrics on
3364         grace notes.
3365
3366         * lily/system-start-text.cc (print): suicide if we don't have any
3367         elements. Fixes hara kiri'd instrument names.
3368
3369         * scripts/mup2ly.py (Module): remove.
3370
3371 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3372
3373         * Documentation/user/global.itely (A single music expression):
3374         close @lilypond properly
3375
3376         * lily/volta-bracket.cc (modify_edge_height): change from
3377         after_line_breaking_callback. Suicide last bracket if appropriate.
3378  
3379         * python/lilylib.py: strip getopt support
3380
3381         * scripts/etf2ly.py (do_options): use optparse
3382
3383         * scripts/midi2ly.py: optparse, strip lilylib copy. 
3384
3385         * scripts/abc2ly.py (voices): use optparse.
3386
3387         * stepmake/stepmake/generic-vars.make: new function absdir.
3388
3389         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
3390
3391         * scripts/lilypond-book.py (find_file): use global_options for
3392         include path
3393
3394         * scm/ps-to-png.scm (ps-page-count): prevent null characters
3395         entering C code.
3396
3397 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3398
3399         * python/lilylib.py (get_global_option): ughness for extracting
3400         global options from lilylib.
3401         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
3402
3403         * scripts/lilypond-book.py (get_option_parser): use optparse for
3404         option handling.  Put options in global_options variable.
3405
3406 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
3407
3408         * Documentation/index.html.in: clarify.
3409
3410 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3411
3412         * scm/layout-page-layout.scm (write-page-breaks): add a
3413         music-system-heights property to the page layout output.
3414
3415         * scm/page.scm (make-page-stencil): take footer into account when
3416         computing the 'space-left page property
3417         (annotate-space-left): take footer into account when annonating
3418         space left.
3419
3420 2006-02-28  Graham Percival  <gpermus@gmail.com>
3421
3422         * Documentation/user/ advanced-notation, global: more (final)
3423         docs for music expressions, removed special fermatas.
3424
3425 2006-02-27  Graham Percival  <gpermus@gmail.com>
3426
3427         * Documentation/user/ basic-notation, global: minor changes
3428         from mailist.
3429
3430 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3431
3432         * scm/framework-ps.scm:         
3433         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
3434         layer for inf? and nan? from framework-ps to lily-library.
3435
3436 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3437
3438         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
3439         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
3440
3441         * buildscripts/substitute-encoding.py (Module): remove file.
3442
3443         * mf/GNUmakefile: more PFA strippage.
3444
3445         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
3446
3447         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
3448         generation
3449
3450         * scm/framework-ps.scm: remove font name munging.
3451
3452         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
3453
3454 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3455
3456         * scm/markup.scm (define-markup-command): change
3457         def-markup-command to define-markup-command
3458
3459         * scm/music-functions.scm (define-music-function): change
3460         def-music-function to define-music-function.
3461
3462         * python/convertrules.py (conv): rules for def-music-function
3463         and def-markup-commands
3464
3465         * Documentation/user/programming-interface.itely,
3466         input/no-notation/display-lily-tests.ly,
3467         input/regression/lily-in-scheme.ly,
3468         input/regression/markup-user.ly,
3469         input/regression/music-function.ly, input/regression/tie-chord.ly,
3470         scm/fret-diagrams.scm, ly/music-functions-init.ly,
3471         ly/gregorian-init.ly: use new macro names (define-music-function,
3472         define-markup-command).
3473
3474 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3475
3476         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
3477         (output): add comments to lp-book latex output.
3478
3479         * GNUmakefile.in (footifymail): use gmane address for webpage bug
3480         address.
3481
3482 2006-02-23  Graham Percival  <gpermus@gmail.com>
3483
3484         * Documentation/user/ tutorial, global: minor changes.
3485
3486 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3487
3488         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
3489         blocks (for make 3.80)
3490
3491         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
3492         \notemode so that user should not have to explicitely type it.
3493
3494         * scm/define-music-display-methods.scm: various
3495         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
3496         constructs)
3497
3498         * input/no-notation/display-lily-tests.ly: new tests for
3499         \applyOutput and \applyContext
3500
3501 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3502
3503         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
3504         changed it slightly so that the number of systems returned by
3505         solve () will be the same as the last value passed to resize
3506         (). I've also added more documentation, removed casts, fixed style
3507         problems and put in some recovery if constraints aren't satisfied."
3508
3509 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
3510
3511         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
3512         for emacs < 22 compatibility.
3513         (count-rexp): Use it.
3514         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
3515         substring juggling (Milan Zamazal).
3516
3517 2006-02-23  Graham Percival  <gpermus@gmail.com>
3518
3519         * Documentation/user/ basic-notation, advanced-notation,
3520         global.itely, invoking.itely, tutorial,itely:
3521         minor fixes from mailist.
3522
3523         * scm/define-markup-commands.scm: improve docs of \filled-box.
3524
3525 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
3526
3527         * Documentation/index.html.in: changes concern the previous release.
3528
3529         * input/regression/+.ly: cultivate typographical terminology.
3530
3531 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3532
3533         * scm/define-grob-interfaces.scm (parentheses-interface): add
3534         padding to parentheses-interface.
3535
3536         * Documentation/user/GNUmakefile: remove $(CROSS) support from
3537         Documentation/user/GNUmakefile. Use --disable-documentation for that.
3538
3539         * VERSION (PATCH_LEVEL): release 2.7.36
3540
3541         * lily/slur.cc: add avoid-slur (ugh.)
3542         
3543         * lily/slur-configuration.cc (fit_factor): oops, skip point if
3544         intersection gets smaller. This fixes slurs over extreme points.
3545
3546         * lily/melody-engraver.cc (stop_translation_timestep): ignore
3547         stems with neutral-direction set.
3548
3549         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
3550
3551         * lily/open-type-font.cc (load_table): format error.
3552
3553         * lily/change-iterator.cc (process): format fix.
3554
3555         * flower/include/international.hh (_f): idem.
3556
3557         * flower/include/std-string.hh: add format printf attribute.
3558
3559         * scm/define-grobs.scm (all-grob-descriptions): height of all
3560         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
3561
3562         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
3563         ambitus lines.
3564
3565         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
3566
3567 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
3568
3569         * input/regression/: upgraded syntax for some files.
3570
3571         * THANKS: Add bughunters.
3572
3573 2006-02-22  Graham Percival  <gpermus@gmail.com>
3574
3575         * Documentation/user/ invoking.itely, advanced-notation.itely,
3576         global.itely: long-awaited "let's make chapter 10 not suck"
3577         update.  Rearrange chapter 10; now called "global issues",
3578         addresses file structure, etc.  Some info from other files
3579         moved into global.itely.
3580
3581 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3582
3583         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
3584         catch trill-span-event notes.
3585
3586         * Documentation/user/examples.itely (Ancient notation templates): typo.
3587         (Jazz combo): typo.
3588
3589         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
3590
3591         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
3592
3593         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
3594
3595         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
3596
3597         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
3598         froum Laissez_vibrer_engraver.
3599
3600         * ly/declarations-init.ly (repeatTie): add \repeatTie
3601
3602         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
3603
3604         * scm/define-grob-properties.scm (all-user-grob-properties): add
3605         head-direction property.
3606
3607         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
3608         from_lv_ties. Take head direction argument.
3609
3610         * lily/semi-tie-column.cc: rename from
3611         laissez-vibrer-tie-column.cc. Rename class too.
3612
3613         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
3614         class too.
3615
3616         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
3617
3618         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
3619         0 case.
3620         (find_breaks): idem.
3621
3622 2006-02-21  Graham Percival  <gpermus@gmail.com>
3623
3624         * Documentation/user/advanced-notation.itely: fixed make-moment]
3625         example.
3626
3627         * Documentation/user/basic-notation.itely: more clarification to
3628         transpose.
3629
3630 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3631
3632         * lily/include/constrained-breaking.hh (class
3633         Constrained_breaking): new file.
3634
3635         * lily/constrained-breaking.cc (resize): new file.
3636
3637         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
3638
3639         * Documentation/user/advanced-notation.itely (Clusters): insert
3640         end ignore too.
3641
3642         * lily/tie-column.cc (calc_positioning_done): support for
3643         tie-score debugging
3644
3645         * lily/tie-formatting-problem.cc
3646         (generate_extremal_tie_variations): factor out.
3647         (score_ties_configuration): annotate all tie 
3648         (print_ties_configuration): new routine.
3649         (generate_configuration): nudge extremal ties outside of the head
3650         Y extents.
3651         (score_ties_configuration): oops. convert to staff-space before
3652         determining position symmetry.
3653
3654 2006-02-20  Graham Percival  <gpermus@gmail.com>
3655
3656         * Documentation/user/*-notation.itely: misc minor editing,
3657         shifting doc sections around.
3658
3659         * Documentation/user/*-notation-itely, global.itely,
3660         changing-defaults.itely: added new stuff from NEWS.
3661
3662 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
3663
3664         * po/fi.po: update.
3665
3666 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3667
3668         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
3669         lilypond --verbose for lp-book.
3670
3671         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3672         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
3673
3674         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
3675         $(buildscript-dir) iso. absolute depth.
3676
3677         * buildscripts/genicon.py (dir): thinko.
3678
3679         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
3680
3681 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
3682
3683         * scm/output-lib.scm: swap darkcyan/darkyellow
3684
3685         * THANKS: Add bughunters.
3686
3687 2006-02-19  Graham Percival  <gpermus@gmail.com>
3688
3689         * Documentation/user/programming-interfaces.itely: fixed example.
3690
3691         * Documentation/user/instrument-notation.itely: fix @{ @}.
3692
3693         * scm/script.scm: add avoid-slur for \open.
3694
3695 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3696
3697         * lily/tie-formatting-problem.cc (score_configuration): use
3698         sliding score for min-length. 
3699
3700         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
3701         spaghetti for icons.
3702
3703         * buildscripts/genicon.py (program_name): new file.
3704
3705         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
3706         in outline too.  
3707         (generate_configuration): for small ties, also look for collisions
3708         at Y + DIR*h + DELTA_Y.
3709         (get_variations): consider variation for dot positions too.
3710
3711         * lily/side-position-interface.cc (aligned_side): take abs for
3712         quantized rounded position. Fixes tenuto below staff.
3713
3714         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
3715         markers when necessary.
3716
3717         * lily/program-option.cc (internal_set_option): add
3718         strict_infinity_checking option.
3719
3720         * scm/output-lib.scm (cyan): swap yellow and cyan.
3721
3722 2006-02-19  Graham Percival  <gpermus@gmail.com>
3723
3724         * darwin.patch: trivial linenumber update.
3725
3726         * Documentation/user/ {various}: `\context foo = named' changed
3727         to `\new foo = "name"' in docs.
3728
3729 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3730
3731         * scm/stencil.scm (annotate-y-interval): use it.
3732
3733         * scm/lily-library.scm (interval-sane?): new function.
3734
3735         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
3736         tfm_checksum stuff.
3737
3738         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
3739         common refpoint.
3740
3741         * flower/include/std-vector.hh (iterof): add iterof macro.
3742
3743         * lily/enclosing-bracket.cc (width): new function.
3744
3745         * lily/align-interface.cc (align_elements_to_extents): reinstate
3746         warning.
3747
3748 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
3749
3750         * Documentation/index.html.in: fix spelling: thankyous.
3751
3752 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3753
3754         * lily/lyric-hyphen.cc: typo.
3755
3756 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3757
3758         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
3759         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
3760         builds don't work. 
3761
3762         * VERSION: release 2.7.35
3763
3764         * lily/beam.cc (get_default_dir): oops. Take abs () for
3765         extremes[DOWN].
3766         (get_default_dir): use extreme position criterion only in absence
3767         of forced stem directions.
3768
3769         * VERSION (PATCH_LEVEL): bump VERSION.
3770
3771         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
3772         dependencies. Necessary for -jX builds.  
3773
3774 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
3775
3776         * lily/relocate.cc (setup_paths): Yet another const fix.
3777
3778 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3779
3780         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
3781
3782         * lily/relocate.cc (setup_paths): oops.
3783
3784 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
3785
3786         * Documentation/index.html.in: order links: html before PDF.
3787
3788 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3789
3790         * lily/tie-column-format.cc (Module): remove.
3791
3792         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
3793
3794         * lily/text-spanner.cc (print): idem.
3795
3796         * lily/dynamic-text-spanner.cc (print): only print line if longer
3797         than dash-period.
3798
3799         * lily/auto-change-iterator.cc (change_to): formatting.
3800
3801         * lily/beam.cc (get_default_dir): take extreme note head as input
3802         for stem direction.
3803
3804         * lily/tie.cc (get_default_dir): only look directions for visible
3805         stems. 
3806
3807         * lily/side-position-interface.cc (aligned_side): oops. Don't
3808         mutiply with direction. This fixes quantized (staccato, tenuto)
3809         scripts below notes.
3810
3811         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
3812         direction. Fixes c-lyrics-center-align.ly
3813
3814 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3815
3816         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
3817         constructor.
3818
3819         * lily/std-string.cc:
3820         * lily/include/std-vector.hh (split_string): Move and rename from
3821         lily/include/misc.hh, lily/misc.cc.  Update callers.
3822
3823 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3824
3825         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
3826
3827 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3828
3829         * flower/test-file.cc: New file.
3830
3831         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
3832         libraries.
3833
3834         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
3835
3836 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3837
3838         * flower/include/file-storage.hh: remove file.
3839
3840         * lily/include/midi-item.hh (class Midi_track): idem.
3841
3842         * lily/include/source.hh (class Sources): idem.
3843
3844         * lily/include/performance.hh (class Performance): use vector
3845         iso. Cons<>
3846
3847         * flower/include/cons.hh (class Cons): remove file.
3848
3849         * flower/include/flower-proto.hh: remove template cruft.
3850
3851         * lily/include/font-metric.hh: use size_t not vsize for indices.
3852
3853         * flower/include/flower-proto.hh (Module): remove std-vector.hh
3854         from proto.
3855
3856         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
3857
3858         * lily/include/paper-book.hh (class Paper_book):
3859         make get_system_specs() public.
3860
3861         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
3862         the force=10000 case if we don't have a current-best. 
3863
3864         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
3865         vsize 
3866
3867         * flower/include/flower-proto.hh: remove outdated templates.
3868
3869         * scm/page.scm: use annotate-spacing
3870
3871 2006-02-15  Graham Percival  <gpermus@gmail.com>
3872
3873         * scm/translation-functions.scm: circle patch from Erlend, thanks!
3874
3875         * THANKS: moved Erlend Aasland to contributors.
3876
3877 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3878
3879         * config.hh.in: remove HAVE_PANGO_16
3880
3881         * lily/tuplet-bracket.cc (calc_positions): multiply with
3882         staff-space for beam case. This fixes tuplets+beams on scaled
3883         staves.
3884
3885         * config.hh.in: remove all Kpathsea related defines.
3886
3887         * lily/dot-column.cc (side_position): reach stem via dots->
3888         head->stem. Inspect all stems for dot collisions. 
3889
3890         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
3891         stem handling.
3892
3893         * lily/bar-number-engraver.cc (process_music): document function
3894         of whichBar.
3895
3896         * lily/score.cc (default_rendering): add pscore, not systems
3897         themselves.
3898
3899         * lily/paper-book.cc (get_system_specs): separate generation of
3900         titles and systems.
3901
3902         * flower/include/std-vector.hh: don't include config.hh
3903
3904 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3905
3906         * flower/include/std-vector.hh: Better wrapper compatibility with
3907         std::vector.
3908
3909         * flower/include/flower-proto.hh: Remove cheap forward declaration
3910         attempts.
3911
3912         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
3913
3914 2006-02-14  Graham Percival  <gpermus@gmail.com>
3915
3916         * Documentation/user/invoking.itely: add warning about command line.
3917
3918 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3919
3920         * lily/include/lily-proto.hh: add Prob, rm Page.
3921
3922         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
3923
3924         * VERSION: release 2.7.34
3925
3926         * lily/relocate.cc (framework_relocation): show canary if
3927         GHOSTSCRIPT_VERSION undefined.
3928
3929         * GNUmakefile.in: remove $(VERSION) symlink.
3930
3931         * lily/relocate.cc (setup_paths): add + 
3932
3933 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
3934
3935         * Documentation/index.html.in: specify sizes for all big HTML pages.
3936
3937 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3938
3939         * config.hh.in: remove @FRAMEWORKDIR@
3940
3941         * lily/system-start-text.cc (get_stencil): new file: separate out
3942         system-start-delimiter text support.
3943
3944         * input/**ly: replace \context with \new where appropriate.
3945         
3946         * THANKS: add Don.
3947
3948         * lily/slur-scoring.cc (get_base_attachments): use
3949         robust_relative_extent. This fixes problems with empty paper-columns. 
3950
3951 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3952
3953         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
3954
3955         * scm/define-music-properties.scm (all-music-properties):
3956         create-new property.
3957
3958         * lily/context-specced-music-iterator.cc (construct_children):
3959         inspect 'create-new property iso. magical $uniqueContextId context
3960         id.
3961
3962         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
3963
3964         * lily/context-key-manager.cc (Module): new file. Encapsulate
3965         object key generation.
3966
3967         * lily/include/context-key-manager.hh (Module): new file.
3968
3969 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3970
3971         * scm/define-grobs.scm (all-grob-descriptions): center instrument
3972         names vertically
3973
3974         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
3975         options.
3976         (reloc_b): excise --enable-framework-dir
3977
3978         * lily/relocate.cc (framework_relocation): use getenv
3979         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
3980
3981 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
3982
3983         * flower/include/std-string.hh: 
3984         * flower/include/std-vector.hh: Finish std:: conversion; move
3985         flower extensions from std:: namespace.  Update users.
3986
3987         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
3988         their expansion to vector<*>.  Update users.
3989
3990 2006-02-10  Graham Percival  <gpermus@gmail.com>
3991
3992         * Documentation/user/invoking.itely: add example to File structure.
3993
3994         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
3995         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
3996
3997 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3998
3999         * ly/paper-defaults.ly: typo.
4000
4001         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4002         set_parent() for parentheses. This will make it show up in bbox
4003         calculations.
4004
4005         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4006         ly:grob-common* functions.
4007
4008         * lily/grob-scheme.cc (LY_DEFINE):
4009         ly:grob-common-refpoint-of-array: new function 
4010         ly:grob-common-refpoint: new function 
4011         ly:grob-relative-coordinate: new function 
4012
4013         * lily/instrument-name-engraver.cc (process_music): use
4014         Text_interface::is_markup(). This fixes \markup on instrument names.  
4015
4016         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4017         for ties and slurs.
4018
4019         * lily/slur.cc (print): idem.
4020
4021         * lily/tie.cc: add line-thickness for ties. 
4022
4023 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4024
4025         * scm/output-svg.scm: Document diversion from GNU coding standards
4026         as a workaround for a bug in Microsoft Internet Explorer.
4027
4028 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4029
4030         * lily/instrument-name-engraver.cc (process_music): use
4031         is_markup() iso. is_string()
4032
4033         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4034
4035         * lily/percent-repeat-engraver.cc (process_music): only look at
4036         main_part_ for % repeats.
4037
4038         * lily/stem-tremolo.cc (get_beam_translation): new function.
4039         (calc_slope): new function.
4040         (height): don't use real slope.
4041
4042 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4043
4044         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4045         new connect-to-neighbor, control-points and staff-padding
4046         properties to make ligature brackets showing up again.
4047
4048 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4049
4050         * VERSION: release 2.7.33
4051
4052         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4053         too many.
4054
4055         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4056         remove applyOutput example.
4057         (Objects connected to the input): document \tweak, \parenthesize
4058
4059         * lily/relocate.cc (prefix_relocation): allow "current"
4060         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4061         changing VERSION in a lily tree less painful.
4062
4063         * input/regression/parenthesize.ly: new file. 
4064
4065         * scm/output-lib.scm (parenthesize-element): new function.
4066
4067         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4068
4069         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4070
4071         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4072         cause: accidentals are caused by note heads, not note events. 
4073
4074 2006-02-08  Graham Percival  <gpermus@gmail.com>
4075
4076         * darwin.patch: small patch from Erlend, thanks!
4077
4078         * Documentation/user/basic-notation.itely: add stem-neutral example.
4079
4080         * Documentation/user/putting.itely: clarifications.
4081
4082 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4083
4084         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4085         note, add more guidelines to what should go into NEWS.
4086
4087         * input/sakura-sakura.ly: document how to override font.
4088
4089         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4090
4091 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4092
4093         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4094
4095 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4096
4097         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4098         convertrules.  Add explicit grouping, needed for python2.2.
4099
4100 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4101
4102         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4103
4104 2006-02-07  Graham Percival  <gpermus@gmail.com>
4105
4106         * Documentation/user/global.itely: fix line-width in (text) docs.
4107
4108         * Documentation/user/lilypond-book.itely: same.
4109
4110 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4111
4112         * VERSION (PACKAGE_NAME): release 2.7.32
4113
4114         * Documentation/topdocs/NEWS.tely (Top): document new variable
4115         naming.
4116
4117         * flower/include/array.icc (Message): remove file.
4118
4119         * flower/include/std-vector.hh: make sure vsize and VPOS are
4120         defined for binary_search_bounds().
4121
4122         * flower/std-string.cc (std): add to_string(long unsigned).
4123
4124         * configure.in (gui_b): excise std_string option.
4125         (gui_b): excise std_vector option.
4126
4127         * flower/string.cc (Module): excise flower array & string
4128
4129         * flower/include/std-string.hh: excise flower string.
4130
4131         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4132
4133         * python/convertrules.py (lilypond_version_re_str): require
4134         only numbers and dots in \version string.
4135
4136 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4137
4138         * lily/system-start-delimiter.cc (print): allow style = text too.
4139
4140         * lily/system-start-delimiter-engraver.cc
4141         (acknowledge_system_start_text): new function, also add add to
4142         support of system-start-text (instrument names). This fixes
4143         instrument names on piano staves.
4144
4145         * lily/instrument-name-engraver.cc: rewrite. Use
4146         system-start-delimiter approach. This save memory and cpu.
4147
4148         * scm/define-grobs.scm (all-grob-descriptions): remove
4149         instrument-name from break-alignment.
4150
4151         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4152
4153 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4154
4155         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4156         jobserver going.
4157
4158         * configure.in (std_vector): On by default.
4159
4160         * lily/include/font-metric.hh:
4161         * lily/include/tfm-reader.hh: 
4162         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4163         Update users.
4164
4165         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4166
4167 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4168
4169         * VERSION (PACKAGE_NAME): 2.7.31
4170
4171         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4172         EPS edge at 0, but take minimum with left-overshoot. This fixes
4173         cut off system start delims. 
4174
4175         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4176         hack: add to axis group if not added yet. This fixes hara kiri'd
4177         piano staves.
4178
4179         * lily/hara-kiri-group-spanner.cc
4180         (force_hara_kiri_in_y_parent_callback): fix signatures.
4181
4182         * lily/hairpin.cc (print): check next hairpin to see whether or
4183         not to be continuing.
4184
4185 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4186
4187         * Remove trailing whitespace from makefiles.
4188         
4189         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4190         for earlier gcc.
4191
4192         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4193
4194         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4195
4196         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4197
4198         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4199
4200         * configure.in: Use it.
4201
4202 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4203
4204         * scm/music-functions.scm (pitch-of-note): new function.
4205
4206         * ly/music-functions-init.ly: add \octave and \addquote
4207
4208         * lily/parser.yy (music_function_chord_body): softcode \octave.
4209         (lilypond_header): softcode \addquote
4210
4211 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4212
4213         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4214         array.hh, parray.hh at all.  Getting ready to flip the
4215         configure default.
4216
4217         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4218
4219         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4220         a bit.
4221
4222         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4223
4224 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4225
4226         * flower/include/array.hh: typo. 
4227
4228 2006-02-02  Graham Percival  <gpermus@gmail.com>
4229
4230         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4231
4232 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4233
4234         * flower/include/pqueue.hh: Derive from std::vector.
4235
4236         * flower/include/parray.hh: Conform to std::vector interface.
4237         Update users.
4238
4239 2006-02-02  Graham Percival  <gpermus@gmail.com>
4240
4241         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4242
4243 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4244
4245         * flower/file-path.cc (is_file): remove if 0 section.
4246
4247         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4248         selecting afii61352.
4249
4250 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4251
4252         * flower/include/std-vector.hh (boundary): Oops, reverse.
4253
4254         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4255         remove superfluous `d'.
4256
4257         * flower/include/std-vector.hh (boundary, top): Detach from class.
4258         Remove empty vector shell.
4259
4260         * flower/include/array.hh (reverse, swap): Detach from class.
4261         Update users.
4262         
4263         * flower/include/std-vector.hh
4264         * flower/include/array.hh (concat): Globally change to insert ().
4265
4266         
4267         * flower/include/std-vector.hh
4268         * flower/include/parray.hh
4269         * flower/include/array.hh (elem, elem_ref): Globally replace by
4270         at ().
4271
4272 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4273
4274         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4275
4276         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4277         anticipate on identifier substitutions.
4278
4279 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4280
4281         * flower/include/std-vector.hh (insert): Remove, replace by
4282         std::vector interface.  Update callers.
4283
4284         * flower/include/array.icc (insert): Change signature to
4285         match std::vector interface.
4286         
4287         * flower/include/array.icc (vector_sort): Bugfix.
4288
4289 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4290
4291         * lily/parser.yy (output_def_head_with_mode_switch): new
4292         production. Result: dashes and underscores may be used in the
4293         \paper block.
4294
4295         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4296
4297         * python/convertrules.py (conv): oops. One slash too much.
4298
4299 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4300
4301         * flower/include/std-vector.hh (sort): Remove, replace by
4302         ::vector_sort.  Update callers.
4303
4304         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4305         (sort): Bugfix.
4306
4307         * flower/test-std.cc (vector_sort): New test.
4308
4309 2006-02-01  Graham Percival  <gpermus@gmail.com>
4310
4311         * Documentation/user/putting.itely: fixes from Erik.
4312
4313 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4314
4315         * flower/test-std.cc: Add simple unit test for vector migration.
4316
4317         * stepmake/stepmake/test*: Unit test support.
4318
4319         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4320         update callers.
4321
4322         * flower/include/array.hh (begin, end): Add.
4323         (del, get): Remove.
4324
4325 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4326
4327         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4328         std::string not String. 
4329
4330         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4331         iso UINT_MAX.
4332
4333         * lily/prob.cc (Prob): copy type_ too.
4334
4335         * lily/lily-guile.cc (mangle_cxx_identifier): new
4336         function. Class_bla::foo_bar_[px] ->
4337         ly:class-bla::foo-bar[?!]. Changes throughout
4338
4339 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4340
4341         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4342
4343         * lily/beam.cc (calc_direction): take dir from visible stem in
4344         degenerate case.
4345
4346 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4347
4348         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
4349         Fix -1, >=0 boundary checks for unsigned vsize.
4350
4351         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
4352         loop for unsigned vsize.
4353
4354         * configure.in (--enable-std-vector): New option.
4355         (--enable-std-string): On by default.
4356
4357         * flower/include/std-vector.hh: New file.  Enable switch to
4358         std::vector, update client code.
4359
4360 2006-01-30  Graham Percival  <gpermus@gmail.com>
4361
4362         * scm/document-translation.scm: clarify "this context is also
4363         known as".  Thanks, Werner!
4364
4365         * Documentation/user/putting.itely: small fixes from Don Blaheta.
4366
4367         * Documentation/user/invoking.itely: small fix from Don.
4368
4369 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4370
4371         * scm/lily.scm (define-scheme-options): rename option
4372         preview-include-book-title to book-title-preview
4373         (define-scheme-options): move force-eps-font-include (from paper
4374         block) to eps-font-include -d option.
4375
4376         * VERSION (PATCH_LEVEL): release 2.7.30
4377
4378         * input/bach-schenker.ly (staffPiano): new file.
4379
4380         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
4381
4382         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
4383         credits to Nicolas.
4384
4385         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
4386
4387         * ps/lilyponddefs.ps: remove start-system, stop-system,
4388         start-page fluff. This saves putting { } code on the stack, fixing
4389         stack overflows when including EPS files.
4390
4391 2006-01-29  Graham Percival  <gpermus@gmail.com>
4392
4393         * Documentation/user/putting.itely: minor fixes (comments on -devel).
4394
4395 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4396
4397         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
4398
4399 2006-01-28  Graham Percival  <gpermus@gmail.com>
4400
4401         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
4402
4403 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4404
4405         * input/mutopia/claop.py: Update.
4406
4407 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4408
4409         * input/regression/completion-heads.ly (texidoc): fix.
4410
4411         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
4412
4413         * lily/tie-formatting-problem.cc
4414         (set_ties_config_standard_directions): use abs iso fabs for ints.
4415
4416         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
4417
4418         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
4419         little less than noteheight, to prevent overlaps in chords.
4420
4421         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
4422         head, and fudge stem-attachment.
4423
4424         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
4425
4426         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
4427
4428 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
4429
4430         * lily/main.cc (main): Debugging aid: catch exceptions.
4431
4432         * flower/std-string.cc (to_string): Robustification.  Fixes midi
4433         output with std::string.
4434
4435 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4436
4437         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
4438
4439 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4440
4441         * Fix -DSTRING_UTILS_INLINED.
4442
4443 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4444
4445         * VERSION (PATCH_LEVEL): release 2.7.29
4446
4447         * lily/relocate.cc (setup_paths): mingw uses std string too.
4448
4449         * lily/*.cc: various fixes for substr(ARG).
4450
4451         * lily/sustain-pedal.cc (print): 
4452
4453         * flower/file-name.cc (slashify): use std strings.
4454
4455         * flower/string-convert.cc: remove publib.h
4456
4457         * scm/define-markup-commands.scm (verbatim-file): new markup
4458         command \verbatim-file
4459
4460         * Documentation/topdocs/NEWS.tely: fixup URLs
4461
4462         * input/regression/alignment-vertical-manual-setting.ly (Module):
4463         new file.
4464
4465         * lily/align-interface.cc (align_elements_to_extents): overwrite
4466         translations with numbers in alignment-offsets from left bound
4467
4468         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
4469         (page-translate-systems): new function: take into account Y-offset.
4470
4471         * Documentation/topdocs/NEWS.tely (Top): document new features.
4472
4473         * input/regression/page-layout-manual-position.ly (Module): new
4474         file.
4475
4476 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4477
4478         * flower/file-path.cc (path::parse_path): Oops.
4479
4480         * Finish std::string interface.  For now, use std:: marker
4481         throughout for easy s/r.
4482
4483 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4484
4485         * Documentation/user/putting.itely (Score is a single musical
4486         expression): typo.
4487         (Score is a single musical expression): more typos.
4488
4489         * scm/page.scm (annotate-space-left): thinko.
4490         (annotate-page): more thinkos.
4491
4492 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4493
4494         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
4495         for different \score blocks separately.
4496         (post-process-pages): put write-page-layout into paper block.
4497
4498         * lily/output-def.cc (get_parser): new file.
4499
4500         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
4501         file.
4502
4503         * lily/include/output-def.hh (class Output_def): add parser_ member.
4504
4505         * input/regression/page-layout-twopass.ly (Module): new file.
4506
4507         * scm/lily.scm: remove cpp hack.
4508
4509         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
4510
4511 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4512
4513         * GNUmakefile.in (c-clean): New target.
4514
4515         * flower/include/std-string.hh: String/std::string compatibility:
4516         Use NPOS for `not found' (iso -1), use ssize for length () and pos
4517         type.
4518
4519         * flower/rational.cc: 
4520         * flower/include/rational.hh: 
4521
4522         * flower/offset.cc: 
4523         * flower/include/offset.hh: 
4524
4525         * flower/interval.cc: 
4526         * flower/include/interval.hh: 
4527
4528         * flower/string-convert.cc: 
4529         * flower/include/string-convert.hh: Use std::string [interface].
4530         Update callers.
4531
4532 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
4533
4534         * Documentation/index.html.in: clean up.
4535
4536 2006-01-25  Graham Percival  <gpermus@gmail.com>
4537
4538         * Documentation/user/putting.itely: another new untested doc section.
4539
4540 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4541
4542         * scm/layout-page-layout.scm (write-page-breaks): write
4543         \spacingTweaks #ALIST. Handle grace timing.
4544
4545         * scm/: more imports.
4546
4547         * scm/page.scm (make-page): add footer/header.
4548         (annotate-space-left): revise: only take page argument.
4549         (layout->page-init): new function.
4550
4551         * scm/layout-page-layout.scm (write-page-breaks): preliminary
4552         version of the system/spacing/linebreak hack writing to the output
4553
4554         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
4555         ly:make-prob.
4556
4557         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
4558         ly:spanner-bound
4559
4560 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4561
4562         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
4563
4564         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
4565
4566         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
4567         handling to page.scm
4568
4569         * lily/prob-scheme.cc (LY_DEFINE): new file.
4570         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
4571
4572         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
4573         prob functions.
4574
4575         * lily/music.cc (derived_mark): derive Music from Prob.
4576
4577         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
4578
4579         * lily/prob.cc (Module): Implement Prob (Property Object), object
4580         with shared and r/w property alists.  
4581
4582         * lily/include/prob.hh (Module): new file. Declare Prob.
4583
4584         * flower/string.cc: remove is_empty().
4585
4586         * flower/include/string.hh (class String): remove String:: qualifier.
4587
4588         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
4589         substitute appropriate functions.
4590
4591         * flower/include/string.hh (class String): remove to_str0 and
4592         is_empty(). S&R everywhere.
4593
4594 2006-01-23  Graham Percival  <gpermus@gmail.com>
4595
4596         * Documentation/user/basic-notation.itely: add hairpin
4597         after-linebreak tweak to commonprop.
4598
4599         * Documentation/user/putting.itely: added two new sections.
4600
4601 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4602
4603         * flower/international.cc: 
4604         * flower/include/international.hh: 
4605
4606         * flower/getopt-long.cc: 
4607         * flower/include/getopt-long.hh: Use std::string [interface].
4608         Update callers.
4609
4610         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
4611
4612         * stepmake/stepmake/executable-rules.make: Add dependency on
4613         module libraries.
4614
4615 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
4616
4617         * flower/file-path.cc: 
4618         * flower/include/file-path.hh: Use std::string [interface].
4619         Update callers.
4620
4621         * flower/direction.cc: 
4622         * flower/axis.cc: Unused.  Remove.
4623
4624         * configure.in (--enable-std-string): New option.
4625
4626         * flower/std-string.cc: 
4627         * flower/include/std-string.hh: New file.
4628
4629         * flower/file-name.cc[STD_STRING]:
4630         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
4631
4632 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4633
4634         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
4635
4636         * scm/define-markup-commands.scm (with-dimensions):
4637         with-dimensions markup command.
4638
4639         * input/test/font-table.ly: use it.
4640
4641         * lily/open-type-font.cc (glyph_list): new function.
4642
4643         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
4644
4645         * lily/ttf.cc: remove ly:font-glyph-list scheme function
4646
4647 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4648
4649         * ly/music-functions-init.ly (parallelMusic): new music function
4650         for parallel music entry.
4651
4652         * scm/define-music-properties.scm (all-music-properties): new
4653         'void music property
4654
4655         * scm/music-functions.scm (ly:music-message): make public, to be
4656         used in music function definitions
4657
4658         * scm/lily-library.scm (collect-music-for-book): discard music
4659         when the 'void property is set.
4660
4661 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4662
4663         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
4664
4665         * mf/GNUmakefile: idem.
4666
4667         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
4668
4669         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
4670
4671         * Documentation/user/notation-appendices.itely (The Feta font):
4672         use it.
4673
4674         * input/test/font-table.ly: new file. Generate font table within lily.
4675
4676         * Documentation/user/notation-appendices.itely (The Feta font):
4677         use new font-table.ly file. 
4678
4679         * stepmake/stepmake/install-out-targets.make
4680         (local-install-outfiles): only create directory if
4681         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
4682
4683 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4684
4685         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
4686
4687         * VERSION (PACKAGE_NAME): release 2.7.28
4688
4689         * scm/framework-ps.scm (write-preamble): use it to pick exactly
4690         the right font from a Mac dfont.
4691         (write-preamble): don't forget directory, only look at files.
4692
4693         This fixes problems with TTF files in dfonts that don't match
4694         their PostScript names.
4695          
4696         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
4697         PS name from TTF font.
4698
4699         * input/regression/tie-manual.ly: document new feature.
4700
4701         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
4702
4703         * VERSION (MY_PATCH_LEVEL): bump to .28
4704
4705         * Documentation/user/basic-notation.itely (Ties): add tie examples
4706         refs.
4707
4708         * lily/tie-formatting-problem.cc (score_ties_configuration):
4709         symmetry penalties for outer ties.
4710
4711 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4712
4713         * lily/tie-formatting-problem.cc (generate_configuration) 
4714         (set_manual_tie_configuration): skip non-pair manual
4715         tie-configuration, so you can set individual ties as
4716
4717           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
4718
4719         * input/regression/tie-chord.ly: use generateTiePattern to
4720         simplify file.
4721
4722         * lily/tie-formatting-problem.cc (peak_around): new function.
4723         (score_configuration): use sliding criterion for staff line collisions. 
4724         (score_configuration): idem for dot collisions.
4725         (generate_configuration): use separate stem_gap for gap to stem.
4726
4727         * lily/include/tie-formatting-problem.hh (struct Tie_details):
4728         separate penalty factors for x and y distance.
4729         (struct Tie_details): separate penalties for tip and center line collisions.
4730
4731 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
4732
4733         * lily/tie-formatting-problem.cc (generate_configuration): make
4734         large ties avoid stafflines in the horizontal section.
4735         (score_configuration): use softcoded penalties
4736         (score_aptitude): idem.
4737
4738         * lily/tie-helper.cc (from_grob): softcode tie details
4739
4740         * lily/staff-symbol-referencer.cc (on_staff_line): new function
4741
4742         * lily/staff-symbol-referencer.cc (on_line): rename from
4743         on_staffline 
4744
4745 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4746
4747         * ly/music-functions-init.ly: remove duplicate tag.
4748
4749         * lily/include/*.hh: GCC 4.1 fixes.
4750
4751 006-01-16  Erlend Aasland  <erlenda@gmail.com>
4752
4753         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
4754
4755         * scm/define-music-types.scm: fix bug in desc. string
4756         for OverrideProperty
4757
4758 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
4759
4760         * scripts/lilypond-book.py: bugfix
4761
4762         * scm/define-music-types.scm: fix typos.
4763
4764 2006-01-14  Graham Percival  <gpermus@gmail.com>
4765
4766         * Documentation/user/ basic-notation.itely, global.itely,
4767         advanced-notation.itely, instrument-notation.itely: small
4768         additions (bugs and commonly tweaked properties).
4769
4770 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4771
4772         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
4773         detection of mingw build.
4774         (MINGW_BUILD): opps.
4775
4776 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4777
4778         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
4779         i686-mingw32.
4780
4781 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4782
4783         * scm/music-functions.scm (skip->rest): add skip->rest
4784
4785 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4786
4787         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
4788         explicitly.
4789
4790         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
4791         config dirs. Aids debugging. 
4792         (display_config): also display config files.
4793
4794 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4795
4796         * VERSION: release 2.7.27
4797
4798         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
4799         for determining bar size.
4800
4801         * lily/staff-symbol.cc (print): place lines at distance line-positions
4802
4803         * scm/define-grob-properties.scm (all-user-grob-properties): add
4804         line-positions.
4805
4806         * lily/staff-symbol.cc (height): new function.
4807
4808         * input/regression/staff-line-positions.ly:  new file.
4809
4810 2006-01-06  Graham Percival  <gpermus@gmail.com>
4811
4812         * input/test/add-staccato.ly: remove reference to old file.
4813
4814 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4815
4816         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
4817         lilypond binary too.
4818
4819 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4820
4821         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
4822
4823 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4824
4825         * scripts/midi2ly.py: Bugfix: Declare datadir.
4826
4827         * make/ly-rules.make:
4828         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
4829         that seems to be gone). Fixes make web.
4830
4831         * The grand 2005-2006 replace.
4832
4833         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
4834
4835 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4836
4837         * make/lilypond-vars.make: set LILYPOND_BINARY variable
4838         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
4839         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
4840         like -dgs-font-load.
4841
4842         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
4843         remove absolute path to lilypond binary.
4844         
4845 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
4846
4847         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
4848
4849 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4850
4851         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
4852
4853         * mf/GNUmakefile: remove broken dvips map symlink.
4854
4855 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4856
4857         * lily/main.cc: 
4858         * configure.in: Cosmetic fixes.
4859
4860 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
4861
4862         * Documentation/user/music-glossary.tely (Pitch names): Added
4863         Spanish pitch names and durations, thanks to Ernesto Gancedo
4864
4865 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4866
4867         * scm/lily.scm (define-scheme-options): use quasi-quote for option
4868         init. Fixes verbose printing of .scm files.
4869
4870         * stepmake/aclocal.m4: add spaces before - options.
4871         
4872 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4873
4874         * lily/relocate.cc (setup_paths): Bugfix: do not store result
4875         of path search in local block variable.
4876
4877 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4878
4879         * configure.in (NCSB_DIR): --enable-ncsb-dir
4880         (LINK_GXX_STATICALLY): denko.
4881
4882         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
4883
4884         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
4885         use locate to find c059033l.pfb. 
4886         
4887 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4888
4889         * lily/tie-formatting-problem.cc
4890         (problem::generate_base_chord_configuration): Use my_round (was
4891         round).
4892
4893         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
4894         do not invoke mbrtowc.
4895
4896         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
4897
4898 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4899
4900         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
4901
4902 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
4903
4904         * Documentation/user/invoking.itely (svg): revise.
4905
4906 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4907
4908         * lily/lexer.ll: use sourcefilename iso. renameinput.
4909
4910 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4911
4912         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
4913         <PostScriptName>.ttf instead of c059XXXttf.
4914
4915         * lily/program-option.cc (LY_DEFINE): special support for
4916         --verbose, so it works before option init too.
4917  
4918         * mf/GNUmakefile (local-install): oops.
4919
4920         * lily/lyric-hyphen.cc (print): oops.
4921
4922         * buildscripts/pfx2ttf.fontforge: new file.
4923         
4924         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
4925         ($(outdir)/%.ttf): new rule. 
4926
4927         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
4928         to LyricHyphen.
4929
4930         * lily/lyric-hyphen.cc (print): multiply hyphen height by
4931         font-size
4932
4933 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4934
4935         * VERSION: release 2.7.26
4936         
4937         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
4938
4939 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4940
4941         * lily/font-config.cc (init_fontconfig): verbosity.
4942
4943         * THANKS: add Muziekacademie Lede. 
4944
4945         * scripts/musicxml2ly.py (print_voice_definitions): new function 
4946         (print_score_setup): new function
4947         (convert): read part definition to output staves properly.
4948
4949         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
4950         Music_xml notes.
4951
4952         * python/musicexp.py (Output_printer.__init__): use _ in data
4953         members.
4954         (Output_printer.unformatted_output): new function: no formatting,
4955         but count braces.
4956         (Duration.get_length): remove isinstance() checks for
4957         Output_printer everywhere.
4958
4959         * input/regression/lyrics-bar.ly (texidoc): add
4960         Separating_line_group_engraver.
4961
4962 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
4963
4964         * lily/relocate.cc (framework_relocation): New function,
4965         factored from set_relocation ().
4966         (prefix_relocation): Rename from set_relocation ().
4967         (setup_paths): Use it.
4968
4969 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4970
4971         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
4972         numbers. Patch by Erlend Aasland.
4973
4974 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4975
4976         * lily/font-config.cc (init_fontconfig): print warning if cache
4977         file is not existant.
4978
4979         * lily/main.cc: don't use #ifdef but #if
4980
4981 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4982
4983         * lily/grob-property.cc (internal_set_property): don't abort on
4984         calculation-in-progress.
4985
4986         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
4987
4988         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
4989         connect-to-neighbor property not connect-to-other
4990
4991         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
4992         (LY_DEFINE): oops. don't forget protection.
4993
4994         * flower/parse-afm.cc (Module): strip AFM handling completely.
4995
4996         * lily/stencil-expression.cc: idem.
4997
4998         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
4999
5000         * lily/function-documentation.cc (ly_add_function_documentation):
5001         use static member iso. Protected_scm
5002
5003         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5004
5005         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5006
5007 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5008
5009         * lily/relocate.cc (set_env_dir): New function.
5010         (set_relocation): Use it to fix setting PANGO_PREFIX.
5011
5012 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5013
5014         * input/regression/stem-direction-context.ly: remove rest.
5015
5016         * lily/melody-engraver.cc (process_music): restart for bar lines.
5017         (acknowledge_slur): restart for slurs.
5018
5019 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5020
5021         * Documentation/user/invoking.itely: describe how to view SVG 
5022         output using Inkscape which replace embedded fonts with OTF fonts.
5023
5024 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5025
5026         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5027
5028 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5029
5030         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5031         comment.
5032
5033 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5034
5035         * VERSION (PACKAGE_NAME): release 2.7.25
5036
5037         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5038
5039         * input/regression/stem-direction-context.ly: new file.
5040
5041         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5042
5043         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5044         on rest.
5045
5046         * ly/engraver-init.ly: add Melody_engraver
5047
5048         * lily/beam.cc (calc_direction): use default-direction
5049         iso. get_default_direction()
5050
5051         * scm/define-grob-properties.scm (all-user-grob-properties): add
5052         default-direction property.
5053
5054         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5055
5056         * lily/stem.cc (calc_default_direction): remove
5057         Stem::get_default_direction, use default-direction with callback
5058         instead.
5059
5060         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5061
5062         * lily/melody-engraver.cc: new file. Acknowledge stems for
5063         interpolated stem directions. 
5064
5065         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5066
5067         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5068
5069         * lily/slur-configuration.cc (fit_factor): more robust check for
5070         point in curve X-extent.
5071
5072         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5073         (outside_slur_callback): check for 'outside avoidance.
5074
5075         * lily/slur-configuration.cc (score_extra_encompass): don't use
5076         bound->column() == avoid->column() for checking extents, as this
5077         doesn't work for accidentals. 
5078
5079         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5080         DynamicText hardcoding.
5081
5082         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5083         crash if bound stem is NULL
5084
5085         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5086         pedals.
5087
5088 2005-12-22  Graham Percival  <gpermus@gmail.com>
5089
5090         * scm/define-markup-commands.scm: typo.  @code{\raise}
5091         => @code{\\raise}.
5092
5093         * darwin.patch: now used again, includes a
5094         required patch from fink.
5095
5096 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5097
5098         * po/TODO: mention gtranslator along with kbabel.
5099         * po/fi.po: update translations.
5100
5101 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5102
5103         * lily/relocate.cc (setup_paths): Bugfix.
5104
5105 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5106
5107         * lily/slur-configuration.cc (score_extra_encompass): don't use
5108         "avoid" choice for avoid-slur.
5109
5110         * stepmake/bin/install.py (dest): don't create existing dir.
5111
5112 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5113
5114         * stepmake/bin/install.py: Remove file before copying.
5115
5116         * config.make.in: 
5117         * stepmake/aclocal.m4: Do not substitute INSTALL.
5118
5119 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5120
5121         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5122         depend on link-tree.
5123
5124         * lily/relocate.cc (setup_paths): only check path for non-absolute
5125         dir without directory part.
5126
5127         * flower/file-name.cc (is_absolute):  new method.
5128         (is_absolute): check root_ too.
5129
5130 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5131
5132         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5133         relocation code.  Oops, don't comment out too much.
5134
5135         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5136         iso itself.
5137
5138         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5139         compile.
5140
5141 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5142
5143         * .cvsignore: Add install-sh.
5144
5145         * autogen.sh (srcdir): Typo.
5146
5147 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5148
5149         * autogen.sh (srcdir): urg. Touch install-sh.
5150
5151         * stepmake/bin/install-sh (Module): remove.
5152
5153         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5154
5155         * lily/include/relocate.hh: new file.
5156
5157         * lily/relocate.cc: new file. Contain relocation logic.
5158
5159         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5160         (main): read LILYPOND_VERBOSE as the first thing.
5161
5162         * stepmake/aclocal.m4: remove INSTALL variable.
5163
5164         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5165         separate target for making font symlinks.
5166         (documentation-dir): use $(if $(findstring )) for switching off
5167         Documentation.
5168
5169         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5170         something if DOCUMENTATION is no.
5171
5172 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5173
5174         * VERSION: release 2.7.24
5175
5176         * lily/script-column-engraver.cc (stop_translation_timestep):
5177         delay adding to script-column.
5178
5179         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5180
5181         * python/convertrules.py (conv): rule for number-visibility
5182
5183         * lily/slur-configuration.cc (score_extra_encompass): different
5184         distance measure for avoid and inside avoidance.
5185         (score_extra_encompass): use 1/(distance+eps) as penalty.
5186
5187         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5188         encompass objects for generating slur curves.
5189
5190         * lily/slur.cc: use details iso. slur-details property.
5191
5192         * input/regression/slur-tuplet.ly: new file.
5193
5194         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5195
5196         * flower/include/offset.hh (class Offset): new operator /=
5197
5198         * lily/tuplet-number.cc (print): new file, new interface.
5199
5200         * scm/define-grob-properties.scm (all-user-grob-properties):
5201         remove number-visibility property.
5202
5203         * lily/tuplet-bracket.cc (calc_control_points): new function
5204         (calc_connect_to_neighbors): new function.
5205         (print): remove text handling for tuplet numberdef.
5206
5207         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5208         TupletNumbers too. 
5209
5210         * lily/lily-guile.cc (robust_scm2booldrul): new function
5211
5212         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5213
5214         * lily/tuplet-bracket.cc (calc_position_and_height): use
5215         staff-padding to control whether tuplet brackets are over staves.
5216
5217         * lily/grob.cc (suicide): clear dim_caches_.
5218
5219         * lily/dimension-cache.cc (clear): new function.
5220
5221         * lily/grob.cc (extent): swap order of min-extent and extent
5222         calculations. This fixes hara kiri staves. 
5223
5224 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5225
5226         * lily/main.cc: Nitpick: relocation is not based on path, but on
5227         directory (location).
5228
5229 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5230
5231         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5232
5233         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5234
5235         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5236
5237         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5238
5239         * stepmake/stepmake/generic-vars.make (Module): idem.
5240
5241         * stepmake/stepmake/executable-targets.make (default): use it.
5242
5243         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5244
5245         * make/GNUmakefile: don't install make rules.
5246
5247         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5248         slashes.
5249         (prepend_env_path): more verbosity.
5250
5251 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5252
5253         * GNUmakefile.in: add dir argument for find command.
5254
5255         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5256         fixes weird line numbers for point & click.
5257
5258         * lily/source-file.cc (get_counts): init line/column/char counts.
5259
5260 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5261
5262         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5263
5264 2005-12-16  Graham Percival  <gpermus@gmail.com>
5265
5266         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5267         minor fixes from Fredric.  Thanks!
5268
5269 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5270
5271         * ly/music-functions-init.ly: add \bar and \clef music function 
5272
5273         * lily/lily-lexer.cc: idem.
5274
5275         * lily/parser.yy (FIXME): remove BAR and CLEF.
5276
5277 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5278
5279         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5280
5281         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5282         function arguments too
5283
5284         * lily/main.cc (set_relocation): new function.
5285
5286         * scripts/musicxml2ly.py (convert): add \version
5287
5288         * lily/tie.cc: remove get_default_attachments()
5289
5290         * VERSION (PACKAGE_NAME): release 2.7.23
5291         
5292         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5293         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5294
5295         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5296
5297         * lily/tie-formatting-problem.cc (score_ties): new function
5298         (get_variations): new function. Try flipping dirs for collisions.
5299         (generate_optimal_chord_configuration): new function. 1-opt search
5300         for better configuration.
5301
5302         * lily/tie-configuration.cc: new file.
5303
5304         * lily/tie.cc: junk Tie::get_configuration()
5305
5306         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5307         (score_ties_configuration): new function.
5308         (generate_ties_configuration): new function.
5309         (generate_base_chord_configuration): new function.
5310         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5311         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5312
5313         * input/regression/tie-dot.ly: new file.
5314
5315         * lily/tie-formatting-problem.cc (score_configuration): score
5316         tie/dot collisions.
5317
5318         * lily/tie-helper.cc (get_transformed_bezier): new function
5319
5320         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5321
5322         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5323         -undefined suppress iso. -framework Python 
5324
5325         * scm/define-grobs.scm (all-grob-descriptions): set
5326         springs-and-rods (thanks Joe Neeman!)
5327
5328 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5329
5330         * input/no-notation/display-lily-tests.ly (test): 
5331         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5332         changed from \tag #'(a b) to \tag #'a \tag #'b
5333
5334 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5335
5336         * Documentation/topdocs/NEWS.tely: strip out-www.
5337
5338         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5339
5340         * config.make.in (AR): add AR and RANLIB
5341
5342         * flower/libc-extension.cc: include cassert
5343
5344         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
5345         darwin check.
5346
5347 2005-12-11  Graham Percival  <gpermus@gmail.com>
5348
5349         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
5350
5351         * stepmake/stepmake/python-modules-vars.make: define
5352         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
5353
5354         * THANKS: added Johannes Schindelin.
5355
5356 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5357
5358         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
5359
5360         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5361         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
5362
5363         * lily/parser.yy: reorganize file layout.
5364
5365         * ly/music-functions-init.ly: add tweak music function.
5366
5367         * lily/grob-info.cc (ultimate_music_cause): new function:
5368         recursively lookup causes. 
5369
5370         * lily/parser.yy (chord_body_element): allow music functions for
5371         post-events, allow music functions for chord elements. 
5372  
5373         * lily/font-config-scheme.cc (display_fontset): add cast.
5374
5375         * python/convertrules.py (FatalConversionError.sub_syms): \tag
5376         #'(a b) -> \tag #'a \tag #'b rule.
5377
5378         * python/musicexp.py (Output_printer.dump_version): new function
5379
5380 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5381
5382         * lily/parser.yy (FIXME): remove \tag
5383         (FIXME): remove tag_music() function.
5384
5385         * lily/lily-lexer.cc: remove \tag
5386
5387         * ly/music-functions-init.ly: define music-function "tag"
5388
5389         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
5390
5391 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5392
5393         * VERSION (PATCH_LEVEL): release 2.7.22
5394
5395         * input/regression/lyric-hyphen-retain.ly: renew.
5396
5397         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
5398         grob
5399
5400         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
5401         iso. minimum-length property for rods.
5402
5403         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
5404         LyricSpace item to keep lyrics spaced apart.
5405
5406         * ly/engraver-init.ly: remove Separating_line_group_engraver
5407
5408         * Documentation/user/music-glossary.tely: do setfilename before
5409         music-glossary.
5410
5411 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
5412
5413         * Documentation/user/lilypond-book.itely: use `,´ after xref:
5414         See xref documentation, for example.
5415
5416 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5417
5418         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
5419         pending_skip iso. ly_voice[-1]
5420         (main): add if __main__ for debugging.
5421
5422         * python/musicxml.py (Accidental.__init__): new class.
5423
5424         * scripts/musicxml2ly.py (progress): new function
5425         (musicxml_key_to_lily): don't barf on modeless keys.
5426         (create_skip_music): new function.
5427         (musicxml_spanner_to_lily_event): new function. Handle beams too.
5428         (musicxml_note_to_lily_main_event): new function.
5429
5430         * python/musicexp.py (Music.__init__): add comment field.
5431         (NestedMusic.append): new routine.
5432         (SequentialMusic.print_ly): print comment.
5433         (ArpeggioEvent.ly_expression): new class
5434         (BeamEvent.ly_expression): new class
5435         (NoteEvent.__init__): support for cautionary/forced accs.
5436
5437         * lily/lookup.cc (slur): normal order for array loop.
5438
5439         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
5440         to 0.0.
5441
5442         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
5443         collapsed.
5444
5445 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
5446
5447         * scm/music-functions.scm: Make phrasing slurs follow voice direction
5448
5449         * scripts/lilypond-book.py: Introduce option
5450             --preserve-line-breaks, for usage with srcltx
5451
5452 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5453
5454         * scm/output-lib.scm (print-circled-text-callback): draw circle
5455         around text using make-circle-markup.
5456
5457         * Documentation/user/*: strip out-www from file names.
5458
5459 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
5460
5461         * Documentation/user/lilypond.tely (direntry): remove empty lines;
5462         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
5463
5464 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5465
5466         * Documentation/user/GNUmakefile: idem.
5467
5468         * Documentation/user/macros.itexi: strip out-www
5469
5470         * python/rational.py: python 2.3 compat.
5471
5472         * VERSION (PATCH_LEVEL): release 2.7.21
5473
5474         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
5475         option formatting, lilypond style.
5476
5477         * python/musicexp.py: grab from Ikebana: a library for composing
5478         ly music expressions. 
5479         (Output_printer): class for advanced .ly printing.
5480         (eg. tupletting) 
5481
5482         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
5483         convert to pythonesque structure.
5484
5485         * python/rational.py: PD rational number class.
5486
5487         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
5488
5489 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
5490
5491         * lily/part-combine-iterator.cc: Minor bugfix
5492         
5493         * THANKS: Update bughunters
5494
5495 2005-12-02  Werner Lemberg  <wl@gnu.org>
5496
5497         * mf/README: Document process for proper mf2pt1 conversion.
5498
5499         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
5500         overlapping.
5501
5502         * mf/feta-harmonica.mf: Removed.  Unused.
5503
5504 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5505
5506         * scripts/lilypond-book.py (do_file): fix thinkos.
5507
5508 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5509
5510         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
5511         ($(outdir)/parser.cc): 
5512         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
5513
5514 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
5515
5516         * ly/titling-init.ly (tagline): it should be a space between
5517         "Music engraving by LilyPond" and the version number.
5518
5519 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5520
5521         * VERSION (PACKAGE_NAME): release 2.7.20
5522
5523 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5524
5525         * scm/define-markup-commands.scm (pad-to-box): new markup command.
5526
5527         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
5528         1.0.
5529         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
5530
5531 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5532
5533         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
5534
5535         * kpath-guile/: remove directory
5536
5537         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
5538         file. Encapsulate kpathsea using commandline tools.
5539
5540         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
5541         kpathsea) module.
5542
5543 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
5544
5545         * Documentation/user/advanced-notation.itely (Setting automatic
5546         beam behavior): Correct a few typos. Thanks to David Bobroff.
5547
5548         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
5549         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
5550
5551 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5552
5553         * scripts/*.py: gmane address for bugs.
5554
5555 2005-11-28 Pal Benko <benkop@freestart.hu>
5556         
5557         * make/ly-rules.make: add -f switch to mv
5558
5559         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
5560
5561         * lily/bar-line.cc: interpret it
5562
5563 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5564
5565         * configure.in (--disable-documentation): New switch.
5566
5567         * GNUmakefile.in: Use it.
5568
5569         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
5570
5571 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5572
5573         * scripts/lilypond-book.py (do_file): search chunks for
5574         \\begin{document}
5575
5576         * GNUmakefile.in: add copy step in between so we can lose the
5577         out-www directories.
5578
5579 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5580
5581         * lily/pango-font.cc (pango_item_string_stencil): put
5582         geometry.width into glyph-string too.
5583
5584 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5585
5586         * scm/define-music-display-methods.scm (RevertProperty):
5587         (OverrideProperty): Use grob-property-path property, a list of
5588         symbols, instead of grob-property, which used to be a single
5589         symbol.
5590         (BassFigureEvent): a figure can be a plain number, not necessarily a
5591         markup.
5592
5593 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5594
5595         * VERSION: release 2.7.19
5596         
5597         * lily/figured-bass-engraver.cc (process_music): check
5598         figuredBassCenterContinuations first.
5599
5600         * scm/translation-functions.scm (format-bass-figure): make double
5601         sharp larger. 
5602
5603         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
5604         determine X-parent.
5605
5606         * lily/system-start-delimiter-engraver.cc: move from
5607         Nested_system_start_delimiter_engraver, rename
5608         Nested_system_start_delimiter_engraver ->
5609         System_start_delimiter_engraver.
5610
5611         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
5612         bracket type from hierarchy.
5613
5614 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5615
5616         * lily/rest.cc (y_offset_callback): read staff-position.
5617
5618         * scm/define-grob-properties.scm (all-user-grob-properties): don't
5619         mark after-line-breaking-callback as internal.
5620
5621         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
5622
5623 2005-11-25  Werner Lemberg  <wl@gnu.org>
5624
5625         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
5626
5627 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5628
5629         * stepmake/bin/add-html-footer.py (do_file): add google
5630
5631         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
5632         staff if first_start_ is true.
5633
5634 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5635
5636         * scripts/midi2ly.py (split_track): add __repr__ members.
5637         (track_first_item): only return Item if not None. This fixes a
5638         problem when dumping a track that starts with an empty channel.
5639
5640         * python/midi.c: doc module.
5641
5642 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
5643
5644         * Documentation/user/global.itely (Creating MIDI files): Fix
5645         compilation problem.
5646
5647 2005-11-22  Graham Percival  <gpermus@gmail.com>
5648
5649         * Documentation/user/basic-notation.itely: clarify dynamic
5650         padding text.
5651
5652         * Documentation/user/advanced-notation.itely: add unicode
5653         escape control example, whatever that is.  :)
5654
5655         * Documentation/user/global.itely: added "removing dynamics
5656         from MIDI" code.
5657
5658 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5659
5660         * VERSION (PATCH_LEVEL): release 2.7.18
5661
5662         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
5663         System_start_delimiter_engraver by
5664         Nested_system_start_delimiter_engraver.
5665
5666         * lily/nested-system-start-delimiter-engraver.cc (struct
5667         Bracket_nesting_node): new class.
5668         (struct Bracket_nesting_group): new class
5669         (struct Bracket_nesting_staff): new class.
5670         (process_music): create hierarchy of grobs. This allows separate
5671         tuning of different SSDs. 
5672
5673         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
5674         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
5675
5676 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5677
5678         * lily/side-position-interface.cc (aligned_side): multiply
5679         staff_radius by 2.
5680
5681         * lily/script-engraver.cc (make_script_from_event): allow setting
5682         values to '()
5683
5684 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5685
5686         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
5687
5688         * scm/define-grobs.scm (all-grob-descriptions): new grob
5689         NestedSystemStartDelimiter.
5690
5691         * input/regression/system-start-heavy-bar.ly: new file.
5692
5693         * lily/nested-system-start-delimiter-engraver.cc: new file.
5694
5695         * lily/nested-system-start-delimiter.cc: new file.
5696
5697         * input/regression/system-start-nesting.ly: new file.
5698
5699         * scm/define-grobs.scm (all-grob-descriptions): use X side
5700         positioning for positioning braces for nested contexts.
5701
5702         * lily/system-start-delimiter.cc (print): don't divide extent by
5703         staff_space.
5704         (print): use style iso. glyph.
5705         (staff_bracket): translate glyph inside routine already.
5706
5707 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
5708
5709         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
5710         names.
5711
5712 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5713
5714         * scm/define-context-properties.scm
5715         (all-user-translation-properties): rename figuredBassFormatter
5716         from newFiguredBassFormatter.
5717
5718         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
5719
5720         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
5721
5722         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
5723
5724         * lily/beam.cc (calc_beaming): new function.
5725         (calc_shorten): new function.
5726
5727         * THANKS: add Edward Neeman.
5728
5729         * input/regression/accidental-clef-change.ly: new file.
5730
5731         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
5732
5733         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
5734
5735         * lily/clef-engraver.cc (inspect_clef_properties): reset
5736         localKeySignature for clef changes.
5737
5738 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
5739
5740         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
5741         add dummy definition that works in Linux and add information in
5742         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
5743
5744         * Documentation/user/changing-defaults.itely (Modifying context
5745         plug-ins): Add index for \with.
5746
5747         * Documentation/user/music-glossary.tely (dal segno): Updated
5748         example to version >=2.6.
5749
5750 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
5751
5752         * Documentation/user/instrument-notation.itely (Printing chord
5753         names): Reorder \chordmode and \repeat in one example.
5754
5755 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5756
5757         * VERSION: release 2.7.17
5758         
5759         * Documentation/topdocs/NEWS.tely (Top): add note about
5760         refactoring.
5761
5762         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
5763         new function. Search region of 3 positions for best tie.
5764         (score_configuration): new function.
5765         (score_aptitude): new function.
5766         (generate_configuration): new function.
5767         (get_configuration): new function.
5768         (Tie_formatting_problem): new function
5769
5770         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
5771
5772         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
5773
5774         * THANKS: add Eduardo Vieira & Ralph Little
5775
5776         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
5777         narrower.
5778
5779         * lily/include/tie-formatting-problem.hh (class
5780         Tie_formatting_problem): add Tie_details to
5781         Tie_formatting_problem. Update calling conventions.
5782
5783         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
5784         config.make.
5785
5786         * Documentation/user/lilypond.tely: remove musedata2ly entry.
5787
5788 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
5789
5790         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
5791         scm/define-context-properties.scm: Maintenance bugfix: make
5792         ligature brackets work again by removing obsolete ligature
5793         primitive callback push/pop.
5794
5795         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
5796         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
5797         value.
5798
5799 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5800
5801         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
5802         used and do not call it a path.
5803         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
5804
5805 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5806
5807         * lily/include/tie-formatting-problem.hh (class
5808         Tie_formatting_problem): new file.
5809
5810         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
5811
5812         * Documentation/misc/ChangeLog-2.3:  new file.
5813
5814         * lily/audio-staff.cc (output): degarianize.
5815
5816 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5817
5818         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
5819         Unset PYTHONOPTIMIZE.  Fixes install if set.
5820
5821 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5822
5823         * python/convertrules.py (conv): add warning about drums. 
5824
5825         * make/stepmake.make: include toplevel-version.make after config.make.
5826
5827         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
5828         also allow python2.4
5829
5830         * config.make.in (configure-srcdir): remove GXX GCC vars.
5831
5832         * stepmake/aclocal.m4: don't do non-srcdir build with
5833         symlinks. Use inclusion, so the src directory name can be changed.
5834
5835 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5836
5837         * make/mutopia-vars.make:
5838         * make/ly-vars.make: Use src-wildcard iso wildcard for source
5839         files.
5840
5841 2005-11-13  Werner Lemberg  <wl@gnu.org>
5842
5843         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
5844         but the affected path.  This ensures that the (overlapping) outlines
5845         have the same direction, which is a necessary prerequisite for
5846         FontForge's algorithm to remove overlaps.
5847         Formatting.
5848
5849         * mf/feta-haak.mf: Formatting.
5850         (draw_bracket): Slightly modify outline to avoid an unnecessary
5851         corner.
5852         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
5853         them from the affected paths.
5854
5855 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5856
5857         * mf/README: remove xpm / accordion notes.
5858
5859         * lily/tie-column-format.cc (set_chord_outline): add dots into
5860         skyline extents. This fixes tie formatting if the left head has dots.
5861
5862         * lily/tie.cc (get_configuration): only shift tie by a whole staff
5863         space inside the staff.
5864         (get_configuration): shift another position if necessary in case
5865         of left head tie  
5866
5867 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5868
5869         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
5870         buildscript-dir iso. $(depth)/buildscripts.
5871
5872         * tex/GNUmakefile (local-uninstall): remove
5873         music-drawing-routines.ps juggling.
5874
5875         * stepmake/stepmake/install-targets.make (local-install-files):
5876         prepend src-dir to install targets.
5877
5878         * lily/system-start-delimiter-engraver.cc
5879         (acknowledge_system_start_delimiter): use
5880         add_offset_callback(). This fixes translation of nested
5881         staffgroups.
5882
5883         * lily/grob-closure.cc (add_offset_callback): only encaps in
5884         simple_closure if it's a procedure.
5885         
5886         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
5887         from bar-line.
5888
5889         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
5890         remove-empty where pertinent.
5891
5892 2005-11-12  Graham Percival  <gpermus@gmail.com>
5893
5894         * Documentation/user/instrument-notation.itely: added
5895         Cameron Horsburgh's multiple stanzas docs.  Thanks!
5896
5897 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5898
5899         * lily/GNUmakefile
5900         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
5901         make picture in builddir, not srcdir.
5902
5903 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5904
5905         * VERSION: release 2.7.16
5906         
5907         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
5908         shell arguments. 
5909
5910 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
5911
5912         * Documentation/user/examples.itely (Piano templates): Minor
5913         modification to the Piano centered lyrics example.
5914
5915 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5916
5917         * scripts/lilypond-invoke-editor.scm (run-browser): look at
5918         $BROWSER.
5919
5920         * Documentation/user/point-and-click.itely: simplify p&c
5921         instruction: don't configure firefox. Put lilypond-invoke-editor
5922         in front of the browser.
5923
5924         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
5925         (run-browser): new function.
5926
5927         * lily/parser.yy (Lily_lexer): recognize Book
5928
5929         * lily/book.cc (clone): new function
5930
5931         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
5932
5933 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
5934
5935         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
5936         Maintenance bugfix: reduce number of font related warnings by
5937         updating naming conventions for glyph-name.
5938
5939 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5940
5941         * scm/define-grobs.scm (all-grob-descriptions): add
5942         rhythmic-grob-interface to TabNoteHead.
5943
5944         * scm/layout-beam.scm (check-quant-callbacks): remove
5945         set_stem_lengths()
5946
5947 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
5948
5949         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
5950         alignment of centered divisiones.
5951
5952         * scm/scripts.scm (articulations): Maintenance bugfix:
5953         follow-into-staff -> quantize-position.
5954
5955         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
5956         plica head in porrectus deminutus.
5957
5958 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5959
5960         * make/lilypond.fedora.spec.in (Group): add %clean section.
5961
5962         * lily/tuplet-bracket.cc (print): change check: remove bracket if
5963         less then 1/5th of total length.  
5964         (print): use gap too.  Fixes tupletUp-single-bracket.ly
5965
5966         * scm/music-functions.scm (glue-mm-rest-texts): also put other
5967         events into EventChord. This fixes textspanners on mm rests. Fixes
5968         spanner-rest.ly
5969
5970         * lily/side-position-interface.cc (get_axis): read side-axis
5971         (set_axis): set side-axis.
5972
5973         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
5974         properties everywhere.
5975
5976         * lily/spacing-spanner.cc (breakable_column_spacing): add
5977         average-spacing-wishes. Take maximum if not set.
5978         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
5979
5980         * scm/define-grobs.scm (all-grob-descriptions): add
5981         average-spacing-wishes.
5982
5983         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
5984         offset callbacks. This fixes alignment for Fingering objects.
5985
5986         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
5987         space for key - timesig combination. 
5988
5989         * input/regression/script-stem-tremolo.ly (Module): new file.
5990
5991         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
5992         to key sig.
5993
5994         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
5995         Fixes: c-tremolo-script.ly.
5996         
5997         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
5998
5999         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6000         
6001         * scm/define-grobs.scm (all-grob-descriptions): remove
6002         self-X-offset. Fixes alignment of octavate-8.
6003
6004         * scripts/lilypond-book.py (datadir): look in
6005         LILYPONDPREFIX/share/lilypond/current/
6006
6007         * GNUmakefile.in: symlink current to <VERSION>. 
6008
6009 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6010
6011         * lily/main.cc: eps listed as a backend.
6012
6013 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6014
6015         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6016
6017 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6018
6019         * lily/include/score.hh (class Score): remove texts_ member.
6020
6021         * lily/beam.cc (set_stem_lengths): force direction callback.
6022         (print): read quantized-positions, so we can force
6023         Beam::set_stem_lengths to occur.
6024         (rest_collision_callback): use common X parent. 
6025
6026 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6027
6028         * flower/file-path.cc (find): Bugfix: Return name of file found.
6029
6030         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6031         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6032         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6033
6034 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6035
6036         * flower/offset.cc: idem.
6037
6038         * mf/*.mf: update email address.
6039
6040         * lily/font-config-scheme.cc:  new file.
6041
6042         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6043
6044         * lily/*:  cs.uu.nl -> xs4all.nl
6045
6046         * VERSION (PATCH_LEVEL): release 2.7.15
6047
6048         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6049         spec files.
6050
6051         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6052
6053 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6054
6055         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6056
6057         * lily/staff-performer.cc (process_music): add audio
6058         elements. This makes MIDI instrument changes work once again.
6059
6060         * lily/main.cc (LY_DEFINE): add gmane address.
6061
6062         * lily/beam.cc: remove calc_positions()
6063
6064         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6065         original_ in private scope.
6066         (class Grob): drop pscore_ pointer, change to output_def pointer.
6067         (class Grob): cleanup class definition.
6068
6069         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6070
6071 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6072
6073         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6074         absolute.  Better diagnostics.
6075
6076         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6077         This makes lilypond run from the build directory using argv0
6078         relocation (without any --prefix or LILYPONDPREFIX setting).
6079
6080 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6081
6082         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6083
6084         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6085         with simple-closure.
6086
6087         * lily/self-aligment-interface.cc (set_align_self): new function
6088         (set_center_parent): new function.
6089
6090         * lily/side-position-interface.cc (set_axis): new function.
6091
6092         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6093         generic code. 
6094
6095         * scm/define-grob-properties.scm (all-user-grob-properties):
6096         remove [XY]-offset-callbacks add [YX]-offset
6097         
6098 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6099
6100         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6101         entry for time signatures after breathing signs. Bug report by
6102         Scott Russell.
6103
6104 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6105
6106         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6107         not absolute, make it absolute using PATH.
6108
6109 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6110
6111         * python/midi.c (initmidi): Fix type for mingw.
6112
6113 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6114
6115         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6116
6117         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6118         cross compiling.
6119
6120         * stepmake/aclocal.m4: Support python cross compiling.
6121
6122         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6123         Add mingw section.
6124
6125 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6126
6127         * scm/output-lib.scm (chain-grob-member-functions): replace
6128         chained-callback.cc
6129
6130         * lily/chained-callback.cc (Module): remove file.
6131
6132         * lily/rest-collision.cc (force_shift_callback_rest): change to
6133         chained callback.
6134
6135         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6136
6137         * lily/grob.cc (y_parent_positioning): remove axis argument from
6138         parent_positioning callbacks.
6139         (Grob): junk init code
6140         (get_offset): use generic property callbacks for
6141         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6142         (axis_parent_positioning): new function
6143         (axis_offset_symbol): new function
6144         (chain_offset_callback): new function
6145         (add_offset_callback): new function
6146
6147         * lily/beam.cc (rest_collision_callback): change signature; this
6148         is now a chained callback.
6149
6150         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6151         callback administration.
6152
6153         * lily/simple-closure.cc: new file. Smob type that allows "grob
6154         member functions",
6155
6156             (ly:make-simple-closure FUNC A B)
6157
6158         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6159         in various ways.
6160
6161         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6162         callbacks.
6163
6164         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6165
6166         * lily/rest.cc (polyphonic_offset_callback): remove.
6167
6168         * lily/script-engraver.cc (try_music): remove bool* argument.
6169
6170         * scm/script.scm (default-script-alist): set quantize-position
6171         appropriately.
6172
6173         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6174
6175         * lily/side-position-interface.cc (aligned_side): move staff
6176         position quantization from
6177         Side_position_interface::quantised_position().
6178         (quantised_position): remove
6179         
6180 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6181
6182         * input/regression/beam-quant-standard.ly: reindent, set
6183         debug-beam-quanting to #t.
6184
6185         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6186         10000 if this is a "hard" concave beam.
6187
6188         * lily/beam.cc (calc_least_squares_positions): change from
6189         calc_least_squares_dy
6190         (set_stem_lengths): this is now a chained callback.
6191
6192         * lily/context-property.cc (execute_general_pushpop_property):
6193         bugfix override with procedure should have effect.
6194
6195         * scm/define-grob-properties.scm (all-internal-grob-properties):
6196         remove position-callbacks.
6197
6198         * scm/define-grobs.scm (all-grob-descriptions): use
6199         ly:make-callback-chain for positions property.
6200
6201         * scm/layout-beam.scm (check-quant-callbacks): return list of
6202         chained callbacks.
6203
6204         * scm/lily.scm (type-p-name-alist): add callback-chain
6205
6206         * lily/lily-guile.cc (type_check_assignment): type check failure
6207         is warning not message.
6208
6209         * lily/grob-property.cc (try_callback): walk callback chain if
6210         appropriate.
6211
6212         * lily/chained-callback.cc: new file. new smob type.
6213
6214         * lily/lily-guile.cc (procedure_arity): new function.
6215
6216 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6217
6218         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6219
6220 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6221  
6222         * Documentation/user/instrument-notation.itely (Figured bass):
6223         describe new features
6224
6225 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6226
6227         * lily/beam.cc (calc_least_squares_dy): use property callback.
6228
6229         * lily/beam-concave.cc (calc_concaveness): use property callback.
6230
6231         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6232
6233 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6234
6235         * HACKING: Update.
6236
6237 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6238
6239         * scm/layout-page-layout.scm (page-headfoot): annotate
6240         pagetopspace too.
6241
6242         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6243
6244         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6245         doesn't take y-space.
6246
6247         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6248
6249 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6250
6251         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6252         src-wildcard, remove $(wildcard).
6253
6254         * po/GNUmakefile (PO_FILES): 
6255         * ps/GNUmakefile (PS_FILES): 
6256         * tex/GNUmakefile (TEX_FILES): 
6257         * cygwin/GNUmakefile (POSTINSTALLS):
6258         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6259         some wildcard calls.
6260
6261 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6262
6263         * THANKS: add Thomas Bushnell.
6264
6265 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6266
6267         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6268         (lilypond-main): Redirect to gui-main if 'gui is set.
6269
6270         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6271         for alternative installations kludging s/share/lib/g
6272         LILYPONDPREFIX. 
6273
6274         * SConstruct (libdir_package_version): Define.
6275
6276         * python/SConscript: 
6277         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6278         module in libdir.  
6279
6280 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6281
6282         * lily/main.cc: clarify --safe.
6283
6284 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6285
6286         * VERSION: release 2.7.14
6287         
6288         * Documentation/user/*.itely: remove minimumVerticalExtent.
6289
6290         * scm/define-grobs.scm (all-grob-descriptions): remove
6291         RemoveEmptyVerticalGroup
6292
6293         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6294
6295         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6296         compile on MOSX
6297
6298         * python/convertrules.py (conv): add rules.
6299
6300         * lily/grob.cc: remove is_empty()
6301
6302         * lily/grob-property.cc: remove add_to_list_property().
6303
6304         * scripts/convert-ly.py (datadir): add prefix switching hack to
6305         .py too.
6306
6307         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6308         space-function tweak.
6309
6310         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6311
6312         * scm/define-grob-properties.scm (all-user-grob-properties):
6313         remove callback property.
6314
6315         * lily/include/grob.hh (class Grob): remove property_callbacks_
6316         member. Properties of procedure type are assumed to be callbacks.
6317
6318         * lily/ligature-engraver.cc (override_stencil_callback):
6319         rewrite. Use noteHeadLigaturePrimitive as source.
6320
6321         * scm/define-grob-properties.scm (all-internal-grob-properties):
6322         remove ligature-primitive-callback
6323
6324         * lily/include/dimension-cache.hh (class Dimension_cache): make
6325         class, with Grob as friend.
6326
6327         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6328         has_extent_callback()
6329
6330         * scm/translation-functions.scm (format-new-bass-figure): read
6331         figuredBassPlusDirection
6332
6333         * scm/define-context-properties.scm
6334         (all-user-translation-properties): add figuredBassPlusDirection.
6335
6336         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6337
6338         * lily/align-interface.cc (set_ordered): new function.
6339
6340         * lily/grob.cc (flush_extent_cache): rewrite.
6341
6342         * lily/dimension-cache.cc (Dimension_cache): cache extent as
6343         Interval pointer directly.
6344
6345         * lily/main.cc (setup_paths): insert extra / .
6346         (setup_paths): junk cff entry.
6347
6348         * lily/font-config.cc (init_fontconfig): only add type1 / otf
6349         directories.
6350
6351         * lily/axis-group-engraver.cc (finalize): remove
6352         extraVerticalExtent, minimumVerticalExtent verticalExtent.
6353
6354         * lily/grob.cc (Grob): don't set extent from ctor.
6355         (extent): use property callbacks. 
6356
6357         * lily/axis-group-interface.cc: remove set_axes() function.
6358
6359         * lily/grob-property.cc (del_property): new function.
6360
6361 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6362
6363         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
6364         
6365 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6366
6367         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
6368
6369 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6370
6371         * mf/SConscript: Updates.
6372
6373         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
6374
6375         * stepmake/stepmake/*:
6376         * */GNUmakefile:
6377         * config.make.in:
6378         * GNUmakefile.in:
6379         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
6380         from any directory in build-dir.  Cleanups.
6381
6382         * make/srcdir.make.in: Remove.
6383
6384         * lily/main.cc (setup_paths): Fix and document build-dir hack.
6385
6386         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
6387         main).
6388
6389         * lily/SConscript: Remove ttftools.
6390
6391         * SConstruct: Resurrect.
6392
6393 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6394
6395         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
6396         Y coordinate. 
6397
6398         * lily/paper-book.cc (add_score_title): put Paper_score title into
6399         systems_ list.
6400
6401         * scm/translation-functions.scm (format-new-bass-figure): also
6402         allow plus in combination with _
6403
6404 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6405
6406         * VERSION: 2.7.13 released.
6407
6408         * lily/note-collision.cc (check_meshing_chords): don't wipe
6409         stencil, merely set transparent.
6410
6411         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
6412         (Top): document #'callbacks.
6413         (Top): document nested \override.
6414
6415         * input/regression/figured-bass.ly: update for slash and pluses.
6416
6417         * input/regression/figured-bass-continuation-forbid.ly (Module):
6418         new file.
6419
6420         * scm/translation-functions.scm (format-new-bass-figure): use
6421         slashed-digit if diminished is set.
6422         (format-new-bass-figure): add + if 'augmented is set.
6423
6424         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
6425
6426         * input/test/piano-staff-distance.ly: remove file.
6427
6428         * Documentation/user/advanced-notation.itely (Formatting cue
6429         notes): use length-fraction for making stems/beams smaller.
6430
6431         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
6432         modifications.
6433
6434         * lily/new-figured-bass-engraver.cc: new property
6435         centerFiguredBassContinuations
6436
6437         * Documentation/user/changing-defaults.itely (Difficult tweaks):
6438         use callbacks.
6439
6440         * lily/context-property.cc (execute_general_pushpop_property):
6441         robustness checks.
6442
6443         * input/regression/override-nest.ly: new file.
6444
6445         * python/convertrules.py (FatalConversionError.subber): conversion
6446         rule for #'callbacks
6447
6448         * input/regression/override-nest.ly: new function.
6449
6450         * lily/parser.yy (music_property_def): allow \override #'a #'b =
6451         #c too. 
6452
6453         * lily/context-property.cc (lookup_nested_property): new function.
6454         (evict_from_alist): new function.
6455         (general_pushpop_property): new function.
6456         (execute_general_pushpop_property): rewrite. Support nested
6457         properties too.
6458
6459 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6460
6461         * lily/beam.cc: use length-fraction too.
6462
6463         * scm/define-grob-properties.scm (all-user-grob-properties):
6464         remove property flag-width-function
6465         (all-user-grob-properties): remove space-function.
6466
6467         * scm/layout-beam.scm: remove flag-width-function.
6468
6469         * lily/beam.cc: remove flag-width-function
6470
6471         * scm/layout-beam.scm: remove beam dir functions.
6472
6473         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
6474
6475         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
6476         for easier grace tweaks.
6477
6478         * lily/beam.cc: remove dir-function.
6479
6480         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
6481
6482         * lily/grob.cc: remove spacing-procedure.
6483
6484         * lily/note-head.cc (calc_stem_attachment): new function.
6485         (internal_print): use callback to get glyph-name.
6486
6487         * lily/grob-property.cc (get_interfaces): new function.
6488
6489         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
6490
6491         * lily/stem.cc (calc_stem_end_position): new function.
6492         (calc_length): new function.
6493         document details for stem.
6494         remove Stem::get_direction()
6495
6496         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
6497
6498         * lily/grob-property.cc (set_callback): new function.
6499
6500         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
6501
6502         * lily/item-scheme.cc: new file.
6503
6504         * lily/bar-line.cc (before_line_breaking): remove function.
6505         remove bar-size-procedure, break-glyph-function
6506
6507         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
6508
6509         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
6510
6511         * lily/system-start-delimiter.cc (print): suicide from
6512         here. Remove after_line_breaking_callback.
6513
6514         * lily/script-interface.cc (calc_direction): use callback for direction.
6515
6516         * lily/side-position-interface.cc (aligned_side): don't use
6517         Side_position_interface::get_direction directly. Use callback. 
6518
6519         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
6520         calculate stencil.
6521         (get_print_stencil): rename from get_stencil: create stencil with
6522         transparency, color and cause. 
6523
6524         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
6525
6526         * python/convertrules.py (conv): insert temporary warning rule.
6527
6528         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
6529
6530         * lily/grob-property.cc (try_callback): remove marker if applicable.
6531
6532         * lily/grob.cc: elucidate doc about after/before-line-breaking
6533
6534         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
6535
6536         * lily/stem.cc (height): idem.
6537
6538         * lily/stem-tremolo.cc: idem.
6539
6540         * lily/slur.cc (height): don't use get_uncached_stencil()
6541
6542         * lily/rest.cc (y_offset_callback): use offset callback
6543         iso. after-line-breaking callback.
6544
6545         * lily/grob.cc: change after/before-line-breaking-callback to
6546         after/before-line-breaking dummy properties.
6547
6548         * lily/include/grob.hh: remove Grob_status.
6549
6550         * scm/define-context-properties.scm
6551         (all-user-translation-properties): remove verticalAlignmentChildCallback
6552
6553         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
6554         (calc_direction): use callback
6555         (calc_positions): use callback.
6556
6557         * lily/tie.cc (calc_direction): use callback. Only call parent
6558         positioning for more than one tie.
6559
6560         * lily/tie-column.cc (calc_positioning_done): use callback
6561
6562         * lily/slur-scoring.cc (calc_control_points): use callback
6563
6564         * lily/slur.cc (calc_direction): use callback.
6565
6566         * lily/note-collision.cc (force_shift_callback): remove.
6567
6568         * lily/dot-column.cc (force_shift_callback): remove. Use
6569         other_axis_parent_positioning.
6570
6571         * lily/grob.cc (other_axis_parent_positioning): new function.
6572         (same_axis_parent_positioning): new function
6573
6574         * lily/align-interface.cc (alignment_callback): remove function.
6575
6576         * lily/note-collision.cc (calc_positioning_done): use callback.
6577
6578         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
6579         (calc_direction): idem.
6580         remove print function.
6581
6582         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
6583
6584         * lily/dot-column.cc (calc_positioning_done): use callback.
6585
6586         * lily/break-align-interface.cc (calc_positioning_done): use callback.
6587
6588         * lily/beam.cc (calc_direction): use pseudo-property for beam
6589         direction callback.
6590         (calc_positions): use callback 
6591
6592         * lily/align-interface.cc (calc_positioning_done): use
6593         callback. Fold fixed  distance and normal alignment in one function.
6594
6595         * lily/stem.cc (calc_stem_end_position): use callback.
6596         (calc_positioning_done): idem.
6597         (calc_direction): idem.
6598         (calc_stem_end_position): idem
6599         (calc_stem_info): idem.
6600
6601         * lily/grob-property.cc (get_property_data): new function: 
6602         (try_callback): new function.
6603
6604         * scm/define-grob-properties.scm (all-user-grob-properties): doc
6605         callbacks property.
6606
6607         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
6608
6609 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6610
6611         * lily/tie.cc (get_position): robustness fix. Don't crash if a
6612         tie
6613         has no heads.
6614         
6615         * lily/include/*.hh (Module): compile fixes.
6616
6617 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
6618
6619         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
6620         as an argument for char-syntax: use (char-syntax (or nil 0)) 
6621         instead of (char-syntax nil), thanks to Milan Zamazal.
6622
6623 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6624
6625         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
6626         dist.
6627
6628         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
6629         themselves.
6630
6631 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6632
6633         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
6634         add class_name() method.
6635
6636         * lily/music-scheme.cc: remove ly:music-name.
6637
6638 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6639
6640         * cygwin/postinstall-lilypond.sh: Remove cruft.
6641
6642         * cygwin/postremove-lilypond.sh: Remove.
6643
6644         * cygwin/GNUmakefile (default): Remove postremove rules.
6645
6646 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6647
6648         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
6649         even header too.
6650         
6651         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
6652         MacOS 9 users.
6653
6654         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
6655         consider break index for broken spanner.
6656
6657         * scm/define-markup-commands.scm (wordwrap-string): remove \r
6658         characters from string before splitting.
6659
6660 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6661
6662         * scm/framework-ps.scm (output-preview-framework): use
6663         is-book-title to determine whether to chop off the booktitle.
6664
6665         * lily/paper-book.cc (systems): init from book-title-properties
6666         (add_score_title): init score-title-properties.
6667
6668         * ly/paper-defaults.ly: add {score,book}-title-properties.
6669
6670         * scm/document-backend.scm (lookup-interface): error message if
6671         using unknown interface.
6672
6673         * lily/volta-bracket.cc (after_line_breaking): new function. Set
6674         edge-height.
6675
6676         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
6677         make_bracket.
6678         (make_bracket): new function.
6679
6680         * scm/lily.scm (define-scheme-options): add paper-size option.
6681
6682         * ly/declarations-init.ly (laissezVibrer): get paper size from
6683         -dpaper-size
6684
6685         * scm/translation-functions.scm: use \fontsize for changing the
6686         fontsize.
6687
6688         * scm/define-grobs.scm (all-grob-descriptions): set
6689         between-length-limit to 1.0
6690
6691         * lily/tie-helper.cc: add between_length_limit_ detail property.
6692
6693         * mf/feta-bolletjes.mf: typos.
6694
6695         * lily/note-head.cc (internal_print): don't shadow idx
6696         parameter. This fixes wrong attachment for do shape heads.
6697
6698 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6699
6700         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
6701
6702         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
6703
6704         * scm/layout-slur.scm: rename from slur.scm
6705
6706         * scm/layout-page-layout.scm: rename from page-layout.scm
6707
6708         * scm/layout-beam.scm: rename from beam.scm
6709
6710         * scm/define-grob-interfaces.scm (bass-figure-interface): add
6711         bass-figure-interface
6712
6713         * lily/new-figured-bass-engraver.cc (process_music): add
6714         implicitBassFigures property.
6715         
6716         * scm/define-markup-commands.scm (pad-x): new markup.
6717
6718         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
6719         minimumVerticalExtent on FiguredBass context.
6720
6721         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
6722         case the continuation crosses a line break.
6723
6724 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6725
6726         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
6727         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
6728         absolute file name bug.  
6729
6730 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6731
6732         * VERSION (PACKAGE_NAME): release 2.7.12
6733
6734         * input/regression/figured-bass-continuation-center.ly: new file.
6735
6736         * input/regression/beam-outside-beamlets.ly: new file.
6737
6738         * lily/beam.cc (set_beaming): don't clip edges.
6739         (connect_beams): don't clip edges.
6740
6741         * lily/beaming-info.cc (clip_edges): new function.
6742
6743         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
6744
6745         * Documentation/user/instrument-notation.itely (Figured bass):
6746         demonstrate extenders, update seealso links.
6747
6748         * scm/titling.scm (marked-up-headfoot): change tagline
6749         handling. tagline = ##f will blank the tagline as well.
6750
6751 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6752
6753         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
6754
6755         * lily/new-figured-bass-engraver.cc (struct
6756         New_figured_bass_engraver): add new_music_found_ member.
6757
6758         * lily/lilypond-version.cc (Lilypond_version): deal with
6759         incorrectly formatted version strings. 
6760
6761         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
6762         New_figured_bass_engraver by default.
6763
6764         * lily/ttf.cc (print_trailer): only define glyph names when
6765         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
6766
6767 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6768
6769         * lily/horizontal-bracket.cc (make_bracket): new function.
6770
6771         * scm/define-grobs.scm (all-grob-descriptions): new grobs
6772         NewBassFigure, BassFigureBracket, BassFigureContinuation,
6773         BassFigureLine, BassFigureAlignment
6774
6775         * lily/new-figured-bass-engraver.cc (process_music): new file.
6776
6777         * lily/figured-bass-continuation.cc: new file.
6778
6779         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
6780         new file.
6781
6782 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
6783
6784         * scripts/lilypond-book.py: Bug fix, put the quote around the
6785         actual score for LaTeX documents.
6786
6787         * scm/define-grobs.scm (all-grob-descriptions): Change
6788         collapse-height of the SystemStartBracket grob to 5.0, 
6789         so the bracket disappears for single stave score lines (similarly
6790         to SystemStartBraces). 
6791
6792         * Documentation/user/advanced-notation.itely (Polymetric
6793         notation): Clarify the use of compressMusic.
6794
6795         * Documentation/user/basic-notation.itely (Grace notes): Clarify
6796         that the grace spacer note in other staves need the same duration
6797         and document the stroke-style property.
6798
6799 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6800
6801         * Documentation/user/global.itely (Vertical spacing): document
6802         alignment-extra-space and fixed-alignment-extra-space.
6803
6804         * Documentation/topdocs/NEWS.tely (Top): add entry.
6805
6806         * input/regression/alignment-vertical-spacing.ly: new file.
6807
6808         * python/convertrules.py (conv): add rule.
6809
6810         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
6811
6812         * lily/align-interface.cc (stretch_after_break): new
6813         function. Read fixed-alignment-extra-space property.
6814         (align_elements_to_extents): read alignment-extra-space property.
6815
6816         * lily/lily-guile.cc (robust_scm2dir): new function.
6817
6818         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
6819         (annotate-space-left): new function. Annotate space left on page. 
6820         (annotate-y-interval): new function.
6821         (paper-system-annotate-last): new function. Annotate bottom-space.
6822
6823         * mf/feta-beugel.mf (y): 
6824
6825 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6826
6827         * VERSION (PACKAGE_NAME):  release 2.7.11
6828
6829         * scm/lily-library.scm (interval-translate): new function
6830         (interval-center): new function. 
6831
6832         * scm/page-layout.scm (paper-system-annotate): new function. Add
6833         arrows for dimensions.
6834  
6835         * scm/stencil.scm (dimension-arrows): new function.
6836
6837         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
6838
6839         * input/regression/page-spacing.ly: add annotatespacing
6840
6841         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
6842         (LY_DEFINE): new function ly:paper-system-set-property!
6843
6844         * Documentation/user/global.itely (Paper size): explain how to add
6845         sizes.
6846
6847         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
6848         correspond to GS's definition.
6849
6850         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
6851         tuplet bracket.
6852         (print): only connect to next bracket if the next one is alive.
6853         (print): set padding to 0.0 if the bound is a breakable
6854         column. This makes tupletFullLength brackets reach up to the staff
6855         line if it doesn't connect to the next line.
6856
6857 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6858
6859         * lily/bar-number-engraver.cc: correct docs.
6860
6861         * scm/output-lib.scm (first-bar-number-invisible): rename from
6862         default-bar-number-visibility
6863
6864 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6865
6866         * scm/define-music-properties.scm (all-music-properties): remove
6867         predicate property.
6868
6869 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
6870
6871         * po/fi.po: refresh.
6872
6873 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6874
6875         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
6876         superfluous s1.
6877         (disappear): bugfix.
6878
6879         * lily/stem-tremolo.cc (raw_stencil): read slope property.
6880
6881         * lily/include/paper-system.hh (class Paper_system): remove
6882         staff_extents_ member.
6883
6884         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
6885
6886         * lily/include/paper-system.hh (class Paper_system): remove
6887         number_ variable. Remove is_title_. Remove break_before_penalty_
6888
6889         * lily/paper-book.cc (systems): use 'number property iso. number_
6890         member.
6891
6892         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
6893         remove ly:paper-system-number.
6894
6895         * scm/lily-library.scm (paper-system-title?): new function.
6896
6897         * lily/book.cc (process): bugfix: flip ?: cases. 
6898
6899         * Documentation/user/changing-defaults.itely (Difficult tweaks):
6900         add outputProperty.
6901
6902         * ly/music-functions-init.ly: add outputProperty music function.
6903
6904         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
6905
6906         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
6907         and next-padding.
6908         (optimal-page-breaks): rename from ly:optimal-page-breaks.
6909
6910         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
6911
6912         * lily/paper-system.cc (internal_get_property): new function.
6913
6914         * Documentation/user/global.itely (Vertical spacing): refer to
6915         page-spacing.ly
6916
6917         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
6918         pagetopspace
6919
6920         * input/regression/page-spacing.ly: new file.
6921
6922         * input/regression/page-top-space.ly: new file.
6923
6924         * lily/spacing-spanner.cc: cmath -> math.h
6925
6926         * lily/paper-system.cc (read_left_bound): new function. Read
6927         line-break-system-details from left bound to determine extents.
6928  
6929         * Documentation/user/programming-interface.itely (Using LilyPond
6930         syntax inside Scheme): change applyxxx -> applyXxx.
6931
6932         * ly/music-functions-init.ly: add outputProperty music function.
6933
6934         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
6935
6936         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
6937
6938         * python/convertrules.py (conv): rule
6939
6940         * ly/music-functions-init.ly: applyxxx -> applyXxx
6941
6942         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
6943         TabVoice to Voice.
6944
6945 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6946
6947         * flower/include/real.hh: include <math.h> iso. <cmath>
6948
6949         * flower/include/offset.hh: include real.hh
6950
6951 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6952
6953         * Documentation/user/changing-defaults.itely (Difficult tweaks):
6954         fix example, now that 'interfaces is no longer directly available.
6955
6956         * lily/book.cc (process): don't crash if paper == NULL.
6957
6958         * po/fr.po: update.
6959
6960 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6961
6962         * scm/define-music-types.scm (music-descriptions): set length and
6963         start-callback for QuoteMusic
6964
6965 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
6966
6967         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
6968         arguments. Fixes compilation error with gcc 3.3.
6969
6970 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6971
6972         * VERSION: release 2.7.10
6973
6974         * stepmake/stepmake/python-module-rules.make
6975         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
6976
6977         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
6978         real.hh
6979
6980 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6981
6982         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
6983         -Werror. Otherwise GCC barfs over various optimizations.
6984
6985         * scm/define-grob-properties.scm (all-internal-grob-properties):
6986         add note-head property
6987
6988         * Documentation/user/instrument-notation.itely (Laissez vibrer
6989         ties): new node.
6990
6991         * input/regression/laissez-vibrer-ties.ly: new file.
6992
6993         * lily/laissez-vibrer-engraver.cc: new file.    
6994
6995         * lily/include/tie-column-format.hh: new file.
6996
6997         * lily/tie-column-format.cc: new file. 
6998
6999         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7000
7001         * lily/laissez-vibrer-tie.cc: new file.
7002
7003         * lily/include/laissez-vibrer-tie.hh: new file.
7004
7005         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7006
7007         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7008
7009         * scm/define-grobs.scm (all-grob-descriptions): add
7010         LaissezVibrerTie, LaissezVibrerTieColumn
7011
7012         * lily/tie-column.cc (set_tie_config_directions): new function
7013         (final_shape_adjustment): new function.
7014         (shift_small_ties): new function.
7015
7016         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7017
7018         * lily/include/tie.hh (struct Tie_details): add x_gap_
7019         (struct Tie_configuration): add head_position_
7020
7021         * lily/tie-column.cc (set_chord_outline): new function.
7022
7023         * mf/cmr.enc.in:  remove file.
7024
7025 2005-09-11  Graham Percival  <gpermus@gmail.com>
7026
7027         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7028
7029 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7030
7031         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7032         reduce aliasing effects.
7033
7034         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7035         box in skyline.
7036
7037 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7038
7039         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7040
7041         * flower/include/real.hh: std::fabs too.
7042
7043 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7044
7045         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7046
7047         * lily, flower: Include C++ iso C headers.  Import namespace std
7048         throughout.
7049
7050         * lily/side-position-interface.cc: 
7051         * lily/scm-hash.cc: 
7052         * lily/note-head.cc: 
7053         * lily/include/includable-lexer.hh: 
7054         * flower/include/string-data.icc: Remove using std::*.
7055
7056         * lily, flower: Include C++ iso C headers.  Import namespace std
7057         throughout.
7058
7059         * lily/side-position-interface.cc: 
7060         * lily/scm-hash.cc: 
7061         * lily/note-head.cc: 
7062         * lily/include/includable-lexer.hh: 
7063         * flower/include/string-data.icc: Remove using std::*.
7064
7065         * Documentation/user/instrument-notation.itely (Entering lyrics):
7066         Multiple latin-1->utf-8 conversion fix.
7067
7068         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7069
7070 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7071
7072         * lily/tie.cc (get_configuration): also avoid dots for non-space
7073         situations.
7074
7075 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7076
7077         * Documentation/user/instrument-notation.itely: Bugfix.
7078
7079 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7080
7081         * tex/GNUmakefile: don't install texinfo.tex
7082
7083         * tex/ : cleanup: remove unused files.
7084
7085         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7086
7087         * flower/include/real.hh: using std::{isnan,isinf}
7088         
7089         * VERSION (PATCH_LEVEL): release 2.7.9
7090
7091 2005-09-05  Graham Percival  <gpermus@gmail.com>
7092
7093         * Documentation/user/ instrument-notation.itely,
7094         advanced-notation.itely: minor tweaks.
7095
7096         * input/test/script-chart.ly: add item padding.
7097
7098 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7099
7100         * flower/offset.cc: use math.h iso. <cmath>
7101
7102         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7103         of IE users.
7104
7105         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7106         (widen-left-stencil-edges): new function. Fix alignment problems
7107         with LaTeX includegraphics.
7108
7109         * lily/text-interface.cc (interpret_markup): use abort().
7110
7111 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7112
7113         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7114
7115         * lily/tie.cc (get_configuration): update bezier shape as we
7116         change Y positions.
7117         (get_configuration): don't move large ties if we're outside of the
7118         staff.
7119
7120 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7121
7122         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7123         
7124 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7125
7126         * .cvsignore: Add auto-generated configure files and then some.
7127
7128 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7129
7130         * scm/define-grobs.scm (DynamicLineSpanner): Add
7131         X-extent-callback.  Fixes hairpin-slur collision.
7132
7133 2005-08-31  Graham Percival  <gpermus@gmail.com>
7134
7135         * Documentation/user/advanced-notation.itely,
7136         basic-notation.itely: minor changes.
7137
7138 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7139
7140         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7141         \linebreak between each .eps file if \betweenLilyPondSystem is
7142         undefined. 
7143
7144         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7145         music): Document the \linebreak
7146
7147         * Documentation/user/lilypond-book.itely,
7148         input/tutorial/lbook-latex-test.tex,
7149         Documentation/user/examples.itely: Remove \usepackage{graphics}
7150
7151 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7152
7153         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7154
7155         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7156         compat bugfix.
7157
7158         * scripts/lilypond-book.py (PREAMBLE_LY): define
7159         inside-lilypond-book
7160         (modify_preamble): new function. Insert \RequirePackage{graphics}
7161         when no {graphics found in preamble.  
7162
7163 2005-08030  Graham Percival  <gpermus@gmail.com>
7164
7165         * Documentation/user/basic-notation.itely, global.itely,
7166         tutorial.itely: misc small changes.
7167
7168 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7169
7170         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7171         VERSION.
7172
7173 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7174
7175         * lily/tie-column.cc (new_directions): put Tie down on center
7176         staff line. 
7177
7178         * lily/script-interface.cc (before_line_breaking): use
7179         Grob::programming_error
7180
7181         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7182
7183         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7184         of splitext.
7185
7186 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7187
7188         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7189
7190 2005-08-29  Werner Lemberg  <wl@gnu.org>
7191
7192         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7193         the `*.scale.pfa' files to avoid warnings.
7194
7195 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7196
7197         * lily/tempo-performer.cc (process_music): idem.
7198
7199         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7200
7201 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7202
7203         * Documentation/user/advanced-notation.itely (Text markup): not a
7204         fragment.
7205
7206         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7207
7208         * lily/staff-performer.cc (initialize): add tempo/name to
7209         audio_staff_
7210
7211
7212 2005-08-26  Graham Percival  <gpermus@gmail.com>
7213
7214         * Documentation/user/advanced.itely: add text-only example.
7215
7216         * Documentation/user/invoking.itely: add index entries for
7217         convert-ly.
7218
7219         * Documentation/user/ tutorial.itely, basic-notation.itely:
7220         small fixes suggested by Steve D.  Thanks!
7221
7222 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7223
7224         * input/regression/markup-bidi-pango.ly: new file.
7225
7226         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7227         standard. Remove #ifdef. Remove memleak.
7228         (text_stencil): use text_dir to decide how to composite items.
7229         (text_stencil): determine uniform text direction for the entire
7230         string.
7231
7232         * scripts/lilypond-book.py (output_name): remove
7233         latex_filter_cmd. Non-portable to non-Unix systems. 
7234         (get_latex_textwidth): use File.write and os.unlink() instead.
7235
7236         * THANKS: add Vicente & Trevor.
7237
7238         * lily/grob.cc (discretionary_processing): look up origin for
7239         programming_error too. 
7240
7241         * input/regression/tie-broken.ly: new file.
7242
7243         * lily/tie-column.cc (set_chord_outlines): set outline for line
7244         break case too.
7245         
7246 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7247
7248         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7249         unscaled transform, just translate stencils.
7250
7251         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7252         MIDI.
7253
7254         * scm/define-markup-commands.scm (wordwrap-string): use
7255         text-direction
7256         (wordwrap-stencils): idem.
7257         (line): idem.
7258         (fill-line): idem.
7259         (wordwrap-stencils): translate last line to right for
7260         text-direction = LEFT.
7261
7262         * scm/define-grob-properties.scm (all-user-grob-properties): add
7263         text-direction.
7264
7265 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7266
7267         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7268         when copying a Lily_parser object.
7269
7270 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7271
7272         * scm/define-markup-commands.scm (null): add null markup.
7273
7274 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7275
7276         * lily/item.cc: Add documentation of center-invisible
7277
7278 2005-08-24  Graham Percival  <gpermus@gmail.com>
7279
7280         * Documentation/user/advanced-notation.itely: add info about
7281         raising text.
7282
7283         * Documentation/user/programming-interface.itely: fix example
7284         involving raised text.
7285
7286 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7287
7288         * lily/beam.cc (print): fix X start/end points of isolated
7289         beamlets.
7290
7291         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7292
7293         * lily/multi-measure-rest.cc (set_text_rods): new function.
7294
7295         * lily/vertical-align-engraver.cc (process_music): call
7296         Align_interface::set_axis(). This forces #'elements to be ordered,
7297         preventing random vertical reordering of staves.
7298
7299         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7300         add avoid-slur property. 
7301
7302         * Documentation/user/basic-notation.itely (Measure repeats): add
7303         countPercentRepeats example.
7304
7305         * Documentation/user/advanced-notation.itely (Other text markup
7306         issues): remove remark about normal-font.  We have \normal-text
7307
7308         * input/regression/tie-chord.ly: add note about remaining bugs.
7309
7310         * lily/tie.cc (print): try Tie_column::set_directions () if
7311         control-points not yet defined.
7312
7313 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7314
7315         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7316         extent. This fixes braces falling out of the EPS bbox.
7317
7318         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7319         exactly to bbox.
7320
7321 2005-08-23  Graham Percival  <gpermus@gmail.com>
7322
7323         * {various} : change #up->#UP and #down->#DOWN.
7324
7325         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7326
7327         * Documentation/user/advanced-notation.itely: clarify
7328         what objects handles text on a multimeasure rest.
7329
7330 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7331
7332         * VERSION (PATCH_LEVEL): release 2.7.7
7333
7334 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7335
7336         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7337
7338         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7339
7340         * input/regression/*.ly: formatting clean-up. Default layout
7341         before music expression.
7342
7343         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
7344         romanze28-2 example.
7345
7346         * scm/ps-to-png.scm: remove dir-re function.
7347         (make-ps-images): generate page names, instead of globbing them.
7348         This brings down LilyPond memory usage for make web by a factor
7349         10. 
7350
7351         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
7352         don't use glob. With 3000 files, globbing
7353         Documentation/user/out-www/ can take too much time. 
7354         
7355         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
7356
7357         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
7358
7359         * input/regression/tie-manual.ly: new file
7360
7361         * input/regression/tie-chord.ly: update.
7362
7363         * flower/include/interval.hh (struct Interval_t): 
7364
7365         * lily/tie.cc (distance): new function 
7366         (height): new function.
7367         (init): new function
7368         (Tie_details): new struct.
7369
7370         * lily/skyline.cc (skyline_height): new function.
7371
7372         * lily/tie-column.cc (set_chord_outlines): new function.
7373         (new_directions): read tie-configuration
7374
7375         * lily/skyline.cc: fix ASCII art.
7376         
7377 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
7378
7379         * python/convertrules.py (string_or_scheme): Fix spelling error
7380
7381 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7382         
7383         * lily/tie-column.cc (set_directions): set directions only once.
7384         (add_configuration): new function.
7385
7386         * lily/tie.cc (set_control_points): new function
7387
7388         * lily/tie-column.cc (new_directions): new function.
7389
7390         * ly/music-functions-init.ly: set 'pitch property
7391         iso. trill-pitch. This makes \relative work with \pitchedTrill
7392
7393         * lily/tie.cc (get_configuration): new function. Don't generate
7394         control points, rather, generate configuration.
7395         remove head-pair property.
7396
7397         * lily/include/tie.hh (struct Tie_configuration): new struct.
7398
7399 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
7400
7401         * Documentation/topdocs/NEWS.tely: clarify.
7402
7403 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7404
7405         * lily/tie.cc: remove minimum-length
7406
7407         * scm/define-grob-properties.scm (all-user-grob-properties):
7408         remove staffline-clearance, y-offset 
7409
7410         * input/regression/tie-dots.ly (Module): remove.
7411
7412         * lily/tie.cc (get_control_points): rewrite. Put short ties in
7413         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
7414
7415         * input/regression/tie-single.ly: new file.
7416
7417 2005-08-21  Graham Percival  <gpermus@gmail.com>
7418
7419         * ly/bagpipe.ly: fix compile problem.
7420
7421 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7422
7423         * lily/midi-item.cc (name): new method.
7424
7425         * lily/staff-performer.cc (acknowledge_audio_element): use
7426         signature of baseclass.
7427
7428         * lily/engraver-group.cc (do_announces): move recursion call out
7429         of while loop. 
7430
7431         * lily/drum-note-performer.cc (class Drum_note_performer): use
7432         process_music everywhere.
7433
7434         * ly/performer-init.ly: add default children everywhere.
7435
7436         * lily/paper-book.cc (output): call paper-book-write-midis
7437         directly: always write MIDI, even if no \layout {} block. 
7438
7439 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7440
7441         * VERSION (PACKAGE_NAME): release 2.7.6
7442
7443         * lily/percent-repeat-engraver.cc (try_music): don't print warning
7444         about not being able to handle repeat.
7445
7446 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7447
7448         * Documentation/user/examples.itely (Piano templates):
7449         * lily/include/performer-group.hh: Remove last traces of
7450         Performer_group_performer.  Fixes make web.
7451
7452 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7453
7454         * Documentation/user/examples.itely (Piano templates): change
7455         Engraver_group_engraver -> Engraver_group
7456
7457         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
7458         scm_stand_in_procs is not weak_any.
7459
7460         * lily/volta-bracket.cc (print): don't use strcmp().
7461
7462         * lily/volta-engraver.cc (process_music): use
7463         Text_interface::is_markup() for setting the 'text property of the
7464         volta bracket.
7465
7466         * input/mutopia/claop.py (accents): update syntax to 2.6
7467
7468         * scm/define-context-properties.scm
7469         (all-user-translation-properties): add countPercentRepeats.
7470
7471         * Documentation/user/basic-notation.itely (Measure repeats): add
7472         isolated percent example.
7473
7474 2005-08-18  Graham Percival  <gpermus@gmail.com>
7475
7476         * input/ {various}: change direction #1, #-1 to
7477         #up/#down or \fooUp, \fooDown.
7478
7479         * Documentation/user/music-glossary.tely: #-1 to #down.
7480
7481         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
7482         to #up, #-1 to #down.
7483
7484 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7485
7486         * lily/include/engraver-group.hh: rename.
7487
7488         * lily/include/performer-group.hh: rename.
7489
7490 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
7491
7492         * input/test/script-abbreviations.ly: Removed some old LaTeX
7493         left overs.
7494
7495 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7496
7497         * python/convertrules.py (conv): inside-slur -> avoid-slur.
7498         Remove functions.  Remove if 1: constructs, reindent.
7499
7500         * scripts/convert-ly.py (add_version): Add functions from
7501         convertrules.py
7502
7503         * scm/script.scm (default-script-alist):
7504         s/priority/script-priority.  Fixes script stacking.  Backportme.
7505         (Fermata): Very low priority.
7506
7507 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7508
7509         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
7510
7511         * input/regression/slur-script.ly: remove padding tweaks. Add
7512         comment strings.
7513
7514         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
7515         time sigs and related stuff.
7516
7517         * scm/define-grob-properties.scm (all-user-grob-properties): add
7518         @code{} tags to property description.
7519
7520         * lily/include/line-group-group-engraver.hh (Module): remove file.
7521
7522         * python/convertrules.py (conv): add rule for
7523         Engraver_group_engraver -> Engraver_group.
7524
7525         * lily/include/performer-group-performer.hh: analogous.
7526
7527         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
7528
7529         * lily/context-def.cc (instantiate): check for
7530         Engraver_group_engraver and Performer_group_performer not
7531         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
7532  
7533 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7534
7535         * input/les-nereides.ly: Remove three fingering tweaks, update
7536         remaining one.
7537
7538         * input/regression/slur-script-inside.ly: Update, fix doc.
7539
7540         * scm/script.scm: Update to avoid-slur.
7541
7542         * scm/define-grob-properties.scm (avoid-slur): New property.
7543
7544         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
7545         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
7546         outside_slur_callback if avoid-slur != #'inside.
7547
7548         * scm/define-grobs.scm (Fingering, Textscript): No
7549         inside-slur/outside-slur preference.
7550         (DynamicLineSpanner): Always outside slur.
7551
7552         * input/regression/slur-script.ly: More tests.
7553
7554 2005-08-17  Graham Percival  <gpermus@gmail.com>
7555
7556         * Documentation/user/lilypond-book: fix notime entry.
7557
7558         * Documentation/user/advanced-notation.itely: add info on
7559         getting an I rehearsal mark.
7560
7561         * Documentation/user/putting.itely: reinstate "I", re-enforce
7562         the fact that \override numbers are the result of
7563         experimentation and personal taste.
7564
7565         * Documentation/user/invoking.itely: update convert-ly bugs.
7566
7567 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7568
7569         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
7570         to #t.
7571
7572         * lily/timing-translator.cc (initialize): don't initialize timing.
7573
7574         * input/regression/stem-spacing.ly (Module): remove file.
7575
7576         * input/regression/spacing-stick-out.ly: specify Score context for
7577         \override
7578
7579         * input/regression/clefs.ly: remove spurious {}s 
7580
7581 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
7582
7583         * Documentation/topdocs/NEWS.tely,
7584         input/regression/repeat-percent-count.ly: clarify a bit.
7585
7586 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7587
7588         * input/no-notation/display-lily-tests.ly: delete
7589         display-lily-init call.
7590
7591         * ly/music-functions-init.ly (displayLilyMusic): move
7592         display-lily-init call at top level, so that the user should not
7593         have to call it.
7594
7595         * scm/define-music-display-methods.scm (note-name->lily-string):
7596         retrieve note names directly from pitchnames using new function `rassoc'.
7597         (display-lily-init): note names list construction removed.
7598
7599 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7600
7601         * THANKS: spello.
7602
7603         * lily/lily-parser.cc (get_header): copy module, instead of
7604         returning it.
7605
7606         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
7607         counters.
7608
7609         * Documentation/user/basic-notation.itely (Measure repeats): add
7610         links to Counter grobs.
7611
7612         * scm/define-grobs.scm (all-grob-descriptions): add
7613         DoublePercentRepeatCounter
7614         (all-grob-descriptions): add PercentRepeatCounter
7615
7616         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
7617         also create counter grobs.
7618
7619         * lily/separation-item.cc (extremal_break_aligned_grob): don't
7620         return grob without space-alist.
7621
7622         * input/proportional.ly: tune staff-padding.
7623
7624         * input/regression/repeat-percent-count.ly: new file. 
7625
7626 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7627
7628         * input/no-notation/display-lily-tests.ly: moved from
7629         input/regression/ to input/no-notation. Be sure to call
7630         `display-lily-init' before trying to use the display function.
7631
7632 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
7633
7634         * scripts/lilypond-book.py (option_definitions): Don't localize
7635         the empty string. Fixes bug when --psfonts was used with
7636         non-English locale.
7637
7638 2005-08-15  Graham Percival  <gpermus@gmail.com>
7639
7640         * lily/tuplet-bracket.cc: simple build fix.
7641
7642         * Documentation/user/putting.itely: use "we" instead of "I".
7643
7644         * Documentation/user/basic-notation.itely: cautionary accidentals
7645         work with naturals, too.
7646
7647 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7648
7649         * lily/tuplet-bracket.cc (calc_position_and_height): add
7650         staff-padding support.
7651
7652         * input/proportional.ly: set staff-padding.
7653         
7654         * VERSION (PATCH_LEVEL): release 2.7.5
7655
7656         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
7657         fixes. Remove tweaks.
7658
7659         * input/regression/tuplet-slope.ly: add a test case.
7660
7661         * lily/tuplet-bracket.cc (calc_position_and_height): revert
7662         erroneous fix. Add spanner bounds to offset array with relative X
7663         positions.
7664
7665         * ly/engraver-init.ly: add Rest_engraver only once.
7666
7667         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
7668         (*parser*) lookup if (*parser*) != #f.
7669
7670 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
7671
7672         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
7673         Cut-and paste update.
7674
7675         * input/regression/slur-script.ly: Add example of reverting
7676         inside-slur for fingering.
7677
7678         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
7679         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
7680
7681         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
7682         outside_slur_callback if inside-slur == #f (as opposed to unset).
7683
7684 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7685
7686         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
7687         encoding files are already removed.
7688
7689 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
7690
7691         * Documentation/user/advanced-notation.itely (Instrument names):
7692         Document a workaround for instrument names that collide with
7693         system start braces/brackets.
7694
7695 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7696
7697         * lily/rest-collision.cc (do_shift): spello.
7698
7699         * input/proportional.ly: use #'used property. Set break-overshoot
7700         property.
7701
7702         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
7703
7704         * lily/paper-column.cc: add #'used property
7705
7706         * lily/mark-engraver.cc (stop_translation_timestep): set grob
7707         array for staves found.
7708
7709         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
7710         array for stavesFound.
7711
7712         * lily/staff-spacing.cc (next_note_correction): add fixed and
7713         space to calling convention. This fixes spacing of accidentals
7714         after barlines.
7715
7716         * input/regression/spacing-accidental-stretch.ly: add barline -
7717         accidental case.
7718
7719         * scm/framework-ps.scm (page-header): add version number to
7720         creator
7721         (eps-header): idem.
7722
7723         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
7724         
7725 2005-08-13  Graham Percival  <gpermus@gmail.com>
7726
7727         * Documentation/user/global.itely: add "fit as much as
7728         possible onto this page" example (Vertical spacing).
7729
7730 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7731
7732         * *: Nitpick run.
7733
7734         * buildscripts/fixcc.py: Fixes.
7735
7736 2005-08-12  Graham Percival  <gpermus@gmail.com>
7737
7738         * Documentation/user/advanced-notation.itely: add markup
7739         example to Text spanners.
7740
7741 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
7742
7743         * Documentation/user/basic-notation.itely (Ties): Add example of
7744         tying a tremolo to a chord. Thanks to Steve Doonan. 
7745
7746         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
7747         properties and move tieMelismaBusy to the list of written
7748         properties. 
7749
7750 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
7751
7752         * po/TODO: suggest to use a dedicated tool like kbabel.
7753
7754         * po/fi.po: update using kbabel.
7755
7756 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7757
7758         * *: Remove obsolete files.  Nitpick run.
7759
7760         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
7761
7762 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7763
7764         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
7765         too.
7766
7767         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
7768
7769         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
7770         whitespace as symbol separator.
7771
7772         * lily/side-position-interface.cc: Add slur-padding.
7773
7774         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
7775         quite a large fix, and it never worked in a stable release; so not
7776         really a regression.
7777
7778         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
7779         Update cut and paste code from Slur_engraver.
7780
7781         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7782         Add.
7783
7784         * scm/define-grobs.scm (DynamicLineSpanner): Add
7785         dynamic-line-spanner-interface.
7786         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
7787
7788 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7789
7790         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
7791         to_boolean () so that non-set 'inside-slur means false.
7792
7793         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
7794         slur has control-points.  Skip script without direction.  Always
7795         do_shift if script inside slur, even if slur not contained in
7796         script y-extent.  Increment k in loop.
7797
7798 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
7799
7800         * scm/define-markup-commands.scm: Improved regexp to search for
7801         EPS bounding boxes and corrected call to ly:warning.
7802
7803 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7804
7805         * Documentation/user/programming-interface.itely (Displaying music
7806         expressions): doc for \displayLilyMusic. Also some precisions in
7807         "Markup construction in Scheme"
7808
7809 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
7810
7811         * scm/define-markup-commands.scm (normal-text): Added 2 new
7812         markup commands, \normal-text and \medium (the latter thanks to
7813         Bruce Fairchild). 
7814
7815 2005-08-08  Graham Percival  <gpermus@gmail.com>
7816
7817         * Documentation/user/programming-interface.itely: fix @{ @}.
7818
7819         * scm/define-markup-commands.scm: add linewidth info to
7820         \justify and \wordwrap, add "upright is the opposite of italic".
7821
7822         * Documentation/user/advanced-notation.itely: shaped->shape,
7823         add (cons (markup "foo")) type of example to text markup,
7824         reword multi-measure rests section.
7825
7826         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
7827         comment.  No actual code was touched.
7828
7829         * Documentation/user/invoking.itely: add more info about
7830         \include.  Thanks, Bruce!
7831
7832         * THANKS: add Bruce Fairchild, alphabetise.
7833
7834         * Documentation/user/global.itely: document \score{\header{}}
7835         behavior.
7836
7837         * Documentation/user/basic-notation.itely: reword multi-measure
7838         rest discussion in Rests.
7839
7840 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
7841
7842         * Documentation/user/programming-interface.itely (Markup
7843         construction in Scheme): Corrected example and tried to clarify
7844         the implicit \line in the table.
7845
7846 2005-08-07  Graham Percival  <gpermus@gmail.com>
7847
7848         * Documentation/user/instrument-notation.itely: moved
7849         some bagpipe info back into the bagpipe section.  Somehow
7850         it ended up in the "other vocal issues" section?!  :o_O
7851
7852 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7853
7854         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
7855         directories, not paths).
7856
7857 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7858
7859         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
7860         plain emmentaler/aybabtu.  Backportme.
7861
7862         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
7863         missing dir correction.
7864
7865 2005-08-05  Graham Percival  <gperlist@shaw.ca>
7866
7867         * scm/define-markup-commands: fix reversed justify/wordwrap
7868         doc strings.
7869
7870 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
7871
7872         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
7873         lily/gregorian-ligature-engaver.cc,
7874         lily/include/ligature-engraver.hh,
7875         lily/include/coherent-ligature-engraver.hh,
7876         lily/include/gregorian-ligature-engraver.hh: make these classes
7877         truely abstract.  This should fix some internal oddities such as
7878         duplicate as well as dead translator/property declarations, and
7879         also some dead code.
7880
7881         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
7882         bugfix: avoid message "junking empty ligature" on ligature
7883         brackets by collecting dummy grobs.
7884
7885 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7886
7887         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
7888
7889         * input/proportional.ly (staffKind): bugfix.
7890         (staffKind): updates by Trevor Baca.
7891
7892         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
7893         default layout. 
7894
7895         * lily/tuplet-bracket.cc (print): check whether edge-text is a
7896         pair.
7897
7898         * lily/beam.cc (rest_collision_callback): call position_beam() if
7899         necessary.
7900
7901         * VERSION: release 2.7.4
7902
7903         * input/regression/spacing-uniform-stretching.ly: new file.
7904
7905         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
7906
7907         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
7908         contributor.
7909
7910         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
7911
7912         * input/proportional.ly: new file.
7913
7914         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
7915         columns is empty
7916
7917         * lily/tuplet-engraver.cc (finalize): new function. Reset right
7918         bounds to currentCommandColumn for the last step.
7919         (start_translation_timestep): if tupletFullLength is set, set
7920         bound to Paper Column
7921
7922         * input/regression/tuplet-full-length.ly (indent): new file.
7923
7924         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
7925         clique of loose columns, eg. a set of grace notes in strict
7926         notespacing.
7927
7928         * input/regression/spacing-strict-spacing-grace.ly: new file.
7929
7930         * lily/key-signature-interface.cc: change property name to
7931         alteration-alist
7932
7933         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
7934         keyAccidentalOrder
7935
7936         * python/convertrules.py (conv): keyAccidentalOrder ->
7937         keyAlterationOrder
7938
7939         * lily/key-engraver.cc (create_key): always print a cancellation
7940         for going to C-major/A-minor, regardless of printKeyCancellation.
7941         (create_key): remove typecheck for visibility. This fixes key
7942         signature not being printed.
7943
7944         * lily/spacing-determine-loose-columns.cc: new file.
7945
7946         * input/regression/spacing-strict-notespacing.ly: new file.
7947
7948         * lily/spacing-spanner.cc (generate_springs): rename from
7949         do_measure. 
7950         (generate_pair_spacing): new function.
7951         (init, generate_pair_spacing): set between-cols for floating
7952         nonmusical columns.
7953
7954         * lily/spaceable-grob.cc (get_spring): new function. 
7955
7956         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
7957         relative to the right edge of the prefatory matter.
7958
7959         * lily/beam.cc (print): read break-overshoot to determine where to
7960         stop/start broken beams.
7961
7962         * input/regression/spanner-break-overshoot.ly: new file.
7963
7964 2005-08-04  Graham Percival  <gperlist@shaw.ca>
7965
7966         * ly/bagpipe.ly: updated.
7967
7968         * Documentat/user/instrument.itely: un-comment out bagpipe example.
7969
7970 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7971
7972         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
7973         support: now (de)crescs avoid slurs as well.
7974
7975         * Documentation/user/instrument-notation.itely (Bagpipe example):
7976         comment out non-functioning bagpipe example.
7977         (Bagpipe definitions): idem.
7978
7979         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
7980         (Top): add proportionalNotationDuration example.
7981
7982         * input/regression/spacing-proportional.ly: new file.
7983
7984         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
7985         synched to a beam.
7986
7987         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
7988         fixes beams with a single stem (eg. beams across linebreaks.)
7989
7990         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
7991
7992         * flower/rational.cc (operator +): prevent overflow. This fixes
7993         heavily nested tuplets.
7994
7995         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
7996         have to protect even those unlikely to be corrupted data members.  
7997
7998 2005-08-04  Graham Percival  <gperlist@shaw.ca>
7999
8000         * ly/bagpipe.ly: new file.
8001
8002         * THANKS: added Sven Axelsson.
8003
8004 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8005
8006         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8007         copy proportionalNotationDuration into currentMusicalColumn if
8008         set.
8009
8010         * lily/spacing-spanner.cc (musical_column_spacing): if
8011         uniform-stretching set, fixed space is 0.0
8012
8013         * input/regression/spacing-multi-tuplet.ly: show
8014         uniform-stretching property.
8015
8016         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8017
8018         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8019         (struct Spacing_options): new struct.
8020
8021         * lily/spacing-basic.cc: new file.
8022
8023         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8024         delta_t doesn't have to be smaller than shortest_playing_len
8025
8026 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8027
8028         * input/regression/markup-arrows.ly:  new file.
8029
8030         * lily/tuplet-bracket.cc: document new behavior.
8031
8032         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8033         with line breaks.
8034
8035         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8036
8037         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8038         default 
8039
8040         * lily/tuplet-bracket.cc: add edge-text property.
8041         add break-overshoot.
8042         (print): read break-overshoot.
8043         (print): read edge-text, add stencils.
8044
8045         * mf/feta-arrow.mf: new file.
8046
8047         * mf/feta-generic.mf: add feta-arrow.
8048
8049 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8050
8051         * Documentation/user/lilypond-book.itely (An example of a
8052         musicological document): Added flag -o to dvips for people who use
8053         the default setting in teTeX where output is sent to the printer. 
8054
8055         * Documentation/user/global.itely (Vertical spacing): Added
8056         reference to the Axis_group_engraver which documents the *Extent
8057         properties.
8058
8059 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8060
8061         * Documentation/user/basic-notation.itely (Tuplets): add note
8062         about nested tuplets. Remove BUG. 
8063
8064         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8065
8066         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8067         (print): manually call print() for subtuplets.
8068         (calc_position_and_height): add subtuplets to the
8069         support. Vertically shift outer tuplet 
8070
8071         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8072         remove-first for Lyrics, ChordNames and FiguredBass
8073
8074         * scm/define-grob-properties.scm (all-internal-grob-properties):
8075         use ly:grob-array? iso. grob-list?
8076         (all-internal-grob-properties): add tuplets grob-array.
8077
8078         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8079         new function
8080
8081 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8082
8083         * input/test/time-signature-staff.ly: new file.
8084
8085         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8086         spurious #<Music FingerEvent> errors. Backportme.
8087
8088 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8089
8090         * Documentation/user/programming-interface.itely (Markup
8091         construction in Scheme): Corrected markup syntax in the
8092         translation table.
8093
8094 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8095
8096         * Documentation/user/instrument-notation.itely: small update
8097         to bagpipe notation docs; thanks Sven!
8098
8099         * Documentation/user/basic-notation.itely: add link about trills.
8100
8101 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8102
8103         * Documentation/user/music-glossary: remove accidentally committed
8104         fink patch.
8105
8106 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8107
8108         * lily/lily-parser.cc (get_header): new function. Enable multiple
8109         \header definitions.
8110
8111         * lily/parser.yy (lilypond_header_body): use get_header.
8112
8113         * ly/init.ly:
8114         * scm/lily-library.scm (print-score-with-defaults): renamed
8115         $globalheader to $defaultheader
8116             
8117         * Documentation/user/global.itely (Creating titles): added short
8118         explanation that multiple headers are useable.
8119
8120
8121 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8122
8123         * lily/module-scheme.cc (LY_DEFINE): new file. 
8124
8125         * Documentation/user/advanced-notation.itely (Font selection): add
8126         doco for make-pango-font-tree.
8127
8128 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8129
8130         * Documentation/user/music-glossary: more languages
8131         for tenuto.
8132
8133         * Docuemntation/user/instrument-notation.itely: minor
8134         update for bagpipe example.
8135
8136 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8137
8138         * input/regression/+.ly (TODO): add some text.
8139
8140 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8141
8142         * Documentation/user/invoking.itely: \score begins with music.
8143
8144         * Documentation/user/ basic-notation.itely,
8145         instrument-notation.itely: minor changes.
8146
8147         * Documentation/user/music-glossary.itely: began tenuto entry.
8148
8149 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8150
8151         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8152
8153         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8154
8155 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8156
8157         * Documentation/user/examples.itely: remove bagpipe template.
8158
8159         * Documentation/user/instrument-notation.itely: add bagpipe
8160         section, maybe fix quotes in lyrics.  I hate text encoding.
8161         Clarify chord durations, more bagpipe stuff.
8162
8163 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8164  
8165         * lily/accidental-engraver.cc: formatting fixes.
8166
8167         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8168         grob-array.
8169
8170         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8171
8172         * lily/note-column.cc (arpeggio): new function.
8173
8174         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8175         account for spacing.
8176
8177 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8178
8179         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8180         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8181         mingw build.
8182         
8183 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8184
8185         * scm/lily.scm (lilypond-all): clear anonymous modules after
8186         processing files.
8187
8188 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8189
8190         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8191         SCM_I_CONSP
8192
8193         * VERSION: 2.7.3 released
8194
8195         * Documentation/user/invoking.itely (Invoking lilypond): add
8196         LILYPOND_GC_YIELD documentation.
8197
8198         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8199         scm_from_real / scm_make_real.
8200
8201         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8202         higher. This increases memory footprint, but provides overall
8203         speedup of 15 to 20%. 
8204
8205         * lily/include/translator.hh (class Translator): remove
8206         PRECOMPUTED_VIRTUAL everywhere.
8207
8208         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8209
8210         * lily/context.cc (now_mom): non-recursive now_mom() 
8211
8212         * lily/include/profile.hh: new file.
8213
8214         * lily/profile.cc: new file.
8215
8216         * lily/grob.cc (Grob::Grob): look properties up directly.
8217
8218         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8219         lookups.
8220
8221         * lily/include/box.hh (class Box): smob Box type.
8222
8223         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8224
8225         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8226         protect() and unprotect(). Use throughout.
8227
8228 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8229
8230         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8231
8232         * scm/define-music-display-methods.scm (markup->lily-string):
8233         markup elements can also be strings (without simple-markup
8234         appended)
8235
8236 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8237
8238         * lily/context.cc (where_defined): also assign value in
8239         where_defined().
8240
8241         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8242         (curve_coordinate): new function
8243
8244         * lily/simple-spacer.cc (add_columns): only add rods between
8245         column i and begin/end if keep-inside-line is set (this repleces
8246         allow-outside-line as default)
8247
8248 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8249
8250         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8251         tupletSpannerDuration if applicable.
8252
8253         * lily/font-size-engraver.cc (process_music): read fontSize only
8254         once per timestep.
8255
8256         * lily/engraver*cc: use throughout.
8257         
8258         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8259
8260         * lily/translator.cc (add_acknowledger): new file. Directly jump
8261         into an Engraver::acknowledge_xxx () method based on a grobs
8262         interface-list.
8263
8264         * lily/include/translator-dispatch-list.hh (class
8265         Engraver_dispatch_list): new struct, new file.
8266
8267         * scm/define-context-properties.scm
8268         (all-internal-translation-properties): remove acceptHashTable,
8269         acknowledgeHashTable
8270
8271         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8272
8273         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8274         change acknowledgeHashTable to C++ member. 
8275
8276         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8277
8278 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8279
8280         * scm/display-lily.scm: new file. Define a `display-lily-music'
8281         function, that displays the music expression given as an argument,
8282         using LilyPond notation.
8283
8284         * scm/define-music-display-methods.scm: new file. Implementation
8285         of display methods for each music type.
8286
8287         * ly/music-functions-init.ly (displayLilyMusic): new function for
8288         displaying music with LilyPond notation.
8289
8290         * input/regression/display-lily-tests.ly: new regression test file
8291         for `display-lily-music'.
8292
8293         * scm/markup.scm: remove obsolete debugging code (for printing
8294         markups with LilyPond notation).
8295
8296         * scm/define-music-types.scm (music-name-to-property-table):
8297         * scm/clef.scm (supported-clefs): export, in order to be accessible
8298         from the (scm display-lily) module.
8299
8300 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8301
8302         * Documentation/topdocs/NEWS.tely (Top): Typo.
8303
8304 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8305
8306         * Documentation/index.html.in, Documentation/texinfo.css,
8307           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8308           Documentation/bibliography/index.html.in,
8309           Documentation/bibliography/html-long.bst: revert css-width patch,
8310           it does not work with IE6.
8311
8312 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8313
8314         * Documentation/texinfo.css: revert 760px hack. 
8315
8316         * VERSION: release 2.7.2
8317
8318         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8319
8320         * Documentation/user/basic-notation.itely (Barnumber check): add
8321         section.
8322
8323         * scm/music-functions.scm (skip-to-last): new function. Show only
8324         last showLastLength part of the \score.
8325
8326         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8327
8328         * python/convertrules.py (conv): add ly:x-moment rule
8329
8330         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8331
8332         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8333
8334         * Documentation/user/instrument-notation.itely (Flexibility in
8335         alignment): options in subsections.
8336
8337         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8338         syllable text. Instead, assume that the previous lyric text is a
8339         melismated text.
8340
8341         * Documentation/index.html.in: revert 800x600 change.
8342
8343 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8344
8345         * lily/main.cc (main): Remove invalid handle kludge.
8346
8347         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
8348         (lambda): add gui define.
8349
8350 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8351
8352         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
8353
8354         * Documentation/user/instrument-notation.itely (Musica ficta
8355         accidentals): add section Musica ficta accidentals
8356
8357         * lily/accidental-engraver.cc (make_suggested_accidental): new
8358         function.
8359         (make_standard_accidental): move into new function.
8360         (create_accidental): new function.
8361
8362         * scm/define-grobs.scm (all-grob-descriptions): new Grob
8363         AccidentalSuggestion
8364
8365         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
8366
8367         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
8368         undefined.
8369
8370         * Documentation/user/global.itely (Page formatting): document
8371         horizontalshift.
8372
8373         * scm/page-layout.scm (default-page-music-height):
8374         horizontalshift: new variable, shift all systems by
8375         horizontalshift to the right, to make space for instrument names.
8376
8377         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
8378
8379         * lily/input-scheme.cc (LY_DEFINE): take format commands.
8380
8381 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8382
8383         * lily/note-column.cc (dir): idem.
8384
8385         * lily/spacing-spanner.cc (Module): idem.
8386
8387         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
8388
8389         * lily/include/paper-column.hh (class Paper_column): add
8390         non-static get_rank() member.
8391
8392         * VERSION: release 2.7.1
8393         
8394         * scm/framework-null.scm: new file, used for benchmarking.
8395
8396 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
8397
8398         * Documentation/topdocs/INSTALL.texi, configure.in: fix
8399         version dependencies for fontforge and gs.
8400
8401         * Documentation/index.html.in, Documentation/texinfo.css,
8402         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8403         Documentation/bibliography/index.html.in, 
8404         Documentation/bibliography/html-long.bst: optimize width of
8405         html for a 800x600 screen (width:760), increases printability
8406         when 'fit to page' is not set and readability in wide screens.
8407
8408         * stepmake/bin/add-html-footer.py: add missing </p>.
8409
8410 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8411
8412         * scm/define-markup-commands.scm (beam): use polygon in beam
8413         command.
8414
8415         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
8416         all acknowledged grobs, and do potentially expensive merge and
8417         write in one go.
8418
8419         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
8420
8421         * configure.in (reloc_b): add --enable-static-gxx to statically
8422         link to libstdc++
8423
8424         * lily/GNUmakefile (static-gxx-libs): new target
8425         static-gxx-libs. Create symlink to libstdc++.a
8426
8427         * lily/new-lyric-combine-music-iterator.cc: rename to
8428         Lyric_combine_music_iterator
8429
8430         * lily/lyric-combine-music-iterator.cc
8431         (Old_lyric_combine_music_iterator): rename to
8432         Old_lyric_combine_music_iterator
8433
8434         * lily/*-engraver.cc (various): remove double use of
8435         PRECOMPUTED_VIRTUAL function: only use
8436         start_translation_timestep() and stop_translation_timestep(), not
8437         both.
8438
8439         * lily/break-substitution.cc (fast_substitute_grob_array): do
8440         fast_substitute_grob_array for all unordered grob_arrays.
8441         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
8442         (substitute_grob_array): optimize.
8443
8444         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
8445
8446         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
8447
8448         * lily/parser.yy: revert $globalheader patch.
8449         
8450         * lily/include/translator.icc
8451         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
8452         Translator methods, without _static helper.
8453  
8454         * lily/grob-smob.cc (derived_mark): rename from
8455         do_derived_mark(). Return void.
8456
8457         * scm/define-context-properties.scm
8458         (all-internal-translation-properties): remove tweakCount/tweakRank.
8459
8460         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
8461         predefined break-visibilities.
8462
8463         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
8464         booleans for break-visibility.
8465
8466         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
8467
8468         * python/convertrules.py (conv): rule for Timing_translator. 
8469
8470         * lily/include/translator.icc: new file. 
8471
8472         * lily/paper-column-engraver.cc (process_music): new
8473         file. Separate Paper_column factory from Score_engraver.
8474
8475         * lily/vertically-spaced-context-engraver.cc: administer
8476         spaceable-staves property of System.
8477
8478         * lily/translator-group-ctors.cc: new file.
8479
8480         * lily/context-property.cc (make_grob_from_properties): construct
8481         the right Grob class programmatically, looking at the class entry
8482         for the meta property.
8483
8484         * lily/break-align-engraver.cc (stop_translation_timestep): call
8485         Break_align_interface::add_element() directly.
8486
8487         * lily/context.cc (measure_position): measure_position() is now a
8488         normal function.
8489
8490         * lily/include/translator.hh (class Translator): rename
8491         process_acknowledged_grobs() to process_acknowledged() and move to
8492         Translator.
8493
8494         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
8495         field for each grob description.
8496
8497         * lily/include/translator-group.hh (class Translator_group):
8498         change to base class. Separate class from Translator. This gets
8499         rid of virtual inheritance for Engravers/Performers.
8500
8501         * lily/staff-performer.cc (class Staff_performer): derive
8502         Staff_performer from Performer, not Performer_group_performer 
8503
8504         * Lily/translator-group.cc (precomputed_recurse_over_translators):
8505         new function.
8506         (precompute_method_bindings): new function. Precompute lists of
8507         Translators, so we only call methods (process_music,
8508         start_translation_timestep, etc.) for Translators needing
8509         it. Also: dispose of pointer-to-member-function calls.
8510
8511         * lily/engraver-group-engraver.cc: remove engraver_each,
8512         recurse_down_engravers ()
8513
8514         * lily/note-head.cc (internal_print): only call
8515         glyph-name-procedure if style != default. 
8516
8517 2005-07-16  Graham Percival  <gperlist@shaw.ca>
8518
8519         * ly/titling-init.ly: add printallheaders option.
8520
8521         * Documentation/user/global.itely: document printallheaders.
8522
8523 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8524
8525         * lily/system.cc (do_derived_mark): don't mark from object_alist_
8526         anymore, but do it centrally.  
8527
8528         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
8529         hammer hack.
8530
8531         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
8532
8533         * scm/output-lib.scm: remove hammer-print-function.
8534
8535         * lily/include/pointer-group-interface.hh (extract_grob_set): new
8536         macro. Declare a Link_array<Grob> and fill it from a grob.
8537         (extract_item_set): idem for item.
8538
8539         * lily/break-substitution.cc: add header.
8540         (fast_substitute_grob_array): rewrite for Grob_arrays.
8541         (substitute_grob_array): idem.
8542
8543         * lily/group-interface.cc (add_thing): remove file.
8544
8545         * flower/include/parray.hh (class Link_array): slice() is const.
8546
8547         * lily/include/grob-array.hh: new file.
8548
8549         * lily/grob-array.cc (spanner): new file.
8550
8551         * lily/beam-quanting.cc (fill): read details property from beam.
8552
8553         * lily/beam.cc: support details property.
8554
8555         * total speedups below: approx 10%.
8556
8557         * lily/include/beam.hh: new struct, softcode beam quanting parameters
8558
8559         * lily/include/grob.hh (class Grob): add interfaces_ member.
8560
8561         * lily/bezier.cc (init_polynomial_cache): new function: cache
8562         binom(3,j) t^j (1-t)^{3-j}
8563         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
8564
8565         * lily/*.cc: substitution throughout.
8566
8567         * lily/grob-property.cc (internal_get_object): new routine.
8568         (internal_set_object): idem. Store grob refrences in separate
8569         alist. This saves processing time, since properties aren't
8570         break-substituted, and the per grob namespace is smaller, both for
8571         grobs and non-grob properties.
8572
8573         * scm/define-grob-properties.scm (all-internal-grob-properties):
8574         remove center-element.
8575
8576         * lily/grob.cc: remove tweak-count, tweak-rank.
8577
8578 2005-07-15  Graham Percival  <gperlist@shaw.ca>
8579
8580         * Documentation/user/lilypond-book.itely: fixes example.
8581
8582 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8583
8584         * Documentation/user/global.itely (Creating titles):    
8585         * Documentation/user/examples.itely (All headers): change the
8586         place of \header in \score blocks (after music block) to make
8587         examples compile (cf. changes on parser.yy on 2005-07-10)
8588
8589 2005-07-13  Graham Percival  <gperlist@shaw.ca>
8590
8591         * python/convertrules.py: add exc -> ecc rule.
8592
8593         * scripts/convert-ly.py: add location of convertrules.py
8594         in a comment.
8595
8596         * Documentation/user/changing-defaults.itely: fix language.
8597
8598 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8599
8600         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
8601
8602 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8603
8604         * scm/output-socket.scm (grob-bbox): don't use inf? 
8605
8606         * flower/include/rational.hh: add operator bool() 
8607
8608         * scm/define-music-types.scm (music-descriptions): remove
8609         internal-class-name properties.
8610
8611         * lily/include/event.hh: remove file.
8612
8613         * lily/include/music-constructor.hh: remove file.
8614
8615         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
8616         in 'types property.
8617
8618         * lily/music.cc (duration_length_callback): new function.
8619
8620         * lily/event.cc: remove file.
8621
8622         * lily/music-constructor.cc: remove file.
8623
8624         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
8625
8626         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
8627         (get_context_key): idem.
8628
8629         * scm/lily.scm (lambda): new option object-keys (default to #f)
8630
8631         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
8632
8633         * scm/output-gnome.scm: remove beam routine.
8634
8635         * scm/output-ps.scm (scm): idem.
8636
8637         * scm/output-svg.scm: remove beam.
8638
8639         * ps/music-drawing-routines.ps: remove draw_beam.
8640
8641         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
8642
8643         * flower/include/guile-compatibility.hh (scm_from_locale_string):
8644         add scm_from_locale_string compatibility glue. 
8645
8646 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8647
8648         * scripts/lilypond-book.py: Prevent occuring error when
8649         'lilypond-book --output=foo/ somefile.ly' is executed multiple
8650         times and target file shoud be overwritten.  (Error message said
8651         'input file and output file is same'.)
8652
8653 2005-07-13  Graham Percival  <gperlist@shaw.ca>
8654
8655         * input/regression/slur-extreme.ly,
8656         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
8657         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
8658         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
8659         "excentricity" to "eccentricity".
8660
8661         * Documentation/user/converters.itely: fix URL for Noteedit and
8662         Rosegarden.
8663
8664         * THANKS: added Yoshinobu Ishizaki.
8665
8666 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8667
8668         * scm/define-markup-commands.scm (justify-field): add. 
8669
8670         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
8671
8672 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8673
8674         * lily/lookup.cc (filled_box): express filled_box with
8675         round_filled_box
8676
8677         * scm/midi.scm (paper-book-write-midis): new function. Write all
8678         performances in numbered MIDI files.
8679
8680         * lily/performance-scheme.cc (LY_DEFINE): new file.
8681         (LY_DEFINE): new function ly:performance-write.
8682
8683         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
8684         new function.
8685         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
8686
8687         * scm/framework-*.scm: use port arguments throughout.
8688
8689         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
8690
8691         * lily/paper-outputter.cc (Paper_outputter): take port argument.
8692
8693         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
8694
8695         * scm/framework-texstr.scm (output-framework): 
8696
8697         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
8698
8699         * scm/output-lib.scm (tablature-stem-attachment-function):
8700         tablature stem attachment fix. 
8701
8702 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8703
8704         * lily/bezier.cc: hardcode binomial coefficients of order 3.
8705
8706         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
8707
8708         * scm/define-music-types.scm (music-descriptions): don't use
8709         Music_wrapper type.
8710
8711         * lily/paper-column.cc (print): print moment too.
8712
8713         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
8714         remove compatibility cruft.
8715
8716         * lily/parser.yy (score_body): \score can only begin with Music. 
8717
8718         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
8719         make-score. Take music argument only. Move parser interaction to
8720         Scheme.
8721
8722         * scm/lily-library.scm (scorify-music): new function.
8723
8724         * python/lilylib.py (datadir): remove 2.1 compat kludge.
8725         (datadir): remove resource import.
8726         (print_environment): remove get_bbox()
8727         (cp_to_dir): remove pre 1.5.2 compat glue.
8728
8729 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8730
8731         * lily/include/simple-spacer.hh (Module): idem.
8732
8733         * lily/include/spring.hh (struct Spring): store inverse
8734         strength. This prevents division by zero.
8735
8736         * VERSION: release 2.7.0
8737         
8738         * lily/include/music.hh (class Music): remove Music::duration_log()
8739
8740         * lily/stem-engraver.cc (make_stem): take duration log from event.
8741
8742         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
8743
8744 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8745
8746         * scm/lily.scm (ly:load): load autochange.scm
8747
8748         * Documentation/user/tutorial.itely (Running LilyPond for the
8749         first time): remove reference to DVI/TeX
8750
8751         * scm/define-markup-commands.scm (text): add \text markup command.
8752
8753         * configure.in (reloc_b): bump requirement to Python 2.2.
8754
8755         * lily/include/dots.hh (class Dots): make has_interface() static.
8756
8757         * python/convertrules.py (conv): add rule for ly:grob-default-font
8758
8759         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
8760         alphabetical order.
8761
8762         * input/regression/trill-spanner-pitched.ly: new file.
8763
8764         * lily/font-interface-scheme.cc (LY_DEFINE): function
8765         ly:grob-default-font (changed from get-default-font).
8766
8767         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
8768
8769         * lily/note-head.cc (internal_print): if style is not a symbol,
8770         set style to 'default. 
8771         (internal_print): no style suffix if glyph-name-procedure not
8772         set. Default to quarter head.
8773
8774         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
8775
8776         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
8777
8778         * ly/music-functions-init.ly: \pitchedTrill
8779
8780         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
8781
8782         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
8783
8784         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
8785
8786         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
8787
8788         * po/fr.po: update
8789
8790         * po/de.po: update.
8791
8792 2005-07-06  Graham Percival  <gperlist@shaw.ca>
8793
8794         * Documentation/user/changing-defaults.itely: add link
8795         to grob-iterface.
8796
8797         * Documentation/user/advanced-notation.itely: add material
8798         to Setting automatic beam behaviour.  Thanks, Joe!
8799
8800         * Documentation/user/lilypond.itely: change encoding to utf-8.
8801
8802 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
8803
8804         * Documentation/user/advanced-notation.itely (Setting automatic
8805         beam behavior): Correct the documentation of
8806         revert-auto-beam-setting (backportme)
8807
8808 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8809
8810         * lily/ly-module.cc (ly_make_anonymous_module): define
8811         %module-public-interface of module. 
8812
8813         * lily/lily-parser.cc (print_smob): allow printing of parser smob
8814         without lexer.
8815
8816 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8817
8818         * input/regression/fret-diagrams.ly: stretch example.
8819
8820 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8821
8822         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
8823         Fodor).
8824
8825 2005-06-30  Graham Percival  <gperlist@shaw.ca>
8826
8827         * Documentation/topdocs/AUTHORS.texi: update personal web address.
8828
8829         * Documentation/user/examples.itely, lilypond-book.itely:
8830         change \RequirePackage to \usepackage.
8831
8832         * Documentation/user/global.itely: document copyright and tagline.
8833
8834 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8835
8836         * Documentation/user/basic-notation.itely (Transpose): remove link
8837         to nonexistent UntransposableMusic.
8838
8839         * scm/output-svg.scm: remove old definitions.
8840
8841         * scripts/lilypond-book.py (do_file): search for kpsewhich before
8842         invoking.
8843
8844         * python/lilylib.py (search_exe_path): new function.
8845
8846 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8847
8848         * python/lilylib.py (mkdir_p): remove setup_environment()
8849         (backportme)
8850
8851         * buildscripts/mutopia-index.py (headertext): trim text.
8852
8853         * Documentation/topdocs/NEWS.tely (Top): refresh.
8854
8855         * scm/define-markup-commands.scm (wordwrap-string): new function:
8856         split string in paras and words.
8857         (wordwrap-markups): new function.
8858         (wordwrap-stencils): new function. 
8859         (justify): use it.
8860         (wordwrap): use it.
8861         (wordwrap-string): use it
8862         (justify-string): use it.
8863
8864         * scm/lily-library.scm (regexp-split): new function.
8865
8866         * scm/define-markup-commands.scm: remove encoded-simple. 
8867         remove font-markup.
8868         (fontsize): remove old version  of fontsize.
8869         (wordwrap): new markup function. Wrap into paragraphs.
8870
8871         * VERSION: Branch lilypond_2_6
8872         (MINOR_VERSION): go to 2.7.0
8873
8874 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8875
8876         * po/zh_TW.po: update from translation project.
8877
8878 2005-06-28  Graham Percival  <gperlist@shaw.ca>
8879
8880         * scm/midi.scm: compile fix.
8881
8882 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
8883
8884         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
8885         patch. Now, the tempfile module is loaded too, not only used.
8886
8887 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
8888
8889         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
8890         0.05 - 1.00 to 0.25 - 1.00
8891
8892         * scm/midi.scm: moved the default-instrument-equalizer procedure
8893         to just under the insturment-equalizer-alist it takes as an
8894         argument.
8895
8896 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8897
8898         * Documentation/user/advanced-notation.itely (Font selection):
8899         remove CMR note.
8900
8901         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
8902
8903 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8904
8905         * THANKS: Add UTF-8 marker.
8906
8907         * Documentation/user/point-and-click.itely (http): Update: use
8908         lilypond-invoke-editor.  Fix: instruct to use user.js.
8909
8910 2005-06-27  Graham Percival  <gperlist@shaw.ca>
8911
8912         * ly/titling-init.ly: implements printpagenumber, increases
8913         space between dedication and title (to avoid collisions with
8914         "g" and "q" in dedication), and nicer logic about copyright
8915         and instrument fields being printed on the first page.
8916         Thanks Vincent!
8917
8918         * Documentation/user/global.itely: document printpagenumber.
8919
8920 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8921
8922         * Documentation/topdocs/NEWS.tely: Update to 2.6.
8923
8924 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8925
8926         * THANKS: update to 2.6
8927
8928         * VERSION: 2.6.0 released.
8929
8930 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8931
8932         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
8933         rule, errorneously removed probably because of misleading comment.
8934
8935 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8936
8937         * python/lilylib.py (datadir): py2exe comments.
8938
8939         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
8940
8941         * configure.in (reloc_b): make fontconfig REQUIRED.
8942
8943 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
8944
8945         * po/fi.po: add latest translations.
8946
8947 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8948
8949         * ChangeLog: recode utf-8
8950
8951         * Documentation/pictures/lilypond.xpm (Module): edited photo as
8952         logo.
8953
8954         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
8955
8956         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
8957
8958         * python/convertrules.py (do_conversion): don't print program_name
8959         from within a module
8960
8961         * configure.in (reloc_b): bump fontforge requirement to 20050624.
8962
8963         * python/convertrules.py (conv): add 2.6.0 dummy rule.
8964
8965 2005-06-23  Graham Percival  <gperlist@shaw.ca>
8966
8967         * Documentation/user/lilypond-book.itely,
8968         Documentation/user/examples.itely: add \RequirePackage{graphics}.
8969
8970         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
8971         fixes baseline-skip.  Thanks Vincent!
8972
8973         * Documentation/user/advanced-notation.itely, global.itely:
8974         moved "Selecting font sizes" to global, since it deals with
8975         notation font size, not text fonts.
8976
8977 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8978
8979         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
8980         to fonts.
8981
8982 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
8983
8984         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
8985         workaround since /dev/stdin doesn't work on Cygwin. Using a
8986         temporary file in the current directory since latex doesn't
8987         understand the path name to the default TMP in Cygwin (at least on
8988         win XP).
8989         
8990         * Documentation/user/global.itely (Creating titles): Correct
8991         misprint in example. Thanks to Rob Vlasaty.
8992
8993 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8994
8995         * VERSION (PATCH_LEVEL): release 2.5.32
8996
8997         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
8998         variable in lily module
8999
9000         * scm/framework-ps.scm (output-classic-framework): error message
9001         regarding the classic framework.
9002
9003         * Documentation/user/henle-flat-gray.png (Module): new file.
9004
9005         * Documentation/user/baer-flat-gray.png (Module): new file.
9006
9007         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9008         whiteout for markups.
9009
9010         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9011         regex too. This fixes change clef appearance in PDF. 
9012
9013         * ttftool/include/*: remove.
9014
9015         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9016
9017         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9018
9019         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9020
9021         * ttftool/*: remove ttftool subdirectory.
9022
9023         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9024
9025         * lily/ttf.cc (print_header): new file. Convert to type42, using
9026         FreeType to parse the TTF. 
9027
9028         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9029         and post table may differ. Pass around post_nglyphs as well.
9030
9031 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9032
9033         * ly/music-functions-init.ly (musicMap): new music function
9034         musicMap. 
9035         
9036 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9037
9038         * make/mutopia-rules.make: anti-alias-factor = 2
9039
9040         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9041         page switch.
9042
9043         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9044         anti-alias-factor for lilypond-book runs.
9045
9046         * scm/ps-to-png.scm (scale-down-image): new function.
9047         (my-system): new function.
9048         (make-ps-images): blow up GS resolution by anti-alias-factor,
9049         scale down image by anti-alias-factor.  This improves appearance
9050         of bitmaps
9051         (make-ps-images): remove showpage. Fixes spurious empty png at
9052         end.
9053
9054         * scm/framework-ps.scm (write-preamble): downcase filename before
9055         string-matching. Should fix .TTF files (as opposed to ttf files)  
9056
9057         * Documentation/user/tutorial.itely (Running LilyPond for the
9058         first time): separate subsections for windows, macos and unix.  
9059
9060         * Documentation/user/invoking.itely (Updating files with
9061         convert-ly): add MacOS X note.
9062
9063 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9064
9065         * Documentation/user/introduction.itely (Engraving): don't include
9066         file optical-spacing, add directly.
9067
9068         * lily/paper-outputter.cc (file): open file in binary mode. This
9069         fixes OTF embedding on windows.
9070
9071 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9072
9073         * scm/framework-ps.scm (write-preamble): remove debugging output.
9074
9075         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9076
9077         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9078         outdir.
9079         (install-fc-cache): install font cache in installation directories.
9080
9081 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9082
9083         * scm/editor.scm (editor-command-template-alist): Use char iso
9084         column, except for Emacs.
9085         (get-editor-command): Substitute char too (Bertalan Fodor).
9086
9087 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9088
9089         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9090         quoted ~s.  This should fix PNG output on Windows; single quotes
9091         are regular characters on Windows.
9092
9093 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9094
9095         * Documentation/user/basic-notation.itely: include ChoirStaff
9096         in System start delimiters.
9097
9098         * Documentation/user/putting.itely: new doc section on
9099         fixing overlapping notation.
9100
9101 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9102
9103         * Documentation/user/global.itely (Paper size): \paper is in
9104         \book, not \score.
9105
9106         * make/mutopia-rules.make: -ddelete-intermediate-files
9107
9108         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9109
9110 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9111
9112         * ChangeLog: Recode utf-8.
9113
9114         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9115         datadir with .py modules.
9116
9117 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9118
9119         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9120
9121 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9122
9123         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9124         
9125         * scm/framework-ps.scm (write-preamble): remove status check.
9126
9127         * Documentation/user/invoking.itely (Updating files with
9128         convert-ly): remove -o option.
9129
9130         * VERSION (PACKAGE_NAME): release 2.5.31
9131
9132         * scm/framework-ps.scm (write-preamble): use ly:system.
9133         (write-preamble): verbosity.
9134
9135         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9136
9137         * python/convertrules.py: new file. Store conversion rules
9138         separately.
9139
9140 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9141
9142         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9143
9144 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9145
9146         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9147         \musicDisplay 
9148
9149         * Documentation/user/instrument-notation.itely (More stanzas): Add
9150         reference to StanzaNumber.
9151
9152 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9153
9154         * THANKS: separate section for website translators.
9155
9156 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9157
9158         * Documentation/topdocs/INSTALL.texi: update vim info;
9159         thanks Simon Bailey!
9160
9161         * Documentation/user/advanced-notation.itely: included
9162         color names.
9163
9164         * Documentation/user/advanced-notation.itely,
9165         Documentation/usr/notation-appendices.itely: moved
9166         color names into an appendix.
9167
9168 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9169         
9170         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9171
9172         * scm/lily.scm (lambda): initialize program options from here.
9173
9174         * scm/framework-*.scm: add header info.
9175
9176         * lily/main.cc (parse_argv): only set output format to pdf if no
9177         other format specified.
9178
9179         * scm/backend-library.scm (postprocess-output): process
9180         'delete-intermediate-files after running convert-to-*. This fixes
9181         PNG generation when 'delete-intermediate-files is set.
9182         
9183 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9184
9185         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9186         links on website. 
9187
9188 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9189
9190         * Documentation/topdocs/INSTALL.texi,
9191         Documentation/user/lilypond-book.itely: typos.
9192
9193 2005-06-12  Pal Benko  <benkop@freestart.hu>
9194
9195         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9196         added between program name and switch; -b changed to -f not
9197         to generate pdf
9198
9199 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9200
9201         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9202         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9203
9204         * input/sakura-sakura.ly: add \midi.
9205
9206         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9207         iso. python find. 
9208
9209         * ttftool/test.c (main): cosmetics.
9210
9211         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9212
9213         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9214         create a ttf2ps binary.
9215
9216         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9217
9218         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9219         true.
9220
9221 2005-06-11  Graham Percival <gperlist@shaw.ca>
9222
9223         * Documentation/user/lilypond-book.itely: add warning about
9224         the font warnings in dvips.
9225
9226 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9227
9228         * THANKS: typo
9229
9230         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9231
9232         * GNUmakefile.in: remove links for .map, .enc
9233         don't fail if out/ doesn't exist yet.
9234
9235 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9236
9237         * ttftool/util.c (surely_read): return nbytes
9238
9239         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9240
9241         * VERSION (PACKAGE_NAME): release 2.5.30
9242
9243         * flower/string-convert.cc (precision_string): >? fix.
9244
9245         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9246         (make-ps-images): add verbose -q too.
9247
9248         * lily/default-actions.cc (Module): new file. default
9249         {book,score}-print functions.
9250
9251         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9252         pass results via parseStringResult, lookup via ly:parser-lookup.  
9253
9254         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9255         constructors.
9256         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9257         (parse_string): idem.
9258
9259         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9260
9261         * lily/main.cc (main_with_guile): copy be_verbose_global into
9262         ly_set_option()
9263
9264 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9265
9266         * scm/backend-library.scm (postscript->pdf):
9267         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9268         verbose mode.  Search for several names of gs executable.
9269
9270 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9271
9272         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9273         directly. This fixes a massive memory leak, provided you use CVS
9274         GUILE.
9275
9276 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9277
9278         * ly/property-init.ly: Added tieDashed.
9279
9280         * THANKS: Added some bughunters for 2.5.
9281
9282 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9283
9284         * lily/program-option.cc: add debug-gc option.
9285
9286         * lily/include/lily-guile-macros.hh: don't protect exported module
9287         objects.
9288
9289         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9290
9291         * scm/backend-library.scm (postscript->pdf): use
9292         delete-intermediate-files iso. running-from-gui? 
9293
9294         * ttftool/util.c (surely_read): robustness. Allow read() to return
9295         less bytes than requested, as per posix standards.
9296
9297         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9298         program option.
9299
9300         * ttftool/include/ttftool.h ("C"): rename verbosity to
9301         ttf_verbosity. Add to public interface.
9302
9303         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9304
9305         * lily/program-option.cc: rename from scm-option.cc
9306
9307         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9308         (get_help_string): Print pretty help string.
9309
9310         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9311         to snippet preamble.
9312
9313         * lily/scm-option.cc: remove command-line-settings option. Fold
9314         all command-line options plus default settings in a generic
9315         interface. 
9316
9317         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9318         texts too.
9319
9320 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9321
9322         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9323         or EXT_ components non-empty.
9324
9325 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9326
9327         * scm/lily.scm (running-from-gui?): Export.
9328
9329         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9330         output in .ly source directory.
9331
9332 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9333
9334         * ttftool/util.c (surely_lseek): more verbosity.
9335
9336         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9337         compile.
9338
9339         * lily/parser.yy (Repeated_music): remove >? 
9340
9341         * scm/backend-library.scm (postscript->pdf): Support for
9342         -dgs-font-load=1
9343
9344         * scm/framework-ps.scm (write-preamble): make font loading
9345         switchable to GS via --define-default gs-font-load=1
9346
9347 2005-06-09  Graham Percival  <gperlist@shaw.ca>
9348
9349         * Documentation/user/global.itely: added \layout docs.
9350
9351 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9352
9353         * lily/lily-parser-scheme.cc: add unistd.h
9354
9355 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9356
9357         * scm/editor.scm: add char argument.
9358
9359         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
9360
9361         * ttftool/util.c (syserror): use errno for better error reporting.
9362
9363         * lily/source-file.cc (get_counts): new function. Calc column,
9364         line and char count in one go.
9365
9366         * lily/binary-source-file.cc (quote_input): rename to quote_input
9367
9368         * lily/input.cc (set): new function.
9369
9370 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9371
9372         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
9373         directory part of file name to search directory.
9374
9375         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
9376         search path and chdir to DIR if --outname=DIR used.
9377
9378         * lily/main.cc (prepend_env_path): Bugfix: Check directory
9379         existence before appending original path.
9380
9381 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9382
9383         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
9384         file" massage.
9385
9386         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
9387         texinfo.tex is always used.
9388         
9389 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9390
9391         * flower/include/axis.hh: rename from axes.hh
9392
9393         * lily/include/text-interface.hh (Module): rename from text-item.hh
9394
9395         * VERSION (PATCH_LEVEL): release 2.5.29
9396
9397         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
9398
9399         * scm/framework-ps.scm (font-file-as-ps-string): new function.
9400         (handle-macfont): new function. Call fondu for Native mac fonts.
9401
9402         * scm/define-markup-commands.scm (fill-line): handle text-widths =
9403         '() case.
9404
9405 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9406
9407         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
9408         multi-page.  Fix .eps regular expression.
9409
9410 2005-06-07  Graham Percival  <gperlist@shaw.ca>
9411
9412         * Documentation/user/putting.itely: add info on modifying templates.
9413
9414         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
9415         misc small changes.
9416
9417 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9418
9419         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
9420
9421         * scripts/lilypond-ps2png.scm
9422
9423         * VERSION (PACKAGE_NAME): release 2.5.28
9424
9425 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9426
9427         * lily/main.cc (prepend_env_path): Do not append /, that does not
9428         work.  Localedir lives in datadir, not in prefix.
9429
9430         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
9431         hack for windows.
9432
9433         * flower/include/file-cookie.hh: Compile fix.
9434
9435 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9436
9437         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
9438
9439         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
9440         system primitives.
9441         (gulp-port): using read-string!/partial. We don't want to read an
9442         entire PS file  (GUILE 1.6 limits strings to 16M) 
9443
9444         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
9445         properties. Add font-interface. 
9446
9447         * scm/define-grob-properties.scm (all-user-grob-properties):
9448         remove old bracket properties.
9449
9450         * scm/x11-color.scm: reformat. 
9451
9452         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
9453         LedgerLineSpanner if new StaffSymbol is found. 
9454
9455         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
9456         staff-symbol for finishing staff. 
9457
9458         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
9459
9460         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
9461         change black to currentColor everywhere. This fixes color support
9462         in SVG.
9463
9464 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
9465
9466         * input/regression/fret-diagrams.ly: new file to test fret diagram
9467         capability
9468
9469         * scm/output-tex.scm: remove white-dot and white-text
9470
9471         * scm/output-ps.scm: remove white-dot and white-text
9472
9473         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
9474         using ly:stencil-in-color instead
9475         (draw-dots) : remove call to white-dot
9476
9477 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9478
9479         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
9480         support.
9481
9482         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
9483
9484         * flower/include/file-cookie.hh: new file. lily_cookie extension 
9485
9486         * flower/file-cookie.cc: new file. lily_cookie extension.
9487         
9488 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9489
9490         * scm/editor.scm (editor-command-template-alist): Add syn
9491         editor (Jaap [de Vos]).
9492
9493 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
9494
9495         * scripts/lilypond-ps2png.scm:
9496         * scm/ps-to-png.scm: New file.
9497
9498         * scm/backend-library.scm (postscript->png): Use it.
9499
9500         * scripts/lilypond-ps-to-png.py: Remove file.
9501
9502         * python/lilylib.py (get_bbox, make_ps_images): Remove.
9503
9504 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9505
9506         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
9507
9508         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
9509         start on grace moment. Fixes autobeam-grace.ly.
9510
9511         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
9512         process anything unless we're at the end of a pending beam. Fixes
9513         syncopated 8ths beamed across a beat.
9514
9515 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
9516
9517         * scm/editor.scm (editor-command-template-alist): Start emacs if
9518         emacslient fails.
9519
9520         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
9521
9522         * flower/file-path.cc (is_file, is_dir): Export.
9523
9524         * lily/main.cc (prepend_env_path, set_env_file): Use them.
9525
9526 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
9527
9528         * lily/easy-notation.cc: Added include cctype to correct
9529         compilation error.
9530
9531 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9532
9533         * scm/backend-library.scm (postscript->pdf): set resolution to
9534         1200, so bitmap fonts aren't that ugly. 
9535
9536         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
9537
9538         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
9539         parent if we have a notehead. Fixes incorrect offsets when
9540         Paper_column is very wide in the X direction.
9541
9542         * input/regression/font-family-override.ly (Module): new file.
9543
9544         * scm/font.scm (make-pango-font-tree): new function.
9545
9546         * lily/beam.cc (before_line_breaking): remove warning about less
9547         than 2 visible stems. We still get a warning when there is only
9548         one stem.
9549
9550 2005-06-01  Werner Lemberg  <wl@gnu.org>
9551
9552         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
9553         correctly.
9554
9555 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9556
9557         * lily/slur-scoring.cc (generate_avoid_offsets): new
9558         function. Generate avoid offsets once per slur.
9559
9560         * lily/slur.cc (add_extra_encompass): add dependency to
9561         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
9562
9563         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
9564         too. Fixes inf error with added bass notes.
9565
9566         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
9567         argument anymore.
9568
9569         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
9570
9571         * input/tutorial/lbook-latex-test.tex: add line length test.
9572
9573         * scripts/lilypond-book.py (set_default_options): new
9574         function. Call this before dissecting snippets, so linewidth
9575         settings reach the snippets.
9576
9577 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9578
9579         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
9580
9581 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9582
9583         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
9584
9585 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9586
9587         * stepmake/aclocal.m4: More autopackage friendliness.
9588
9589 2005-05-31  Graham Percival  <gperlist@shaw.ca>
9590
9591         * Documentation/index.html.in: remove link to LSR.
9592
9593         * Documentation/user/global.itely: remove duplicate
9594         "dedication" \header{} section.
9595
9596 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9597
9598         * VERSION (PACKAGE_NAME): release 2.5.27.
9599
9600         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
9601         too. Plugs memory leak.
9602
9603         * make/lilypond.fedora.spec.in (Group): remove
9604         lilypond-pdfpc-helper.
9605
9606         * scripts/GNUmakefile (SEXECUTABLES): remove
9607         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
9608
9609         * scm/font.scm (make-century-schoolbook-tree): add Mono as
9610         'typewriter family.
9611
9612         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
9613         memory leak.
9614
9615         * lily/parser.yy (score_body): don't clone Score, that's done in
9616         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
9617
9618         * lily/score-engraver.cc (derived_mark): new function.
9619         (initialize): unprotect Paper_score. This fixes a memory leak.
9620
9621         * lily/score-performer.cc (derived_mark): new function.
9622
9623         * lily/score-translator.cc (get_output): use SCM for get_output() call.
9624
9625         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
9626         spurious warning.
9627
9628         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
9629         serif.
9630
9631 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9632
9633         * configure.in (reloc_b): Add --enable-relocation.
9634
9635 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9636
9637         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
9638
9639         * input/regression/alignment-order.ly: add Staff example.
9640
9641 2005-05-31  John Mandereau   <john.mandereau@free.fr>
9642
9643         * po/fr.po: update.
9644
9645 2005-05-31  Graham Percival  <gperlist@shaw.ca>
9646
9647         * Documentation/index.html.in: add link to LSR.
9648
9649 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9650
9651         * scm/define-stencil-commands.scm (Module): new file. Register all
9652         allowed stencil expression heads in a central place.
9653
9654         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
9655         ly:make-stencil
9656
9657         * lily/stencil-expression.cc (all_stencil_heads): registering
9658         stencil expressions.
9659
9660         * lily/stencil-interpret.cc: new file. Stencil expression
9661         interpreting.
9662
9663         * input/xiao-haizi-guai-guai.ly: move file back.
9664
9665 2005-05-30  Graham Percival  <gperlist@shaw.ca>
9666
9667         * Documentation/user/advanced.itely, converters.itely,
9668         instrument-notation.itely, lilypond-book.itely: misc small
9669         changes.
9670
9671 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9672
9673         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
9674
9675         * make/lilypond.fedora.spec.in: Fix source url.
9676
9677         * cygwin: Update from mingw patches.
9678
9679         * scm/editor.scm (editor-command-template-alist): Use jedit
9680         -reuseview (Bertalan), add uedit (Patrick Huberts).
9681
9682         * input/xiao-hai-zi-guai-guai.ly: Rename from
9683         xiao-haizi-guai-guai.ly.
9684
9685         * input/*: Reindent, do not use TAB.
9686
9687         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
9688         white background.
9689
9690 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
9691
9692         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
9693         numerical overflow error.
9694
9695 2005-05-29 Laura Conrad <lconrad@laymusic.org>
9696         
9697         * abc2ly.py: fix to syntax error in multi-part output.
9698
9699 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9700
9701         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
9702         with disappearing span bars when alignAboveContext is active
9703
9704         * lily/property-iterator.cc (check_grob): use is-grob?
9705         object-property. Fixes crash-key-sig-font-size.ly. 
9706
9707 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9708
9709         * lily/bar-line.cc (print): don't round barlines; this produces
9710         odd aliasing effects in Acroread.
9711
9712         * lily/timing-engraver.cc (process_music): robustness fix.
9713
9714         * lily/context-def.cc (filter_engravers): bugfix.
9715
9716 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9717
9718         * lily/lilypond.rc.in: Add ly-icon.
9719
9720         * lily/GNUmakefile: 
9721         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
9722         rules.
9723
9724 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9725
9726         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
9727
9728         * ps/music-drawing-routines.ps: 
9729
9730         * scm/output-ps.scm: remove draw ez_ball.
9731
9732         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9733         EasyNotation context definition.
9734
9735         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
9736         Text_interface and color for making easy note heads.
9737
9738         * lily/stencil.cc (with_color): new function.
9739
9740         * ps/music-drawing-routines.ps: remove draw_zigzag_line
9741
9742         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
9743         output routine. Zigzag now works in SVG too.
9744
9745         * scm/output-tex.scm (filledbox): idem.
9746
9747         * scm/output-svg.scm (filledbox): idem.
9748
9749         * scm/output-ps.scm (lily-def): remove horizontal-line. 
9750
9751         * lily/lookup.cc (horizontal_line): use draw-line. 
9752
9753         * lily/system-start-delimiter.cc: remove old staff bracket code.
9754
9755         * mf/feta-haak.mf: further tweaks.
9756
9757         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
9758
9759         * mf/feta-generic.mf: include feta-haak.
9760
9761         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
9762
9763         * scm/framework-ps.scm (write-preamble): only load fonts if their
9764         filename is a string. 
9765
9766 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9767
9768         * scm/output-svg.scm (circle): support circle.
9769         (bracket): stub for bracket.
9770
9771         * scripts/lilypond-book.py (main): make sure --psfonts warning is
9772         correct.
9773
9774 2005-05-26  Graham Percival  <gperlist@shaw.ca>
9775
9776         * Documentation/user/lilypond.tely, advanced-notation.itely,
9777         basic-notation.itely, instrument-notation.itely, global.itely,
9778         introduction.itely, tutorial.itely: rearranging, editing,
9779         clean-up.
9780
9781         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
9782         for compiling on FreeBSD.
9783
9784 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9785
9786         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
9787         otf files.
9788
9789         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
9790         bugfixes.
9791
9792         * VERSION: 2.5.26 released.
9793
9794         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
9795
9796 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
9797
9798         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
9799         if printpagenumber is false.
9800
9801 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9802
9803         * lily/font-config.cc (init_fontconfig): comment out FontConfig
9804         cache warning.
9805
9806         * lily/tie.cc (print): support dotted ties.
9807         
9808 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9809
9810         * scm/define-grobs.scm (all-grob-descriptions): switch off
9811         debugging
9812         (all-grob-descriptions): Arpeggio has Y-extent.
9813
9814         * scm/define-music-properties.scm (all-music-properties): document
9815         length-callback and start-callback as "read-only".
9816
9817         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
9818         length-callback after creation. 
9819
9820         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
9821         compressmusic -> compressMusic.
9822
9823         * ly/music-functions-init.ly (oldaddlyrics): idem.
9824
9825         * lily/parser.yy: NewLyricCombineMusic ->
9826         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
9827
9828 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
9829
9830         * ly/Welcome_to_LilyPond.ly: typo.
9831
9832 2005-05-24  Graham Percival  <gperlist@shaw.ca>
9833
9834         * Documentation/user/lilypond.tely: move changing-defaults to be
9835         before global issues.
9836
9837         * Documentation/user/basic-notation.itely: move Transpose section
9838         here from advanced/Other.
9839
9840         * Documentation/user/changing-defaults.itely,
9841         advanced-notation.itely: move Fonts to advanced, edit.
9842
9843 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9844
9845         * lily/parser.yy (bare_int): remove rule.  From now on, we require
9846         # before negative integers.
9847
9848 2005-05-23  Graham Percival  <gperlist@shaw.ca>
9849
9850         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
9851
9852         * Documentation/user/lilypond.tely: change Unified index to
9853         LilyPond index.
9854
9855         * Documentation/user/advanced-notation.itely,
9856         instrument-notation.itely: editing.
9857
9858 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
9859
9860         * scm/lily.scm (lilypond-all): Bugfix: return failed.
9861
9862         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
9863
9864 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
9865
9866         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
9867         ly:port-move.  Needs to be stderr-specific on mingw.
9868         Run fixcc.
9869
9870 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
9871
9872         * lily/general-scheme.cc (ly:port-move): Remove.
9873
9874         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
9875         windows.
9876
9877         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
9878         variables.  This eliminates the need for a gs.bat wrapper, which
9879         opens a console.
9880
9881         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
9882         * scm/lily.scm (running-from-gui?): 
9883         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
9884         artifact of not compiling with -mwindows.
9885
9886         * scm/editor.scm: Define PLATFORM.
9887
9888 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9889
9890         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
9891         can start to cut & paste lilypond-book fragments.  
9892
9893         * scm/define-music-types.scm (music-descriptions): remove
9894         UntransposableMusic
9895
9896 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9897
9898         * scm/output-ps.scm (glyph-string): remove / before CIDs.
9899
9900 2005-05-20  Graham Percival  <gperlist@shaw.ca>
9901
9902         * Documentation/user/instrument-notation.itely: remove *Engraver.
9903
9904         * Documentation/user/advanced-notation.itely: edit, rearrange.
9905
9906 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9907
9908         * scm/output-ps.scm (glyph-string): take cid? argument. Use
9909         findresource iso. findfont for CID CFF fonts.
9910
9911         * VERSION (PACKAGE_NAME): release 2.5.25
9912
9913         * ly/Welcome_to_LilyPond.ly: add  \version
9914
9915 2005-05-20  Graham Percival  <gperlist@shaw.ca>
9916
9917         * Documentation/user/programming-interface.itely: move
9918         \displayMusic into its own section.
9919
9920         * Documentation/user/basic-notation.itely: finish editing.
9921
9922 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9923
9924         * flower/file-path.cc (find): don't throw away file_name.dir, but
9925         append to it. Fixes \include with directories.
9926
9927         * flower/include/file-path.hh (class File_path): don't derive from
9928         Array<String>.
9929
9930         * flower/include/file-name.hh (class File_name): remove to_str0()
9931
9932         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
9933         Hara_kiri_engraver in separate file.
9934
9935         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
9936         translation went wrong. Fixes vertically translated slurs.
9937
9938 2005-05-19  Graham Percival  <gperlist@shaw.ca>
9939
9940         * Documentation/user/basic-notaton.itely: editing.
9941
9942 2005-05-18  Graham Percival  <gperlist@shaw.ca>
9943
9944         * Documentation/user/macros.itexi, basic-notation.itely:
9945         add @commonprop (commonly used properties) macro.
9946
9947 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9948
9949         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
9950
9951         * scripts/lilypond-book.py (invokes_lilypond): new function
9952         (main): only run fontextract if invokes_lilypond() is true.
9953
9954         * lily/function-documentation.cc (ly_add_function_documentation):
9955         duh, use !=
9956
9957         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
9958
9959         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
9960
9961         * scm/lily.scm (running-from-gui?): lowercase Darwin.
9962
9963         * lily/function-documentation.cc (ly_add_function_documentation):
9964         use scm_hash_table_p() for checking.
9965
9966 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9967
9968         * Documentation/user/advanced-notation.itely (Text scripts):
9969         Change nonexisting @internalsref{Text markup} to @ref{Text
9970         markup}.  Change @internalsref{Text script} to
9971         @internalsref{TextScript}.
9972
9973         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
9974
9975 2005-05-17  Graham Percival  <gperlist@shaw.ca>
9976
9977         * Documentation/user/tutorial.itely, basic-notation.itely,
9978         changing-defaults.itely: remove duplicate cindex entries
9979         that appear on the same page.
9980
9981         * scm/define-grobs.scm: change default padding for TextSpanner.
9982
9983         * Documentation/topdocs/AUTHORS.texi: update email address.
9984
9985         * Documentation/user/global.itely: add info about \include.
9986
9987 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9988
9989         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
9990         when running-from-gui.
9991
9992         * scm/editor.scm (get-editor): Add platform defaults.
9993
9994         * scm/backend-library.scm (postscript->pdf): Typo.
9995
9996 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9997
9998         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
9999
10000         * lily/font-config.cc (init_fontconfig): add warning about cache.
10001
10002 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10003
10004         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10005
10006 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10007
10008         * lily/horizontal-bracket.cc (print): Take care of the direction
10009         property so brackets above the stave point downwards. 
10010
10011         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10012         for HorizontalBracket so it doesn't end up within the stave.
10013
10014 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10015
10016         * lily/GNUmakefile (default): Typo.
10017
10018         * scm/lily.scm (PLATFORM): Export.
10019
10020         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10021         load-font-via-GS, ttftool or fopencookie is broken on windows.
10022         
10023         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10024         -dSAFER, that is broken on windows.
10025
10026 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10027
10028         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10029         for FlexLexer.h
10030
10031         * scripts/lilypond-invoke-editor.scm: remove stray -
10032
10033 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10034
10035         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10036         Fixes deprecation warning.
10037
10038         * flower/include/string.icc (to_string): Only inline if
10039         -DSTRING_UTILS_INLINED.
10040
10041         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10042         name.  Remove windows comment.
10043
10044         * scm/editor.scm (slashify): New function.
10045         (get-editor-command): Use it.
10046         (get-command-template): Do not alter editor command if
10047         environment value includes `%(file)s' magic.
10048
10049         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10050         (dissect-uri): Use it.
10051         (unquote-uri): Bugfix.
10052
10053 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10054
10055         * scm/framework-ps.scm (write-preamble): add TTF rule.
10056
10057         * Documentation/topdocs/README.texi (Top): remove note about
10058         xdelta.
10059
10060         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10061         requirement.
10062
10063         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10064         function. Figure out where FlexLexer.h lives
10065
10066         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10067         
10068 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10069
10070         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10071         with Windows root in file name.
10072
10073         * scm/backend-library.scm (ly:system): Only redirect output (using
10074         system and shell, ugh) if /dev/null is writable.
10075
10076         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10077         windows icon.
10078
10079         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10080         on Mingw.
10081
10082         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10083         click.
10084
10085         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10086         use result of stat when available.
10087
10088         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10089         absolute file name and root.
10090
10091         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10092
10093         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10094
10095         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10096         slashes in file name.
10097
10098 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10099
10100         * Documentation/user/preface.itely (Preface): Run
10101         texinfo-all-menus-update.
10102
10103         * scm/editor.scm (get-editor-command): Bugfix: allow full
10104         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10105
10106         * Documentation/pictures/lilypond-48.xpm: New file.
10107
10108         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10109
10110         * ly/Welcome_to_LilyPond.ly: New file.
10111
10112         * lily/main.cc (main): Only identify if we have a terminal.
10113
10114         * scm/backend-library.scm (postscript->png)
10115         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10116         non-/bin/sh).
10117
10118 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10119
10120         * Documentation/topdocs/AUTHORS.texi: polish, update.
10121
10122 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10123
10124         * Documentation/user/preface.itely (Notes for version 2.6): new
10125         notes for 2.6
10126
10127         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10128         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10129         is not fully contained" warnings.
10130
10131         * lily/slur-scoring.cc (get_bound_info): remove warning.
10132
10133         * lily/staff-symbol-engraver.cc (process_music): start initial
10134         spanner in process_music(). This fixes overrides of StaffSymbol
10135         properties.
10136
10137         * scm/framework-pdf.scm (Module): remove.
10138
10139         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10140
10141         * lily/ambitus-engraver.cc: formatting cleanups.
10142
10143         * mf/feta-solfa.mf (Module): remove.
10144
10145         * ChangeLog: more details about contributions.
10146
10147 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10148
10149         * lily/align-interface.cc (align_elements_to_extents): warn if
10150         called too early. Fixes: disappearing-staff-lines.ly
10151
10152         * VERSION (PACKAGE_NAME): release 2.5.24
10153
10154 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10155
10156         * stepmake/aclocal.m4: Typo.
10157
10158         * flower/string.cc (substitute): Take two strings or two
10159         characters.  Update callers.
10160
10161 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10162
10163         * flower/file-name.cc (File_name): Slashify.
10164
10165         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10166
10167         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10168
10169         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10170
10171         * configure.in (gui_b): Use it.
10172
10173         * lily/lilypond.rc.in: New file.
10174
10175         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10176
10177 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10178
10179         * Documentation/user/advanced-notation.itely: edit of Text
10180         section; clarify text scripts vs. text markup.
10181
10182 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10183
10184         * lily/multi-measure-rest-engraver.cc
10185         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10186         separation items on start. Fixes mm rests in start of score.
10187
10188         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10189         don't access StaffSymbol if not there.
10190         Fixes: crash-staff-symbol-engraver.ly.
10191
10192         * lily/instrument-name-engraver.cc (class
10193         Instrument_name_engraver): data member first_. Create
10194         InstrumentName on start. 
10195
10196 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10197
10198         * Documentation/user/instrument-notation.itely: add guitar
10199         position.
10200
10201         * Documentation/user/introduction.itely,
10202         Documentation/user/lilypond.tely,
10203         Documentation/user/tutorial.itely: begin pruning
10204         unused (duplicated) cindex entries and misc cleanup.
10205
10206 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10207
10208         * input/test/volta-chord-names.ly: Bring the explanation up to
10209         date.
10210
10211 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10212
10213         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10214         Specify `@documentencoding utf-8' for html, ignore warnings.
10215
10216 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10217
10218         * THANKS: Added bughunters.
10219
10220 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10221
10222         * lily/main.cc: update help string for `lilypond -H'.
10223
10224         * po/fi.po: update.
10225         
10226 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10227
10228         * Documentation/user/advanced-notation.itely: minor fixes.
10229
10230 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10231
10232         * scm/editor.scm: New module.
10233
10234         * scm/lily.scm (gui-main): Use it.
10235
10236         * scm/framework-gnome.scm (spawn-editor): Use it.
10237
10238         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10239
10240 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10241
10242         * scm/framework-ps.scm (load-font-via-GS):  new function.
10243
10244         * lily/pango-font.cc (pango_item_string_stencil): add support for
10245         CID keyed font.
10246
10247         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10248
10249 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10250
10251         * Documentation/user/basic-notation.itely: add @ref.
10252
10253         * Documentation/user/advanced-notation.itely: add example
10254         of 5/8 beaming.
10255
10256 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10257
10258         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10259
10260         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10261         going through ps2pdf wrappers.
10262
10263 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10264
10265         * Documentation/user/instrument-notation.itely: petrucci note
10266         heads: updated docu
10267
10268         * input/regression/note-head-style.ly: updated regression test;
10269         indentation fixes
10270
10271         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10272         heads as default
10273
10274         * mf/parmesan-heads.mf: minor editing; use musicological names
10275         (rather than optical description) as note head names
10276
10277         * scm/output-lib.scm: complete petrucci heads
10278
10279 2005-05-09  Pal Benko  <benkop@freestart.hu>
10280
10281         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10282         heads, but bigger)
10283
10284 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10285
10286         * lily/main.cc (main_with_guile): Remove no files check.
10287
10288         * lily/main.cc (ly:usage): Export to Scheme.
10289
10290         * scm/lily.scm (no-files-handler): New function.
10291
10292         * scm/lily.scm (lilypond-main): Use it.
10293
10294         * configure.in (gui_b): Add mbrtowc checking.
10295         Resurrect [utf8/]wchar.h checking.
10296
10297 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10298
10299         * Documentation/user/advanced-notation.itely (Metronome marks):
10300         Add link to the program reference for MetronomeMark
10301
10302         * Documentation/user/lilypond-book.itely (An example of a
10303         musicological document): Correct the example using psfonts 
10304
10305 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10306
10307         * po/fi.po: update after a lesson how to update entries against
10308         source.
10309         
10310         * po/TODO: document the lesson.
10311
10312 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10313
10314         * configure.in (gui_b): remove wcrtomb checking.
10315
10316         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10317         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10318
10319 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10320
10321         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10322         keep Scheme expressions and strings unmodified when doing the
10323         conversion to postfix notation for slurs and beams. Should
10324         hopefully solve most related conversion problems. 
10325
10326         * Documentation/user/lilypond-book.itely : Clarify and correct how
10327         to call dvips with -h psfonts.
10328
10329 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10330
10331         * Documentation/user/instrument-notation.itely (Entering lyrics):
10332         Typo.  Fixes build.
10333
10334 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10335
10336         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10337
10338         * Documentation/user/lilypond.tely, lilypond-book.itely,
10339         tutorial.itely: change references to 2.5.x to 2.6.x.
10340
10341         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10342         vs \lyricmode.
10343
10344         * Documentation/user/invoking.itely: remove old info about
10345         lilypond-profile.
10346
10347         * Documentation/topdocs/INSTALL.texi: remove old info about
10348         lilypond-profile, add warning about needing international fonts
10349         to build docs.
10350
10351 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10352
10353         * lily/include/grob-info.hh (class Grob_info): make data member
10354         private. Changes throughout.
10355
10356         * input/regression/alignment-order.ly: new file. 
10357
10358         * lily/vertical-align-engraver.cc (acknowledge_grob): read
10359         alignAboveContext and alignBelowContext
10360
10361 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10362
10363         * lily/pfb.cc (LY_DEFINE): add cast.
10364
10365         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
10366         matches .otf
10367         (write-preamble): warn about unknown fonts.
10368
10369         * lily/pfb.cc (Module): new function ly:otf->cff
10370
10371         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
10372         (get_otf_table): new function.
10373
10374 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10375
10376         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
10377         iso. ps2png.
10378
10379 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
10380
10381         * po/fi.po: apply second round of update.
10382
10383 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10384
10385         * scm/x11-color.scm (make-x11-color-handler): don't use
10386         #\sp. Apparently doesn't work on all platforms. 
10387
10388 2005-05-06  Graham Percival  <gperlist@shaw.ca>
10389
10390         * Documentation/user/advanced-notation.itely, putting.itely,
10391         tutorial.itely, global.itely, introduction.itely: really minor fixes.
10392
10393 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10394
10395         * VERSION (PACKAGE_NAME): release 2.5.23
10396
10397 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10398
10399         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
10400         convert to utf-8.
10401
10402         * THANKS: Add translators for this release, convert to utf-8.
10403
10404         * mf/GNUmakefile (MFTRACE_FLAGS):
10405         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
10406         outdir as option (WAS: hardcoded).
10407
10408 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10409
10410         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
10411         finished_span_
10412
10413         * THANKS: add Hans Forbrich.
10414
10415         * Documentation/topdocs/NEWS.tely (Top): document new feature.
10416
10417         * Documentation/user/basic-notation.itely (Staff symbol): document
10418         start/stop staff. Reference to ossia.ly
10419
10420         * input/test/ossia.ly: new example using stop and startStaff.
10421
10422         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
10423         in other words, don't create "|" barline at start of the score.
10424         (start_translation_timestep): don't set whichBar for start of score.
10425
10426         * input/regression/staff-halfway.ly: use new functionality.
10427
10428         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
10429         start and stop staff based on events.
10430
10431         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
10432
10433         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
10434
10435 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10436
10437         * Documentation/user/programming-interface.itely (How markups work
10438         internally ): remove \encoding reference.
10439
10440 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
10441
10442         * scripts/convert-ly.py: Attempt to do a smarter update of 
10443         text markups from versions < 1.9.0 with arbitrary nesting.
10444
10445 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
10446
10447         * po/fi.po: convert to utf-8, and update.
10448
10449 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10450
10451         * make/lilypond.suse.spec.in: update from suse 2.4 package.
10452
10453         * lily/*.cc: more <? >? to min/max changes
10454
10455         * lily/include/interpretation-context-handle.hh: rename
10456         Interpretation_context_handle to Context_handle.
10457
10458 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
10459
10460         * input/regression/GNUmakefile (local_delete): use `find` together 
10461         with `xargs` to avoid too long argument-lists in cmd line.
10462
10463 2005-05-04  Graham Percival  <gperlist@shaw.ca>
10464
10465         * Documentation/user/introduction.itely: updates "About this manual".
10466
10467         * Documentation/user/advanced-notation.itely,
10468         invoking.itely: minor fixes.
10469
10470 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10471
10472         * COPYING: add font exception. Update FSF address. 
10473
10474         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
10475         should be taken without child context.
10476
10477         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
10478
10479         * scm/define-markup-commands.scm (triangle): new command, as
10480         robust replacement for unicode Delta/Triangle.
10481
10482 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10483
10484         * ps/music-drawing-routines.ps: add fillp argument.
10485
10486         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
10487
10488         * lily/font-config.cc (init_fontconfig): don't add cff/
10489
10490         * VERSION (PACKAGE_NAME): release 2.5.22
10491
10492         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
10493
10494         * lily/grace-engraver.cc (consider_change_grace_settings): use
10495         is_alias(). Fixes problem with CueVoice grace notes. 
10496
10497         * lily/simultaneous-music-iterator.cc (construct_children): call
10498         Music_iterator::quit() for iterators that start out invalid. This
10499         fixes indefinitely continuing contexts.
10500
10501         * buildscripts/substitute-encoding.py: new file
10502
10503         * Documentation/user/basic-notation.itely (Basic polyphony): fix
10504         missing @end 
10505
10506         * scripts/lilypond-book.py (write_if_updated): print file name.
10507
10508         * Documentation/user/basic-notation.itely (Explicitly
10509         instantiating voices): idem.
10510
10511         * Documentation/user/advanced-notation.itely (Text spanners):
10512         remove stray { } 
10513
10514         * lily/context.cc (default_child_context_name): the default child
10515         is now first in accepts_list_.
10516
10517         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
10518         \defaultchild to all relevant contexts.  This fixes:
10519         drums-pitch.ly.
10520
10521         (Probably also fixes similar problems with ancient
10522         transcriptions getting CueVoices instead of the desired voices.)
10523  
10524         * lily/context-def.cc (get_default_child): new function.
10525         (get_accepted): place default child in front of list.
10526
10527         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
10528
10529         * lily/include/context-def.hh (struct Context_def): add
10530         default_accept_
10531
10532 2005-05-03  Graham Percival  <gperlist@shaw.ca>
10533
10534         * scm/define-grobs.scm: remove "remove-first" line, since
10535         the absent property is set to #f anyway.
10536
10537         * Documentation/user/basic-notation.itely,
10538         advanced-notation.itely, instrument-notation.itely: minor
10539         fixes.
10540
10541         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
10542
10543         * Documentation/user/advanced-notation.itely,
10544         changing-defaults.itely: consolidate Text stuff in
10545         advanced notation.
10546
10547         * Documentation/user/global.itely: better docs for \header.
10548
10549         * Documentation/user/putting.itely: new chapter; placeholder
10550         for future expansion.
10551
10552         * Documentation/user/examples.itely: moved "suggestions for
10553         writing LP files" section into putting.itely.
10554
10555         * Documentation/user/lilypond.itely: added new chapter,
10556         fixed the short table of contents.
10557
10558 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10559
10560         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
10561         infinity for unfeasible beams.
10562
10563         * make/lilypond.fedora.spec.in (Group): idem.
10564
10565         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
10566
10567         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
10568
10569         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
10570         fonts directly.
10571
10572         * buildscripts/gen-emmentaler-scripts.py (i): idem.
10573
10574         * mf/GNUmakefile: remove all CFF rules.
10575
10576         * scm/framework-ps.scm (ps-embed-cff): reinstate.
10577
10578         * lily/open-type-font-scheme.cc (LY_DEFINE):
10579         new function ly:otf-font-table-data.
10580         (LY_DEFINE): new function otf-font?
10581
10582 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10583
10584         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
10585         ($(outdir)/Fontmap.lily): idem.
10586
10587         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
10588         for PFAEmmentaler-XXX.pfa. 
10589
10590         * Documentation/user/music-glossary.tely (accidental): NL
10591         translation of accidental.
10592
10593 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
10594
10595         * flower/include/international.hh: Bugfix: include "string.hh".
10596
10597         * lily/include/mingw-compatibility.hh: New file.
10598
10599         * flower/include/libc-extension.hh (memrev): Rename from strrev.
10600
10601         * configure.in: Search for mingw wcrtomb library.
10602
10603 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
10604
10605         * scripts/convert-ly.py: Bug fix
10606
10607         * Documentation/user/changing-defaults.itely (Common tweaks):
10608         Added example where the context has to be specified explicitly
10609         (MetronomeMark). 
10610
10611 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10612
10613         * scripts/lilypond-book.py (ly_options): set timing to #f for
10614         notime option.
10615
10616         * scripts/convert-ly.py (conv): typo.
10617
10618         * flower/*.cc: remove <? and >?
10619         
10620         * lily/*.cc: remove <? and >?
10621
10622         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
10623         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
10624         editor.
10625
10626 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10627
10628         * lily/part-combine-engraver.cc: add space to variable list.
10629
10630 2005-04-30  Graham Percival  <gperlist@shaw.ca>
10631
10632         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
10633         remove-first to false (matches docs)
10634
10635         * Documentation/user/advanced-notation.itely: corrected docs
10636         concerning remove-first.
10637
10638 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
10639
10640         * lily/part-combine-engraver.cc: make sure that the relevant
10641         properties are included in the documentation.
10642
10643 2005-04-28  Graham Percival  <gperlist@shaw.ca>
10644
10645         * Documentation/user/lilypond-book.itely: Bernard's docs
10646         for \betweenLilyPondSystem.
10647
10648 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10649
10650         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
10651         remarks.
10652
10653 2005-04-28  Pal Benko  <benkop@freestart.hu>
10654
10655         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
10656         only on vertical lines of flexa shape, and use a constant
10657         thickness value for horizontal lines (patch slightly modified by
10658         Jürgen Reuter)
10659
10660         * lily/include/mensural-ligature.hh: make 2 comments clearer
10661
10662 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
10663
10664         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
10665         to need_extra_horizontal_space; bugfix: use class scope to avoid
10666         global namespace pollution
10667
10668         * Documentation/user/instrument-notation.itely (ligatures): added
10669         comment on possible future syntax change and how to work around
10670
10671         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
10672         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
10673         intervals (fixes agnus dei example)
10674
10675         * Documentation/user/instrument-notation.itely (white mensural
10676         ligatures): selected a more illustrative example
10677
10678 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
10679
10680         * Documentation/index.html.in: specify utf-8 charset in meta content.
10681
10682 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10683
10684         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
10685         empty 2nd page for single page.
10686
10687         * scm/lily.scm: remove p&c definitions.
10688
10689         * po/zh_TW.po (Module): new translation.
10690
10691         * lily/lily-guile.cc (ly_chain_assoc): remove.
10692
10693         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
10694         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
10695
10696 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10697
10698         * lily/beaming-info.cc: remove infinity_i
10699
10700         * scripts/abc2ly.py (out_filename): fix thinko with \version.
10701
10702 2005-04-26  Graham Percival  <gperlist@shaw.ca>
10703
10704         * Documentation/user/basic-notation.itely,
10705         instrument-notation.itely, advanced-notation.itely,
10706         changing-defaults.itely: minor fixes.  Added docs
10707         for colors to advanced-notation.itely.
10708
10709         * Documentation/user/advanced-notation.itely: fixed compile
10710         problem and added Bernard's x11-color doc patch.
10711
10712 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
10713
10714         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
10715         alright this time round.
10716
10717 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10718
10719         * Documentation/topdocs/INSTALL.texi (Top): idem.
10720
10721         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
10722
10723         * VERSION (MAJOR_VERSION): release 2.5.21
10724
10725         * scm/output-ps.scm (grob-cause): bugfix.
10726
10727 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
10728
10729         * cygwin/*: Update.
10730
10731         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
10732         stuff.
10733
10734         * scm/output-ps.scm (grob-cause): Bugfix.
10735
10736         * scm/lily.scm (ly:load): Remove x11-color.
10737
10738         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
10739         quote executable, fixes getting version from program --with
10740         --options.
10741         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
10742         $ac_exeect.
10743
10744         * Documentation/user/GNUmakefile: Only build music-glossary with
10745         rendered lilypond snippets during web.
10746
10747 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10748
10749         * po/de.po: update.
10750
10751         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
10752
10753 2005-04-22  Laura Conrad <lconrad@laymusic.org>
10754  
10755         * scripts/abc2ly:
10756         second title line append with punctuation dash character;
10757         encode abc2ly python strings in utf-8
10758        
10759 2005-04-21  Laura Conrad <lconrad@laymusic.org>
10760
10761         * scripts/abc2ly fix chords (again)
10762  
10763 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
10764
10765         * scm/x11-color.scm: new file
10766         All x11 color names can be accessed with:
10767         #(x11-color 'ColorName),
10768         #(x11-color "ColorName") or:
10769         #(x11-color "color name")
10770         If the x11 color name is not recognised then it defaults
10771         to black
10772
10773         * scm/lily.scm: amended to call scm/x11-color.scm
10774
10775 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10776
10777         * Documentation/user/invoking.itely (Reporting bugs): comment out
10778         reference to online PNG bug repository.
10779
10780 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10781
10782         * lily/translator-scheme.cc (ly:translator-property): Remove.
10783         Update callers.
10784
10785         * lily/context-scheme.cc (ly:context-now): Move from translator.
10786         Update callers.
10787
10788 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10789
10790         * input/regression/grid-lines.ly (skips): refine example.
10791
10792         * scm/define-context-properties.scm
10793         (all-user-translation-properties): doc autoBeamCheck
10794
10795         * input/regression/grid-lines.ly (Module): new file.
10796
10797         * lily/grid-point-engraver.cc (Module): new file.
10798
10799         * lily/grid-line.cc (Module): new file.
10800
10801         * lily/grid-line-span-engraver.cc (Module): new file.
10802
10803         * lily/grid-line-interface.cc (Module): new file.
10804
10805 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10806
10807         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
10808         missing parameter, actualy cdr through list.  Actually return a
10809         list with ENTRY removed (was '()).
10810
10811         * scripts/convert-ly.py: Update.  Print warning if file cannot be
10812         opened.
10813         (do_conversion): Fix printing of continuation comma.
10814
10815         * Documentation/user/advanced-notation.itely (Beam formatting):
10816         Remove refbugs about compound time and mixed duration.
10817
10818         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
10819         modulo moments explicitely.
10820
10821         * lily/moment.cc (operator %): New function.
10822
10823         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
10824
10825         * lily/translator-scheme.cc (ly:translator-now,
10826         ly:translator-property): New function.
10827
10828         * scm/auto-beam.scm (default-auto-beam-check): New function.
10829
10830         * lily/auto-beam-engraver.cc (test_moment): Use it.
10831
10832         * flower/rational.cc (operator %): Bugfix.
10833
10834 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
10835
10836         * scripts/abc2ly: Bugfix
10837
10838 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10839
10840         * python/fontextract.py (write_extracted_fonts): bugfix, too many
10841         %'s on EndFont comment.
10842
10843         * lily/ledger-line-spanner.cc: some more words of explanation.
10844
10845 2005-04-20  John Williams <williams@tni.com>  
10846         
10847         * scripts/lilypond-book.py: htmlquote bugfix.
10848         Allow snippets to be given distinct filenames.
10849         Allow the default alt text to be overridden.
10850
10851 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
10852
10853         * ly/performer-init.ly: Bugfix
10854
10855         * THANKS: Added bughunters.
10856
10857 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10858
10859         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
10860
10861         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
10862         position (was: use modulo measure length).
10863
10864         * configure.in (no gui_b): Remove optional gtk+ requirement.
10865
10866 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10867
10868         * Documentation/user/basic-notation.itely (Pitches): add
10869         LedgerLineSpanner.
10870
10871         * lily/dynamic-engraver.cc (process_music): set right bound to
10872         script if present. Else, do not set.
10873         (acknowledge_grob): only set right bound of finished spanner to
10874         note column if no other bound is set.
10875
10876         * python/lilylib.py (make_ps_images): switch back to png16m.
10877         
10878 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10879
10880         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
10881         writing up to date file.  Add dvips usage suggestion.
10882
10883         * scripts/convert-ly.py: Fix error message.
10884         Print usage if no files on command line.
10885         (usage): Add example usage.
10886
10887         * input/test/compound-time.ly: New file.
10888
10889         * input/test/circle.ly: New file.
10890
10891         * Documentation/topdocs/NEWS.tely: Use them.
10892
10893         * input/test/boxed-stencil.ly: Remove \score.
10894
10895         * buildscripts/mf-to-table.py (base): Add .log dependency.
10896
10897         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
10898         pfa's.  Add .log dependency
10899
10900         * scm/define-markup-commands.scm (lower): New command.
10901
10902         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
10903         make it default.
10904
10905 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10906
10907         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
10908         also to finished cresc as right bound. This fixes:
10909         skip-string-decresc.ly
10910
10911         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
10912         relative_coordinate if extent is empty.
10913
10914         * lily/stem.cc (width_callback): determine correct extent if flag
10915         is not there. This fixes slur-no-flag.ly
10916
10917         * lily/grace-engraver.cc (consider_change_grace_settings): new
10918         function.
10919         (initialize): also consider_change_grace_settings() on
10920         initialization. Fixes large grace notes at start of score.
10921
10922         * lily/break-align-interface.cc (do_alignment): don't translate if
10923         total_extent is empty.
10924
10925         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
10926
10927 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10928
10929         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
10930         with slash.
10931
10932 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10933
10934         * stepmake/aclocal.m4: Remove tfm_path.
10935
10936 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10937
10938         * scm/music-functions.scm (markup-expression->make-markup): fix
10939         bug with cons arguments of markup commands.
10940         (music->make-music): fix music expression property list building
10941
10942 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10943
10944         * aclocal.m4: Massage package names.
10945
10946         * SCons updates.
10947
10948 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10949
10950         * VERSION (PACKAGE_NAME): release 2.5.20
10951
10952         * lily/stem.cc (calc_stem_info): add minimum Y extent of
10953         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
10954
10955         * lily/percent-repeat-engraver.cc (try_music): add measure before
10956         next_moment to future processing moment. Fixes:
10957         percent-repeat-mm-rest.ly
10958         (process_music): don't add moment for 2nd time.
10959
10960         * input/regression/repeat-percent.ly: add mmrests as extra test.
10961
10962         * lily/axis-group-engraver.cc (acknowledge_grob): read
10963         keepAliveInterfaces to decide what to kill.
10964
10965         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
10966         percent-repeat-interface to keepAliveInterfaces. This fixes
10967         percent-repeat-harakiri.
10968
10969 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10970
10971         * SCons updates.
10972
10973 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10974
10975         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
10976
10977         * aclocal.m4: remove --enable-tfm-path configure option
10978
10979         * input/test/ancient-font.ly (lowerStaff): clef name errors.
10980
10981         * scm/backend-library.scm (postscript->png): newline after
10982         finishing command.
10983
10984         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
10985         (LY_DEFINE): ly:paper-score-paper-systems: new function 
10986
10987         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
10988
10989         * lily/score.cc (default_rendering): use Music_output too.
10990
10991         * input/test/chord-names-languages.ly (Module): rename file.
10992
10993         * lily/text-spanner.cc: add bound-padding.
10994
10995         * lily/paper-book.cc (systems): accept Paper_score
10996         iso. Paper_system vector. 
10997
10998         * input/regression/line-arrows.ly: new file.
10999
11000         * lily/paper-score.cc (process): run get_paper_systems() only once.
11001
11002         * lily/line-spanner.cc (line_stencil): add arrows.
11003
11004 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11005
11006         * lily/line-interface.cc (make_arrow): new function. 
11007         (arrows): idem.
11008
11009 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11010
11011         * input/test/chord-names-german.ly: update for italian/french
11012         chords.
11013         
11014         * Documentation/user/instrument-notation.itely (Printing chord
11015         names): update.
11016
11017 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11018
11019         * lily/include/paper-score.hh (class Paper_score): remove unused
11020         prototypes.
11021
11022         * lily/book.cc (process): add -COUNT to midi output.
11023
11024         * lily/score.cc (book_rendering): remove outname argument
11025         (book_rendering): return list of Music_outputs. 
11026
11027         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11028
11029         * lily/book.cc (process): loop over Music_outputs returned from
11030         Score::book_rendering().
11031
11032         * lily/*.cc (width_callback): remove spurious "unused" warnings
11033         for assert (axis==[XY]_AXIS); 
11034
11035         * lily/include/music-output.hh (class Music_output): smobify class.
11036
11037         * lily/include/paper-score.hh (class Paper_score): make members
11038         private.
11039
11040         * lily/performance.cc (process): return #f iso. #<undefined>. This
11041         prevents #<undefined> leaking into GUILE-userspace.
11042
11043 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11044
11045         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11046
11047 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11048
11049         * scm/chord-name.scm : support for italian and french
11050         chords names.
11051
11052         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11053         a space defined by chordPrefixSpacer when the root name is
11054         direclty followed by a prefix.
11055
11056         * ly/engraver-init.ly : chordPrefixSpacer       
11057         * scm/define-context-properties.scm : chordPrefixSpacer
11058         * ly/property-init.ly : italianChords, frenchChords 
11059
11060 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11061
11062         * mf/feta-din.mf: Remove.
11063
11064         * mf/GNUmakefile (fontdir): Bugfix.
11065
11066         * mf/SConstruct: Some updates.
11067
11068         * SConstruct: Require pkg-config.
11069         (test_program): Bugfix for double digit version compares, use
11070         integer (not string-) compare.
11071         Optionally require gs 8.14.
11072
11073         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11074
11075         * lily/*: s/ifdef HAVE_*/if have/.
11076
11077         * SConstruct (test_lib): New function.  Update pkg-config and some
11078         other requirements.
11079
11080         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11081         freetype, pangof2t.
11082
11083 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11084
11085         * po/lilypond.pot, ...: Update using bison-CVS.
11086
11087         * python/lilylib.py (make_ps_images): Fixo.
11088
11089 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11090
11091         * python/lilylib.py (make_ps_images): typo.
11092
11093         * configure.in (gui_b): make bison optional.
11094
11095         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11096
11097 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11098
11099         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11100         with one parameter can be defined in a LaTeX file when processed
11101         by lilypond-book this will be evaluated between the systems of
11102         a multi-system score. The parameter is the number of systems processed.
11103
11104 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11105
11106         * python/lilylib.py (make_ps_images): Escape newline.
11107
11108         * Documentation/user/music-glossary.tely: Run
11109         texinfo-all-menus-update.
11110
11111 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11112
11113         * scm/lily-library.scm (old-relative-not-used-message)
11114         (version-not-seen-message): Add input-file-name-location to message.
11115
11116         * lily/parser.yy (lilypond): Add token aliases.
11117
11118         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11119         not confuse with alteration.
11120         (alteration): Add.
11121
11122 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11123
11124         * python/lilylib.py (make_ps_images): use -dEPSCrop
11125
11126         * VERSION (PACKAGE_NAME): release 2.5.19 
11127
11128         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11129         only put xrefs in info documentation.
11130
11131         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11132         .pdf rule to tex-rules.make.
11133
11134         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11135         from -systems.* output.
11136
11137         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11138         directly, remove -$(PAGESIZE) target.
11139
11140         * input/test/embedded-postscript.ly: update.
11141
11142 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11143
11144         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11145
11146         * Documentation/user/changing-defaults.itely (Font selection):
11147         document font-name.
11148
11149         * input/regression/font-name.ly: show Pango fonts for
11150         font-name. Update example. 
11151
11152         * lily/pango-select.cc (properties_to_pango_description): don't
11153         convert symbol font-size to number, but use to lookup.
11154
11155         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11156
11157         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11158         (NAME . FILE-NAME) tuples for font descriptions. 
11159         (write-preamble): display BeginFont DSC comments.
11160
11161         * python/fontextract.py (write_extracted_fonts): new file. Extract
11162         font resources from a PS file.
11163
11164         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11165         (Compile_error.process_include): do_file returns chunks.
11166
11167         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11168
11169         * make/lysdoc-targets.make: .texi is .PRECIOUS
11170
11171         * scripts/lilypond-book.py (write_if_updated): new function.
11172
11173 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11174
11175         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11176
11177 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11178
11179         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11180
11181         * input/regression/markup-syntax.ly: remove \score.
11182
11183         * scm/define-markup-commands.scm (draw-circle): add fill argument
11184
11185         * scm/stencil.scm (make-circle-stencil): add fill argument
11186
11187         * ps/music-drawing-routines.ps: add fill argument.
11188
11189         * ly/performer-init.ly: add CueVoice to MIDI too.
11190
11191         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11192         EndEPSF.
11193
11194         * input/regression/markup-eps.ly: new file.
11195
11196         * scm/framework-ps.scm (write-preamble): change order: vars should
11197         be inited before procedures.
11198
11199         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11200         for EPS files.
11201
11202         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11203
11204 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11205
11206         * configure.in (gui_b): add check for ghostscript 8.15
11207
11208 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11209
11210         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11211         start of line. Fixes cresc-after-newline.ly
11212
11213         * lily/source-file.cc (file_line_column_string): use get_column().
11214
11215 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11216
11217         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11218
11219 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11220
11221         * lily/*: use message () iso progress_indication () for messages.
11222         Revise/uniformise user messages.
11223
11224         * flower/warn.cc (progress_indication): New function.
11225         (message): Use it.  Fixes newline problems.
11226
11227         * config.make.in (webdir): Sort out install dirs.
11228
11229         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11230
11231         * python/lilylib.py (command_name): Bugfix.
11232         (make_ps_images):
11233
11234 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11235
11236         * lily/main.cc: --help says what types of backends are availabe
11237
11238 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11239
11240         Fix ./VERSION dependency, and without need to reconfigure.
11241
11242         * lily/main.cc (setup_paths): Update.
11243
11244         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11245
11246         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11247
11248         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11249         Add \line for some simplistic cases.
11250
11251         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11252
11253 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11254
11255         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11256         to compile LY files (useful for adding eg. "-I" args)
11257         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11258         2Gnome command for gnome backend.
11259         (LilyPond-command-formatgnome): call the 2Gnome command. key
11260         binding: C-c C-g
11261
11262 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11263
11264         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11265         depend on all PNG images.
11266
11267 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11268
11269         * GNUmakefile.in: Bugfix: also link .map files.
11270
11271 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11272
11273         * scm/music-functions.scm (music->make-music): generate 
11274         a (make-music ...) sexpr from a music expression.
11275         (display-scheme-music): use guile pretty printer to display the
11276         make-music sexpr.
11277
11278 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11279
11280         * ly/engraver-init.ly: reindent.
11281         Add CueVoice.
11282
11283         * scm/music-functions.scm (music-pretty-string): handle moments
11284         too.
11285         (music-pretty-string): only print non-empty lists.
11286         (cue-substitute): create CueVoice context, which has smaller type.
11287
11288         * lily/moment-scheme.cc (LY_DEFINE): new methods
11289         ly:moment-grace-{numerator,denominator}
11290
11291         * lily/context-handle.cc: remove quit() method. 
11292
11293         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11294         (init_fontconfig): success is 0, not !0
11295
11296 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11297
11298         * mf/feta-nummer-code.mf (code): add plus glyph.
11299
11300         * lily/tie.cc (print): idem.
11301
11302         * lily/slur.cc (print): don't use thickness property for
11303         slur shape-thickness.
11304
11305         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11306         while adding stencils.
11307
11308         * scm/define-markup-commands.scm (with-color): with-color markup
11309         command.
11310         (whiteout): new markup command 
11311         (filled-box): new markup command
11312
11313 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11314
11315         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11316         test for PDF docs.
11317
11318         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11319         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11320         
11321         Notes for tetex-3.0 make web:
11322            psclean.map: s/uhv8a/uhvr8a/
11323            config.ps add:
11324                 p +psfonts_t1.map
11325                 p +psclean.map
11326                 p +typeface.map
11327
11328 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11329
11330         * scm/music-functions.scm (music-pretty-string): fix bug with
11331         string argument.
11332
11333 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11334
11335         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11336
11337 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11338
11339         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11340         only process options if they're there.
11341         (write_file_map): add version-seen? to snippet-map.ly
11342
11343 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11344
11345         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
11346         formatting cleanups.
11347
11348         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
11349         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
11350
11351 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11352
11353         * scm/framework-ps.scm (ps-font-command): don't hash, just use
11354         name directly.
11355
11356         * lily/main.cc (setup_paths): either add mf/out to search path or 
11357         fonts/{otf,type1,etc}
11358         
11359         * lily/font-config.cc (init_fontconfig): either add mf/out to
11360         FontConfig or fonts/{otf,type1,etc}
11361
11362         * GNUmakefile.in: don't put mf/ link in share/ dir.
11363
11364         * lily/staff-spacing.cc: move same-direction-correction to
11365         note-spacing-interface
11366
11367         * scm/lily.scm (lilypond-main): use variable argument count for
11368         exception handler.
11369
11370         * lily/font-config.cc (init_fontconfig): add operator pacification
11371         message.
11372
11373         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
11374
11375         * buildscripts/gen-emmentaler-scripts.py (i): generate
11376         PFAEmmentaler as well.
11377
11378         * scm/framework-ps.scm (munge-lily-font-name): new function
11379         (write-preamble): hack: insert PFA equivalent of CFF into
11380         .PS. This makes LilyPond output printable on normal PS printers
11381         again.
11382
11383         * buildscripts/gen-emmentaler-scripts.py (i): generate
11384         PFAEmmentaler.pfa aswell.
11385
11386 2005-04-06  John Williams <williams@tni.com>  
11387         
11388         * scripts/lilypond-book.py: refactor the compose_ly procedure.
11389         
11390 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11391
11392         * scm/page-layout.scm (default-page-make-stencil): always combine
11393         the header stencil, even if empty. This prevents the body text to
11394         reach up to the margins.
11395
11396         * po/rw.po (Module): new file, for Kinyarwanda.
11397
11398         * input/test/spacing-optical.ly (Module): new file.
11399
11400         * lily/staff-spacing.cc: add same-direction-correction
11401
11402 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11403
11404         * Documentation/user/introduction.itely (Engraving): Comment-out
11405         non-existent file.
11406
11407 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11408
11409         * scm/define-grob-properties.scm (all-user-grob-properties): add
11410         same-direction-correction
11411
11412         * VERSION: release 2.5.18
11413
11414 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
11415
11416         * lily/grob.cc (mark_smob): Check pscore->layout_ before
11417         dereferencing.  Fixes make web.
11418
11419         * lily/midi-stream.cc: Handle unwritable midi file.  Include
11420         errno.h.
11421
11422         * Documentation/user/: Fix links.
11423
11424 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11425
11426         * lily/text-interface.cc (Module): rename from text-item.cc
11427
11428         * input/regression/apply-output.ly (texidoc): function naming fix.
11429
11430         * lily/time-signature-performer.cc (derived_mark): new function.
11431
11432         * lily/lily-parser-scheme.cc:  print mapped file name for progress
11433
11434         * scripts/lilypond-book.py (find_linestarts): new function.
11435         (find_toplevel_snippets): keep track of line numbers.
11436
11437         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
11438         all key changes.
11439
11440         * ly/declarations-init.ly (partCombineListener): use
11441         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
11442
11443         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
11444
11445 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
11446
11447         * lily/text-item.cc: Fix link.
11448
11449         * Documentation/user/changing-defaults.itely (Changing defaults):
11450         Fix programs reference links.
11451
11452         * Documentation/user/music-glossary.tely: Convert to utf-8.
11453
11454 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11455
11456         * make/lilypond-vars.make: remove TEXMF from variables.
11457         remove DEB_BUILD pk font variables.
11458         remove GUILE_LOAD_PATH
11459         remove TeX memory vars.
11460
11461 2005-04-04  Werner Lemberg  <wl@gnu.org>
11462
11463         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
11464
11465 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11466
11467         * ps/lilyponddefs.ps: remove reencode-font
11468
11469         * lily/simple-spacer.cc (add_columns): also compare
11470         directly. Column rank doesn't distinguish between broken and
11471         unbroken columns. This fixes large spaces before time sig changes.
11472
11473         * Documentation/user/point-and-click.itely: document ly:set-option.
11474
11475         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
11476         point_and_click_global is set.
11477
11478         * lily/scm-option.cc (LY_DEFINE): add point-and-click
11479         ly:set-option argument.
11480
11481 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11482
11483         * GNUmakefile.in: Include symlinks in webball.
11484
11485         * Documentation/user/GNUmakefile (source-links): Add symlinks to
11486         source dir for split and non-split manuals.
11487
11488         * Documentation/user/*y: Fix @uref/@inputfile links for
11489         split/non-split HTML documents.
11490
11491         * Documentation/user/GNUmakefile (local-WWW): Do not generate
11492         .ps.gz.
11493         
11494 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11495
11496         * GNUmakefile.in: Add newline.
11497
11498 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
11499
11500         * tex/lilyponddefs.tex: use color instead of xcolor
11501         * scm/output-tex.scm: minor editing
11502
11503 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11504
11505         * scm/music-functions.scm (display-scheme-music): pretty printer
11506         for music expressions.
11507
11508 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11509
11510         * buildscripts/install-info-html.sh (index_file): Fix link.
11511
11512 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
11513
11514         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
11515
11516         * Documentation/index.html.in: Add size estimates with some big pages.
11517
11518         * Documentation/user/tutorial.itely (Running LilyPond for the
11519         first time): Add/replace some @rglos links.  TODO: add more
11520         @rglos links in tutorial, test non-intrusiveness (.css).
11521
11522         * stepmake/bin/add-html-footer.py (do_file): Remove info's
11523         annoying's indication of referencing external document.
11524
11525         * Documentation/user/GNUmakefile: Split version of glossary too.
11526         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
11527         links, not only for html.
11528
11529         * Documentation/user/introduction.itely: Fix some links for other
11530         than html, do not use `here' as link name.
11531
11532 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
11533
11534         * scm/documentation-generate.scm (string-append): Fix @usermanref,
11535         @glossaryref.
11536
11537 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11538
11539         * scm/page-layout.scm (default-page-make-stencil): only add header
11540         if existing and not empty. Fixes spurious programming error.
11541
11542         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
11543
11544 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
11545
11546         * scm/output-tex.scm: implement {re,}setcolor
11547         * tex/lilyponddefs.tex: use color package
11548
11549 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
11550
11551         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
11552         additions to website.
11553
11554         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
11555
11556         * Documentation/user/macros.itexi: Fix @usermanref html links in
11557         split documents: use @inforef.
11558
11559 2005-03-30  Graham Percival  <gperlist@shaw.ca>
11560
11561         * Documentation/user/programming-interface.itely: minor fix.
11562
11563         * Documentation/user/advanced-notation.itely: added info to
11564         Metronome markings.
11565
11566 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
11567
11568         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
11569         use box-stencil.  Remove y-padding argument.
11570         (make-stencil-circler): New function.
11571
11572         * buildscripts/lilypond-words.py (F): 
11573         * elisp/SConscript (a): 
11574         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
11575         * vim/SConscript (a): 
11576         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
11577
11578         * lily/general-scheme.cc: Build fix.
11579
11580         * scm/markup.scm:
11581         * input/regression/markup-scheme.ly: 
11582         * input/regression/markup-syntax.ly: Drop 'new-' from name.
11583
11584         * scm/stencil.scm (make-circle-stencil): New function.
11585
11586         * scm/define-markup-commands.scm (draw-circle): Use it.  New
11587         name (was cicle).  Update callers.
11588         (circle): New markup command, similar to box.
11589
11590         * scm/stencil.scm (circle-stencil): New function.
11591
11592 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
11593
11594         * configure.in: Detect libutf8/wchar.h variant.
11595
11596         * stepmake/aclocal.m4: Modify shared size test.
11597
11598 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11599
11600         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
11601
11602 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11603
11604         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
11605         
11606         * VERSION (PACKAGE_NAME):  release 2.5.17
11607
11608 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
11609
11610         * scm/backend-library.scm (postscript->png): Fix comment and png
11611         message.
11612
11613         * GNUmakefile.in (link-tree): Fix locales.
11614
11615 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11616
11617         * lily/stencil-scheme.cc (LY_DEFINE): change to
11618         ly:stencil-aligned-to, non mutating.
11619
11620         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
11621
11622         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
11623
11624         * lily/quote-iterator.cc (derived_mark): call
11625         Music_wrapper_iterator::derived_mark() too.
11626
11627         * lily/grace-engraver.cc (derived_mark): change signature, add
11628         const.
11629
11630 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11631
11632         * SConstruct (symlink): 
11633         * GNUmakefile.in (link-tree): Add scripts to prefix.
11634
11635         * lily/general-scheme.cc (ly:effective-prefix): New function.
11636
11637         * scm/backend-library.scm (postscript->png): Use it.
11638
11639 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11640
11641         * lily/paper-score.cc (process): don't delete grobs after
11642         producing stencils. 
11643
11644         * scm/part-combiner.scm (determine-split-list): switch off
11645         debugging info.
11646
11647         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
11648         if available.
11649
11650         * scm/define-context-properties.scm
11651         (all-user-translation-properties): add stringNumberOrientations.
11652
11653         * lily/new-fingering-engraver.cc (position_scripts): make generic,
11654         so fingering and string-numbers are separately controlled.
11655
11656 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11657
11658         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
11659         not use debugging.
11660
11661 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11662
11663         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
11664
11665         * config.hh.in: add HAVE_FONTCONFIG.
11666
11667         * Documentation/user/instrument-notation.itely (String number
11668         indications): new node.
11669
11670         * input/regression/new-markup-syntax.ly (texidoc): add circle.
11671
11672         * lily/new-fingering-engraver.cc (add_string): new function. 
11673         (acknowledge_grob): accept string-number-event as well.
11674
11675         * scm/define-markup-commands.scm (circle): new markup command.
11676
11677         * scm/output-lib.scm (print-circled-text-callback): new function.
11678
11679         * lily/GNUmakefile: move ifeq after include stepmake.make.
11680
11681 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11682
11683         * config.make.in (HAVE_LIBKPATHSEA_SO):
11684         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
11685
11686         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
11687         add KPATHSEA_LIBS.
11688
11689         * debian/watch: 
11690         * debian/control: Update.
11691
11692 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11693
11694         * input/test/title-markup.ly (spaceTest): remove.
11695
11696         * input/test/embedded-tex.ly (Module): remove.
11697
11698         * input/test/music-box.ly: use 'name property, not ly:music-name.
11699
11700         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
11701
11702         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
11703
11704 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11705
11706         * Documentation/topdocs/INSTALL.texi (Top): Remove information
11707         about xdeltas.  Add information about CVS.
11708
11709         * scm/lily.scm (lilypond-main): Fix invocation of handler,
11710         gracefully handle failed files.
11711
11712         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
11713
11714         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
11715         small fixes.
11716
11717         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
11718         No unnecessarily specific i18n messages.  Remove stray `1'.
11719
11720 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11721
11722         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
11723         documentencoding
11724
11725         * scm/documentation-lib.scm (texi-file-head): set utf-8
11726         documentencoding.
11727
11728         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
11729         Delta, not the Symbol one. 
11730
11731         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
11732         for the .map file.
11733
11734         * Documentation/topdocs/INSTALL.texi (Top): add running
11735         requirement as compilation requirement.
11736
11737 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11738
11739         * buildscripts/mutopia-index.py (headertext): add h1 header and
11740         utf-8 charset meta field.
11741
11742         * input/GNUmakefile: prune example list.
11743
11744         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
11745         options.
11746
11747         * lily/slur-scoring.cc (get_base_attachments): only look at stem
11748         extent for visible stems.
11749
11750         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
11751
11752 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
11753
11754         * Documentation/topdocs/INSTALL.texi (Top): Updates.
11755
11756         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
11757
11758 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11759
11760         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
11761         pass inf/nan into slur scoring.
11762
11763         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
11764         page.
11765
11766         * scripts/abc2ly.py (dump_voices): use alphabet().
11767
11768 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
11769         
11770         * mf/GNUmakefile (depth): use $(FONTFORGE). 
11771
11772 2005-03-27 Matthias Neeracher <neeracher@mac.com>
11773         
11774         * flower/include/virtual-methods.hh: simplify. Patch by
11775
11776 2005-03-25  John Williams <williams@tni.com>  
11777
11778         * scripts/lilypond-book.py (main): add png for HTML too, guess
11779         only if necessary. 
11780
11781 2005-03-25  Graham Percival  <gperlist@shaw.ca>
11782
11783         * Documentation/topdocs/INSTALL.texi: now recommends
11784         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
11785
11786         * Documentation/user/basic-notation.itely,
11787         Documentation/user/tutoria.itely: warn about
11788         only one (phrasing) slur at once.
11789
11790 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
11791
11792         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
11793
11794 2005-03-23  Graham Percival  <gperlist@shaw.ca>
11795
11796         * Documentation/user/basic-notation.itely: fixed info about
11797         ending a (de)cresc.
11798
11799         * Documentation/user/lilypond-book.itely: fixed
11800         lilypond-book filter example and warned about not doing
11801         --filter and --process at the same time.
11802
11803 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
11804
11805         * lily/parser.yy (bass_number),
11806         Documentation/user/instrument-notation.itely (Figured bass): 
11807         Add the possibility to use text markup in figured bass. 
11808
11809 2005-03-19  Graham Percival  <gperlist@shaw.ca>
11810
11811         * Documentation/user/global.itely: added info about naming
11812         identifiers and breakbefore.
11813
11814         * Documentation/user/invoking.itely: added info about batch
11815         processing files with convert-ly, removed references to TeX
11816         in the jail section.
11817
11818         * Documentation/user/examples.itely: possibly fixed piano
11819         dynamics.
11820
11821         * Documentation/user/advanced-notation.itely: added info
11822         about removing other types of Staff.
11823
11824         * Documentation/user/instrument-notation.itely: possibly
11825         fixed piano staff line switch.
11826
11827         * Documentation/user/changing-defaults.itely: added info
11828         about using normal font in titles.
11829
11830 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11831
11832         * VERSION (PATCH_LEVEL): release 2.5.16
11833
11834         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
11835         explicitly.
11836
11837 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11838
11839         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
11840         whitespace.
11841
11842         * python/lilylib.py (make_ps_images):
11843         * scm/backend-library.scm (postscript->pdf, postscript->png):
11844         Quote file name.  Use format rather than string-append juggling.
11845
11846 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11847
11848         * python/lilylib.py (make_ps_images): add x to -g argument. 
11849
11850         * lily/key-performer.cc (create_audio_elements): don't use
11851         scm_eval_string. Check for minor 3rd directly.
11852   
11853         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
11854         (sarabandeCelloGlobal): key is D minor, not F major.
11855
11856 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11857
11858         Fix truncated --png output (Peter Danenberg).
11859         
11860         * python/lilylib.py (make_ps_images):
11861         * scripts/ps2png.py (copyright): Grok --papersize option.
11862
11863         * scm/backend-library.scm (postscript->png): Add parameter
11864         PAPERSIZE.  Update callers.
11865
11866         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
11867         Fixes symbol placement.
11868
11869         * lily/spanner.cc: 
11870         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
11871         <libc-extension.hh>).
11872
11873 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11874
11875         * Nitpick run.
11876
11877         * buildscripts/fixcc.py: Update.
11878
11879         Builddir run fixes.
11880
11881         * HACKING (datadir): Add VERSION.
11882
11883         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
11884         higher up.
11885
11886 2005-03-15  Werner Lemberg  <wl@gnu.org>
11887
11888         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
11889         diagonal stem doesn't become thinner.
11890
11891 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
11892
11893         * buildscripts/fixcc.py: Fixes (Werner).
11894
11895 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11896
11897         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
11898         Emmentaler/Aybabtu.
11899
11900         * GNUmakefile.in: fix lilypond-words path.
11901
11902         * po/tr.po: update to 2.3.21
11903
11904         * lily/new-fingering-engraver.cc (position_scripts): take priority
11905         from head position.
11906
11907         * input/regression/finger-chords-order.ly (texidoc): new file.
11908
11909 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11910
11911         * make/ly-rules.make: 
11912         * stepmake/aclocal.m4: 
11913         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
11914
11915         * buildscripts/fixcc.py (rules): Leave space after operator.
11916
11917 2005-03-14  Werner Lemberg  <wl@gnu.org>
11918
11919         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
11920         top of the glyph with smooth curve.
11921
11922 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11923
11924         * Documentation/user/global.itely (Page layout): remove
11925         printpagenumber.
11926
11927 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
11928
11929         * input/regression/mensural-ligatures.ly: new file (with examples
11930         compiled by Pal Benko).
11931
11932         * Documentation/user/instrument-notation.itely: Bugfix: yet some
11933         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
11934         musicglyph access.  Many small beautifications in ancient
11935         examples.
11936
11937         * input/test/divisiones.ly: fixed indentation; small
11938         beautifications
11939
11940         * ly/engraver-init.ly: added FIXME comment
11941
11942         * scripts/lilypond-book.py,
11943         Documentation/user/lilypond-book.itely: added music fragment
11944         option "packed" to lilypond-book
11945
11946         * Documentation/user/instrument-notation.itely: Bugfix: added
11947         missing LedgerLineSpanner color setting in several places.  Added
11948         music fragment option "packed" to VaticanaContext example.
11949
11950 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11951
11952         * scm/define-grobs.scm (all-grob-descriptions): switch off
11953         Hyphen_spanner::set_spacing_rods 
11954
11955         * lily/lyric-hyphen.cc (print): add padding between syllable and
11956         hyphen.
11957         (print): shorten hyphen in tight situations (determine using
11958         minimum-length)
11959
11960         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
11961         0.4pt.
11962
11963 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11964
11965         * ly/titling-init.ly (bookTitleMarkup): Refinements.
11966
11967         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
11968         header/footer markings for regression-test.
11969
11970         * scm/backend-library.scm (output-scopes, header-to-file): Move
11971         from framework-tex.scm.
11972
11973         * scm/framework-ps.scm (output-framework)
11974         (output-preview-framework):
11975         * scm/framework-eps.scm (output-classic-framework)
11976         (output-framework): Use it.  Fixes collated files.
11977
11978 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11979
11980         * input/sakura-sakura.ly: 
11981         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
11982
11983         * buildscripts/guile-gnome.sh: Update.
11984
11985         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
11986
11987         * mf/aybabtu.pe.in: Capitalize Aybabtu.
11988
11989 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11990
11991         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
11992         culprit: always exit the loop if we find a rod, even if it has
11993         distance < 0. 
11994
11995         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
11996         algorithm.
11997
11998         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
11999         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12000
12001         * scm/output-svg.scm (dashed-line): new  function body.
12002         
12003         * GNUmakefile.in: create .htaccess.
12004
12005 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12006
12007         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12008
12009 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12010
12011         * VERSION (PACKAGE_NAME): release 2.5.15
12012
12013         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12014
12015         * scm/framework-svg.scm (output-framework): put scaling in
12016         document header. Apply scaling only once.
12017         (output-framework): dump page size in px, not mm. 
12018
12019         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12020         from font-size.
12021
12022         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12023         ly:outputter-output-scheme, new function.
12024
12025         * scm/output-svg.scm (pango-description-to-svg-font): new function
12026
12027 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12028
12029         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12030         target.
12031
12032         * input/typography-demo.ly: new file.
12033
12034 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12035
12036         * Documentation/user/global.itely (File structure): Add markup blocks
12037         to toplevel expressions.
12038         (Multiple movements, Creating titles): Add markup blocks.
12039
12040         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12041         <libc-extension.hh>).
12042
12043         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12044
12045         * flower
12046         * lily
12047         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12048
12049 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12050
12051         * lily/accidental.cc: special bboxes for natural. 
12052
12053         * mf/feta-toevallig.mf: make stems heavier.
12054
12055         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12056         texts as well.
12057
12058         * mf/feta-klef.mf: revise. 
12059
12060         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12061
12062         * mf/feta-klef.mf: add rounded curve at top. 
12063         make thinnib a little heavier.
12064
12065 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12066
12067         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12068
12069         * buildscripts/fixcc.py: New file.
12070
12071         * input/regression/utf8.ly: Update Debian font description.
12072
12073 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12074
12075         * stepmake/aclocal.m4: Fix test.
12076
12077 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12078
12079         * Documentation/user/invoking.itely: added Sebastino Vigna's
12080         docs for the --jail option.
12081
12082 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12083
12084         * lily/stem.cc (print): only produce stemlets if there are no
12085         noteheads on this stem.
12086
12087         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12088         don't crash on stemlet (visible stem without heads).
12089
12090         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12091         unbroken situations. 
12092
12093         * scm/output-lib.scm (center-invisible): new function.
12094
12095         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12096         wishes to determine loose column space.
12097
12098         * lily/font-config.cc (init_fontconfig): add
12099         fonts/{otf,type1,cff}  to path.
12100
12101         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12102
12103         * mf/GNUmakefile (Module): install all fonts under otf/
12104
12105         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12106         replace /fonts/otf/ by /ps/ 
12107
12108         
12109 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12110
12111         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12112
12113         * lily/book.cc (process): Oops, add score_.header_.
12114
12115         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12116
12117         * lily/parser.yy: Handle toplevel and book texts as score.
12118
12119         * scm/page-layout.scm (default-page-make-stencil):
12120         Bugfix: (page-properties rename.
12121
12122         * scm/backend-library.scm (ly:system): Typo.
12123
12124 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12125
12126         * stepmake/stepmake/executable-targets.make (installexe): don't
12127         strip installed executables
12128
12129         * lily/font-select.cc (get_font_by_design_size): revert
12130         pango_description_string as well.
12131
12132         * lily/system.cc (set_loose_columns): put loose column just left
12133         of next column.
12134
12135         * lily/include/group-interface.hh (extract_grob_array): rename
12136         from Pointer_group_interface__extract_grobs
12137
12138         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12139
12140         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12141         function. Keep ledgered note heads at a minimum distance.
12142         Introduce minimum-length-fraction
12143         (print): introduce length-fraction property.
12144
12145 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12146
12147         * tex/GNUmakefile: remove latin1.enc rules.
12148
12149 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12150
12151         * scm/titling.scm: Typo.
12152
12153         * input/regression/score-text.ly: Really add.
12154
12155         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12156
12157 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12158
12159         * lily/open-type-font-scheme.cc:  new file.
12160
12161 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12162
12163         * scm/titling.scm (layout-extract-page-properties): Rename from
12164         page-properties.  Update callers.
12165
12166         * lily/lexer.ll (Lily_lexer):
12167         * lily/parser.yy: Junk lyric_markup state.
12168
12169         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12170
12171         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12172         Add texts parameter.
12173
12174 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12175
12176         * lily/lexer.ll (lyric_markup): New mode.
12177         (Lily_lexer::push_lyric_markup_state): New method.
12178         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12179
12180         * lily/parser.yy (book_body):
12181         (toplevel_expression): Grok \markup texts.
12182
12183         * lily/score-scheme.cc (ly:music-scorify): 
12184         * scm/lily-library.scm (collect-music-for-book): Take texts
12185         parameter.
12186
12187         * lily/score.cc (texts_): New member.
12188
12189         * lily/paper-book.cc (systems): Format score texts.
12190
12191         * score-text.ly: New file.
12192
12193         * ttftool/SConscript:
12194         * kpath-guile/SConscript: New file.
12195
12196         * lily/SConscript:
12197         * SConstruct: Update.
12198
12199 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12200
12201         * VERSION (PACKAGE_NAME): release 2.5.14
12202
12203 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12204
12205         * lily/main.cc: Add dummy xgettext markers.
12206
12207 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12208
12209         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12210         requirements
12211
12212         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12213         executable is < 40k
12214
12215         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12216         hack.
12217
12218 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12219
12220         * flower/libc-extension.cc:
12221         * flower/include/libc-extension.hh: [Open]BSD simply cast
12222         cookie/funopen declarations.
12223
12224         * stepmake/aclocal.m4: Check for libkpathsea.so.
12225
12226         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12227         dl_kpse_find_file.
12228
12229 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12230
12231         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12232         (open_library): alternative for static library.
12233
12234 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12235
12236         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12237
12238         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12239
12240         Drop run-time dependency on teTeX.
12241
12242         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12243
12244         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12245         KPATHSEA_LIBS in LIBS.
12246         (STEPMAKE_DLOPEN): New function.
12247
12248         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12249         not path.
12250
12251         * flower/file-path.cc (directories): Rename from paths, as this
12252         return an array of directories (a single path).
12253
12254 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12255
12256         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12257
12258         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12259         new ly:kpathsea-find-file
12260
12261         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12262
12263         * kpath-guile/GNUmakefile: new file
12264
12265         * buildscripts/gen-emmentaler-scripts.py (i): generate
12266         emmentaler-X.fontname as well.
12267
12268         * buildscripts/ps-embed-cff.py: new script
12269
12270         * scm/lily-library.scm: remove ps-embed-cff.
12271
12272         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12273         font loading. 
12274
12275         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12276         fontconfig as well.
12277
12278         * lily/font-config.cc (init_fontconfig): add cff/ too.
12279
12280         * ly/generate-embedded-cff.ly: capitalize.
12281
12282         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12283         so as to register the pango font.
12284
12285         * lily/font-config.cc (init_fontconfig): add
12286         prefix/{otf,type1,mf/out} to fontconfig path.
12287
12288         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12289         overrides all. 
12290
12291         * configure.in (gui_b): remove ec mftrace check
12292
12293         * config.hh.in: use lilypond-Major.Minor as data directory.
12294
12295         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12296
12297         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12298         name.
12299
12300 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12301
12302         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12303         error messages.
12304
12305         * flower/libc-extension.cc:
12306         * flower/include/libc-extension.hh: [Open]BSD fixes for
12307         cookie/funopen declarations.
12308
12309 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12310
12311         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12312         emmentaler.
12313
12314         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12315         lcrm10.
12316
12317         * scm/define-markup-commands.scm (fontsize): new markup
12318         command. Also set baseline-skip
12319
12320 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12321         
12322         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12323         use.
12324
12325 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12326
12327         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12328
12329         * lily/pdf.cc: remove PDF related files
12330
12331 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12332
12333         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12334         <hamamatsu@gmx.de>
12335
12336 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12337
12338         * Documentation/user/advanced-notation.itely: first draft
12339         of reorg done.
12340
12341         * Documentation/user/global.itely: fixed (sub)section
12342         bits of MIDI.
12343
12344 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12345
12346         * cygwin/mknetrel (extras): Bufix (Bertalan).
12347
12348         * Documentation/user/basic-notation.itely (Chords): @ref fix.
12349         * Documentation/user/instrument-notation.itely (Introducing chord
12350         names): Compile fix: must have unique name.
12351
12352 2005-03-02  Graham Percival  <gperlist@shaw.ca>
12353
12354         * Documentation/user/instrument-notation.itely: reorg.
12355
12356 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12357
12358         * scm/output-gnome.scm:
12359         * scm/output-svg.scm: Fix font scaling.
12360
12361 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12362
12363         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
12364         what link to use best.
12365
12366         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
12367         * Documentation/user/tutorial.itely (Automatic and manual beams):
12368         Fix @ref.
12369
12370         * lily/tweak-registration.cc (replace_grob_tweak): New function.
12371         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
12372         * scm/framework-gnome.scm (tweak): Use it.
12373
12374 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12375
12376         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
12377
12378         * scm/output-ps.scm (white-text): reinstate white-text
12379
12380 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12381
12382         * scm/output-ps.scm (offset-add): Remove.
12383
12384         * scm/lily-library.scm (offset-flip-y): New function.
12385         * scm/framework-gnome.scm (tweak): Use it.
12386
12387         * scm/output-gnome.scm (grob-cause): Add parameter.
12388
12389         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
12390         * scm/output-ps.scm (url-link): Move.
12391         (white-text): Warn user about brokenness.
12392
12393         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
12394         wrt ghostscript.
12395
12396 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12397
12398         * lily/slash-repeat-engraver.cc (try_music): always make slashes
12399         if body length smaller than measure length.
12400
12401         * scm/define-markup-commands.scm (with-url): oops. use Y extent
12402         for Y.
12403
12404         * ly/titling-init.ly (tagline): put default tagline in \paper
12405
12406 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12407
12408         * lily/kpath.cc: 
12409         * lily/pdf.cc (Pdf_file): Use more generic error messages.
12410
12411         * scm/lily-library.scm (version-not-seen-message): New function.
12412         * ly/init.ly: Use it.
12413
12414         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
12415         breaks as progess.
12416
12417         * scripts/lilypond-book.py (do_process_cmd): Do not lump
12418         whitespace with l10n message.
12419
12420         * scm/framework-tex.scm (convert-to-ps):
12421         (convert-to-dvi): Do not use overly specific l10n messages.
12422
12423         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
12424
12425         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
12426         merge stderr with stdout.  
12427
12428 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12429
12430         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
12431         Neeracher).
12432
12433 2005-02-29  Graham Percival  <gperlist@shaw.ca>
12434
12435         * Documentation/user/instrument-notation.teily: moved
12436         \arpeggio to Basic.
12437
12438         * Documentation/user/advanced-notation.itely: Articulation to
12439         Basic, a bunch of stuff from Basic moved to Advanced.
12440
12441         * Documentation/user/basic.itely: swapped various sections,
12442         reorganized Basic.
12443
12444 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12445
12446         * flower/memory-stream.cc: 
12447         * flower/libc-extension.cc: Remove obsolete #undefs.
12448
12449         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
12450         more carefully.
12451
12452 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12453
12454         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
12455         dependency.
12456
12457         * VERSION (PACKAGE_NAME): release 2.5.13
12458
12459         * GNUmakefile.in (web-ext): don't ship ps.gz
12460
12461         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
12462         stdout
12463
12464 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12465
12466         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
12467         without libintl.  Now it compiles too.
12468
12469 2005-02-28  Graham Percival  <gperlist@shaw.ca>
12470
12471         * Documentation/user/basic-notation.itely,
12472         instument-notation.itely, advanced-notation.itely:
12473         split up contents of notation.itely.
12474
12475         * Documentation/user/notation.itely: file removed.
12476
12477         * Documentation/user/invoking.itely, converters.itely:
12478         moved convert-ly info to invoking.itely.
12479
12480         * Documentation/user/global.itely, changing-defaults.itely,
12481         sound-output.itexi: moved global settings, file layout, and
12482         sound into global.itely.
12483
12484         * Documentation/user/sound-output.itexi: file removed.
12485
12486         * Documentation/user/lilypond.tely: removed links to
12487         notation.itely and sound.itely.
12488
12489 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12490
12491         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
12492
12493         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
12494  
12495         * THANKS: add sponsor.
12496
12497         * scm/define-markup-commands.scm (with-url): new markup command.
12498
12499         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
12500         tagline.
12501         
12502         * scm/output-tex.scm (url-link): stub.
12503
12504         * scm/output-ps.scm (url-link): new function.
12505
12506         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
12507         ly:set-point-and-click
12508
12509 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12510
12511         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
12512         based on pdf-viewer setting.
12513
12514         * scm/framework-ps.scm (write-preamble): Find and set preferred
12515         pdf-viewer.
12516
12517 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12518
12519         * Documentation/user/point-and-click.itely: update for PDF point &
12520         click.
12521
12522         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
12523         editors based on EDITOR setting.
12524
12525 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12526
12527         * scm/*: Oops, more grand 2005 replace bits.
12528
12529 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12530
12531         * ps/music-drawing-routines.ps: new routine: insert PDF mark
12532
12533         * scm/output-ps.scm (grob-cause): point & click support for
12534         PostScript
12535
12536 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12537
12538         * lily/input-scheme.cc (LY_DEFINE): rename to
12539         ly:input-file-line-column
12540
12541 2005-02-26  Graham Percival  <gperlist@shaw.ca>
12542
12543         * Documentation/user/examples.itely: small fix from Steve Doonan.
12544
12545         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
12546
12547         * THANKS: added Yuval Harel.
12548
12549         * Documentation/user/{various}: inserted two spaces after a period.
12550
12551         * Documentation/user/lilypond.tely: added framework for reorg.
12552
12553         * Documentation/user/basic-notation.itely, instrument-notation.itely,
12554         advanced-notation.itely, global.itely: new files, placeholder for
12555         future reorg.
12556
12557 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
12558
12559         * Documentation/user/notation.itely: revamped Polyphony section
12560         
12561 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12562
12563         * Documentation/user/lilypond-book.itely (Music fragment options):
12564         doc fontload.
12565
12566         * Documentation/user/changing-defaults.itely (Text encoding): add
12567         fontload option to utf8 include
12568
12569         * scripts/lilypond-book.py (compose_ly): add fontload option
12570
12571         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
12572         force-eps-font-include option.
12573
12574         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
12575         black triangle
12576
12577         * Documentation/user/invoking.itely (Editor support): remove
12578         lilypond-latex section.
12579
12580         * scripts/lilypond-latex.py (Module): remove script.
12581
12582         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
12583         overwrite .log. 
12584
12585         * lily/main.cc: remove -m, --no-layout
12586
12587         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
12588         to define. We don't want to override fprintf everywhere.
12589
12590 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
12591
12592         * cygwin/lilypond.hint: 
12593         * cygwin/README.in: Update dependencies.
12594
12595         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
12596         Bugfix: do not pollute CPPFLAGS, LIBS.
12597
12598         * cygwin/mknetrel (extras): Cross compile fixes.
12599
12600         * ttftool/util.c: 
12601         * ttftool/ttfps.c: 
12602         * ttftool/ps.c: #include libc-extension.hh
12603
12604         * flower/include/libc-extension.hh:
12605         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
12606         wrapper using funopen.
12607         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
12608         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
12609
12610         * config.hh.in:
12611         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
12612         (AC_CHECK_HEADERS): Add libio.h
12613
12614         * scripts/convert-ly.py: Uniformize, internationalize.
12615         (2.5.2): Remove fatal encoding rule.
12616         (2.5.13): Handle latin1 encoding gracefully.
12617
12618 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
12619
12620         * HACKING: Fix line breaks.
12621
12622 2005-02-23  Werner Lemberg  <wl@gnu.org>
12623
12624         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
12625         contains those two files.
12626
12627 2005-02-21  Werner Lemberg  <wl@gnu.org>
12628
12629         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
12630         to improve overlap removal process.
12631
12632         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
12633         left and right ending.  This ensures better overlapping.
12634         Update all callers.
12635         ("lineprall"): Don't use draw_gridline to get better overlapping.
12636
12637 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12638
12639         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
12640
12641         * Documentation/topdocs/NEWS.tely (Top): oops.
12642
12643 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
12644
12645         * HACKING: new file.
12646
12647         * input/regression/utf8.ly (portuguese): added a portuguese example
12648         to show latin1 accents.
12649
12650 2005-02-21  Pal Benko  <benkop@freestart.hu>
12651
12652         * lily/mensural-ligature-engraver.cc:
12653         * lily/mensural-ligature.cc:
12654         * lily/include/mensural-ligature.hh: new algorithm implemented
12655
12656         * scm/define-grob-properties.scm: join-left killed (add-join may
12657         be used); join-left-amount changed to join-right-amount
12658
12659 2005-02-21  Graham Percival  <gperlist@shaw.ca>
12660
12661         * Documentation/user/notation.itely: small but urgent fix.
12662
12663 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
12664
12665         * lily/duration-scheme.cc: bugfix: correct parameters to
12666         SCM_ASSERT_TYPE.
12667
12668         * THANKS: added Pal.
12669
12670         * Documentation/user/notation.itely: bugfix: unTeXified
12671         $\\backslash$.  Bugfix: yet another glyph renaming victim:
12672         "timesig.*x/y" -> "timesig.*xy".
12673
12674 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12675         
12676         * VERSION (PACKAGE_NAME): release 2.5.12
12677
12678 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12679
12680         * ly/engraver-init.ly: set tieWaitForNote to #t by default
12681
12682         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
12683
12684         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
12685
12686         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
12687
12688 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
12689
12690         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
12691         latin1..utf-8.
12692
12693         * input/regression/stanza-number.ly:
12694         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
12695
12696         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
12697
12698 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12699
12700         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
12701         NEWS. Refer to website for older news.  
12702
12703         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
12704         .HTML. This should be done for specific servers only.
12705
12706         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
12707         .ly image examples.
12708
12709         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
12710         in layer 0 too.
12711
12712         * scm/define-context-properties.scm
12713         (all-user-translation-properties): add tieWaitForNote
12714
12715         * scm/define-grobs.scm (all-grob-descriptions): add
12716         Tie_column::before_line_breaking
12717
12718         * lily/tie.cc (get_column_rank): new function
12719
12720         * lily/tie-column.cc (before_line_breaking): new function.
12721         (werner_directions): take into account ties that start on
12722         different columns.  
12723
12724         * lily/score-engraver.cc (set_columns): move add_column() so we
12725         have column rank available.
12726
12727         * lily/tie.cc (get_column_rank): new function.
12728
12729         * input/regression/utf8.ly (japanese): add japanese lyrics.
12730
12731         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
12732
12733         * THANKS: add Steve D
12734
12735         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
12736         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
12737
12738 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
12739
12740         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
12741         to show harmonic notes
12742         * scm/define-markup-commands.scm: in \markup-by-number
12743         "dots-dot" -> "dots.dot" to show dotted notes
12744
12745 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12746
12747         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
12748
12749         * flower/memory-stream.cc (writer): new file.
12750
12751         * configure.in: add endian test.
12752
12753 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
12754
12755         * Documentation/user/examples.itely: small
12756         simplification/beautification
12757
12758         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
12759         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
12760         notation manual.
12761
12762         * lily/mensural-ligature.cc: bugfix: another few victims of the
12763         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
12764
12765         * ly/gregorian-init.ly: commit some experimental code for hi-level
12766         ligature input language lying around here for several months.
12767
12768         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
12769         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
12770
12771         * lily/vaticana-ligature-engraver.cc: bugfix: another few
12772         "x-y-z"->"x.y.s-z" fixes.
12773
12774 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12775
12776         * scm/framework-pdf.scm (scm): new file
12777
12778         * lily/include/pdf.hh (class Pdf_file): new file.
12779
12780         * lily/pdf.cc (write_trailer): new file.
12781
12782 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
12783
12784         * input/regression/color.ly: new file
12785
12786         * lily/stencil.cc (interpret_stencil_expression):
12787         when a color expression is encountered: save current color,
12788         process the rest of the expression, and restore previous color.
12789
12790         * lily/system.cc (get_line): check all grobs for color property and
12791         prepare the stencil scheme expressions for further processing.
12792         Fix layer-loop.
12793
12794         * scm/define-grob-properties.scm: introduce the color property.
12795
12796         * scm/output-lib.scm: color helper functions.
12797
12798         * scm/output-ps.scm: introduce setcolor/resetcolor.
12799
12800 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
12801
12802         * ly/*.ly, input/regression/*.ly: Added missing \version
12803         statements in some files.
12804
12805 2005-02-15  Graham Percival  <gperlist@shaw.ca>
12806
12807         * Documentation/user/notation.itely: minor editing.
12808
12809         * Documentation/user/converters.itely: updated convert-ly bugs.
12810
12811         * Documentation/user/lilypond-book.itely: add info about using
12812         feta characters in latex.
12813
12814 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12815
12816         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
12817
12818 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12819
12820         * scm/define-grob-properties.scm (all-user-grob-properties):
12821         removed 'dashed property.
12822
12823 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12824
12825         * scm/lily.scm (define-safe-public): new macro for defining
12826         variables that can be used in --safe mode. Use it in *.scm
12827         instead of manually setting safe-objects in safe-lily.scm.
12828
12829 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12830         
12831         * lily/slur.cc: Slur-dash patch by Bertalan.
12832
12833         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
12834
12835         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
12836
12837 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12838
12839         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
12840
12841 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12842
12843         * mf/GNUmakefile: teTeX-3.0 install fix.
12844
12845         * Cygwin patch from Bertalan.
12846
12847         * stepmake/stepmake/metafont-rules.make: Remove bashism.
12848
12849 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12850
12851         * GNUmakefile.in: 
12852         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
12853
12854         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
12855         2.0.x compatibility.
12856
12857 2005-02-08  Werner Lemberg  <wl@gnu.org>
12858
12859         * mf/feta-din-code.mf: Format; clean up code.
12860         Replace `---' with `--' plus explicit path directions.
12861         (linethickness#, stafflinethickness#): Remove.
12862         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
12863         ("dynamic s"): Improve shape.
12864         ("dynamic p"): Improve shape.
12865         Replace `draw' with better outline approximation.
12866         ("dynamic r"): Improve shape.
12867         Don't call `fill' and `draw' at the same time.
12868
12869 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12870
12871         * SConstruct (symlink):
12872         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
12873         build fix: add enc symlink.
12874
12875         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
12876
12877         Support for DESTDIR besides prefix=/foo
12878
12879         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
12880
12881         * stepmake/stepmake/*.make:
12882         * */GNUmakefile:
12883         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
12884
12885         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
12886
12887         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
12888         mawk in fontforge (date) test.
12889
12890 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12891
12892         * scm/font.scm (make-century-schoolbook-tree): add NCS as
12893         font-family=roman. Add Luxi Sans as sans
12894
12895 2005-02-07  Graham Percival  <gperlist@shaw.ca>
12896
12897         * Documentation/user/notation.itely: add warning about
12898         percent repeats and Voice contexts.
12899
12900         * Documentation/user/lilypond-book.itely: clarified the
12901         necessity of dvips -u arguments.
12902
12903 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
12904
12905         * THANKS: Added a bunch of bug hunters.
12906
12907 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12908
12909         * scm/framework-ps.scm (output-preview-framework): bugfix.
12910
12911         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
12912         o/ for chord modifier..
12913
12914         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
12915
12916         * lily/drum-note-performer.cc:  remove unused (thanks Michael
12917         Welsh Duggan). 
12918
12919 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12920
12921         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
12922
12923         * ly/titling-init.ly: Do not also print intstrument in header on
12924         first page.  Do not print page number on first and only page.
12925
12926 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12927
12928         * input/regression/*.ly: remove old-relative everywhere
12929
12930         * lily/music-sequence.cc (simultaneous_relative_callback): do
12931         what-if analysis on copy, not on original. Fixes old-relative
12932         compatibility.
12933
12934         * scm/backend-library.scm (postscript->png): space before
12935         --verbose.
12936         
12937 2005-02-05  Werner Lemberg  <wl@gnu.org>
12938
12939         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
12940         is defined.
12941
12942         * mf/feta-alphabet.mf: Define `staffsize#'.
12943         Include `feta-params.mf'.
12944         s/staffheight/design_size/.
12945
12946         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
12947
12948         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
12949
12950         * mf/feta-nummer-code.mf: Reformatted.
12951         (draw_six): Use outline intersection to avoid a self-intersecting
12952         path.
12953         ("Numeral comma"): Fix serious outline glitches.  This slightly
12954         changes the glyph shape.
12955         ("Numeral dash"): Use `draw_rounded_block'.
12956         ("Numeral dot"): Use `drawdot'.
12957         ("Numeral 1"): Assure identical tangent directions for the
12958         intersection points of paths.  The glyph shape improvement is only
12959         visible at very high magnifications.
12960         ("Numeral 2"): Use `solve' macro to make the lower right part of
12961         the glyph outline touch the x axis exactly.  This changes the
12962         glyph shape.
12963         Minor fixes for better overlap removal support.
12964         ("Numeral 4"): Make lefter corner `rounder'.
12965         ("Numeral 5"): Assure identical tangent directions for the
12966         intersection points of paths.  This improves the glyph shape at
12967         high magnifications.
12968         ("Numeral 7"): Use `solve' macro to make the upper right part of
12969         the glyph outline touch the metrics box exactly.  This changes the
12970         glyph shape.
12971         Avoid corner in the upper left part of the glyph (causing a minor
12972         shape change).
12973
12974         * mf/feta-ital-*.mf: Removed.  Unused.
12975
12976 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12977
12978         * VERSION (PATCH_LEVEL): release 2.5.11
12979
12980         * input/regression/fill-line-test.ly: new file.
12981
12982         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
12983         emmentaler name, eg. emmentaler-23. 
12984
12985 2005-02-04  Christian Hitz  <chhitz@gmx.net>
12986
12987         * scm/scm/define-markup-commands.scm (fill-line): rework for better
12988         alignment with centered texts
12989
12990         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
12991         list of paddings
12992
12993 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12994
12995         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
12996
12997         * lily/note-column.cc (translate_rests): call flush_extent_cache()
12998         of parents when translating rests. Fixes: c-chord-rest.ly 
12999
13000         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13001         dimension_callback_ member.
13002
13003         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13004         of extents.
13005
13006 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13007
13008         * all but lily/*: The grand 2004/2005 replace.
13009
13010 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13011
13012         * lily/*: add space after ,  
13013
13014         * scm/music-functions.scm (has-request-chord): don't use
13015         ly:music-name anywhere. Fixes <<\\>> notation. 
13016
13017         * scm/define-markup-commands.scm (box): use font-size for
13018         padding. Fixes boxed-rehearsal-marks.ly
13019
13020         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13021         identifier definition too, so foo = \lyrics { ...   } bar = #1
13022         doesn't complain about "bar" being LYRICS_STRING.
13023
13024         * lily/paper-def.cc (find_pango_font): new routine; Store
13025         pango_fonts in hash tab too. This is necessary for retrieving
13026         Pango_fonts::physical_font_tab() later on.
13027  
13028         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13029         crash if psname is null.
13030
13031         * lily/lily-guile.cc (ly_hash2alist): new function
13032
13033         * Documentation/user/changing-defaults.itely (Text encoding):
13034         rewrite. 
13035
13036         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13037         -> font_filename mapping.
13038
13039         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13040         ly_pango_font_physical_fonts
13041
13042         * scm/framework-ps.scm (supplies-or-needs): extract names from
13043         physical Pango_fonts.
13044
13045         * utf8.ly: new file.
13046
13047 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13048
13049         * Documentation/user/changing-defaults.itely (Page layout): add
13050         doco about systemSeparatorMarkup.
13051
13052         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13053         function.
13054         (default-page-make-stencil): insert system separators.
13055
13056         * scm/define-markup-commands.scm (hcenter): add
13057         (beam): add.
13058
13059 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13060
13061         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13062
13063 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13064
13065         * lily/main.cc: Spell backend consistently.  Sort options.
13066
13067 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13068
13069         * scripts/lilypond-book.py (Module): revert @include.
13070         
13071 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13072
13073         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13074         Bugfix: @include .tex (not .texi).  Small cleanups.
13075
13076         * stepmake/bin/add-html-footer.py (i18n): New function.
13077
13078 2005-01-31  Werner Lemberg  <wl@gnu.org>
13079
13080         * mf/feta-nummer.mf: Removed.  Unused.
13081
13082 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13083
13084         * lily/ : 2004 -> 2005 s&r
13085
13086         * scm/file-cache.scm (cached-file-contents): add file. Read each
13087         file only once.
13088
13089         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13090         now default.
13091
13092         * VERSION: release 2.5.10
13093         
13094         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13095
13096         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13097
13098         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13099         that both X and Y extents of bbox are non-nil.
13100
13101 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13102
13103         * scm/chord-name.scm (alteration->text-accidental-markup): change
13104         - to . 
13105
13106         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13107
13108         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13109
13110         * Documentation/user/invoking.itely (Invoking lilypond): add note
13111         about EPS backend.
13112
13113         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13114         files for inclusion in lilypond-book document.
13115
13116         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13117
13118         * input/tutorial/lbook-texi-test.texi: new file.
13119
13120         * scm/safe-lily.scm (safe-objects): add
13121         {begin,end}-of-line-(in)?visible as safe.
13122  
13123 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13124
13125         * Documentation/user/changing-defaults.itely: fixed example
13126         of (dynamics).
13127
13128 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13129
13130         * lily/main.cc: fix info about -o=FILE.
13131
13132 2005-01-29  Werner Lemberg  <wl@gnu.org>
13133
13134         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13135         construction to assure smooth transition from straight to curved
13136         lines.
13137
13138 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13139
13140         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13141         stencils.
13142
13143         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13144         translate to top of page. Fixes alignment problems of
13145         lilypond-generated EPS files.
13146
13147 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13148
13149         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13150         crescendo-end as well, since Decrescendo maybe ended with Stop
13151         Crescendo.). Fixes: partcombine-diminuendo.ly
13152
13153         * scm/script.scm (default-script-alist): swap portato symbols.
13154
13155         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13156
13157         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13158         ly:outputter-port. New function.
13159
13160         * scm/framework-ps.scm (output-classic-framework): dump a
13161         -systems.texi too
13162         (output-classic-framework): dump multiple systems on an "infinite"
13163         page EPS including fonts. 
13164
13165         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13166         .eps files for both texi and tex formats. Use PNG coming from
13167         lilypond.
13168         
13169 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13170
13171         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13172
13173         * scripts/lilypond-latex.py: fix info about -o=FILE.
13174
13175 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13176
13177         * ly/generate-embedded-cff.ly: write .cff.ps files.
13178
13179         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13180
13181         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13182         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13183
13184 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13185
13186         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13187
13188 2005-01-28  Werner Lemberg  <wl@gnu.org>
13189
13190         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13191         macros.
13192         (draw_bulb): Improved.
13193
13194         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13195         metapost bug.
13196         (draw_pedal_P): Use soft_end_penstroke.
13197         (draw_pedal_d): Use soft_start_penstroke.
13198
13199         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13200         path.
13201         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13202         doesn't change the glyph shape.
13203
13204         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13205         changing the shape) to avoid fontforge warnings.
13206
13207         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13208         soft_end_penstroke and fix glyph shape.
13209
13210 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13211
13212         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13213
13214 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13215
13216         * scm/define-markup-commands.scm (line): filter out empty stencils
13217         from line command.
13218
13219         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13220         amount.
13221
13222 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13223
13224         * Documentation/user/notation.itely: added info about what
13225         \voiceFoo does.  Also rewrote warning about marks at
13226         a line break.
13227
13228         * Documentation/user/changing-defaults.itely: added info
13229         about putting dynamics in parenthesis and brackets.
13230
13231 2005-01-27  Werner Lemberg  <wl@gnu.org>
13232
13233         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13234
13235 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13236
13237         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13238         portato-direction.ly
13239
13240         * lily/beam.cc (consider_auto_knees): add beam height to
13241         threshold. Fixes: knee-multiple-beam.ly
13242
13243         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13244         pedal line spanners. Fixes: instrument-center-pedal.ly
13245
13246         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13247         if encountering barline. Fixes: auto-beam-repeat.ly
13248
13249 2005-01-26  Werner Lemberg  <wl@gnu.org>
13250
13251         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13252         overlapping.
13253
13254         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13255         with inflections for the 1/2 sharp glyph.
13256
13257         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13258         connection between `t' and `r'.
13259         Unify bulb with the rest of `r' to avoid grazing outlines which
13260         confuses the overlap removal algorithm of fontforge.
13261
13262         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13263         inflections.
13264         (draw_cross): Fix shape to have uniform thickness in corners.
13265
13266         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13267         to avoid an uneven number of self-intersections; this confuses
13268         fontforge.
13269         Fix a slight bug in the shape at left bottom (which is visible only
13270         at high magnifications).
13271         `Center' the stem horizontally to avoid overlapping.
13272
13273 2005-01-24  Werner Lemberg  <wl@gnu.org>
13274
13275         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13276         to `asis'.
13277         (fet_begingroup): Save group name in string `feta_group'.
13278         (fet_endgroup): Updated.
13279         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13280
13281         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13282
13283         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13284         in metapost.
13285
13286 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13287
13288         * Documentation/user/notation.itely: really minor editing.
13289
13290 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13291
13292         * Documentation/user/examples.itely: minor editing.
13293
13294         * Documentation/user/changing-defaults.itely: minor editing.
13295
13296         * Documentation/user/notation.itely: clarified info on polyphony
13297         and \addlyrics.
13298
13299 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13300
13301         * scm/output-gnome.scm: 
13302         * scm/output-svg.scm:
13303         * scm/lily-library.scm (font-name-style): Update font name
13304         kludging for fontconfig use.
13305
13306 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13307
13308         * scm/define-markup-commands.scm: Document right-align and
13309         larger markup commands. Remove "TODO" from the topmost comment
13310         "each markup function should have a doc string." More consistent
13311         use of new-lines.
13312
13313 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13314
13315         * Documentation/user/changing-defaults: removed info about
13316         copyright symbol, since it's likely to change soon.
13317         Added info about betweensystemspace.
13318
13319         * Documentation/user/notation.itely: minor fixes.
13320
13321         * Documentation/user/lilypond.tely,
13322         Documentation/user/music-glossary.tely: changed copyright
13323         date to 2005 instead of 2004.
13324
13325         * input/test/volta-chord-names.ly: added old example back.
13326
13327 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13328
13329         * mf/feta-beugel.mf: use design size 20 (not 15).
13330
13331         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13332         change name to aybabtu completely
13333
13334 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13335
13336         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13337         design_size to fontname
13338
13339 2005-01-19  Werner Lemberg  <wl@gnu.org>
13340
13341         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13342         mf/feta-schrift.mf: s/p/pat/ if a path variable.
13343
13344         * mf/feta-autometric.mf (set_char_box): Add code which emits
13345         specials for mf2pt1 if run with metapost.
13346         (to_bp): New macro for mf2pt1.
13347
13348 2005-01-18  Graham Percival  <gperlist@shaw.ca>
13349
13350         * Documentation/user/changing-defaults: added info on
13351         creating a copyright symbol.
13352
13353 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13354
13355         * VERSION: release 2.5.9
13356         
13357 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
13358
13359         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
13360
13361         * Documentation/user/notation.itely: Document
13362         score-override-auto-beam-setting Fix documentation for
13363         revert-auto-beam-setting.
13364
13365 2005-01-18  Werner Lemberg  <wl@gnu.org>
13366
13367         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
13368         (procset): New function to define a procset resource.
13369         (ps-embed-pfa): New function to define a font resource.
13370         (setup): New function to define a `Setup' environment.
13371         (preamble): Use new functions.
13372
13373         * ps/lilypond.defs (init-lilypond-parameters): New function to
13374         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
13375
13376 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13377
13378         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
13379
13380 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
13381
13382         * scm/define-markup-commands.scm: Change number->markletter-string
13383         to take two arguments (vector number). Add number->mark-alphabet-vector
13384         and markalphabet markup command.
13385
13386         * scm/translation-functions.scm: Add format-mark-box-alphabet,
13387         format-mark-alphabet, format-mark-box-barnumbers and
13388         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
13389
13390 2005-01-17  Graham Percival  <gperlist@shaw.ca>
13391
13392         * Documentation/user/examples.itely: add SATB automatic piano
13393         reduction template.
13394
13395         * Documentation/user/notation.itely: added info about changing
13396         partcombine texts.  Also adds examples of alternate lyrics.
13397
13398         * Documentation/user/changing-defaults.itely: added warning
13399         about \RemoveEmptyStaffContext overriding previous changes.
13400
13401 2005-01-17  Werner Lemberg  <wl@gnu.org>
13402
13403         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
13404         feta-alphabet*.
13405
13406 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13407
13408         * python/lilylib.py (make_ps_images): don't do final showpage for
13409         multi-page documents.
13410         
13411         * VERSION (MY_PATCH_LEVEL): release 2.5.8
13412
13413 2005-01-16  Graham Percival  <gperlist@shaw.ca>
13414
13415         * Documentation/user/lilypond.tely: changed order of appendices;
13416         unified index should be last.
13417
13418         * Documentation/user/notation.itely: add example of key signatures
13419         and info about Staff.printKeyCancellation.
13420
13421 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13422
13423         * lily/include/repeated-music.hh (class Repeated_music): change
13424         into "namespace" class.
13425
13426         * lily/event.cc: remove Key_change_event.
13427
13428         * lily/include/transposed-music.hh (class Transposed_music): remove.
13429
13430         * lily/transposed-music.cc: remove
13431
13432         * lily/include/relative-music.hh: remove.
13433
13434         * lily/include/music-sequence.hh (struct Music_sequence): change
13435         into "namespace" class.
13436
13437         * lily/untransposable-music.cc (Module): remove
13438
13439         * lily/include/un-relativable-music.hh (Module): remove
13440
13441         * lily/include/untransposable-music.hh (Module): remove
13442
13443         * lily/include/music-list.hh (Module): remove file
13444
13445         * lily/un-relativable-music.cc: remove file.
13446
13447 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13448
13449         * lily/parser.yy: Compile fix.
13450
13451 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13452
13453         * lily/include/music.hh (class Music): unvirtualize transpose().
13454
13455         * lily/sequential-music.cc: remove file.
13456
13457         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
13458
13459         * lily/slur-scoring.cc (get_best_curve): only switch on
13460         DEBUG_SLUR_SCORING for non NDEBUG builds.
13461
13462         * lily/include/music.hh (class Music): replace Music::start_mom()
13463         by start-callback property
13464
13465         * lily/include/grace-music.hh: remove file. 
13466
13467         * lily/stem.cc (height): robustness fix.
13468
13469         * lily/time-scaled-music.cc: remove file.
13470
13471         * lily/include/music.hh (class Music): include SCM init argument.
13472         (class Music): replace Music::get_length() virtual by
13473         length-callback property everywhere.
13474
13475         * scripts/convert-ly.py (conv): add  # to \property scalar value.
13476
13477         * mf/GNUmakefile: don't install *list.ly
13478
13479 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13480
13481         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
13482
13483 2005-01-12  Werner Lemberg  <wl@gnu.org>
13484
13485         This patch addresses the following problems in the feta sources
13486         files which contribute to the fetaXX fonts.
13487
13488         . Many fixes for rasterization at low resolutions (consistent use of
13489           `vround' and `hround', integer shift values for paths, applying
13490           `eps' for mirrored paths, use of `define_whole_pixels' and
13491           friends, etc.) -- while this probably looks like a waste of time
13492           it has revealed deficiencies in some glyph shapes.  See comment at
13493           the end of feta-params.mf how vertical symmetry is achieved.
13494
13495         . The `---' operator has been replaced everywhere with `--'; this
13496           both improves and considerably reduces the font size after
13497           conversion with mf2pt1.
13498
13499         These change aren't explicitly mentioned below since virtually all
13500         glyphs are affected.
13501
13502         Other notable differences:
13503
13504         . Glyphs from feta-accordion.mf now have charboxes around the
13505           outline.
13506
13507         . Fixed incorrect charbox for `accDot'.
13508
13509         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
13510
13511         . Fixed position of the bow in the `upprall' glyph and its siblings.
13512
13513         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
13514           dependent on the staff line thickness to avoid touching the middle
13515           staff line at smaller sizes.
13516
13517         . Largely extended output for feta-testXX: Where useful, glyphs
13518         are shown both between and on staff lines.
13519
13520
13521         * mf/feta-params.mf (staff_space_rounded,
13522         stafflinethickness_rounded, linethickness_rounded,
13523         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
13524         Update all code which uses them where appropriate.
13525         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
13526         New variables used to control rasterization at low resolutions.  Set
13527         to zero if feta code is processed with metapost.
13528
13529         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
13530         (draw_rounded_block, draw_square_block): Updated to use `--' only.
13531         (flare_path): Updated.
13532         Make it work with `filldraw' (but only circular pens).
13533         (hfloor, vfloor, hceiling, vceiling): New macros.
13534
13535         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
13536         Use `draw' again in mf mode to have good pixel dropout control.
13537         Fix intersection points of horizontal lines with circle.
13538         ("accDot"): Fix parameters for set_char_box.
13539         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
13540         control.
13541
13542         * mf/feta-banier.mf: Updated.
13543
13544         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
13545         testing.
13546         (undraw_inside_ellipse): Remove `center' argument.  Update all
13547         callers.
13548         (draw_brevis): New macro, called by "Brevis notehead".
13549         (draw_whole_triangle_head): New macro, called by "Whole
13550         trianglehead".
13551         (draw_small_triangle_head): Use `filldraw'.
13552
13553         * mf/feta-eindelijk.mf: Remove useless global group.
13554         Updated.
13555
13556         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
13557         `filldraw'.
13558
13559         * mf/feta-pendaal.mf: Updated.
13560
13561         * mf/feta-puntje.mf: Updated.
13562
13563         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
13564         less points.
13565         ("Flageolet"): Use `draw' again in mf mode to have good pixel
13566         dropout control.
13567         ("Varied Coda"): Use `draw_block'.
13568         (draw_comma): Fix typo.
13569         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
13570         pixel dropout control.
13571
13572         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
13573         position of bow.
13574
13575         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
13576         sizes.
13577
13578         * mf/feta-toevallig.mf (remember_pic): New variable, used for
13579         testing.
13580         (draw_meta_sharp): Much simplified.
13581         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
13582
13583         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
13584
13585 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
13586
13587         * Documentation/user/notation.itely (Ancient rests): Fix typo
13588         (thanks Anthony)
13589
13590 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
13591
13592         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
13593
13594         * lily/main.cc (setup_paths): Add cff.
13595
13596         * mf/GNUmakefile (foe): Include actual target %.cff.
13597         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
13598
13599 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13600
13601         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
13602         suffix for main_input_b_.
13603
13604         * scm/music-functions.scm (toplevel-music-functions):
13605         precompute music lengths for music expressions.  
13606
13607 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13608
13609         * lily/include/input.hh (class Input): new `end_' slot for end of
13610         input. Renamed defined_str0_ to start_.
13611
13612         * lily/input.cc (Input): Add Input::Input (Input const &) and
13613         remove Input::Input (Source_file*, char const *). Use the new
13614         slots.
13615         (set_location): method used by bison to propagate input
13616         locations (YYLLOC_DEFAULT).
13617         (end_line_number, end_column_number, step_forward): new methods
13618         
13619         * lily/input-scheme.cc (ly:input-both-locations): new function,
13620         similar to ly:input-location, but also return the end line and
13621         column.
13622
13623         * lily/include/includable-lexer.hh: 
13624         * lily/includable-lexer.cc: 
13625         * lily/include/lily-lexer.hh (class Lily_lexer): 
13626         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
13627         Includable_lexer to Lily_lexer, in order to update lexloc (the
13628         yylloc), a new slot of Lily_lexer.
13629         (here_input, LexerError): simplify by using the lexloc slot (aka
13630         yylloc)
13631
13632         * lily/lexer.ll: #define yylloc to use input locations (it may
13633         be useless here?). Fixed the #embedded_scm rule (step the location
13634         forward in order to skip the sharp sign before parsing the scheme
13635         expression)
13636
13637         * lily/include/lily-parser.hh (class Lily_parser): 
13638         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
13639         here_input()
13640         (parser_error): overload for more precise locations of errors.
13641
13642         * lily/parser.yy (YYLTYPE): set location type to Input
13643         (YYLLOC_DEFAULT): use Input::set_location()
13644         (yylex): add the YYLTYPE* location parameter.
13645         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
13646         Give an Input parameter to THIS->parser-error() for more accurate
13647         messages.
13648
13649 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13650
13651         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
13652
13653         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
13654         on BEAMQUANTING for non-NDEBUG builds.
13655
13656         * lily/stem.cc (head_count): performance: avoid String::String()
13657         inside oft called function.
13658
13659 2005-01-09  Graham Percival  <gperlist@shaw.ca>
13660
13661         * Documentation/user/examles.itely: attempted fix for broken
13662         string quartet template.
13663
13664         * Documentation/user/notation.itely: remove unnecessary broken
13665         link.
13666
13667 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13668
13669         * VERSION (PACKAGE_NAME): release 2.5.7
13670
13671 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13672
13673         * config.make.in (METAFONT): Append -progname=mf, fixes use with
13674         mf-nowin for teTeX-3.0.  Backportme.
13675
13676         * scm/output-svg.scm (utf8-string): New function.
13677
13678         * scm/output-gnome.scm (utf8-string): New function.
13679         (otf-name-mangling): Remove.
13680
13681         * lily/pango-font.cc (Pango_font): Use font string iso font
13682         filename for utf8-text.
13683
13684         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
13685         name.
13686
13687 2005-01-08  Graham Percival  <gperlist@shaw.ca>
13688
13689         * Documentation/user/notation.itely: add info about
13690         Staff.extraNatural = ##f in Pitches section.  Also
13691         fixed some minor issues in the Vocal music section.
13692
13693 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13694
13695         * scm/output-ps.scm (white-text): comment out Helvetica font,
13696         which is broken for my GS install.
13697
13698         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
13699         which provides a tighter bbox.
13700
13701         * scm/define-grobs.scm (all-grob-descriptions): remove all
13702         extra-offsets from definitions.
13703
13704 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
13705
13706         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
13707         add tuning for 4-string bass and some common 4/5-string banjo
13708         tunings.  New function (four-string-banjo) turns a 5-string tuning
13709         into a 4-string tuning.  New function
13710         (fret-number-tablature-format-banjo) computes correct fret numbers
13711         on 5-string banjos.
13712
13713         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
13714         Add beam correction to TabVoice.
13715
13716         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
13717         using bold font; makes tabs more readable.
13718
13719 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13720
13721         * lily/font-select.cc (get_font_by_design_size): don't make
13722         Modified_font_metric; this causes trouble, since we don't know the
13723         font magnification from inside Pango_font::text_stencil()
13724
13725         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
13726
13727         * Documentation/user/notation.itely (The Lyrics context): comment out
13728         broken {Small ensembles} link.
13729
13730         * scm/framework-svg.scm (output-framework): change calling convention.
13731
13732         * lily/object-key-dumper-scheme.cc: new file.
13733
13734         * lily/object-key-undumper-scheme.cc: new file.
13735
13736         * lily/tweak-registration-scheme.cc: new file.
13737
13738         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
13739
13740         * Documentation/user/examples.itely (String quartet): uncomment
13741         broken example.
13742
13743         * lily/font-config.cc: new file.
13744
13745 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13746
13747         * scm/output-svg.scm: 
13748         * scm/output-gnome.scm: s/bigcheese/emmentaler.
13749
13750         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
13751
13752 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13753
13754         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
13755         Add headers.
13756
13757         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
13758
13759 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13760
13761         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
13762
13763         * lily/include/main.hh: lose _b hungarian suffixes for global
13764         variables.
13765
13766         * lily/include/lily-guile-macros.hh: new file.
13767
13768         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
13769
13770         * lily/general-scheme.cc: new file. 
13771
13772         * lily/font-select.cc (get_font_by_design_size): retrieve
13773         PangoFont for (designsize . "pango-descr") entries.
13774
13775         * lily/lily-parser-scheme.cc: new file.
13776
13777         * lily/output-def-scheme.cc: new file.
13778
13779         * lily/paper-book-scheme.cc: new file.
13780
13781         * lily/duration-scheme.cc (LY_DEFINE): new file.
13782
13783         * lily/pitch-scheme.cc:  new file.
13784
13785         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
13786
13787 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13788
13789         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
13790
13791 2005-01-06  Graham Percival  <gperlist@shaw.ca>
13792
13793         * Documentation/user/notation.itely: minor editing.
13794
13795         * Documentation/user/changing-defaults: minor editing.
13796
13797         * Documentation/user/examples.itely: add template for
13798         string quartet part extraction; demonstrates tag.
13799
13800 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
13801
13802         * Documentation/user/notation.itely: documents
13803         format-mark-box-letters and format-mark-box-numbers
13804
13805         * scm/define-context-properties.scm: change comment.
13806
13807 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13808
13809         * scm/framework-ps.scm (output-classic-framework): new function:
13810         dump systems as separate .eps files (without fonts) and write a
13811         single collecting .tex file.
13812
13813 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
13814
13815         * Documentation/user/notation.itely (Setting simple songs):
13816         Correct several errors in the equivalent formulation of
13817         \addlyrics. 
13818         (The Lyrics context): Corrected link to the SATB example.
13819
13820 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13821
13822         * scm/lily.scm (completize-formats): new function
13823         (postprocess-output): new function
13824
13825         * lily/paper-book.cc (classic_output): change calling
13826         convention. Give basename as first argument. 
13827         remove Paper_book::post_processing().
13828
13829         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
13830
13831 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13832
13833         * lily/paper-outputter.cc (LY_DEFINE): new function
13834         ly:outputter-close.
13835
13836         * lily/main.cc: change --format,-f to --backend,-b
13837
13838         * lily/include/main.hh: rename format to backend.
13839
13840         * scm/translation-functions.scm (format-mark-box-numbers): add.
13841         patch by Erlend Aasland
13842
13843 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13844
13845         * lily/pango-font.cc (text_stencil): dump string as
13846         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
13847
13848 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
13849
13850         * configure.in (gui_b): Remove handy developer-only
13851         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
13852         CVS source installations (but break other non-default but correct
13853         PKG_CONFIG_PATH setups), as this is no longer developer-only.
13854
13855         * SConstruct: 
13856         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
13857         compatibility (backportme).
13858
13859         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
13860
13861 2005-01-03  Werner Lemberg  <wl@gnu.org>
13862
13863         Prepare glyph shapes for mf2pt1 conversion.
13864
13865         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
13866         (accDiscant, accFreebase, accStdbase): Replace `draw' with
13867         `penstroke'.
13868         (accDot): Use `drawdot'.
13869         (accBayanbase): Replace `draw' with `draw_gridline'.
13870         (print_penpos): Moved to feta-macros.mf.
13871         (accOldEE): Replace `filldraw' with `penstroke'.
13872         Replace `draw' with `penstroke' and `drawdot'.
13873
13874         * mf/feta-banier.mf: Code clean-up.
13875         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
13876         `fill'.
13877
13878         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
13879
13880         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
13881         paremeter to control drawing of labels.  Update all callers.
13882
13883         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
13884         (new_bulb): Return a bulb as a single path.  To do that, it now
13885         takes some more parameters.  Updated all callers.
13886         (draw_gclef): Major clean-up.  `draw' has been replaced with
13887         `penstroke', unnecessary outlines have been removed.
13888         Remove (unused) gnome-canvas code.
13889
13890         * mf/feta-macros.mf (print_penpos): New macro (from
13891         feta-accordion.mf).
13892         Other minor fixes.
13893
13894         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
13895         ("Pedal dot"): Use `drawdot'.
13896         (draw_pedal_P): Add parameter to control drawing of labels.  Update
13897         all callers.
13898         Fix shape at top.
13899         (draw_pedal_e): Add parameter to control drawing of labels.  Update
13900         all callers.
13901         (draw_pedal_d): Add parameter to control drawing of labels.  Update
13902         all callers.
13903         Revert drawing direction.
13904
13905         * mf/feta-schrift.mf (draw_fermata): Use single path.
13906         (draw_short_fermata): Replace `filldraw' with `fill'.
13907         (draw_long_fermata, draw_very_long_fermata): Replace calls to
13908         `draw_rounded_block' with a single path.
13909         ("Thumb"): Draw full circle instead of mirroring segments.
13910         (draw_accent): New macro.
13911         ("> accent", "espr"): Use it.
13912         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
13913         ("open (unstopped)"): Draw full circle instead of mirroring
13914         segments.
13915         (draw_vee): Removed.
13916         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
13917         ("Downbow"): Replace calls to `draw_rounded_block' with a single
13918         path.
13919         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
13920         partial pieces drawn with `fill' -- these do still overlap with the
13921         stem of the `t' but just once, not multiple times so that fontforge
13922         can handle it gracefully.
13923         Change other parts of the glyph so that fontforge's overlapping
13924         algorithm reliably works.
13925         (draw_heel): Replace `draw' with `fill'.
13926         (draw_toe): Use `draw_accent' instead of `draw_vee'.
13927         ("Flageolet"): Replace `draw' with `penstroke'.
13928         ("Segno"): Replace `filldraw' with `penstroke'.
13929         Replace `draw' with `drawdot'.
13930         ("Coda"): Replace `fill' with `penstroke', using a single path.
13931         ("Varied Coda"): Use less overlapping paths.
13932         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
13933         single path.
13934
13935         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
13936         group to better control the `labels' command.
13937         Rename argument to `offset' and use it actually.  Update all
13938         callers.
13939         Replace `filldraw' with `fill'.
13940         ("mordent", "prallmordent", "upmordent", "downmordent",
13941         "lineprall"): Replace `draw' with `draw_gridline'.
13942         ("upprall", "downprall"): Replace `draw' with `fill'.
13943
13944         * mf/feta-timesig.mf: Formatting.
13945
13946         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
13947         to...
13948         ("Flat"): Here.
13949         (draw_paren): Move code to draw labels to...
13950         ("Right Parenthesis"): Here.
13951
13952 2005-01-02  Graham Percival <gperlist@shaw.ca>
13953
13954         * Documentation/user/notation.itely: add example of \setTextDecresc
13955         and \setTextDim.
13956
13957 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
13958
13959         * scm/define-markup-commands.scm :  fix glyph-strings of
13960         accidentals and \note-by-number
13961
13962 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13963
13964         * VERSION: 2.5.6 released.
13965         
13966         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
13967
13968         * input/regression/new-markup-scheme.ly: oops. font-family=music
13969         -> font-encoding fetaMusic.  
13970
13971         * lily/main.cc: put default to PS.
13972
13973         * lily/tfm.cc: idem.
13974
13975         * lily/afm.cc: idem.
13976
13977         * lily/include/modified-font-metric.hh (struct
13978         Modified_font_metric): remove coding_scheme() method.
13979
13980         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
13981
13982         * scripts/convert-ly.py (conv): crash on encountering \encoding.
13983
13984         * input/les-nereides.ly: convert to utf8
13985
13986         * lily/modified-font-metric.cc (text_dimension): idem.
13987
13988         * lily/parser.yy (TODO): idem.
13989
13990         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
13991
13992         * lily/lexer.ll: remove encoding
13993
13994         * scm/framework-ps.scm (output-variables): separately scale the
13995         page to mm 
13996
13997         * lily/pango-font.cc (Pango_font): fix scaling.
13998
13999         * lily/font-metric.cc (design_size): design_size returns a
14000         dimension now as well.
14001
14002 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14003
14004         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14005         brace generation. 
14006
14007         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14008
14009 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14010
14011         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14012         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14013
14014 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14015
14016         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14017         in first run as well.
14018
14019         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14020         dimension less points (ie. 12 = 12 point)
14021
14022         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14023
14024         * lily/all-font-metrics.cc (find_pango_font): set description_
14025
14026         * lily/pango-font.cc (text_stencil): export size as well.
14027         (text_stencil): fix scaling and extents box.
14028
14029 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14030
14031         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14032
14033         * Documentation/user/invoking.itely (Invoking lilypond): document
14034         texstr
14035
14036         * scripts/convert-ly.py (conv): add ancient rules.
14037
14038         * scm/clef.scm (c0-pitch-alist): replace - with .
14039
14040         * scripts/lilypond-book.py (process_snippets): add texstr support.
14041
14042         * scm/framework-texstr.scm (header): change extension to .textmetrics
14043
14044         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14045         -f tex.
14046
14047         * lily/text-metrics.cc: new file.
14048         (try_load_text_metrics): new function
14049
14050         * lily/include/text-metrics.hh: new file.
14051
14052 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14053
14054         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14055         ly_scheme_function to ly_lily_module_constant.
14056
14057         * lily/modified-font-metric.cc (text_dimension): try
14058         lookup_tex_text_dimension() first.
14059
14060         * lily/tfm.cc: new function ly:load-text-dimensions
14061
14062 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14063
14064         * scm/output-texstr.scm (text): use \lilygetmetrics
14065
14066         * scm/framework-texstr.scm (header): dump in new format.
14067
14068         * tex/lilypond-tex-metrics: new file.
14069         
14070 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14071
14072         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14073         mapping.
14074         (index_to_charcode): New method.
14075
14076         * scm/output-ps.scm (glyph-string): 
14077         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14078
14079 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14080
14081         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14082         implement fully, need FONT to get to charcode.
14083
14084         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14085
14086         * scm: Cleanups.
14087
14088         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14089         {Tunable context properties},
14090         {All layout objects},
14091         {Music definitions}.
14092
14093 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14094
14095         * VERSION: release 2.5.5
14096         
14097         * lily/main.cc: use TeX as default output format.
14098
14099         * flower/file-path.cc (find): try to open directly as well, so we
14100         find absolute path files. 
14101
14102         * lily/pango-select.cc: new file.
14103
14104         * scm/framework-ps.scm: remove all encoding code. 
14105         load pfb/pfa for PangoFont too.
14106         
14107         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14108
14109 2004-12-22  Werner Lemberg  <wl@gnu.org>
14110
14111         Prepare glyph shapes for mf2pt1 conversion.
14112
14113         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14114
14115         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14116         (define_triangle_shape): Use it to replace `draw' with `fill' and
14117         `unfill'.  Update all callers.
14118         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14119         (draw_cross): Ditto.
14120         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14121         Use penrazor for better conversion with mf2pt1.
14122         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14123         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14124         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14125         draw_la_head, draw_ti_head): Replace `filldraw' with
14126         `fill'.  Update all callers.
14127
14128 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14129
14130         * lily/paper-book.cc (output): revert: only allow a single output
14131         format.
14132
14133         * lily/include/pango-font.hh: new file.
14134
14135         * lily/pango-font.cc: new file.
14136
14137         * lily/font-metric.cc (text_stencil): new routine
14138
14139         * lily/all-font-metrics.cc (find_pango_font): new routine.
14140
14141         * lily/include/font-metric.hh (struct Font_metric): add
14142         text_stencil()
14143
14144         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14145
14146 2004-12-22  Werner Lemberg  <wl@gnu.org>
14147
14148         Prepare glyph shapes for mf2pt1 conversion.
14149
14150         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14151
14152         * mf/feta-toevallig.mf: Formatting.
14153         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14154         ("Natural"): Fix paths to allow better postprocessing.
14155         (draw_meta_flat): Use `z3l' as additional point in path to get
14156         better conversion with mf2pt1.
14157         Other minor cleanups.
14158         ("3/4 Flat"): Add auxiliary points and modify path to replace
14159         `draw' with `fill'.
14160         ("Double Sharp"): Mirror path segments instead of picture elements
14161         to get a single outline.
14162         Modify path to replace `filldraw' with `fill'.
14163
14164 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14165
14166         * input/test/unfold-all-repeats.ly: added file back.
14167
14168         * Documentation/user/notation.itely,
14169         Documentation/user/programming-interface.itely
14170         Documentation/user/changing-defaults.itely: fixed misc broken
14171         links to input/test/ files.
14172
14173 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14174
14175         * tex/texinfo.tex: Update.  We should not be distributing this,
14176         but since we do, use latest version.
14177
14178         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14179         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14180         macros for feta glyphs.
14181
14182 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14183
14184         * Documentation/user/changing-defaults.itely: fix index for set.
14185
14186         * Documentation/user/converters.itely: added convert-ly bugs list
14187         from CVS.
14188
14189 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14190
14191         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14192         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14193         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14194         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14195
14196         * mf/GNUmakefile (pfa_warning): Use less broken check.
14197
14198         * python/lilylib.py (setup_environment): Remove cruft from
14199         GS_FONTPATH.
14200
14201         * configure.in: Bump mftrace requirement to 1.1.1.
14202
14203 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14204
14205         * scm/output-svg.scm (beam): Use polygon.
14206
14207         * scm/lily-library.scm: Bugfix.
14208
14209         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14210
14211         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14212
14213 2004-12-19  Werner Lemberg  <wl@gnu.org>
14214
14215         Prepare glyph shapes for mf2pt1 conversion.
14216
14217         * mf/feta-eindelijk: Some formatting.
14218         (multi_rest_x, multi_beam_height): Removed.  Unused.
14219         ("Quarter rest"): Use `intersectiontimes' to create a single
14220         outline.
14221         (rest_crook): Removed.  Unused.
14222         (draw_rest_bulb): Return path (without filling).  Update callers.
14223         Simplified.
14224         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14225         "128th rest"): Simplify `pat'.
14226         Create single outline.
14227
14228 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14229
14230         * mf/GNUmakefile (ALL_GEN_FILES):
14231         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14232
14233         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14234         function.
14235
14236 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14237
14238         * scm/output-texstr.scm (placebox): add routine
14239
14240         * VERSION (PACKAGE_NAME): release 2.5.4
14241
14242         * scm/framework-texstr.scm (output-framework): new file.  
14243
14244         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14245         processing.
14246
14247         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14248
14249         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14250         rule.
14251
14252         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14253
14254         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14255
14256         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14257
14258 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14259
14260         * scm/framework-svg.scm (dump-page): Implement landscape.
14261
14262 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14263
14264         * lily/main.cc (setup_paths): Add svg to search path.
14265
14266         * scm/output-svg.scm:
14267         * scm/framework-svg.scm: Add pageSet.  Update.
14268         (dump-fonts): New function.
14269         (output-framework): Use it.
14270
14271         * mf/GNUmakefile: 
14272         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14273
14274 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14275
14276         * tex/lilyponddefs.tex: comment out new ifpdf code.
14277
14278 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14279
14280         * GNUmakefile.in: 
14281         * SConstruct (symlink): Replace afm by otf.
14282
14283         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14284         ly:pango-add-afm-decoder.
14285
14286         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14287
14288 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14289
14290         * scm/output-ps.scm (new-text): don't access t glyph for getting
14291         space dimension.
14292
14293         * ly/init.ly: warn about \version
14294
14295         * lily/lexer.ll: set version-seen?
14296
14297 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14298
14299         * scm/output-svg.scm (string->entities): Update.
14300
14301 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14302
14303         * lily/main.cc (setup_paths): replace afm by otf for path. 
14304
14305         * lily/pangofc-afm-decoder.cc: remove.
14306
14307         * lily/include/pangofc-afm-decoder.hh: remove.
14308
14309         * scm/framework-scm.scm (output-framework): new file.
14310
14311         * mf/GNUmakefile: remove SAUTER_FONTS.
14312         remove SVG/sodipodi hacks.
14313
14314         * scm/lily-library.scm (stderr): move stderr.
14315
14316         * mf/GNUmakefile: remove AFM support.
14317
14318         * buildscripts/mf-to-table.py (base): remove AFM support.
14319
14320         * lily/open-type-font.cc (design_size): use design_size
14321
14322 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14323
14324         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14325
14326 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14327
14328         * mf/GNUmakefile: Generate combined aybabtu info.
14329         * mf/aybabtu.pe.in (i): Load it.
14330
14331         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14332         are not symbols.
14333
14334         * lily/include/open-type-font.hh (count): New method.
14335
14336         * mf/aybabtu.pe.in: Typo.
14337
14338         * Documentation/user/out/lilypond-internals.nexi (Scheme
14339         functions): Typo.
14340
14341         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14342
14343 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14344
14345         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
14346         subfonts.
14347
14348         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
14349
14350         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
14351         (tex-font-command-raw): new function.
14352
14353         * lily/include/virtual-font-metric.hh (Module): remove file
14354
14355         * lily/virtual-font-metric.cc (Module): remove file.
14356         
14357
14358         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
14359         (get_indexed_char): read bbox from lily table if present.
14360
14361 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14362
14363         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
14364         aybabtu.subfonts
14365
14366         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
14367         global glyphname. Enables more than 64 glyphs in the OTF.
14368
14369 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
14370
14371         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
14372         braces.
14373
14374         * lily/open-type-font.cc (design_size): Use 12 as default for
14375         design size.
14376
14377         * mf/aybabtu.pe.in: New file.  Merge all our braces.
14378
14379         * mf/GNUmakefile: Generate aybabtu.
14380
14381         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
14382
14383 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14384
14385         * scm/lily-library.scm (char->unicode-index): Remove.
14386
14387         * scm/output-gnome.scm (text): Bugfix for plain string input.
14388         Updates.
14389
14390         * scm/output-svg.scm (svg-font): Add weight to font selection.
14391
14392 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
14393
14394         * Documentation/topdocs/INSTALL.texi (Top): Point to
14395         buildscripts/out/clean-fonts instead of
14396         buildscripts/clean-fonts.sh. 
14397
14398 2004-12-13  Graham Percival  <gperlist@shaw.ca>
14399
14400         * input/regression/figured-bass.ly: attempt to clarify text.
14401
14402         * Documentation/user/notation.tely: add cindex for tag, attempt to
14403         add figured bass example.
14404
14405         * Documentation/user/changing-defaults: basic editing.
14406
14407 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14408
14409         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
14410
14411         * lily/open-type-font.cc (LY_DEFINE): new function
14412         ly:font-sub-fonts
14413
14414         * lily/include/font-metric.hh (struct Font_metric): new method
14415         sub_fonts()
14416
14417         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
14418         . with - in add.stem.
14419         
14420 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14421
14422         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
14423         and fetaDynamic.
14424
14425         * lily/rest.cc (glyph_name): Change - to . .
14426
14427         * scm/output-gnome.scm (text): Hello world, again.
14428
14429         * scm/output-svg.scm (named-glyph): New function.  Hello world!
14430
14431         * lily/modified-font-metric.cc (index_to_charcode): New method.
14432
14433         * lily/include/font-metric.hh (index_to_charcode): New function.
14434
14435         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
14436         new function.
14437         (ly:font-glyph-to-index): Remove.
14438
14439 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14440
14441         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
14442
14443         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
14444
14445         * lily/open-type-font.cc (load_scheme_table): new function
14446
14447         * lily/dots.cc (print): replace - 
14448
14449         * lily/open-type-font.cc (attachment_point): new function.
14450         (load_table): read LILC table
14451
14452         * buildscripts/gen-bigcheese-scripts.py (Module): new
14453         file. Generate FF scripts.
14454
14455         * mf/feta-din10.mf: idem.
14456
14457         * mf/feta-nummer10.mf: remove mf files.
14458
14459         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
14460
14461 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14462
14463         * lily/lily-guile.cc: Use scm_from_locale_stringn.
14464
14465         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
14466         compatibility.
14467
14468 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14469
14470         * lily/open-type-font.cc (get_indexed_char): scale metrics by
14471         design-size and units_per_EM.
14472
14473         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
14474
14475 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14476
14477         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
14478         does not crash fontforge.
14479
14480         * scm/lily-library.scm (char->unicode-index): Hack to map onto
14481         PUA.
14482
14483 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14484
14485         * scm/framework-ps.scm (ps-embed-cff): new function.
14486
14487         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
14488
14489 2004-12-12  Werner Lemberg  <wl@gnu.org>
14490
14491         * mf/bigcheese.pe.in: Add PUA mapping.
14492         Don't create Type 42 but bare CFF font.
14493
14494 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
14495
14496         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
14497         within canvas boundaries.
14498
14499         * mf/merge.pe.in: Set font names, version, license GPL.
14500
14501         * make/substitute.make: Add FONTFORGE.
14502
14503         * config.make.in (FONTFORGE): Add.
14504
14505         * configure.in (gui_b): Use PATH_PROG for fontforge.
14506
14507 2004-12-11  Graham Percival  <gperlist@shaw.ca>
14508
14509         * scm/define-markup-commands.scm: add baseline-skip to info
14510         about \column.
14511
14512 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
14513
14514         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
14515
14516         * scm/output-gnome.scm (named-glyph): Use it.
14517
14518         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
14519
14520         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
14521         (upper_string, lower_string, reverse_string): Remove.
14522
14523         * configure.in (fontforge): Reinstate version check.
14524
14525         * ly/engraver-init.ly: Fix clef glyph names.
14526
14527         * lily/time-signature.cc (special_time_signature): Fix fraction
14528         glyph names.
14529
14530 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14531
14532         * mf/merge.pe: new file.
14533
14534         * lily/freetype.cc: new file.
14535
14536         * lily/include/open-type-font.hh (class Open_type_font): new file.
14537
14538         * lily/include/freetype.hh: new file.
14539
14540         * lily/open-type-font.cc: new file.
14541
14542         * lily/all-font-metrics.cc (find_otf): new function.
14543
14544 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
14545
14546         * lily/time-signature.cc (special_time_signature): Fix.
14547
14548         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
14549         GTK2 before checking for pango.  Fixes -fgnome.
14550
14551         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
14552         Scheme name.
14553
14554         * scm/define-markup-commands.scm:
14555         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
14556
14557         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
14558
14559         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
14560         date versions.  Fixes configure.
14561         (STEPMAKE_CHECK_VERSION): Support optional actual program version
14562         argument.
14563
14564 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14565
14566         * buildscripts/mf-to-table.py (write_ps_encoding): write real
14567         names in .enc
14568
14569         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
14570
14571 2004-12-09  Graham Percival  <gperlist@shaw.ca>
14572
14573         * Documentation/user/changing-defaults.itely: add info about
14574         make-dynamic-script
14575
14576         * Documentation/user/notation.itely: add link in dynamics to
14577         section about make-dynamic-script.
14578
14579 2004-12-09  Christian hitz  <chhitz@gmx.net>
14580
14581         * lily/lily-guile.cc: change MACOS_X to __APPLE__
14582
14583 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14584
14585         * buildscripts/mf-to-table.py (parse_logfile): use . for
14586         concatting name and group.
14587         (parse_logfile): use M for Minus (negative.)
14588
14589         * lily/include/type-swallow-translator.hh
14590         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
14591
14592         * lily/*.cc: cosmetics around = sign.
14593
14594         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
14595         lyric spacing on the penultimate column.
14596
14597 2004-12-05  Christian Hitz  <chhitz@gmx.net>
14598
14599         * configure.in:
14600         * lily/accidental-placement.cc:
14601         * lily/bar-line.cc:
14602         * lily/beam-concave.cc:
14603         * lily/beam-quanting.cc:
14604         * lily/beam.cc:
14605         * lily/bezier-bow.cc:
14606         * lily/bezier.cc:
14607         * lily/break-align-interface.cc:
14608         * lily/custos.cc:
14609         * lily/dimension-cache.cc:
14610         * lily/dot-column.cc:
14611         * lily/font-metric.cc:
14612         * lily/font-select.cc:
14613         * lily/gourlay-breaking.cc:
14614         * lily/grob-property.cc:
14615         * lily/grob.cc:
14616         * lily/lily-guile.cc:
14617         * lily/line-spanner.cc:
14618         * lily/lookup.cc:
14619         * lily/lyric-extender.cc:
14620         * lily/lyric-hyphen.cc:
14621         * lily/mensural-ligature.cc:
14622         * lily/midi-def.cc:
14623         * lily/misc.cc:
14624         * lily/note-collision.cc:
14625         * lily/note-column.cc:
14626         * lily/note-head.cc:
14627         * lily/paper-outputter.cc:
14628         * lily/percent-repeat-item.cc:
14629         * lily/rest-collision.cc:
14630         * lily/side-position-interface.cc:
14631         * lily/simple-spacer.cc:
14632         * lily/slur-configuration.cc:
14633         * lily/slur-scoring.cc:
14634         * lily/slur.cc:
14635         * lily/spaceable-grob.cc:
14636         * lily/spacing-spanner.cc:
14637         * lily/spanner.cc:
14638         * lily/staff-symbol-referencer.cc:
14639         * lily/stem.cc:
14640         * lily/stencil.cc:
14641         * lily/system-start-delimiter.cc:
14642         * lily/system.cc:
14643         * lily/text-item.cc:
14644         * lily/tie.cc:
14645         * lily/tuplet-bracket.cc:
14646         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
14647         <cmath> beacause isinf/isnan is undefined in <cmath>
14648
14649 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
14650
14651         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
14652
14653 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14654
14655         * VERSION: release 2.5.3
14656         
14657 2004-11-29  Arno Waschk <arno@arnowaschk.de>
14658
14659         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
14660
14661 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14662
14663         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
14664
14665         * lily/note-head.cc (internal_print): always try the "s" head if
14666         u/d not found.
14667
14668         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
14669
14670 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14671
14672         * mf/parmesan-heads.mf (overdone_heads): typos.
14673
14674 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14675
14676         * lily/parser.yy (markup): in markups, { .. } without command
14677         before are also flattened, ie \line must be explicitely used.
14678
14679         * Documentation/user/changing-defaults.itely:
14680         * Documentation/user/notation.itely: 
14681         * input/wilhelmus.ly: 
14682         * input/regression/instrument-name-markup.ly: 
14683         * input/regression/markup-score.ly: 
14684         * input/regression/new-markup-scheme.ly: 
14685         * input/regression/new-markup-syntax.ly: 
14686         * input/test/coriolan-margin.ly: use \line in markups where
14687         appropriate
14688         
14689 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14690
14691         * scm/new-markup.scm (map-markup-command-list): helper function
14692         used in parser.yy to map markup commands on a markup list.
14693
14694         * lily/parser.yy: get rid off < > in markups by treating { } as
14695         real lists.
14696
14697         * lily/lexer.ll: remove < > from markup lexer mode.
14698
14699         * scripts/convert-ly.py (conv): add rule for converting 
14700         \markup < > to \markup { }
14701
14702         * ly/titling-init.ly: 
14703         * input/test/coriolan-margin.ly: 
14704         * input/regression/new-markup-syntax.ly: 
14705         * input/regression/new-markup-scheme.ly: 
14706         * input/regression/multi-measure-rest-text.ly: 
14707         * input/regression/markup-stack.ly: 
14708         * input/regression/markup-score.ly: 
14709         * input/regression/instrument-name-markup.ly: 
14710         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
14711         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
14712         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
14713         * input/wilhelmus.ly: 
14714         * Documentation/user/notation.itely: 
14715         * Documentation/user/music-glossary.tely: 
14716         * Documentation/user/changing-defaults.itely: change < > to { } in
14717         markups
14718
14719 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14720
14721         * lily/accidental-placement.cc (position_accidentals): shortcut if
14722         no accidentals to place.
14723
14724 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14725
14726         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
14727         typo s/ly:dimension ?/ly:dimension?/
14728
14729         * input/regression/lily-in-scheme.ly: 
14730         * input/regression/music-function.ly: 
14731         * ly/spanners-init.ly (assertBeamSlope): 
14732         * scm/music-functions.scm (def-grace-function): add the paper
14733         argument to music function definitions.
14734
14735 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14736
14737         * lily/moment.cc (LY_DEFINE):
14738         ly:moment-main-{denominator,numberator}, new function.
14739
14740         * lily/score-engraver.cc (typeset_all): assign to column on basis
14741         of axis-group-parent-X setting.
14742
14743         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
14744         add_element() on basis of axis-group-parent-Y setting.
14745
14746         * lily/grob.cc: add axis-group-parent-{XY} properties.
14747
14748         * input/regression/spacing-stick-out.ly: new file.
14749
14750         * lily/simple-spacer.cc (add_columns): use binary search for
14751         setting column rods. Changes O(n^2) to O(n log(n)) for
14752         constructing spacing problem from columns.
14753         (add_columns): read allow-outside-line to make sure no texts stick
14754         out.
14755         (solve): Simple_spacer::is_active() only determines
14756         satisfies_constraints_ for non-ragged typesetting.
14757
14758         * lily/simultaneous-music.cc (to_relative_octave): only set
14759         old_relative_used if return pitch actually changed.
14760
14761         * scm/define-context-properties.scm
14762         (all-user-translation-properties): change to match implementation.
14763
14764         * python/lilylib.py: Replace re.match by re.search and adds "-c
14765         showpage" to the gs command line (Johannes Schindelin)
14766
14767         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
14768         before processing. Prevents crash when inf is in the extent.
14769
14770         * scm/define-markup-commands.scm (note-by-number): add "s" to
14771         "noteheads-" glyphname.
14772  
14773         * lily/parser.yy (Generic_prefix_music): supply parser argument to
14774         music function as well.
14775         
14776 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14777
14778         * VERSION: release 2.5.2
14779
14780         * Documentation/user/changing-defaults.itely (Creating titles):
14781         add breakbefore variable.
14782
14783         * lily/paper-book.cc (set_system_penalty): new function. Set
14784         penalty_ based on breakBefore setting
14785
14786         * lily/context-specced-music-iterator.cc (construct_children):
14787         interpret special context id $uniqueContextId 
14788
14789         * lily/context.cc (create_unique_context): new method. Move
14790         creation of unique (\new) contexts into interpreting phase. This
14791         makes
14792
14793           foo= \new Staff ..
14794           << \foo \foo >>
14795
14796         produce 2 staves.
14797         
14798
14799         * scm/define-music-properties.scm (all-music-properties): add
14800         quoted-voice-direction
14801
14802         * ly/music-functions-init.ly: killCues function.
14803
14804         * scm/music-functions.scm (cue-substitute): move creation of voice
14805         contexts further to the back. 
14806
14807 2004-11-25  Werner Lemberg  <wl@gnu.org>
14808
14809         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
14810         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
14811
14812 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
14813
14814         * buildscripts/guile-gnome.sh: Fixed typo.
14815
14816 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14817
14818         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
14819
14820         * scripts/abc2ly.py (dump_slyrics): add ord(). 
14821
14822         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
14823         to regular engraver. 
14824
14825 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14826
14827         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
14828
14829 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14830
14831         * scm/define-markup-commands.scm (fill-line): Typo.
14832
14833         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
14834         and newer.
14835
14836 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
14837
14838         * ly/dynamic-scripts-init.ly: Fixed typo.
14839
14840 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14841
14842         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
14843         note-head, to have different attachment points for up and down.
14844
14845         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
14846
14847         * mf/feta-generic.mf (else): remove solfa.
14848
14849         * mf/feta-bolletjes.mf (tishape): remove unicode test.
14850
14851         * scm/define-context-properties.scm
14852         (all-user-translation-properties): add shapeNoteStyles property.
14853
14854         * lily/shape-note-heads-engraver.cc (process_music): new file.
14855
14856         * lily/event.cc (transpose): call Event::transpose() for
14857         transposing the tonic.
14858
14859 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14860
14861         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
14862         Unicode/OpenType and AFM.
14863
14864         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
14865
14866 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14867
14868         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
14869
14870         * lily/context.cc (Context): unprotect key from ctor.
14871
14872         * scm/stencil.scm (stack-lines): return empty-stencil if argument
14873         is '()
14874         (stack-stencils): idem.
14875
14876         * Documentation/user/changing-defaults.itely (Creating titles):
14877         document new title layout options.
14878
14879         * lily/parser.yy (lilypond_header_body): copy previous
14880         $globalheader if present.
14881
14882         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
14883         ly:module-copy
14884         
14885         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
14886
14887         * scm/titling.scm: remove old titling functions
14888
14889         * lily/stencil.cc (translate): remove absolute dimension.
14890
14891         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
14892         via markup.
14893
14894         * scm/page-layout.scm (marked-up-headfoot): create header/footer
14895         field from user-supplied markup
14896
14897         * scm/define-markup-commands.scm (on-the-fly): new markup
14898         command. Enter SCM markup procedure directly in Scheme.
14899         (fromproperty): new markup command. Read markup from props argument.
14900
14901         * scm/titling.scm (marked-up-title): create title via
14902         user-specified markup. 
14903
14904         * scm/define-markup-commands.scm (column): remove empty stencils
14905         from column.
14906
14907         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
14908         not have side-effect of creating variable stub.
14909
14910         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
14911
14912 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14913
14914         * scm/encoding.scm (coding-alist): 
14915         * scm/font.scm (add-ec-fonts):
14916         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
14917         Extended-TeX-Font-Encoding---Latin.
14918
14919         * lily/side-position-interface.cc (general_side_position): Add
14920         actual offset to error message (avoid constant error messages).
14921
14922         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
14923         block.
14924
14925         * lily/font-select.cc (select_encoded_font)
14926         (get_font_by_mag_step, get_font_by_design_size): 
14927         * lily/modified-font-metric.cc (Modified_font_metric): 
14928         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
14929
14930         * scm/encoding.scm (coding-alist): Add fetaDynamic.
14931         (read-encoding-file): Bugfix: do not require space after bracket.
14932
14933         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
14934         these do not exist.
14935
14936 2004-11-20  Graham Percival  <gperlist@shaw.ca>
14937
14938         * Documentation/user/notation.itely: added info about typesetting
14939         boxed bar numbers.
14940
14941 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14942
14943         * flower/interval.cc (T_to_string): gcc4 fixes.
14944
14945         * scm/define-markup-commands.scm (fill-line): use
14946         stack-stencils. This fixes problems with putting already centered
14947         stencils in a line.
14948
14949         * VERSION: release 2.5.1
14950
14951         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
14952
14953 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14954
14955         * input/example-[1-3].ly: simplify.
14956
14957         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
14958
14959         * scm/output-ps.scm (new-text): new function. Use glyphshow to
14960         show glyphs.
14961
14962         * scm/encoding.scm (decode-byte-string): new function.
14963
14964         * scripts/convert-ly.py (conv): add warning about
14965         set-global-staff-size.
14966
14967         * Doxyfile: add. 
14968
14969         * scripts/convert-ly.py (conv): add raggedlastbottom rule
14970         (conv): warn for TextSpanner split.
14971         (conv): warn for textheight.
14972
14973 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14974
14975         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
14976         building the documentation, info with images are installed.
14977         (final-install): Fix description.  Mention sourcing of login
14978         scripts (instead of running).
14979
14980 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14981
14982         * Debian lmodern support.  Note that LilyPond will issue warnings
14983         
14984             no such encoding: "FontSpecific"
14985
14986           The font selection mechanism wants to get the encoding from the
14987           font itself, but the idea of lmodern is that it is usable with
14988           different encodings, ie, Lily should get the encoding from the
14989           font tree, rather than the font itself.  This would require some
14990           more work.
14991         
14992         * configure.in: Test for and accept lmodern if EC fonts not found.
14993
14994         * scm/framework-tex.scm (font-load-command): TeX font name
14995         mangling for latin1 encoded cork-lm fonts.
14996         (convert-to-ps): Load lm.map if available.
14997
14998         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
14999         available.
15000
15001         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15002
15003         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15004         available.
15005
15006         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15007         path for absolute file name, that is silly.
15008
15009         * lily/score-engraver.cc (initialize): 
15010
15011         * Documentation/user/GNUmakefile (local-install-info): Invoke
15012         install-info --remove first.
15013
15014         * #include cleanup (Andreas Scherer).
15015
15016 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15017
15018         * input/test/script-abbreviations.ly: fix typos.
15019
15020 2004-11-17  Werner Lemberg  <wl@gnu.org>
15021
15022         * python/lilylib.py (options_help_str): Support pretty-printing of
15023         newlines in fourth element of option description.
15024
15025         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15026         feature.
15027         Sort options.
15028
15029         * Documentation/user/lilypond-book.itely: Finish update.
15030
15031 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15032
15033         * Documentation/user/macros.itexi: Add comment about \command.
15034
15035         * Documentation/user/lilypond.tely:
15036         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15037         and lilypond-book nodes, so that `info lilypond' visits the manual
15038         at top level, and `info lilypond-book' visits the lilypond-book
15039         section.
15040
15041         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15042         and packager messages.
15043
15044         * lily/pangofc-afm-decoder.cc: Update test.
15045
15046 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15047
15048         * scm/lily-library.scm (char->unicode-index): New function.
15049
15050         * scm/output-gnome.scm: 
15051         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15052
15053         * Proper naming of file name throughout; s/filename/file[-_]name/.
15054
15055         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15056
15057         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15058
15059 2004-11-16  Werner Lemberg  <wl@gnu.org>
15060
15061         * scripts/lilypond-book.py: The Lord has commanded me to use only
15062         tabs for indentation.  Your humble servant obeys.
15063
15064 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15065
15066         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15067         including font, if LilyPond-feta font is only feta font in path.
15068
15069         * scm/output-gnome.scm (text): Revert to file name of font if font
15070         has no name.  Fixes ec font selection.
15071         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15072
15073         * scm/framework-svg.scm:
15074         * scm/output-svg.scm: New file.  TODO: figure out how to
15075         do character by index in font.
15076
15077         * scm/output-sodipodi.scm: Remove.
15078
15079         * scm/output-ps.scm (stem): Remove.
15080
15081 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15082
15083         * scm/output-gnome.scm (beam): New function.
15084         (slur): Round corners.
15085         (round-filled-box): Round corners.
15086
15087 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15088
15089         * scm/output-gnome.scm (beam): add function.
15090         (draw-line): new routine.
15091         (dashed-line): stub; call draw-line
15092         (polygon): new routine.
15093
15094 2004-11-15  Werner Lemberg  <wl@gnu.org>
15095
15096         * Documentation/user/lilypond-book.itely: Revise section on
15097         lilypond-book options.
15098         Other minor fixes.
15099
15100         * scripts/lilypond-book.py: Change indentation to 4.
15101         Minor formatting.
15102
15103 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15104
15105         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15106         grobs that have tweaks specced.
15107         
15108 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15109
15110         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15111
15112 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15113
15114         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15115         actual char #, not 0 based index.
15116
15117         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15118
15119         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15120         Warning: do make -C mf clean.
15121
15122         * lily/context-property.cc: Compile fix.
15123
15124         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15125         Grok ec-fonts, braces and dynamics.
15126
15127         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15128
15129 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15130
15131         * lily/include/tweak-registration.hh: new file.
15132
15133         * lily/tweak-registration.cc: new file.
15134
15135         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15136         saving tweaks.
15137
15138         * scm/output-gnome.scm (text): comment dribble.
15139
15140 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15141
15142         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15143
15144         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15145         path-def before using.  Fixes muchtomany slurs in wrong places
15146         bug.
15147
15148 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15149
15150         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15151
15152         * lily/include/object-key-undumper.hh (Module): new file.
15153
15154         * lily/object-key-undumper.cc (Module): New file. Deserialize
15155         keys. SCM bindings
15156
15157         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15158         Provide SCM bindings.
15159
15160         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15161         new file. Serialize object keys.
15162         
15163         * lily/object-key.cc (dump): new function.
15164         (as_scheme): new virtual function
15165         (undump): new function
15166         (undumpers): new table.
15167
15168         * lily/include/global-context.hh (Context): take \score key upon init.
15169
15170         * lily/object-key-dumper.cc (serialize_key): new file.
15171
15172         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15173
15174         * lily/lily-lexer.cc: remove \quote.
15175
15176         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15177
15178         * lily/context.cc (Context): take key argument in ctor.
15179         (create_context): new function
15180
15181         * lily/grob.cc (Grob): take key argument in ctor.  
15182
15183         * lily/lilypond-key.cc (do_compare): new file.
15184
15185         * lily/object-key.cc (Object_key): new file.
15186
15187         * lily/include/object-key.hh (class Object_key): new file.
15188
15189         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15190
15191 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15192
15193         * Documentation/user/lilypond-book.itely: add small warning about
15194         noindent default in lilypond-book.
15195
15196         * Documentation/user/converters.itely: add examples for convert-ly.
15197
15198         * Documentation/user/examples.itely: change version string in templates
15199         to 2.4.0.
15200
15201 2004-11-12  Karl Hammar  <karl@aspodata.se>
15202
15203         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15204         cmdline, use xargs instead (backportme)
15205
15206 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15207         
15208         * Documentation/user/: Numerous fixes in the user manual.
15209
15210 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15211
15212         * lily/parser.yy (re_rhythmed_music): search music expression for
15213         context-id, surround by \new Voice if not found. Fixes:
15214         addlyrics-second-staff.ly
15215
15216         * VERSION: 2.5.0 released.
15217         
15218 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15219
15220         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15221
15222         * Documentation/user/GNUmakefile: Separate rules for split and
15223         unsplit html documents.  Remove perl massaging.  (backportme)
15224
15225 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15226
15227         * Documentation/user/lilypond-book.itely: add short warning about
15228         \lilypond{} in LaTeX docs.
15229
15230 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15231
15232         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15233         found.  (backportme)
15234
15235         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15236         version requirement.  (backportme)
15237
15238         * configure.in: Be explicit about old versions of
15239         ec-fonts-mtraced.  (backportme)
15240
15241         * lily/context-selector.cc (set_tweaks): New function.
15242         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15243         web with -DTWEAK.
15244
15245         * Documentation/user/introduction.itely (Automated engraving):
15246         Remove fragment option.  Fixes web.
15247
15248         * lily/context-property.cc (make_item_from_properties):
15249         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15250         #ifdef.
15251
15252         * scm/define-context-properties.scm
15253         (all-internal-translation-properties): Add tweakRank and tweakCount.
15254
15255         * lily/grob.cc: 
15256         * scm/define-grob-properties.scm (all-internal-grob-properties):
15257         Add tweak-rank and tweak-count.
15258
15259 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15260
15261         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15262         New function.
15263         (text): Use them.
15264
15265         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15266         animated/opaque grob dragging tweaks.
15267
15268         * buildscripts/guile-gnome.sh: Update.
15269
15270 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15271
15272         * scm/define-grobs.scm (all-grob-descriptions): Added
15273         line-interface to the LigatureBracket object.
15274
15275 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15276
15277         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15278         dragging tweaks.
15279
15280         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15281
15282         * lily/context-selector.cc (store_context): New function.
15283
15284         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15285         (store_grob): New function.
15286         (identify_grob): Add Moment parameter.
15287
15288         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15289         exists.
15290
15291         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15292
15293 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15294
15295         * scm/framework-gnome.scm (item-event): Print grob id.
15296         (save-tweaks): New function.
15297         (tweak): New funtion.
15298         (item-event): Use it, bound to arrow keys.
15299
15300         * lily/context-property.cc (make_item_from_properties): Register grob.
15301         * lily/context.cc (add_context): Register context.
15302
15303         * lily/include/context-selector.hh:
15304         * lily/include/grob-selector.hh:
15305         * lily/context-selector.cc:
15306         * lily/grob-selector.cc: New file.
15307
15308 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15309
15310         * lily/slur.cc: add 'positions to interface
15311
15312         * lily/main.cc: reinstate PS as standard output format. 
15313
15314         * scm/framework-tex.scm (output-preview-framework): print systems
15315         up to first non title system.
15316
15317         * lily/grace-engraver.cc (start_translation_timestep): split
15318         scm_cadddr
15319         
15320 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15321
15322         * lily/quote-iterator.cc (Module): remove old quote-iterator
15323
15324         * scm/define-music-types.scm (music-descriptions): move
15325         NewQuoteMusic over QuoteMusic
15326
15327         * Documentation/user/notation.itely (Formatting cue notes): use
15328         \cueDuring.
15329
15330         * lily/new-quote-iterator.cc (quote_ok): new function.
15331
15332         * input/regression/quote-cue-during.ly: new file.
15333
15334         * input/regression/quote-grace.ly: new file.
15335
15336         * scm/define-context-properties.scm (Module): change definition of
15337         graceSettings
15338
15339         * lily/context-property.cc (Module): rename from
15340         translator-property.cc
15341
15342         * lily/context.cc (context_name_symbol): new function
15343
15344         * lily/grace-engraver.cc: new file. Set properties for grobs based
15345         on the grace-ness of now_moment().
15346
15347         * scm/music-functions.scm (add-grace-property): use list
15348         iso. vector for graceSettings
15349         remove set-{start,stop}-grace-properties. 
15350
15351         * lily/new-quote-iterator.cc (construct_children): set
15352         quote_outlet_ if no quoted-context-{id,type} specified.
15353
15354         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
15355
15356         * lily/parser.yy (command_element): remove \quote.
15357
15358         * ly/music-functions-init.ly (location): add quoteDuring music
15359         function. 
15360
15361         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
15362         optional semicolon. (backportme)
15363
15364 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15365
15366         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
15367         need to link to GUILE et al.
15368
15369 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15370
15371         * scm/define-music-properties.scm (all-music-properties): add
15372         quoted-context-type, quoted-context-id.
15373
15374         * scm/lily.scm (type-check-list): new function.
15375         
15376         * scm/lily-library.scm: new file. Generic library routines.
15377
15378         * lily/parser.yy (Generic_prefix_music): move typechecking out of
15379         parser.
15380
15381         * ly/music-functions-init.ly: add quoteDuring function.
15382
15383         * lily/include/music-iterator.hh (class Music_iterator): rename
15384         set_translator -> set_context
15385
15386         * lily/parser.yy (Generic_prefix_music_scm): add
15387         MUSIC_FUNCTION_SCM_SCM_MUSIC
15388
15389         * scm/lily.scm (sanitize-command-option): new function. (backportme)
15390
15391         * scm/framework-tex.scm (header): sanitize TeX paper size.
15392         (backportme)
15393
15394 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15395
15396         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
15397
15398         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
15399
15400         * scm/framework-tex.scm (font-load-command): Use T1 if no
15401         font-encoding set.  (backportme)
15402
15403         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
15404         exists before converting.  (backportme)
15405
15406         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
15407         exists before converting.  (backportme)
15408         (convert-to-ps): Remove .ps file if it exists before
15409         converting.  (backportme)
15410
15411         * lily/lexer.ll: Remove extra progress newline, use present tense.
15412
15413         * scm/paper.scm (paper-alist): public.
15414         * scm/framework-tex.scm (convert-to-ps):
15415         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
15416         command line.
15417
15418 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15419
15420         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
15421
15422         * lily/recording-group-engraver.cc (derived_mark): mark
15423         now_events_. (backportme)
15424
15425 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15426
15427         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
15428
15429         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
15430         invoking latex. (backportme.)
15431
15432         * lily/stem.cc (off_callback): center stems for all rest stems.
15433
15434 2004-11-05  Werner Lemberg  <wl@gnu.org>
15435
15436         * Documentation/user/lilypond.tely: Add more guidelines for writing
15437         lilypond texinfo documents.
15438
15439 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
15440
15441         * Documentation/index.html.in: remove <hr>.
15442
15443         * THANKS: change 2.3 to 2.4.
15444
15445 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
15446
15447         * scm/output-gnome.scm: More fontconfig comment.
15448
15449 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
15450
15451         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
15452         <package> directory in $(builddir)/share according with
15453         PACKAGE_NAME defined in the VERSION file.
15454
15455 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15456
15457         * lily/beam.cc (rest_collision_callback): use local beam
15458         multiplicity.
15459
15460         * input/regression/stem-stemlet.ly: new file.
15461
15462         * lily/stem.cc (add_head): store rests as well.
15463
15464         * scm/define-grob-properties.scm (all-user-grob-properties): add
15465         stemlet-length
15466
15467         * lily/stem.cc: store rests as well.
15468         
15469         * input/regression/new-slur.ly: mention forcing.
15470
15471 2004-11-04  Werner Lemberg  <wl@gnu.org>
15472
15473         * Documentation/user/*: A new round of layout fixes and document
15474         structure cleanup.
15475
15476 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
15477
15478         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
15479
15480 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
15481
15482         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
15483
15484 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
15485
15486         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
15487
15488         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
15489
15490         * lily/main.cc (main): Invoke identify.
15491
15492         * scm/lily.scm (postscript->pdf): Remove progress newline.
15493         Write progress to stderr.
15494
15495         * lily/paper-book.cc (output): Remove progress newline.
15496
15497         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
15498         gettext on user messages, and remove whitespace.
15499
15500         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
15501
15502         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
15503         argv[0] (Thomas Scharkowski).
15504
15505         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
15506         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
15507         for ec-fonts-mtraced.
15508
15509         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
15510         --srcdir build (Bertalan).
15511
15512         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
15513         headers and library too (Laura Conrad).
15514
15515         * Documentation/topdocs/INSTALL.texi (Top): Mention development
15516         package for guile too (Laura Conrad).
15517
15518         * lily/main.cc (usage): Typo.
15519
15520 2004-11-02  Werner Lemberg  <wl@gnu.org>
15521
15522         * Documentation/user/notation.ly: More fixes to improve appearance.
15523
15524         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
15525         better output for multicolumn tables.
15526
15527 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
15528
15529         * lily/main.cc (dir_info): Fixed typo in the printouts.
15530
15531 2004-11-01  Werner Lemberg  <wl@gnu.org>
15532
15533         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
15534         of output.
15535         Set `per_line' to 2; replace hard-coded value with it.
15536
15537         * Documentation/user/*: Many fixes to improve appearance of
15538         printed manual.
15539
15540 2004-11-01  Werner Lemberg  <wl@gnu.org>
15541
15542         * Documentation/user/changing-defaults.itely,
15543         Documentation/user/notation.ly,
15544         Documentation/user/programming-interface.itely: Use @/.
15545         Fix formatting of some lilypond snippets and tables.
15546
15547         * scripts/lilypond-book.py (compose_ly): Provide useful default
15548         for LINEWIDTH in `override'.
15549
15550 2004-10-31  Graham Percival  <gperlist@shaw.ca>
15551
15552         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
15553
15554 2004-10-31  Werner Lemberg  <wl@gnu.org>
15555
15556         Resetting @exampleindent to `5' gives ugly results with texinfo's
15557         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
15558         (if not quoting) to change @exampleindent only locally.
15559
15560         * scripts/lilypond-book.py (NOQUOTE): New variable.
15561         (output) [LATEX]: Remove AFTER and BEFORE.
15562         [TEXINFO]: Remove AFTER and BEFORE.
15563         Fix QUOTE and VERBATIM pattern.
15564         Add NOQUOTE pattern.
15565         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
15566         and BEFORE.
15567         [output_texinfo]: Use NOQUOTE.
15568
15569 2004-10-31  Graham Percival  <gperlist@shaw.ca>
15570
15571         * Documentation/user/changing-defaults.itely: clarify paper
15572         size commands with correct info.
15573
15574         * Documentation/user/lilypond-book.itely: add more docs for
15575         filename extensions.
15576
15577 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15578
15579         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
15580         (PATCH_LEVEL): start 2.5.0.
15581
15582 #Local variables:
15583 #coding: utf-8
15584 #End:
15585