]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
(make_index_to_charcode_map): remove debugging gobs.
[lilypond.git] / ChangeLog
1 2006-10-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
4
5         * VERSION (PACKAGE_NAME): release 2.9.26
6
7         * buildscripts/output-distance.py (test_basic_compare): add
8         multipage test.
9         (FileLink.multi_img_cell): new function, glob multi-page png
10         images.
11
12 2006-10-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
13
14         * po/lilypond.pot: update.
15
16         * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
17
18         * Documentation/user/global.itely (File structure): remove
19         \addqoute remark.
20
21         * lily/parser.yy (FIXME): remove ADDQUOTE
22
23         * Documentation/user/global.itely (Extracting fragments of
24         notation): new node, about clip systems.
25
26         * Documentation/user/lilypond-book.itely (Many quotes of a large
27         score): ref to clip systems.
28
29         * Documentation/user/instrument-notation.itely (Entering lyrics):
30         add note about lyric ties and required font.
31
32         * lily/open-type-font.cc (glyph_list): format errors.
33
34         * Documentation/user/programming-interface.itely (Scheme
35         procedures as properties): more doco on simple-closure and scheme
36         callbacks.
37         (Input variables and Scheme): use lilypond[verbatim], document
38         dummy statement.
39
40         * Documentation/user/page.itely (Displaying spacing): use \book
41         explicitly, so arrows show .
42         (Line breaking): add note about Forbid_line_break_engraver
43
44         * Documentation/user/tweaks.itely (Common tweaks): also set length
45         to prevent tie squeezing. 
46         (Default files): use @var{}
47
48         * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
49         (Generating LilyPond files): add FOMUS.
50
51 2006-10-20  Joe Neeman  <joeneeman@gmail.com>
52
53         * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
54         Y-offset for TextScript and Script
55
56         * lily/text-engraver.cc (make_item): 
57         * lily/script-engraver.cc (make_script_from_event):
58         remove call to Side_position_interface::set_axis since all scripts
59         now have this set by default
60
61         * lily/context.cc: 
62         * lily/prob.cc: use variables
63
64 2006-10-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
65
66         * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
67         at typography, rather analyse stream event duration. 
68
69         * Documentation/user/page.itely (Page formatting): set a6 paper
70         for system separator example.
71         
72         * lily/arpeggio.cc (Module): idem.
73
74         * lily/accidental-placement.cc: add script-priority property.
75
76         * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
77
78         * lily/ttf.cc (print_trailer): if all else fails: use
79         glyphIndexXXXX as glyph name. Fixes #117.
80
81         * lily/pango-font.cc (pango_item_string_stencil): only use cmap
82         entry if cmap contains glyph.
83         (get_index_to_charcode_map): remove from Pango_font class, use
84         global filename -> font mapping.
85         (get_glyph_index_name): new function.
86         (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
87         only for TTF. 
88
89         * scripts/lilypond-book.py (main): use -deps-box-padding=-3
90
91         * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
92         a number.
93
94         * scm/define-grob-properties.scm (all-user-grob-properties):
95         remove outdated doc. Fixes #116
96
97         * lily/completion-note-heads-engraver.cc (process_music): always
98         clone input events; otherwise we may overwrite input 'duration
99         property. Fixes #115.
100
101         * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
102         scm_t_int32 != int
103
104         * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
105         anchor. Fixes #114
106
107         * VERSION (PATCH_LEVEL): bump version.
108
109 2006-10-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
110
111         * lily/engraver.cc (internal_make_grob): use variables.
112
113         * flower/string-convert.cc (dec2double): clean-up warnings. 
114
115         * configure.in (CXXFLAGS): add -Werror.
116
117         * VERSION (PACKAGE_NAME): release 2.9.25
118
119 2006-10-18  Joe Neeman  <joeneeman@gmail.com>
120
121         * lily/simple-spacer.cc (get_line_forces): test for non-fitting
122         line even if we precede a forced break.
123
124         * lily/optimal-page-breaking.cc (try_page_spacing): square line
125         forces too. Make page-spacing weight default to 10 because the
126         changes to vertical springs decreased the page force/line force
127         proportions. Also, take the average of line force and page force
128         instead of just the sum.
129
130         * lily/constrained-breaking.cc (initialize): make the stiffness
131         of the vertical springs depend on the height of the system. This
132         prevents pages with only a few large systems from getting huge
133         forces
134
135         * Documentation/user/page.itely (Page formatting): document the
136         change in default page-spacing-weight
137
138         * lily/include/constrained-breaking.hh: initialise bottom_padding_
139
140 2006-10-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
141
142         * input/typography-demo.ly (melody): remove superfluous slur.
143
144         * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
145         add piano-pedal-script-interface
146
147 2006-10-18  Bertalan Fodor  <lilypondtool@organum.hu>
148
149         * scripts/lilypond-book.py: DocBook support.
150
151 2006-10-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
152
153         * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
154         Y-alignment code.
155         (stop_translation_timestep): set bound to currentMusicalColumn if
156         not set yet. Fixes #102
157
158         * lily/piano-pedal-bracket.cc: formatting.
159
160         * input/test/engraver-one-by-one.ly (MyStaff): reformat.
161
162         * lily/piano-pedal-align-engraver.cc: new class
163         Piano_pedal_align_engraver. Handle side-positioning Y-alignment
164         for piano pedals.  
165
166 2006-10-18  Heikki Junes  <hjunes@gmail.com>
167
168         * po/fi.po: Update Finnish translation (before the next release).
169
170 2006-10-17  Joe Neeman  <joeneeman@gmail.com>
171
172         * lily/system.cc (get_paper_system): reinstate the backwards-
173         compatible page breaking for the old page breaker.
174
175 2006-10-17  Erik Sandberg  <mandolaerik@gmail.com>
176         
177         * lily/recording-group-engraver.cc: removed
178
179         * lily/context.cc, lily/translator-group.cc: Don't touch
180         Context::implementation_ if it's null
181
182 2006-10-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
183
184         * scm/paper.scm: only use left-margin if defined.
185
186         * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
187
188         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
189
190         * lily/new-fingering-engraver.cc: stringFingerOrientations ->
191         strokeFingerOrientations
192
193         * lily/script-column.cc (row_before_line_breaking): also handle
194         accidentals and arpeggios in horizontal script stacking.
195
196         * lily/script-row-engraver.cc (acknowledge_accidental_placement):
197         new function.
198
199         * input/regression/script-stack-horizontal.ly: trim.
200
201 2006-10-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
202
203         * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
204         'text property too.
205
206         * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
207         'text if string argument.
208
209         * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
210
211         * scm/define-context-properties.scm
212         (all-user-translation-properties): change to strokeFingerOrientations
213
214 2006-10-16  Erik Sandberg  <mandolaerik@gmail.com>
215
216         * lily/parser.yy: remove debug output
217
218 2006-10-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
219
220         * ly/paper-defaults.ly: set left/right margin.
221
222         * scm/paper.scm (set-paper-dimensions): use left-margin and
223         right-margin for computing linewidth.
224
225         * Documentation/topdocs/NEWS.tely (Top): idem.
226
227         * input/regression/lyric-tie.ly (texidoc): use vowels for tied
228         lyrics example.
229
230         * scm/define-markup-commands.scm (tied-lyric): increase negative
231         space: space syllables tighter.
232
233         * VERSION (PATCH_LEVEL): bump version.
234
235         * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
236         Ax paper sizes. 
237
238 2006-10-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
239
240         * COPYING: further clarification
241
242         * VERSION: release 2.9.24
243
244         * input/regression/script-stack-horizontal.ly: add version.
245
246         * scm/lily-library.scm (list-join): use fold-right. Fixes #112
247
248         * input/regression/lyric-tie.ly (texidoc): use different words.
249
250         * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
251
252 2006-10-15  Erik Sandberg  <mandolaerik@gmail.com>
253
254         * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
255         macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
256         
257 2006-10-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
258
259         * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4; 
260
261         * Doxyfile: remove file.
262
263         * scm/define-grob-interfaces.scm (string-finger-interface): add
264         string-finger-interface
265
266         * lily/general-scheme.cc (LY_DEFINE): move
267         ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[] 
268
269         * Documentation/topdocs/NEWS.tely (Top): add note for
270         string-finger feature.
271
272         * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
273         property.
274
275         * scm/output-lib.scm (string-finger::calc-text): read 'digit
276         instead of 'text
277
278         * input/regression/script-stack-horizontal.ly: new file.
279
280         * ly/engraver-init.ly: add Script_row_engraver.
281
282         * lily/script-column.cc (order_grobs): refactor: separate axis
283         independent code.
284         (row_before_line_breaking): new function.
285
286         * lily/script-row-engraver.cc (Script_row_engraver): new file.
287
288         * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
289
290 2006-10-14  Jürgen Reuter  <reuter@ipd.uka.de>
291
292         * Documentation/user/instrument-notation.itely: Cleanup: Remove
293         annoying skip notes from mensural ligature example.  Update
294         @refbugs for ligatures and mensural ligatures.
295
296         * lily/coherent-ligature-engraver.cc,
297         lily/include/coherent-ligature-engraver.hh,
298         lily/mensural-ligature-engraver.cc,
299         lily/vaticana-ligature-engraver.cc: Revise code for item
300         reparentizing.  There should now be less programming_error
301         messages.
302
303         * lily/mensural-ligature-engraver.cc: Improve placement of dots.
304
305         * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
306         Maintenance bugfix: Don't create empty Stencil (), but empty box
307         instead.  This fix should eliminate some programming_error
308         messages.
309
310         * ly/engraver-init.ly (MensuralStaff): Set default accidental
311         style.
312
313         * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
314         \layout block _before_ score.
315
316 2006-10-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
317
318         * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
319
320         * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
321
322 2006-10-13  Erlend Aasland  <erlenda@gmail.com>
323
324         * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
325
326 2006-10-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
327
328         * VERSION (PATCH_LEVEL): bump version.
329
330         * COPYING: clarify exception note.
331
332         * lily/main.cc: remove remark about "COPYING".
333
334         * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
335         system-count starts at 0 for each clip-region. Change name to
336         FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
337         layout block, per score.
338
339 2006-10-13  Erik Sandberg  <mandolaerik@gmail.com>
340
341         * lily/input-smob.cc: add equal_p for Input
342
343         * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
344         function
345
346         * lily/parser.yy: MY_MAKE_MUSIC sets music origin
347
348         * lily/prob.cc: Add equal_p predicate for Prob
349
350         * lily/translator.cc: small cleanup
351
352         * scm/document-music.cc: use data from translator listener
353         registration to generate documentation for event classes
354
355         * lily/*: Eliminate accept arg of ADD_TRANSLATOR
356         
357         * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
358         
359 2006-10-13  Jan Nieuwenhuizen  <janneke@gnu.org>
360
361         * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
362
363 2006-10-12  Jan Nieuwenhuizen  <janneke@gnu.org>
364
365         * Documentation/topdocs/INSTALL.texi: Thinko.
366
367         * .cvsignore: Update.
368
369         * lexer-gcc-3.1.sh: Remove.
370
371         * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
372         Update anonymous cvs access.  Remove comment about gcc 3.0.4.
373
374 2006-10-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
375
376         * VERSION: release 2.9.23
377
378         * lily/paper-column-engraver.cc (stop_translation_timestep): also
379         typecheck barnumber.
380
381         * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
382
383         * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
384
385         * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
386
387         * input/regression/clip-systems.ly (Notes): new file. 
388
389         * scm/lily.scm (define-scheme-options): add clip-systems option.
390
391         * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
392         function
393         (dump-stencil-as-EPS): move bbox calculation from previous
394         dump-stencil-as-EPS
395         (output-framework): use -dclip-systems 
396
397         * scm/lily-library.scm (filtered-map): new function
398
399         * scm/framework-ps.scm (clip-system-EPS): new function.
400         (clip-system-EPSes): new function.
401
402         * lily/paper-column.cc: add rhythmic-location to interface
403
404         * scm/define-grob-properties.scm (all-user-grob-properties): add
405         rhythmic-location property.
406
407         * scm/clip-region.scm: new file: rhythmic-location data type and
408         system-clipped-x-extent function.
409
410         * ly/init.ly: use (scm clip-region)
411
412         * lily/paper-column-engraver.cc (stop_translation_timestep): set
413         rhythmic-location for paper column grobs.
414
415         * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
416
417 2006-10-12  Jürgen Reuter  <reuter@ipd.uka.de>
418
419         * ly/engraver-init.ly: Remove obsolete comment on
420         Bar_number_engraver.
421
422         * Documentation/user/instrument-notation.itely: Tune Ancient
423         Articulations figure, such that the episem actually shows.
424
425         * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
426         fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
427
428         * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
429         cleanup.
430
431 2006-10-12  Graham Percival  <gpermus@gmail.com>
432
433         * Documentation/user/ {some}: minor edits that were lost somehow.
434
435 2006-10-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
436
437         * VERSION (PACKAGE_NAME): bump version.
438
439         * input/regression/lyric-tie.ly (texidoc): new file.
440
441         * Documentation/topdocs/NEWS.tely (Top): add new feature.
442
443         * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
444
445         * scm/define-markup-commands.scm (tied-lyric): new function: split
446         string along ~ and reattach with U+203F (tie character) and
447         negative space.
448
449         * scm/output-lib.scm (lyric-text::calc-text): new function.
450
451         * lily/lyric-engraver.cc (process_music): don't set 'text.
452
453         * scm/output-lib.scm (string-finger::calc-text): new function
454         (lyric-text::print): new function.
455
456         * lily/new-fingering-engraver.cc (add_fingering): refactor; make
457         generic for fingering & string number. Use for string-finger. 
458
459         * scm/define-music-types.scm (music-descriptions): add
460         StringFingerEvent
461
462         * lily/fingering-engraver.cc (listen_string_finger): new function
463
464         * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
465
466         * scm/define-context-properties.scm
467         (all-user-translation-properties): add stringFingerOrientations
468
469 2006-10-11  Jürgen Reuter  <reuter@ipd.uka.de>
470
471         * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
472         ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
473
474         * lily/dots.cc: Added style property for dots.
475
476         * mf/parmesan-heads.mf: Fix typo in comment.
477
478         * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
479         adding longa head to feta font and removing obsolete default
480         mapping scheme code.
481
482 2006-10-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
483
484         * scm/output-lib.scm (fingering::calc-text): use origin
485         event-property, not music-property.
486
487         * lily/lilypond.rc.in: spell my name correctly.
488
489 2006-10-10  Joe Neeman  <joeneeman@gmail.com>
490
491         * lily/grob.cc (pure_height): only add minimum-Y-extent if we
492         already have a non-empty extent. Fixes estimation for Hara-kiri
493         staves.
494
495 2006-10-09  Jürgen Reuter  <reuter@ipd.uka.de>
496
497         * ly/gregorian-init.ly: Simplify definition of \episemInitium and
498         \episemFinis.
499
500         * lily/ligature-engraver.cc: Remove unused #include.
501
502         * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
503         Bugfix: remove method check_for_prefix_loss(Item *) from global
504         namespace to avoid namespace pollution.
505
506 2006-10-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
507
508         * VERSION: release 2.9.22
509
510         * ly/generate-documentation.ly: update option name.
511
512         * lily/dynamic-text-spanner.cc (print): revert fix.
513
514         * scm/define-grob-interfaces.scm
515         (trill-pitch-accidental-interface):
516         add trill-pitch-accidental-interface
517
518         * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
519         dereference if it's really a duration.
520
521         * lily/figured-bass-engraver.cc (process_music): clear spanner if
522         useBassFigureExtenders is not set.
523         (listen_bass_figure): record as new event if
524         useBassFigureExtenders not set. Fixes #103.
525
526         * scm/stencil.scm (circle-stencil): don't center stencil argument,
527         instead: move circle. Fixes #107.
528
529         * scm/define-grobs.scm (all-grob-descriptions): set
530         allow-loose-spacing for PaperColumn and
531         NonMusicalPaperColumn. Kludge for #110.
532
533         * lily/spaceable-grob.cc: add allow-loose-spacing property.
534
535         * lily/spacing-determine-loose-columns.cc (is_loose_column):
536         allow-loose-spacing property.
537
538         * scm/define-markup-commands.scm (postscript): gsave & grestore
539         around embedded PS. Do setlinewidth too. Fixes  #109.
540
541 2006-10-08  Jürgen Reuter  <reuter@ipd.uka.de>
542
543         * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
544         code.  This patch fixes ligature brackets that were not at all
545         engraved any more.
546
547 2006-10-08  Graham Percival  <gpermus@gmail.com>
548
549         * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
550
551         * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
552
553         * scm/define-context-properties.scm: clarified docs (bug 91).
554
555         * Documentation/user/basic-notation.itely: document volta brackets
556         not aligning (bug 63).
557
558         * Documentation/user/ global.itely invoking.itely: ignore or
559         add warnings about texstr.
560
561 2006-10-08  John Mandereau  <john.mandereau@free.fr>
562
563         * po/fr.po: update translation.
564
565         * po/: update msgids.
566
567 2006-10-08  Jan Nieuwenhuizen  <janneke@gnu.org>
568
569         * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
570
571 2006-10-08  Nicolas Sceaux  <nicolas.sceaux@free.fr>
572
573         * Documentation/user/page.itely (Two-pass vertical spacing): add
574         documentation for two-pass spacing technique.
575
576 2006-10-06  Graham Percival  <gpermus@gmail.com>
577
578         * Documentation/user/convert-ly.txt: new file; new
579         storage place for this file (moved from bugs/ CVS).
580
581 2006-10-06  Jürgen Reuter  <reuter@ipd.uka.de>
582
583         * lily/note-head.cc: Fixed programming_error message.
584
585 2006-10-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
586
587         * scm/define-grobs.scm (pure-conversion): move pure-callback
588         further into body.
589
590         * scm/script.scm (default-script-alist): set avoid-slur for turn,
591         marcato, stopped, thumb.
592
593 2006-10-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
594
595         * lily/completion-note-heads-engraver.cc (process_music): don't
596         skimp on memory usage.
597
598         * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
599         stems too. Fixes #5
600
601         * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
602         parenthesis item. This fixes premature Y-extent triggering. Fixes
603         issue #95. 
604  
605         * VERSION (PATCH_LEVEL): bump version.
606
607 2006-10-04  Graham Percival  <gpermus@gmail.com>
608
609         * Documentation/user/advanced-notation.itely: added
610         info about instrument names for piano or other contexts,
611         thanks Marcus!
612
613 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
614
615         * mf/feta-bolletjes.mf (solfa_quarter_width): use
616         solfa_base_notewidth as unit for non-DO-notes too.
617
618         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
619
620         * VERSION: release 2.9.21
621
622         * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
623         override.
624
625 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
626
627         * python/lilylib.py (progress): Minor fix.
628
629 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
630
631         * lily/note-name-engraver.cc: doc engraver.
632
633         * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
634
635         * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
636
637         * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
638         by callback.
639
640         * lily/stem-engraver.cc (make_stem): don't set duration-log
641
642         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
643         write snippet-names binary.
644
645         * python/lilylib.py (system): use os.system for mingw32
646
647         * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
648         to $PATH.
649
650         * scm/backend-library.scm: update email address.
651
652         * Documentation/topdocs/NEWS.tely (Top): add duration-log override
653         example.
654
655         * scm/define-grobs.scm (all-grob-descriptions): use callback to
656         calc dot count.
657
658         * lily/dots-engraver.cc (class Dots_engraver): new engraver:
659         handle dot creation separately.
660
661         * lily/tab-note-heads-engraver.cc (process_music): idem.
662
663         * lily/drum-note-engraver.cc (process_music): idem.
664
665         * lily/note-heads-engraver.cc (process_music): idem.
666
667         * lily/rest-engraver.cc: don't set duration-log.
668
669         * scm/output-lib.scm (string-number::calc-text): new function.
670         (note-head::calc-duration-log): new function.
671
672         * lily/fingering-engraver.cc (make_script): remove 'text setting.
673
674         * scm/output-lib.scm (fingering::calc-text): new function.
675
676 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
677
678         * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
679          and include-eps-font -> include-eps-fonts
680
681 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
682
683         * lily/multi-measure-rest-engraver.cc: use internalBarNumber
684
685         * lily/timing-translator.cc: list properties.
686         (start_translation_timestep): update internalBarNumber too.
687
688         * scm/define-context-properties.scm
689         (all-user-translation-properties): add internalBarNumber.
690
691         * input/regression/spacing-no-note.ly: new file.
692
693         * buildscripts/output-distance.py (link_file): verbosity for OSError.
694
695         * lily/book.cc: #include cleanup.
696
697         * lily/include/lily-guile-macros.hh: add assert to
698         scm_or_str2symbol(SCM).
699
700         * VERSION (PATCH_LEVEL): bump version.
701
702         * lily/spacing-spanner.cc (musical_column_spacing): handle
703         musical->nonmusical spacing case, where there is no spacing
704         wish. Fixes issue #61.
705
706         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
707         (pango_item_string_stencil): use logical rect horizontally (to
708         preserve spaces), ink_rect vertically (for time signatures).
709
710         * lily/font-metric.cc (word_stencil): new interface function
711
712         * input/regression/utf-8-mixed-text.ly: new file.
713
714         * lily/percent-repeat-engraver.cc (listen_percent): remove
715         spurious warning.
716
717         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
718         non-dynamic scripts. Fixes #30.
719
720         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
721
722         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
723
724         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
725         SCM_UNDEFINED for non-existent data.
726
727         * lily/side-position-interface.cc (general_side_position): allow
728         optional current_offset argument for chaining, so combinations of side-position
729         and outside slur callback don't add up.  Fixes issue #92.
730
731         * lily/pango-font.cc (pango_item_string_stencil): use
732         logical_rect. This prevents spaces after words from disappearing,
733         issue #72.
734         
735         * VERSION: release 2.9.20
736
737 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
738
739         * scm/define-grob-properties.scm (all-user-grob-properties):
740         mention stencil as user settable.
741
742 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
743
744         * Documentation/user/page.itely (Page formatting): 
745         document auto-first-page-number
746
747         * lily/page-breaking.cc (find_chunks_and_breaks): 
748         * lily/paper-score.cc (calc_breaking): Follow changes to the
749         Constrained_breaking interface
750
751         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
752         here backwards, as an optimisation
753         (initialize): new function; move most of the code in resize () here
754         (combine_demerits): cache ragged_right_
755         (Constrained_breaking): constructor now takes the Paper_score
756
757 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
758         
759         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
760         avoid parser lookahead for 0-ary functions.
761
762         * lily/translator.cc: Extract event classes from
763         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
764
765 2006-10-02  Heikki Junes  <hjunes@gmail.com>
766
767         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
768         KBabel fix tool.
769
770 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
771
772         * scm/layout-page-layout.scm (page-breaking-wrapper): new
773         function. Call the page breaking function selected in the
774         `page-breaking' \paper variable, then the post processing function
775         chosen using the `page-post-process' \paper variable.
776         (line-height): new function. Return the height of a system.
777         (line-minimum-position-on-page): new function. Return the position
778         of a system on page (using the previous line position), only
779         considering between system padding.
780         (stretchable-line?): new function. Says whether a line can be
781         stretched (ie. is not a title nor a single staff system).
782         (page-maximum-space-left): new function. Computes space left on a
783         page, when all systems are separated by their padding.
784
785         * lily/page-breaking.cc (breaking::make_pages): Move page post
786         processing function call to page breaking wrapper (common to all
787         page breakers).
788
789         * lily/paper-book.cc (book::pages): call the page breaking
790         wrapper, instead of the page breaker directly
791
792         * ly/paper-defaults.ly: Add \paper variables for page breaking
793         wrapper and page post processing function. Make
794         `write-page-layout' value depend on the 'dump-tweaks option. Add a
795         `system-maximum-stretch-procedure' variable for holding a function
796         computing the maximum stretch a system allows.
797
798         * scm/layout-page-dump.scm (write-page-breaks): computes the
799         stretch to apply to systems on a page to minimize left
800         space. Dump this stretch length.
801
802         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
803         the system-stretch property of the tweak data to stretch the
804         system.
805         (includePageLayoutFile): Void function which includes the
806         generated page-layout file if it exists and if the page layout
807         dumping is not asked.
808         (scoreTweak): if the score tweak named by the argument exists,
809         return it.
810
811 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
812
813         * lily/page-spacing.cc (compress_lines, uncompress_solution):
814         handle correctly the case where there are multiple \noPageBreaks
815         in a row.
816
817 2006-09-30  Laura Conrad <lconrad@laymusic.org>
818
819         * abc2ly.py adds segno (S) and Coda (O) to articulations.
820         
821         * abc2ly.py fix so that entering " -- " will translate to a -- in
822         the lilypond instead of a " - - "
823         
824 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
825
826         * lily/align-interface.cc: fix typo
827
828         * lily/dynamic-text-spanner.cc (print): Add a special case for
829         trill spanner right sides. 
830
831         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
832
833         * lily/align-interface.cc (get_extents_aligned_translates): add
834         support for padding variable.
835
836         * lily/break-align-interface.cc (self_align_callback): oops: use
837         loop variable in guard.
838
839         * input/regression/repeat-percent-grace.ly: new file.
840
841         * lily/percent-repeat-engraver.cc (start_translation_timestep):
842         remember first currentCommandColumn of a grace run. Fixes issue 70.
843
844         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
845         move class definition to CC file.
846
847         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
848
849         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
850         measure-long  repeats.
851
852         * flower/include/international.hh: include stdarg.h
853
854 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
855
856         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
857         put_systems_on_pages to return an empty result, we need to assign
858         demerits properly in that case.
859         (put_systems_on_pages): Make the number of pages depend on the
860         evenness of page_number. Add auto-first-page-number.
861         (calc_subproblem): ensure that the page-number is even for the
862         left-hand page. Warn if the first page-turn doesn't fit onto the
863         first (right-hand) page.
864
865         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
866         (min_page_count): make this publicly accessible
867         (min_page_count): fix a bug when there are forced page breaks that
868         was introduced when I made this loop run backwards
869         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
870         replace space_systems_on_min_pages with these two. The logic in
871         space_systems_on_min_pages was getting too convoluted and is better
872         contained in page-turn-page-breaking.
873
874         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
875         conditional
876         (breakable_column): typo
877
878         * lily/source-file.cc (get_line): fix off-by-one error
879         and clean up some of the logic
880
881 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
882
883         * lily/page-breaking.cc (make_pages): honour the first-page-number
884         property
885
886 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
887
888         * VERSION (PACKAGE_NAME): bump version.
889
890 2006-09-26  Pal Benko  <benko.pal@gmail.com>
891
892         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
893         (the latter is the same as petrucci-f which is kept for compatibility)
894
895 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
896         
897         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
898
899 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
900
901         * lily/global-context.cc (run_iterator_on_me): break out of loop
902         if moment doesn't increase.
903
904         * scm/define-grob-properties.scm (all-user-grob-properties): add
905         forced property.
906
907         * lily/accidental.cc (after_line_breaking): read forced property.
908
909         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
910         property.
911
912         * input/regression/accidental-forced-tie.ly:  new file.
913
914 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
915
916         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
917
918         * lily/figured-bass-engraver.cc: only listen to rest events if
919         ignoreFiguredBassRest is not set.
920
921         * scm/define-context-properties.scm
922         (all-user-translation-properties): add ignoreFiguredBassRest property
923
924 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
925
926         * lily/paper-book.cc (get_system_specs):
927         (set_system_penalty): fix breakbefore.
928         We used to set a penalty on the system after the break, now we
929         set a permission on the system before the break
930
931         * lily/grob-property.cc: add scm debugging hooks into
932         property modification
933
934         * lily/context-property.cc:
935         * lily/engraver.cc:
936         rename make_foo_from_properties to internal_make_foo and
937         move it from context-property.cc to a member function of
938         Engraver.
939         
940         * lily/include/lily-guile-macros.hh:
941         overload ly_symbol2scm macro so that there is no more need
942         to use internal_foo
943
944         * lily/volta-repeat-iterator.cc:
945         * lily/tweak-engraver.cc:
946         * lily/tuplet-bracket.cc:
947         * lily/span-bar-engraver.cc:
948         * lily/script-engraver.cc:
949         * lily/prob-scheme.cc:
950         * lily/pointer-group-interface.cc:
951         * lily/parser.yy:
952         * lily/grob-scheme.cc:
953         * lily/grob-property.cc:
954         * lily/context.cc:
955         * lily/context-property.cc:
956         * lily/break-substitution.cc:
957         * lily/break-align-engraver.cc:
958         * lily/axis-group-interface.cc:
959         * lily/align-interface.cc:
960         remove calls to internal_FOO
961
962         * lily/system-start-delimiter-engraver.cc:
963         * lily/parenthesis-engraver.cc:
964         * lily/accidental-engraver.cc:
965         remove calls to make_foo_from_properties
966
967 2006-09-23  Graham Percival  <gpermus@gmail.com>
968
969         * Documentation/user/programming-iterfaces.itely: fix
970         def-music-function -> define-music... leftover.
971
972 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
973
974         * lily/page-spacing.cc (min_page_count): by running the loop
975         backwards, we can calculate ragged_last properly.
976
977 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
978
979         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
980         printfirst-page-number -> print-first-page-number
981
982         * python/convertrules.py: corresponding rule.
983
984         * Documentation/user/page.itely (Page formatting): Document the
985         default values of all page layout parameters. 
986
987 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
988
989         * lily/lexer.ll: remove limitation on music function arity. New
990         mode extratoken, which inserts extra EXPECT_* tokens after
991         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
992
993         * lily/parser.yy: Change grammar for music function accordingly.
994
995         * lily/include/lily-parser.hh: New method get_state, new member
996         hidden_state. Works around a problem when parser fetches
997         MUSIC_FUNCTION token but not the following EXPECT_* token.
998
999         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1000         remove try_music
1001
1002         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1003         references to Music; use ASSIGN_EVENT_ONCE everywhere
1004
1005         * lily/grob-info.cc: junk *music_cause
1006
1007         * lily/music.cc: copy eventified articulations to stream event
1008
1009         * lily/part-combine-iterator.cc: Cleanup using enums
1010
1011         * lily/translator-group.cc: Junk OldMusicEvent, and associated
1012         methods
1013
1014         * lily/include/engraver.hh: Junk music.hh include
1015
1016         * lily/stream-event.cc: Changed constructors
1017
1018 2006-09-21  Graham Percival  <gpermus@gmail.com>
1019
1020         * Documentation/user/tweaks.itely (Fitting music onto fewer
1021         pages): change settings to avoid warning messages.
1022
1023 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1024
1025         * Documentation/user/tweaks.itely (Fitting music onto fewer
1026         pages): Add between-system-space setting. 
1027
1028 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1029
1030         * lily/accidental-placement.cc (calc_positioning_done): don't
1031         trigger Y-extent calculation too early. Use pure_height instead.
1032
1033         * lily/scale.cc (LY_DEFINE): new file. 
1034
1035 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
1036
1037         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1038         that happen at the start of a score: having a zero-length
1039         chunk was messing up min_system_count calculations.
1040
1041         * lily/source-file.cc (get_line): lower_bound, not
1042         binary_search. Fixes problem where point-and-click would
1043         always point to the first line.
1044
1045 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1046
1047         * lily/accidental-placement.cc (calc_positioning_done): also put
1048         stems into accidental support. 
1049
1050         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1051         event_ detected.
1052
1053         * scm/script.scm (default-script-alist): avoid-slur and
1054         slur-padding for portato script.
1055
1056         * lily/stem-tremolo.cc (translated_stencil): new function. 
1057         (height): use new function. Fixes tremolos on whole notes.
1058
1059         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1060         slur found.
1061
1062 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1063
1064         * scripts/abc2ly.py (try_parse_comment): idem.
1065
1066         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1067         bar_string iso. string.find()
1068
1069         * lily/*.cc: idem.
1070
1071         * lily/slur.cc (get_curve): always use scm_is_pair() looping
1072         scheme lists.  
1073
1074 2006-09-18  Graham Percival  <gpermus@gmail.com>
1075
1076         * Documentation/user/basic-notation.itely: add bug
1077         warning about ties and octavation/clef.
1078
1079 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1080
1081         * VERSION (PACKAGE_NAME): release 2.9.18
1082
1083 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
1084
1085         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1086         figure out midi file names right here.
1087         
1088 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1089
1090         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1091
1092         * scm/backend-library.scm: option naming:  gs-font-load*s*
1093
1094         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1095         include-eps-fonts
1096
1097 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
1098
1099         * scm/define-music-types.scm (music-descriptions): remove
1100         BreakEvent and fix {Page,Line}{Break,Turn}Event so
1101         Music::to_event doesn't complain.
1102
1103         * lily/accidental-placement.cc (ape_compare):
1104         * lily/semi-tie.cc (compare): 
1105         * lily/note-column.cc (shift_compare): replace by XXX_less
1106
1107         * lily/tie-formatting-problem.cc (set_chord_outline): 
1108         * lily/tie-column.cc (calc_positioning_done): 
1109         * lily/system.cc (post_processing)
1110         (get_paper_system): 
1111         * lily/stem.cc (note_head_positions)
1112         (calc_positioning_done): 
1113         * lily/spanner.cc (do_break_processing)
1114         (find_broken_piece): 
1115         * lily/span-bar.cc (print): 
1116         * lily/semi-tie-column.cc (calc_positioning_done): 
1117         * lily/rest-collision.cc (calc_positioning_done): 
1118         * lily/program-option.cc (get_help_string): 
1119         * lily/note-collision.cc (get_clash_groups):
1120         * lily/new-fingering-engraver.cc (position_scripts):
1121         * lily/keyword.cc (Keyword_table):
1122         * lily/hara-kiri-group-spanner.cc (request_suicide):
1123         * lily/grob-pq-engraver.cc (stop_translation_timestep):
1124         * lily/accidental-placement.cc (calc_positioning_done):
1125         (stagger_apes):
1126         * lily/beam.cc (get_beam_segments):
1127         * lily/grob-array.cc (remove_duplicates):
1128         use new vector_sort
1129         
1130         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1131         ragged-last-bottom = ##f (test the new page breaker)
1132
1133         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1134
1135         * scm/define-context-properties.scm
1136         (all-internal-translation-properties): remove properties that
1137         were used to communicate page-turn stuff to the paper-column
1138         engraver.
1139
1140         * lily/lily-guile.cc (robust_scm2string): new function
1141
1142         * lily/paper-column-engraver.cc: Clean up page turn stuff
1143
1144         * lily/page-turn-engraver.cc: Re-write the page turn logic here
1145         instead of cluttering up paper-column-engraver.cc
1146
1147 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1148
1149         * scm/layout-page-dump.scm (scm): export utility function names,
1150         to allow user writing cutsom dumping functions.
1151
1152         * scm/layout-page-layout.scm: export utility function names to
1153         enable custom page breaking function writing. Tabify.
1154         (line-next-space): use ?-suffix only for predicates
1155         (page-maximum-space-to-fill): new function. Return the space
1156         between first and bottom system of a page, to give to
1157         space-systems.
1158         (space-systems): use a space-to-fill argument (for instance as
1159         computed by page-maximum-space-to-fill) instead of computing
1160         internaly this space with the page height. That way, the caller
1161         can adjust the space to use.
1162         (make-page-from-systems, walk-paths): compute space to fill before
1163         calling space-systems.
1164
1165 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1166
1167         * scm/script.scm (default-script-alist): set paddings for every
1168         type here, increase for portato mark.
1169
1170         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
1171         -dinclude-eps-fonts
1172
1173 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1174
1175         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1176         use spanner::set-spacing-rods
1177
1178         * lily/note-column.cc: reformat.
1179
1180         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1181         step positioning for note/rest combinations.
1182
1183         * input/regression/rest-note-collision.ly: new file.
1184
1185         * scm/define-grobs.scm (all-grob-descriptions): add
1186         springs-and-rods
1187
1188         * flower/include/std-vector.hh: switch off again.
1189
1190         * VERSION (PATCH_LEVEL): bump to 2.9.18
1191
1192         * flower/include/std-string.hh: idem.
1193
1194         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1195
1196 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1197
1198         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1199         PianoStaff. 
1200
1201 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
1202
1203         * Documentation/user/page.itely: update page breaking documentation
1204
1205 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
1206
1207         * lily/note-collision.cc (calc_positioning_done): only access
1208         first head if available.
1209
1210         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1211
1212         * scm/framework-ps.scm (output-preview-framework): use new name.
1213
1214         * lily/program-option.cc (internal_set_option): use new names.
1215
1216         * Documentation/user/SConscript (lilypond_book_flags): update -d
1217         variable names.
1218
1219         * Documentation/user/lilypond-book.itely (Inserting LilyPond
1220         output into other programs): new variable names.
1221
1222         * scm/lily.scm (define-scheme-options): uniformize var names.
1223
1224         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1225         tuplets_ is non-empty before popping.
1226
1227 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
1228
1229         * lily/spanner.cc (find_broken_piece): 
1230         * lily/spacing-spanner.cc (get_columns): 
1231         * lily/source-file.cc (get_line): 
1232         * lily/simple-spacer.cc (get_column_description): 
1233         * lily/keyword.cc (lookup): 
1234         use the new binary search.
1235
1236         * flower/include/std-vector.hh: replace binary_search with
1237         a more STL-like version
1238
1239 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
1240
1241         * lily/tie-performer.cc: remove unused last_event_ property.
1242         (class Tie_performer): add now_tied_heads_ property for
1243         partially-tied heads.
1244         (acknowledge_audio_element): when adding an Audio_note, put the
1245         note in now_tied_heads_ if the audio note is partially tied.
1246         (stop_translation_timestep): always include entries in
1247         now_tied_heads_ in heads_to_tie_.
1248
1249         * lily/drum-note-performer.cc (process_music): look for tie-events
1250         in the articulations; pass to Audio_note constructor.
1251
1252         * lily/note-performer.cc (process_music): look for tie-events in
1253         the articulations; pass to Audio_note constructor.
1254
1255         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1256         constructor.
1257
1258         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1259         include initializer in constructor.
1260
1261 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
1262
1263         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1264         unless they are breakable. This fixes discrepancies between the forces
1265         calculated here and the forces calculated in get_line_configuration.
1266
1267         * lily/grob.cc (pure_relative_y_coordinate): fix some
1268         mis-estimation that was happening with piano staves.
1269
1270         * lily/constrained-breaking.cc (resize): don't choke if we get a
1271         measure that won't fit on a line.
1272         (combine_demerits): don't consider uniformity when ragged
1273
1274         * lily/page-spacing.cc (solve): why the f* were there two of these?
1275         (calc_subproblem): properly handle the case where a system is taller
1276         than the page.
1277
1278         * lily/system.cc (get_paper_system): ensure that all the permissions
1279         and penalties are passed to the paper systems.
1280
1281         * lily/page-breaking.cc (create_system_list): support system-count.
1282
1283         * scm/define-grobs.scm (pure-print-callbacks): add
1284         ly:script-interface::print
1285
1286         * lily/page-spacing.cc (min_page_count): fix calculation of min
1287         pages if we are ragged and there are non-zero springs.
1288
1289         * scm/layout-page-layout.scm: if the pure-height estimates are under
1290         the real height, allow space-systems to ignore padding if it is
1291         needed in order to fit the systems on one page
1292
1293         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1294         ragged properties
1295         (solve): fix performance problem. Make sure we always get at least
1296         one solution
1297
1298         * lily/page-breaking.cc (make_pages): include write-page-breaks
1299         and page-stencil
1300
1301         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1302
1303         * scm/define-grobs.scm: add the new slur-callback
1304         fix pure-relevant to not exclude grobs whose extent is already
1305         calculated
1306
1307         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1308         page breaker
1309
1310         * lily/slur.cc (pure_height): new callback to estimate the height
1311         of a slur
1312
1313 2006-09-02  Graham Percival  <gpermus@gmail.com>
1314
1315         * Documentation/user/invoking.itely: small update on
1316         MacOS X notes; thanks Trevor!
1317
1318 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1319
1320         * VERSION (MY_PATCH_LEVEL): release 2.9.17
1321
1322         * lily/lexer.ll: accept EOF in all states.
1323
1324         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1325
1326         * lily/source-file.cc (Source_file): always 0-terminate character
1327         array, to prevent Flex from barfing.
1328
1329         * lily/global-context.cc (get_output): robustness: don't crash if
1330         no Score context found.
1331
1332         * lily/include/book.hh (class Book): idem.
1333
1334         * lily/include/context-def.hh (struct Context_def): idem.
1335
1336         * lily/include/score.hh (class Score): don't derive from Input.
1337
1338         * lily/book.cc (Book): add a copy ctor. 
1339
1340         * buildscripts/output-distance.py (FileLink.calc_distance): count
1341         orphans in distance too.
1342
1343         * python/midi.c (midi_parse_track): robustness: don't read past
1344         end of string.
1345
1346         * ly/performer-init.ly: add Control_track_performer, move
1347         Tempo_performer and Time_signature_performer to Score.        
1348
1349         * lily/score-performer.cc (acknowledge_audio_elements): override
1350         from base class: add to audio-columns
1351
1352         * lily/control-track-performer.cc (add_text): new file: generate
1353         the control track.
1354
1355         * lily/performance.cc: move output_header_track to
1356         Control_track_performer ()
1357
1358         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1359
1360         * lily/include/midi-item.hh (class Midi_channel_item): insert
1361         class into hierarchy, for items that can have a channel setting. Dehungarify.
1362
1363         * lily/include/performer.hh (class Performer): remove
1364         play_element();  move functionality into announce/acknowledge.
1365
1366         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1367
1368         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1369         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
1370
1371 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
1372
1373         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1374         ambituses.
1375
1376         * lily/all-font-metrics.cc: remove TFM support.
1377
1378         * lily/include/tfm.hh: remove TFM support, TFM reader.
1379
1380         * lily/include/binary-source-file.hh: remove Binary_source_file.
1381
1382 2006-08-27  Graham Percival  <gpermus@gmail.com>
1383
1384         * Documentation/topdocs/NEWS.itely: add @c marker for
1385         stuff I've processed.
1386
1387         * Documentation/user/ various: info from NEWS.
1388
1389 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
1390
1391         * lily/paper-column-engraver.cc (finalize): Oops, this change
1392         should have gone in on 2006-08-23
1393
1394 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
1395
1396         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1397         quotes to quote arguments. Fixes Windows problem.
1398
1399         * python/lilylib.py (progress): idem
1400
1401 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1402
1403         * scripts/musicxml2ly.py: fix for importing
1404         minor key signatures from MusicXML.  (Phillip Kirlin)
1405
1406 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
1407
1408         * python/musicxml.py: 
1409         (Attributes.get_key_signature): now correctly retrieves mode from 
1410         MusicXML. 
1411
1412 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1413
1414         * lily/parser.yy (output_def_body): take ownership of identifier
1415         back to C++.
1416
1417         * Documentation/user/advanced-notation.itely (Metronome marks):
1418         update use of \tempo in \midi.
1419
1420         * VERSION: release 2.9.16
1421         
1422 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
1423
1424         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1425         web partially)
1426
1427 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1428
1429         * input/regression/tie-chord-partial.ly: clarify example.
1430
1431         * scm/define-music-properties.scm (all-music-properties): remove
1432         untied.
1433
1434         * ly/music-functions-init.ly: remove \untied.
1435
1436         * lily/tie-engraver.cc (struct Head_event_tuple): store both
1437         stream events and music events.
1438         (stop_translation_timestep): search acknowledged heads for
1439         tie-event.
1440
1441         * input/regression/tie-chord-partial.ly: new file.
1442
1443         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1444         for \char markup command.
1445
1446         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1447
1448         * scm/define-music-types.scm (music-descriptions): consistency:
1449         Use solo-{one,two}-event iso. solo-[12]-event.
1450
1451         * lily/part-combine-engraver.cc (process_music):
1452         Use solo-{one,two}-event iso. solo-[12]-event.
1453
1454         * ly/declarations-init.ly (partCombineListener): add Timing as
1455         alias
1456
1457         * flower/std-string.cc (string_copy): use copy ()
1458
1459         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1460
1461 2006-08-24  Graham Percival  <gpermus@gmail.com>
1462
1463         * Documentation/user/changing-defaults.itely, global.itely,
1464         lilypond-book.itely, page.itely: minor changes from mailist.
1465
1466 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1467
1468         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1469         snippet-map
1470
1471         * scm/define-context-properties.scm
1472         (translator-property-description): robustness: detect type errors
1473         in property definitions.
1474
1475         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1476         after getting it from SCM. 
1477
1478         * lily/smobs.cc (protect_smob): switch off fancy smob protection
1479         for now. 
1480
1481         * lily/include/performer.hh (class Performer): strip get_tempo()
1482         method.
1483
1484         * lily/midi-def.cc: strip file.
1485
1486         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1487
1488         * lily/include/context-def.hh (struct Context_def): use
1489         VIRTUAL_COPY_CONSTRUCTOR().
1490
1491         * lily/source-file.cc: smobification.
1492
1493         * lily/include/source-file.hh (class Source_file): smobify
1494         Source_file. Trim redundant members.
1495
1496         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1497         clones after creation. This plugs a huge memory leak.
1498
1499         * python/convertrules.py (FatalConversionError.sub_tempo):
1500         complete rule for \midi{ \tempo }
1501
1502         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1503
1504         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1505
1506 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
1507
1508         * input/regression/optimal-page-breaking-hstretch.ly: test for
1509         ragged-last-bottom also
1510
1511         * lily/paper-column-engraver.cc (finalize): make the end of a score
1512         breakable by default. This is to balance out a change in behaviour
1513         of the page-turn-breaker which no longer makes the end of a score
1514         breakable.
1515
1516         * lily/paper-book.cc (pages): set the systems_ once the pages are
1517         broken
1518
1519         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1520         Page_breaking interface.
1521
1522         * lily/page-breaking.cc (class Page_breaking): make the interface
1523         more consistent and provide abstractions for dealing with
1524         Line_divisions.
1525
1526         * lily/optimal-page-breaking.cc (solve): use a more straightforward
1527         algorithm. Use the new interface to Page_breaking.
1528
1529         * lily/page-spacing.cc: better support for ragged-bottom and
1530         ragged-last-bottom
1531
1532 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
1533
1534         * python/convertrules.py (conv): warning on \tempo{}
1535
1536         * ly/performer-init.ly: set tempoWholesPerMinute.
1537
1538         * ly/midi-init.ly: remove \midi
1539
1540         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1541         MIDI tempo.
1542
1543         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1544         tempoUnitDuration for determining what to print.
1545
1546         * lily/lyric-extender.cc: typo.
1547
1548         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1549
1550         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1551         function.
1552
1553         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1554
1555         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1556         eps-pad-boxes is set.
1557
1558         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1559
1560         * THANKS: update sponsors.
1561
1562         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1563
1564         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1565
1566         * input/regression/tie-chord-untied.ly: new file.
1567
1568         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1569
1570         * scm/define-music-properties.scm (all-music-properties): add
1571         'untied property.
1572
1573         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1574         than .ly.txt.
1575         (headertext_nopics): sanitize no-examples text.
1576
1577         * scm/page.scm (make-page-stencil): don't rely on extents of
1578         page-stencil. This fixes spurious space around .EPS files produced
1579         with the EPS backend.
1580
1581 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1582
1583         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1584
1585         * lily/hara-kiri-engraver.cc (process_music): remember
1586         keepAliveInterfaces after processing \set
1587
1588         * lily/lyric-extender.cc (print): support left/right-padding for
1589         extenders.
1590
1591         * scm/documentation-generate.scm (string-append): revert lilypond/
1592         path, doc why.
1593
1594 2006-08-20  Graham Percival  <gpermus@gmail.com>
1595
1596         * Documentation/user/lilypond.tely: clarification to
1597         license presentation (not to actual license).
1598
1599         * Documentation/user/basic-notation.itely,
1600         instrument-notation.itely: minor changes.
1601
1602         * input/ {regression, test}/+.ly: clarification to
1603         text (you can click on examples).  Thanks, Mats!
1604
1605         * input/manual/bar-lines.ly: adds ||: repeats.
1606
1607 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1608
1609         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
1610
1611         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1612
1613         * Documentation/user/lilypond.tely: strip lilypond/ from info
1614         links, rename to category LilyPond
1615
1616         * lily/pango-font.cc (description_string): new function.
1617
1618         * VERSION: release 2.9.15
1619
1620         * lily/spacing-engraver.cc (stop_translation_timestep): use
1621         Dscho's fix for spacing spanner. 
1622
1623         * scm/define-music-types.scm (music-descriptions): use
1624         apply-output-event for ApplyOutputEvent
1625
1626         * lily/output-property-engraver.cc (listen_apply_output): rename
1627         from listen_layout_instruction.
1628
1629         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1630         function protect()
1631
1632 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1633
1634         * scm/lily.scm (lilypond-all): option read-file-list: substitute
1635         commandline args with contains, split by \n.
1636
1637         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1638         write snippet-names file, call with -dread-file-list. Fixes
1639         command limitations on 64-bit systems.
1640
1641         * input/regression/stencil-color-rotation.ly: new file.
1642
1643         * lily/include/translator.hh (struct Acknowledge_information):
1644         revert: don't use Protected_scm in global objects, as GUILE can't
1645         handle gc_unprotect from automated destructors on MacOS X.
1646  
1647         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1648         color, not the original stencil. Fixes combinations of
1649         color/transparency/rotation. 
1650
1651         * scripts/lilypond-book.py (main): add --formats=eps for
1652         texinfo/latex.
1653
1654         * lily/spacing-engraver.cc (stop_translation_timestep): don't
1655         crash if spacing_ is nonexistent.
1656
1657 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
1658
1659         * scripts/lilypond-book.py (output): Remove obsolete(!?)
1660         \catcode`\@=12 in the LaTeX output.
1661
1662 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1663
1664         * scm/define-music-types.scm (music-descriptions):
1665         use sustain-event iso. sustain-pedal-event.
1666
1667 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
1668
1669         * scripts/convert-ly.py: honour the -n command-line switch
1670
1671 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1672
1673         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1674         break specification.
1675
1676 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
1677
1678         * Documentation/user: convert-ly the user manual
1679
1680 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1681
1682         * stepmake/aclocal.m4: version check patch (thanks MWD)
1683
1684         * ly/music-functions-init.ly: robustness. Don't crash if
1685         currentBarNumber is not a number.
1686
1687         * VERSION (PATCH_LEVEL): bump.
1688
1689 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1690
1691         * stepmake/aclocal.m4: better version check; handle fooX.Y
1692         binaries too.
1693
1694         * ly/performer-init.ly: instrument name fixup.
1695
1696         * input/manual/chord-names-jazz.ly (banterProperties):
1697         instrumentName update
1698
1699         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1700
1701         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1702
1703         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1704         function. Use hash tables to check membership.
1705
1706         * lily/general-scheme.cc (LY_DEFINE): new function.
1707
1708         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1709
1710         * lily/include/translator.hh (struct Acknowledge_information): add
1711         Protected_scm
1712
1713         * ly/music-functions-init.ly: change name to BreathingEvent
1714
1715         * input/regression/*.ly: apply it.
1716
1717         * python/convertrules.py (conv): better instrumentName conversion
1718         rule.
1719
1720         * scm/define-music-types.scm (music-descriptions): add
1721         line-break-event to LineBreakEvent music
1722
1723         * lily/music.cc (to_event): don't crash if music type not set.
1724
1725         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1726         spacing not set.
1727
1728         * lily/spacing-engraver.cc (stop_translation_timestep): set
1729         spacing for proportional notation too.
1730
1731         * scm/translation-functions.scm (format-bass-figure): inspect
1732         stream-event.
1733
1734         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1735
1736 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1737
1738         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1739
1740         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1741
1742         * scm/layout-page-layout.scm (make-page-from-systems): new function
1743         (optimal-page-breaks): use the new page-breaking calling convention
1744
1745         * scm/define-context-properties.scm (all-user-translation-properties):
1746         add revokePageTurns
1747
1748         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1749         revokePageTurns  functionality. If there is a special barline within
1750         the breakable region, break there instead of at the end of the region.
1751
1752         * lily/paper-book.cc (pages): use the new page-breaking calling
1753         convention
1754
1755 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1756
1757         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1758
1759         * scripts/lilypond-book.py: insert \sourcefileline command in
1760         output, so lilypond error messages refer to the spot in the
1761         original .lytex / .itely sourcefile.
1762
1763 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1764
1765         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1766         space to next column for distance to fixed col.
1767
1768         * VERSION (PACKAGE_NAME): release 2.9.14
1769
1770         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1771         if no accidental.
1772
1773         * lily/accidental-engraver.cc (process_acknowledged): don't create
1774         accidental for trill span event. This fixes spurious accidentals
1775         on trills.
1776
1777 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1778
1779         * scm/define-grob-properties.scm (all-user-grob-properties):
1780         Clarify documentation of side-axis and direction. Thanks to Paul
1781         for the inspiration.
1782
1783         * lily/bar-line.cc: Add documentation for "||:" also in the
1784         interface documentation.
1785
1786 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1787
1788         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1789
1790         * lily/paper-column.cc (set_system): new function.
1791
1792         * lily/spacing-engraver.cc (stop_translation_timestep): store
1793         SpacingSpanner refs in Paper_column.
1794
1795         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1796         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1797
1798 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1799
1800         * lily/beam-engraver.cc (listen_beam): add method for
1801         Grace_beam_engraver too.
1802
1803 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1804
1805         * python/convertrules.py: Fix indentation bug that broke
1806         conversion of files older than 1.3.117.
1807         Fix escape error in the description for 2.9.6.
1808
1809 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1810
1811         * lily/*-engraver.cc: convert all try_music functions to listen_*
1812         functions.
1813
1814         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1815         enums to represent pedal types, and calculate more data statically.
1816
1817         * scm/part-combiner.scm (recording-group-emulate): create a
1818         softcoded substitute for recording-group-engraver.cc.
1819
1820         * lily/music.cc: make a common transpose function for events and
1821         music
1822
1823         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1824         ManualMelismaEvent, and obsoletes Melisma_translator.
1825
1826 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1827
1828         * input/test/instrument-name-align.ly: update version.
1829
1830 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1831
1832         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1833         Doc the --pdf flag to lilypond-book.
1834
1835 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1836
1837         * Documentation/topdocs/NEWS.tely (Top): add description.
1838
1839         * input/regression/tuplet-full-length-note.ly: add file.
1840
1841         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1842         always store axis group.
1843
1844 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1845
1846         * input/regression/instrument-switch.ly: new file.
1847
1848         * lily/instrument-switch-engraver.cc (process_music): new file.
1849
1850         * ly/engraver-init.ly: add Instrument_switch_engraver
1851
1852         * ly/music-functions-init.ly: \instrumentSwitch
1853
1854         * scm/define-context-properties.scm
1855         (all-user-translation-properties): add instrumentCueName
1856
1857         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1858
1859 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1860
1861         * ly/music-functions-init.ly: music function \transposition.
1862
1863         * lily/parser.yy (command_element): softcode \transposition.
1864
1865         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1866         (process_music): oops.
1867
1868         * lily/instrument-name-engraver.cc (start_spanner): new
1869         function. Create spanner when property changes.
1870         (stop_spanner): new function.
1871
1872         * python/convertrules.py (conv): add rule.
1873
1874         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1875         shortInstrumentName iso. instr.
1876
1877         * scm/output-ps.scm (dashed-line): add phase argument to
1878         dashed-line.
1879
1880         * lily/bar-line.cc (dashed_bar_line): new function.
1881         (compound_barline): support \bar "dashed". 
1882
1883         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1884         --output=DIR to DIR/BASE if it is a dir. 
1885
1886         * flower/file-name.cc (file_part): new function
1887         (dir_part): new function
1888
1889         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1890
1891         * DEDICATION: update
1892
1893 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1894
1895         * lily/instrument-name-engraver.cc: formatting.
1896
1897         * python/convertrules.py (conv): bugfix for \epsfile.
1898
1899 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1900
1901         * lily/grob.cc:
1902         
1903         * lily/gourlay-breaking.cc: Oops, these should have been included
1904         in my last commit
1905
1906 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1907
1908         * scripts/*.py (program_name): cleanup relocation snippets.
1909
1910         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1911
1912 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1913
1914         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1915         page-breakable by default
1916
1917         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1918         correctly calculated for a single-system page
1919
1920         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1921         bigger than the second number
1922
1923         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1924         acknowledge that we aren't satisfying constraints)
1925
1926         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1927         non-Items
1928
1929         * lily/grob.cc (pure_height): add minimum-Y-extent
1930
1931         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1932         ragged
1933
1934         * lily/constrained-breaking.cc: convert code to use new Matrix class
1935         (get_best_solution): new function
1936
1937         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1938         is a page with no systems
1939
1940 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1941
1942         * VERSION (PACKAGE_NAME): release 2.9.13
1943
1944         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1945         assignment.
1946
1947 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1948
1949         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1950
1951         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1952         function.
1953
1954         * scm/define-grob-properties.scm (all-user-grob-properties):
1955         remove grace-space-factor.
1956
1957         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1958         grace-spacing-interface
1959         (spacing-options-interface): add.
1960
1961         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1962
1963         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1964
1965         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1966         GraceSpacing object.
1967
1968         * lily/note-spacing.cc: fix prop list formatting
1969
1970         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1971         beaming for grace notes too.
1972
1973         * input/regression/spacing-grace.ly: update.
1974
1975         * lily/grace-spacing-engraver.cc: new file.
1976
1977         * lily/spacing-spanner.cc: add strict-grace-spacing.
1978
1979 2006-07-20  Graham Percival  <gpermus@gmail.com>
1980
1981         * lily/parser.yy: compile fix.
1982
1983 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1984
1985         * scm/define-grobs.scm (all-grob-descriptions): typo.
1986
1987         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1988         .eps extension from includegraphics.
1989
1990         * scripts/lilypond-book.py (main): add support for --pdf. 
1991
1992         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1993         callback to compute common shortest duration.
1994         (set_springs): typo.
1995
1996         * scm/define-grob-properties.scm (all-user-grob-properties): add
1997         strict-grace-spacing.
1998
1999         * lily/spacing-determine-loose-columns.cc (is_loose_column):
2000         support float_grace_columns_.
2001
2002         * lily/spacing-options.cc (init_from_grob): new file.
2003
2004         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2005
2006         * input/regression/spacing-loose-grace.ly: new file.
2007
2008         * Documentation/topdocs/NEWS.tely (Top): document new feature.
2009
2010         * lily/tuplet-engraver.cc (struct Tuplet_description): read
2011         tupletFullLengthNote too. Choose right bound depending on value.
2012
2013         * input/regression/tuplet-full-length-note.ly: new file.
2014
2015 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
2016
2017         * lily/*-performer.cc: Converted try_music to listen_*
2018
2019         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2020         as a stream-event internally. Introduce event_cause (), deprecate
2021         music_cause ().
2022
2023         * scm/define-music-types.scm: Removed BusyPlayingEvent
2024         
2025 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
2026
2027         * Documentation/user/advanced-notation.itely (Font selection):
2028         Document how to get a list of available fonts using 'lilypond
2029         -dshow-available-fonts blabla'.
2030
2031 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2032
2033         * GNUmakefile.in: filter lily-XXX.pdf files.
2034
2035         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2036
2037         * scm/define-grob-properties.scm (all-internal-grob-properties):
2038         remove delta-pitch. Use delta-position everywhere.
2039
2040         * scm/output-lib.scm (fall::print): use new order.
2041
2042         * scm/output-ps.scm (path): reorder arguments.
2043
2044         * scm/output-svg.scm (path): support for path primitive.
2045
2046         * input/regression/bend-after.ly: new file.
2047
2048         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2049         recipe for eps -> pdf conversion.
2050
2051 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
2052
2053         * lily/parser.yy, lily/lexer.ll: added some simplifications by
2054         Angelo Contardi.
2055
2056 2006-07-19  Graham Percival  <gpermus@gmail.com>
2057
2058         * input/manual/screech-boink.ly: moved to here.
2059
2060         * input/screech-boink.ly: deleted.
2061
2062         * scm/define-grob-properties.scm: clarify doc string.
2063
2064 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2065
2066         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2067
2068         * scm/output-ps.scm (path): define path.
2069
2070         * scm/define-stencil-commands.scm
2071         (ly:register-stencil-expression): add path.
2072
2073         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2074
2075         * ly/engraver-init.ly: add Fall_engraver
2076
2077         * lily/parser.yy (music_function_event): allow musicfunction
2078         without music arg as music_function_event.
2079
2080         * lily/grob-scheme.cc (LY_DEFINE):
2081         ly:grob-robust-relative-extent. New function.
2082
2083         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2084
2085         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2086
2087         * scm/output-lib.scm (fall::print): new function
2088
2089         * lily/fall-engraver.cc (stop_fall): new file.
2090
2091         * ly/music-functions-init.ly: alphabetise.
2092
2093         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2094         base.
2095
2096 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2097
2098         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2099
2100         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2101         doc pdftex usage.
2102
2103         * lily/translator-group.cc (connect_to_context): non const error message.
2104
2105         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2106
2107         * scm/paper.scm (internal-set-paper-size): define landscape to #f
2108         if unset.
2109
2110         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
2111
2112         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2113
2114         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2115         systems.pdftex too.
2116
2117         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2118
2119         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2120
2121         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2122
2123         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2124
2125         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2126
2127         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
2128
2129 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2130
2131         * scm/layout-page-layout.scm: Define module, tidy code, use more
2132         functions iso. a single big one.
2133
2134         * scm/layout-page-dump.scm: move page dump functions used in two
2135         pass spacing to this file. Define module.
2136
2137         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2138          (separate module)
2139
2140         * ly/paper-defaults.ly: use module layout-page-layout.
2141
2142 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
2143
2144         * lily/music.cc: Revised MusicEvent event class. It now contains
2145         event data directly instead of encapsulating it in music. The
2146         previously used class is renamed to OldMusicEvent.
2147
2148         * lily/stream-event.cc: Stream events are now probs.
2149         
2150         * lily/translator-group.cc, lily/translator.cc: Translators can
2151         now listen directly to stream events, by using macros
2152         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2153
2154         * lily/arpeggio-engraver.cc: Converted to use new event system
2155
2156         * THANKS: Corrected spelling mistake.
2157
2158 2006-07-12  Graham Percival  <gpermus@gmail.com>
2159
2160         * Documentation/user/SConscript, make/lilypond-vars.make,
2161         input/GNUmakefile: doc build looks in input/manual instead
2162         of input/test/
2163
2164         * input/manual/ GNUmakefile, SConscript: build files for
2165         input/manual/
2166
2167         * input/test/ various: some files moved to input/manual/ 
2168
2169         * Documentation/user/basic-notation.itely: small updates;
2170         thanks Kieren and Charles!
2171
2172 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2173
2174         * VERSION (PACKAGE_NAME): release 2.9.11
2175
2176         * Documentation/topdocs/NEWS.tely (Top): update prop value 
2177
2178         * Documentation/user/basic-notation.itely (Tuplets): new property
2179         value.
2180
2181 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2182
2183         * python/convertrules.py (conv): tweaks. 
2184
2185         * VERSION (PATCH_LEVEL): bump version.
2186
2187         * python/convertrules.py (conv): add rule for
2188         tupletNumberFormatFunction.
2189
2190         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2191         tupletNumberFormatFunction.
2192
2193         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2194         text through 'text callback.
2195
2196         * lily/time-scaled-music-iterator.cc (construct_children): copy
2197         tweaks generated events.
2198
2199         * scm/define-context-properties.scm
2200         (all-user-translation-properties): remove tupletNumberFormatFunction
2201
2202         * lily/tuplet-engraver.cc (process_music): don't read
2203         tupletNumberFormatFunction
2204
2205         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2206         function.
2207
2208 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
2209
2210         * lily/global-context-scheme.cc: Separated ly:run-translator into
2211         smaller pieces.
2212
2213         * lily/score-engraver.cc, lily/score-performer.cc,
2214         scm/define-context-properties.scm: Make paper/midi output
2215         accessable as a context property.
2216
2217         * lily/score-translator.cc, lily/score-context.cc: Removed.
2218
2219 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
2220
2221         * scm/ps-to-png.scm (Module): 
2222         * scm/framework-tex.scm (Module): 
2223         * scm/framework-ps.scm (Module): 
2224         * scm/backend-library.scm (Module): 
2225         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2226         "dDEVICEHEIGHTPOINTS".
2227
2228 2006-07-04  Graham Percival  <gpermus@gmail.com>
2229
2230         * Documentation/user/ various: general improvements to
2231         "working with lilypond files" section.
2232
2233 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
2234
2235         * lily/sequential-iterator.cc: Change the default get_music_list
2236         to read elements-callback music property
2237
2238         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2239         processing of multimeasure rests. Softcoded
2240         sequential-music-iterator.
2241
2242         * lily/sequential-music-iterator.cc: Removed.
2243
2244 2006-06-28  Graham Percival  <gpermus@gmail.com>
2245
2246         * Documentation/user/basic-notation.itely: clarify \repeatTie.
2247
2248 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
2249
2250         * lily/parser.yy: Wrap non-post-events in EventChords before
2251         assigning them to identifiers.
2252
2253 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
2254
2255         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2256         gives correct vertical placement of \bar ":" in all staff
2257         sizes. Thanks Martial!
2258
2259 2006-06-26  Graham Percival  <gpermus@gmail.com>
2260
2261         * Documentation/user/invoking.itely : minor update from mailist.
2262
2263 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
2264
2265         * lily/ various: Introduce stream events of types Prepare,
2266         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2267         ChangeContext, SetProperty, RevertProperty, Override and Revert.
2268
2269         * lily/global-context*.cc: Time is now -inf before iteration
2270         starts.
2271
2272         * lily/include/context.hh: Removed unique_, init_
2273
2274         * Documentation/topdocs/NEWS: Make the feathered beam example
2275         avoid triggering a bug.
2276
2277 2006-06-24  Graham Percival  <gpermus@gmail.com>
2278
2279         * Documentation/user/ various: small additions from mailist.
2280
2281 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
2282
2283         * ly/performer-init.ly: Add some missing links in the context
2284         hierarchy for MIDI output. There are probably some more missing!
2285
2286 2006-06-21  Graham Percival  <gpermus@gmail.com>
2287
2288         * Documentation/user/ various: minor spelling fixes;
2289         thanks Dave Luttinen!
2290
2291         * Documentation/user/ various: small clarifications;
2292         thanks Anthony Youngman!
2293
2294 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2295
2296         * po/fr.po: add \n appropriately.
2297
2298         * lily/lexer.ll: remove ? from version-seen?  
2299
2300 2006-06-19  John Mandereau  <john.mandereau@free.fr>
2301
2302         * po/fr.po; update translation, by Jean-Charles Malahieude and
2303         John Mandereau.
2304
2305 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2306
2307         * THANKS: add Markus Schneider.
2308
2309         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2310         Staff_symbol_engraver
2311
2312         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2313         replace staff_engraver
2314
2315         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2316         spanner.
2317
2318         * lily/staff-collecting-engraver.cc
2319         (acknowledge_end_staff_symbol): new function
2320
2321         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
2322
2323         * lily/staff-collecting-engraver.cc
2324         (acknowledge_end_staff_symbol): new function.
2325
2326         * lily/main.cc: switch on relocation by default.
2327
2328 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2329
2330         * lily/spacing-spanner.cc (musical_column_spacing): set
2331         compound_fixed_note_space to 0.0. Document why.
2332
2333         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2334         range of inverse_hooke_
2335         (Simple_spacer): init completely.
2336         (fits): const
2337         (get_line_configuration): don't use cols.resize(); it introduces
2338         initialized data.
2339
2340         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
2341
2342         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2343
2344         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2345         try. Divide by beatlength.
2346
2347         * input/regression/beaming-ternary-metrum.ly: update doc.
2348         add beatLength hack.
2349
2350         * scm/music-functions.scm (make-time-signature-set): add
2351         standard-beat-grouping. 
2352
2353 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2354
2355         * input/regression/tie-whole.ly: new file.
2356
2357         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2358         cross center of note head in case of invisible stem. 
2359
2360 2006-06-16  Graham Percival  <gpermus@gmail.com>
2361
2362         * Documentation/user/ various: small fixes from mailist.
2363
2364 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2365
2366         * lily/breathing-sign.cc (offset_callback): idem.
2367
2368         * lily/align-interface.cc (align_to_fixed_distance): remove
2369         hungarian suffix.
2370
2371         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2372         x%2==0.
2373
2374 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2375
2376         * VERSION (PACKAGE_NAME): release 2.9.9
2377
2378         * ly/lilypond-book-preamble.ly: add \version
2379
2380 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
2381
2382         * scripts/lilypond-book.py (PREAMBLE_LY): include
2383         lilypond-book-preamble.ly
2384
2385         * lily/stem.cc (get_beaming): return max of 0 and
2386         scm_ilength. Fixes slurring from/to beams.
2387
2388         * ly/lilypond-book-preamble.ly: new file.
2389
2390         * lily/slur.cc: add inspect-index feature.
2391
2392 2006-06-13  Graham Percival  <gpermus@gmail.com>
2393
2394         * Documentation/user/tutorial.itely: trivial fix.
2395
2396 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
2397
2398         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2399         all non-event music in the parser via MAKE_SYNTAX.
2400
2401         * lily/parser-scheme.cc: Add ly:parser-error function
2402
2403         * scm/paper.scm: fix typo
2404
2405 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
2406
2407         * THANKS: add RT.
2408
2409         * lily/font-config.cc (init_fontconfig): add warning if cache_file
2410         is null.
2411
2412         * buildscripts/output-distance.py (test_compare_signatures):
2413         timing routines.
2414         (read_signature_file): use new signature format.
2415
2416         * scm/stencil.scm (write-system-signature): simpler signature
2417         format.
2418
2419         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2420         for beamed case. 
2421
2422         * lily/note-spacing.cc (stem_dir_correction): don't inspect
2423         stem_end_position, but estimate instead. 
2424
2425         * lily/tuplet-bracket.cc (calc_positions): look at
2426         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2427         brackets narrower than beams. 
2428
2429         * lily/lexer.ll: set version-seen? even if version is
2430         INVALID. 
2431
2432         * lily/rest.cc (y_offset_callback): bugfix: decide position
2433         override based on scm_is_number(). Fixes \rest on center staff
2434         line. 
2435
2436         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2437         patterns for 16th triplets.
2438
2439 2006-06-10  Graham Percival  <gpermus@gmail.com>
2440
2441         * Documentation/user/ page.itely, global.itely: editing
2442         and reorg.
2443
2444         * Documentation/user/ various: findex -> funindex.
2445
2446 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
2447
2448         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2449         insert extra tuplet events.
2450
2451 2006-06-10  Graham Percival  <gpermus@gmail.com>
2452
2453         * Documentation/user/programming-interfaces.itely: add
2454         info from NEWS.
2455
2456         * python/convertrules.py: add annotatefoo -> annotate-foo
2457         rules.
2458
2459         * Documentation/user/global.itely: start editing.
2460
2461         * Documentation/user/page.itely: major editing, new spacing
2462         docs.
2463
2464 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
2465
2466         * scm/define-markup-commands.scm (wordwrap-markups): use
2467         output-def 'line-width if undefined.
2468
2469         * HACKING: trim outdated info.
2470
2471 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
2472
2473         * scm/define-grobs.scm (all-grob-descriptions): Add
2474         line-spanner-interface to all grobs that already have
2475         text-spanner-interface or dynamic-text-spanner-interface
2476
2477         * scm/page.scm: Rename annotate{headers,systems,page}->
2478         annotate-*
2479
2480         * input/regression/page-spacing.ly,
2481         input/regression/page-layout-manual-position.ly: idem
2482
2483 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2484
2485         * lily/line-spanner.cc: cleanup property list.
2486
2487         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2488         generator expressions (2.3 compat). 
2489
2490 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
2491
2492         * lily/vertical-align-engraver.cc: Make sure that the
2493         align{Above,Below}Context properties are included in the automatic
2494         documentation.
2495
2496 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
2497
2498         * scm/paper-system.scm (paper-system-annotate): also annotate the
2499         estimated pure-Y-extent
2500
2501         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2502
2503         * lily/system.cc (break_into_pieces): set the estimated height
2504         of each child system
2505
2506         * lily/stem.cc (pure_height): new pure-Y-extent callback
2507
2508         * lily/staff-symbol-referencer.cc (callback): don't destroy
2509         the staff-position property
2510
2511         * lily/hara-kiri-group-spanner.cc (request_suicide): split
2512         consider_suicide into two functions
2513
2514         * lily/constrained-breaking.cc (resize): use the new pure
2515         callbacks to estimate the height of a system
2516
2517         * lily/axis-group-interface.cc (pure_group_height): new
2518         side-effect-free VerticalAxisGroup height-callback
2519
2520         * lily/align-interface.cc (get_extents_aligned_translates):
2521         split align_elements_to_extents into two functions
2522         (get_pure_child_y_translation): new function
2523
2524         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2525
2526         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2527
2528         * lily/paper-score.cc: cache break_indices and columns
2529
2530         * lily/side-position-interface.cc: new pure-Y-extent callbacks
2531         
2532 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2533
2534         * lily/font-config.cc (init_fontconfig): do the init if
2535         cache_file, but don't look at cache_file.
2536
2537         * input/regression/quote-tie.ly: new file.
2538
2539         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2540         to Head_event_tuple, so we deal gracefully with ties on
2541         cue-endings.
2542
2543         * lily/pango-font.cc (pango_item_string_stencil): type correctness
2544         for FcChar8*
2545
2546 2006-06-08  Graham Percival  <gpermus@gmail.com>
2547
2548         * input/test/ smart-transpose.ly, reverse-music.ly:
2549         \applyMusic to music functions update, thanks Michael!
2550
2551 2006-06-07  Graham Percival  <gpermus@gmail.com>
2552
2553         * input/test/ add-staccato.ly, add-text-script.ly,
2554         unfold-all-repeats.ly, music-box.ly: \applyMusic to
2555         music functions update, thanks to Michael Meixner.
2556
2557         * Documentation/user/music-glossary.tely: small fix
2558         from Francisco.
2559
2560         * Documentation/user/ various: minor additions from mailist.
2561
2562         * Documentation/user/lilypond.tely, basic-notation.itely:
2563         small test of @funindex.  (works here)
2564
2565         * input/test/font-table.ly: reduce size to partially
2566         de-ugly version in manual.
2567
2568         * Documentation/user/page.itely: new file (split former
2569         "global issues" into "page settings" and "non-musical
2570         output".
2571
2572         * Documentation/user/ various: fix @ref{}s to match
2573         new chapter names (above).
2574
2575 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2576
2577         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2578
2579 2006-06-06  Graham Percival  <gpermus@gmail.com>
2580
2581         * Documentation/user/advanced-notation.itely: add example
2582         for segno/coda on barline.
2583
2584         * tex/texinfo.tex: merge from upstream.
2585
2586 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2587
2588         * scripts/lilypond-book.py (process_snippets): Argument fix.
2589
2590         * SConstruct:
2591         * buildscripts/builder.py:
2592         * lily/SConscript: 
2593         * mf/SConscript: 
2594         * Documentation/user/SConscript:  More SCons fixes.
2595
2596 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2597
2598         * lily/font-config.cc (init_fontconfig): Only initialize if
2599         global cache_file is found.
2600
2601 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
2602
2603         * ly/music-functions-init.ly: Updated \overrideProperty to use the
2604         new \applyOutput.
2605
2606 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2607
2608         * VERSION (PACKAGE_NAME): release 2.9.8
2609
2610         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2611         function. Delay ledger modifying ledgered grobs to
2612         stop_translation_timestep(), to ensure that we're ledgering
2613         according to the new spanner.
2614         (acknowledge_staff_symbol): don't check for non-NULL
2615         staff_sym->get_bound()
2616
2617         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2618         creation.
2619
2620         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2621         pictures too.
2622
2623         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2624         directly from srcdir/stepmake/aclocal.m4
2625         
2626         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2627         disting MISC files.
2628
2629         * lily/simple-spacer.cc (get_column_desc): desc -> description.
2630
2631 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2632
2633         * lily/simple-spacer.cc (get_line_configuration): add
2634         keep-inside-line rods
2635         (struct Column_desc): add constructor
2636         (struct Rod_desc): add constructor
2637         (get_line_forces): check for forced page breaks here too
2638
2639         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2640         support/elements cycles between InstrumentNames and AxisGroups
2641
2642 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2643
2644         * config.make.in (METAFONT): remove MAKEINFO_VERSION
2645
2646         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2647         make-txt-files target.
2648
2649         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2650         make-txt-files target.
2651
2652         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2653
2654         * stepmake/stepmake/generic-vars.make (distdir): create dist in
2655         top-build-dir.
2656
2657 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
2658
2659         * Documentation/user/instrument-notation.itely,
2660         input/regression/breathing-sign-ancient.ly,
2661         input/test/divisiones.ly: Removed redundant property settings for
2662         vaticana contexts.
2663
2664         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2665         fix lyrics alignment problems.  They are implemented now as scheme
2666         functions that add the appropriate unicode char to the first lyric
2667         event rather than adding a separate lyric event.  Minor edit of
2668         comments.
2669
2670 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2671
2672         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2673         pollute src dir with built .txt files, but install directly from
2674         Documentation/topdocs/out/
2675
2676         * buildscripts/output-distance.py
2677         (ComparisonData.create_html_result_page): put version/directories
2678         in table header.
2679
2680         * Documentation/topdocs/NEWS.tely (Top): document spacing section
2681         feature.
2682
2683         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2684         Patch by Karl Hammar
2685         
2686         * buildscripts/readlink.py: add  file.
2687         Patch by Karl Hammar
2688
2689 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2690
2691         * lily/tuplet-number.cc (print): prevent stencil from being
2692         garbage collected.
2693
2694 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2695
2696         * scm/stencil.scm (write-system-signature): explicitly 
2697         -well, superfluously- close output port.
2698
2699         * buildscripts/output-distance.py (main): oops. Add extra argument.
2700
2701 2006-06-05  Graham Percival  <gpermus@gmail.com>
2702
2703         * Documentation/user/music-glossary.tely: clarified example
2704         from Francisco Vila, thanks!
2705
2706 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2707
2708         * input/regression/spacing-section.ly: new file.
2709
2710         * lily/input.cc (programming_error): new function.
2711
2712         * lily/spacing-engraver.cc (try_music): new function. Accept
2713         spacing-section-event
2714
2715         * lily/spacing-spanner.cc (set_springs): take slices of all
2716         columns for spacing.
2717
2718         * lily/include/paper-column.hh (class Paper_column): add
2719         Paper_column::compare.
2720
2721         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2722
2723         * scm/define-music-types.scm (music-descriptions): add
2724         SpacingSectionEvent
2725
2726         * lily/music-iterator.cc (report_event): use programming_error for
2727         sending non-event error.
2728
2729         * lily/input.cc (programming_error): new function
2730
2731         * buildscripts/output-distance.py (main): use compare-XXX for
2732         compare files.
2733         (main): --threshold option, default at 0.30
2734
2735         * output-distance.py (main): add --threshold option.
2736
2737 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2738
2739         * scm/paper-system.scm (paper-system-annotate): fix problem when
2740         annotating an empty system
2741
2742 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2743
2744         * GNUmakefile.in: reinstate old web tar/copying.
2745
2746 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2747
2748         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2749         nothing changes. (Erik S) 
2750
2751         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2752         count. (Erik S)
2753
2754 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2755
2756         * scm/define-markup-commands.scm (whiteout): do not force
2757         foreground color of argument markup to black.
2758
2759         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2760         the left of the arrow, instead of below the arrow name, so that,
2761         when two little arrows are vertically stacked, their dimensions
2762         and name should not overlap. Add a color key parameter.
2763
2764         * scm/paper-system.scm (paper-system-annotate): Annotate
2765         next-space+next-padding instead of next-space. Annotate space
2766         between next-padding and next-space+padding, respectively, and
2767         following system extent and refpoint-Y-extent. Use colors.
2768
2769         * scm/page.scm (annotate-page): translate annotations slightly to
2770         the right.
2771
2772 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2773
2774         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2775         fix for x-staff slurs. Thanks Joe!
2776
2777         * buildscripts/output-distance.py
2778         (SystemLink.output_expression_change_count): keep track of changed
2779         details, and dump in details html page.
2780  
2781         * input/regression/figured-bass-staff.ly: add note about setting
2782         properties in Staff context.
2783
2784         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2785         add slurs and ties to support too.
2786
2787         * buildscripts/output-distance.py (main): set dest_dir
2788         argument. Add --max-count option.
2789
2790 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2791
2792         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2793         shortcuts for special unicode chars that are useful in chant
2794         notation.  Revised exisiting and added new comments.
2795
2796 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2797
2798         * make/mutopia-rules.make: remove duplicate recipe.
2799
2800 2006-06-02  Werner Lemberg  <wl@gnu.org>
2801
2802         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2803         Add support for U+0132 (IJ) and U+0133 (ij).
2804
2805 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2806
2807         * buildscripts/output-distance.py (FileLink): new class. collect
2808         info systems from one .ly file. 
2809         (FileLink.link_files_for_html): further tweaks.
2810
2811 2006-06-02  Graham Percival  <gpermus@gmail.com>
2812
2813         * tex/texinfo.tex: partial fix for @funindex.
2814
2815         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2816         break anything).
2817
2818 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2819
2820         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2821
2822         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2823         @example too. Backportme.
2824
2825 2006-06-02  Graham Percival  <gpermus@gmail.com>
2826
2827         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2828         from Werner Lemberg.
2829
2830 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2831
2832         * Documentation/user/music-glossary.tely: additional spanish
2833         updates and a lyrics fix in an example.
2834
2835 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2836
2837         * scm/define-grob-properties.scm: Previous patch contained
2838         spurious line from another patch not yet committed.  Fixed.
2839
2840         * scm/define-grob-properties.scm: Add missing doc strings for
2841         ancient notation.
2842
2843 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2844
2845         * buildscripts/output-distance.py
2846         (ComparisonData.write_text_result_page): separate the scores, sort
2847         by geo_score.
2848
2849         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2850         system signatures.
2851
2852         * buildscripts/output-distance.py (me_path): use argv[0] for
2853         sys.path extension
2854         (ComparisonData.img_cell): use colored borders.
2855
2856         * scm/stencil.scm (write-system-signature): escape newlines too.
2857         (write-system-signature): use (1,-1) interval for empty interval
2858
2859 2006-01-01  Graham Percival  <gpermus@gmail.com>
2860
2861         * Documentation/user/music-glossary.tely: Spanish updates
2862         from Francisco Vila.
2863
2864         * Documentation/user/lilypond-book.itely: addition from
2865         Vaclav Smilauer.
2866
2867         * Documentation/user/ various: edits, small additions
2868         from mailist, etc.
2869
2870 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2871
2872         * GNUmakefile.in (tree-lib-prefix-current):
2873         (tree-share-prefix-current): Use version number in tree, add
2874         `current' symlinks.
2875
2876 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2877
2878         * GNUmakefile.in: write VERSION, again.
2879
2880         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2881         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2882
2883         * stepmake/aclocal.m4: robuster version detection.
2884
2885         * buildscripts/output-distance.py
2886         (ComparisonData.create_html_result_page): copy only if file
2887         exists, fixup src paths.
2888
2889         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2890
2891 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2892
2893         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2894         Another datarootdir reto.
2895
2896         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2897         available.  This should be moved to postinstall-lilypond-doc.
2898
2899 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2900
2901         * GNUmakefile.in: simplify local-WWW-post. 
2902         remove -type l from find.
2903
2904         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2905         fixes. Don't follow symlinks.
2906         (ComparisonData.create_html_result_page): remove previous results.
2907         insert ../python in path.
2908
2909         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2910
2911 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2912
2913         * config.make.in (datadir): Add datarootdir to silence autoconf.
2914
2915         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2916
2917 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2918
2919         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2920
2921         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2922         slash beams too wide.
2923
2924 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2925
2926         * VERSION: release 2.9.7
2927         
2928 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2929
2930         * lily/relocate.cc (read_relocation_dir): Do not blindly
2931         dereference DIR.
2932
2933 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2934
2935         * lily/parser.yy: replace THIS by PARSER
2936
2937         * Documentation/index.html.in: add link to test-results.html page.
2938
2939         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2940
2941         * scm/translation-functions.scm (format-bass-figure): translate
2942         digits over 10 to the left
2943
2944         * scm/define-markup-commands.scm (translate-scaled): new markup.
2945
2946         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2947         7 glyph. 
2948
2949         * ly/engraver-init.ly: add Figured_bass_engraver
2950
2951         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2952
2953         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2954
2955         * lily/score-engraver.cc (announce_grob): only note START announces.
2956
2957         * lily/include/engraver-group.hh (Translator_group):
2958         acknowledge_hash_table_ is now drul.
2959
2960         * lily/engraver.cc (announce_end_grob): new method.
2961
2962         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2963
2964         * lily/translator-dispatch-list.cc (create): take start_end argument.
2965
2966         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2967         acknowledge_static_array_ to drul
2968
2969         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2970
2971         * scm/define-grob-interfaces.scm
2972         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2973
2974         * scm/define-grobs.scm (all-grob-descriptions): add
2975         BassFigureAlignmentPositioning
2976
2977         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2978         number stays up to date. Backportme.
2979
2980 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2981
2982         * Documentation/user/basic-notation.itely (Bar lines): Document
2983         the "||:" bar type. 
2984
2985 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2986
2987         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2988
2989         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2990         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2991         build.
2992
2993         * Resurrect `scons lily' build.
2994
2995         * SConstruct (symlink_tree): Bugfix: link
2996         music-drawing-routines.ps to file iso directory.
2997
2998         * lily/SConscript: Remove kpath-guile from LIBS.
2999
3000         * SConstruct (libdir_package_version): Typo.
3001         (configure): Comment-out fontforge for lack of fontforge.pc .
3002         Also add libdir* to environment.
3003
3004 2006-05-30  Graham Percival  <gpermus@gmail.com>
3005
3006         * Documentation/user/ various: minor additions from mailist and
3007         editing.
3008
3009 2006-05-30  Paco <fravd@ya.com>
3010
3011         * Documentation/user/music-glossary.tely: numerous corrections and
3012         some new translations.
3013
3014 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3015
3016         * BackportmeStart.
3017         
3018         * buildscripts/output-distance.py
3019         (ComparisonData.create_html_result_page): new routine: summarise
3020         results in HTML page with images. 
3021         (ComparisonData.create_text_result_page): create summary text files too.
3022
3023         * GNUmakefile.in (web-ext): package .signature files too. They
3024         compress well. 
3025
3026         * scm/stencil.scm (write-system-signature): typo.
3027
3028         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3029
3030         * scm/stencil.scm (write-system-signature): better escaping.
3031         only write signature for music systems, not for markup systems.
3032
3033         * scm/framework-ps.scm (output-framework): dump-signatures support
3034         for plain output.
3035
3036         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3037
3038         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3039         for -dno-point-and-click
3040
3041         * lily/grob.cc (get_print_stencil): don't read
3042         point_and_click_global to determine whether to set grob-cause.
3043
3044 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3045
3046         * buildscripts/output-distance.py (main): new function.
3047         (ComparisonData): new class.
3048
3049         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3050         careful with generating new LedgerLineSpanners.
3051
3052         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3053
3054         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3055         context. This fixes double ledger lines in output. 
3056
3057         * lily/system.cc (get_paper_system): remove 3 layer limit.
3058
3059         * buildscripts/output-distance.py (SystemLink.distance): new
3060         file. Compare signatures.
3061
3062         * python/safeeval.py (SafeEval.visitUnarySub): new file.
3063
3064         * lily/grob-array.cc (remove_duplicates): rename from
3065         uniq(). Sort before calling uniq() so it actually works.
3066
3067 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3068
3069         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3070         \version from lilypond file snippet.
3071         (Lilypond_file_snippet.ly): oops. typo.
3072         (find_toplevel_snippets): urgh. again.
3073
3074         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3075         prevent duplicated broken items in output.
3076
3077         * scm/framework-eps.scm (output-classic-framework): only dump if
3078         dump-signatures is set.
3079
3080         * scm/lily.scm (define-scheme-options): add dump-signatures option.
3081
3082         * scm/stencil.scm (write-system-signature): new routine: write
3083         python parseable signature of a separate paper system.
3084         BackportmeEnd.
3085         
3086 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
3087
3088         * lily/stanza-number-engraver.cc (process_music): use is_markup()
3089         iso is_string().
3090         include header.
3091
3092 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
3093
3094         * translator-group.cc: send music events to engravers in
3095         non-bottom contexts.
3096
3097         * tuplet-engraver.cc: process tuplet brackets in correct order.
3098
3099 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3100
3101         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3102         arg 2 might point us to a new binary (patch by Karl Hammar)
3103         
3104 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3105
3106         * VERSION (PACKAGE_NAME): release 2.9.6
3107
3108         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
3109
3110         * Documentation/user/*.itely: 2nd
3111         attempt: replace funindex -> findex globally.
3112
3113 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3114
3115         * input/no-notation/display-lily-tests.ly: fix \applyOutput
3116         test. Add \break, \pageBreak, \pageTurn, etc, tests.
3117
3118         * scm/define-music-display-methods.scm: display methods for
3119         breaks. Fix \applyOutput.
3120
3121 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3122
3123         * Documentation/user/macros.itexi: comment out funindex expansion. 
3124
3125         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3126         everywhere.
3127
3128         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3129         Karl Hammar. Backportme.
3130  
3131         * Documentation/user/advanced-notation.itely (Balloon help): idem.
3132
3133         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3134
3135         * Documentation/user/programming-interface.itely (Running a
3136         function on all layout objects): idem.
3137
3138         * Documentation/user/introduction.itely (Automated engraving):
3139         update \applyOutput syntax
3140
3141         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3142         remove debugging hook.
3143
3144         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3145         expansion. 
3146
3147         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3148
3149         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3150         TEXI2DVI_FLAGS to texi2dvi invocation. 
3151
3152 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
3153
3154         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3155         works. More work is done by iterator now, and engraver has been
3156         very much simplified.
3157
3158         * lily/translator-group.cc: try_music is now invoked through a
3159         listener
3160
3161         * lily/*-iterator.cc: Massive cleanups. Junked
3162         try_music_in_children globally. Renamed try_music to report_event,
3163         and made that method descend to a bottom context automatically.
3164
3165         * lily/event-iterator.cc: New file.
3166
3167         * lily/output-property-iterator.cc,
3168         lily/old-lyric-combine-music-iterator.cc: Removed.
3169
3170         * python/convert-rules.py: Modified the syntax for \applyOutput.
3171
3172 2006-05-23  Graham Percival  <gpermus@gmail.com>
3173
3174         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3175         creation.
3176
3177         * Documentation/user/ various: stuff that might have helped
3178         to fix the pdf creation, plus some minor doc additions.
3179
3180         * Documentation/user/changing-defaults.itely: remove @b from
3181         @b{ @internasref{foo}}; this breaks texi2dvi -E.
3182
3183 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3184
3185         * lily/beaming-pattern.cc (beamify): deal with negative start
3186         moments for beaming patterns.
3187
3188 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3189
3190         * lily/beaming-info.cc (beamify): new function: read beatLength
3191         and beatGrouping from context. 
3192
3193         * input/regression/beam-beat-grouping.ly (Module): new file.
3194
3195         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3196
3197         * lily/beam.cc (get_beam_segments): generate events for
3198         max_connect_ case too.
3199         (get_beam_segments): read Stem::max-beam-connect.
3200
3201         * input/regression/beam-single-stem.ly: new file.
3202
3203         * lily/stem.cc (set_beaming): use #f as signaling value for
3204         beamcount 0.
3205
3206         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3207
3208         * lily/beam.cc (set_beaming): read clip-edges property.
3209         (calc_direction): don't suicide for single stem.
3210
3211         * lily/beaming-info.cc (best_splitpoint_index): take bool*
3212         argument, remove 1<<15 hack. Remove clip_edges() 
3213
3214         * lily/hairpin.cc (print): only do padding for nonmusical bounds
3215
3216 2006-05-21  Graham Percival  <gpermus@gmail.com>
3217
3218         * Documentation/user/basic-notation.itely: reorg.
3219
3220         * Documentation/user/ various: minor fixes.
3221
3222 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
3223
3224         * lily/stencil-expression.cc (register_stencil_head): opps, append
3225         to cdr of static SCM object.
3226
3227 2006-05-19  Graham Percival  <gpermus@gmail.com>
3228
3229         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3230         update framework for command index.  DOC WRITERS: use @funindex
3231         instead of @cindex @code{}.
3232
3233         * Documentation/user/ various: replace @cindex @code{} => @funindex
3234
3235 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
3236
3237         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3238         case positions is set manually. 
3239
3240 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
3241         
3242         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3243         rules to Scheme.
3244
3245 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
3246
3247         * Documentation/user/changing-defaults.itely (Contexts explained):
3248         use absolute dimension for @image.
3249
3250         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3251         out image for illustration too.
3252         ($(outdir)/%.png): add more png <-> eps rules. 
3253
3254 2006-05-17  Graham Percival  <gpermus@gmail.com>
3255
3256         * Documentation/user/ various: remove trailing whitespace, cosmetic
3257         change to reduce changes produced by diff.
3258
3259 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
3260
3261         * lily/main.cc (do_chroot_jail): correctness tweak.
3262
3263         * python/lilylib.py (system): import subprocess in system () only.
3264
3265         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3266
3267         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3268         variable. Backportme.
3269
3270 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
3271         
3272         * lily/parser.yy: Change all syntax rules of type Music to SCM type
3273
3274 2006-05-17  Werner Lemberg  <wl@gnu.org>
3275
3276         * lily/lexer.ll (init_signature_has_table): Add
3277         `scm-scm-music-music'.
3278
3279         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3280         (Generic_prefix_music_scm): Add rule for it.
3281
3282         * lily/quote-iterator.cc (Quote_iterator::process): Handle
3283         `quoted-transposition' property.
3284
3285         * ly/music-functions-init.ly (transposedCueDuring): New function.
3286
3287         * scm/define-music-properties.scm (all-music-properties): Updated.
3288
3289         * Documenation/topdocs/NEWS.itely: Document it.
3290
3291 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
3292
3293         * python/lilylib.py (system): move import subprocess to system()
3294         definition. 
3295
3296         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3297
3298         * VERSION (PATCH_LEVEL): release 2.9.5
3299         
3300         * Documentation/topdocs/INSTALL.texi (Top): update versions and
3301         build instructions. 
3302
3303         * ly/engraver-init.ly: switch on hairpinToBarline by default.
3304
3305 2006-05-16  Graham Percival  <gpermus@gmail.com>
3306
3307         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3308
3309         * Documentation/user/ various: minor fixes.
3310
3311 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
3312
3313         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3314
3315 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
3316
3317         * Documentation/user/advanced-notation.itely (Instrument names):
3318         Modified obsolete instruction on how to move instrument names away
3319         from the staves. Hmm, at second thought the bug probably has been
3320         solved, so the full bug description should probably be removed.
3321
3322 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
3323
3324         * lily/dynamic-engraver.cc (typeset_all): hang ending on
3325         currentCommandColumn. 
3326
3327         * lily/hairpin.cc (print): also add padding for non-neighbor
3328         hairpin bounds.
3329
3330         * scm/define-context-properties.scm
3331         (all-user-translation-properties): add hairpinToBarline
3332
3333         * input/regression/hairpin-to-barline.ly: new file.
3334
3335         * lily/context.cc (internal_send_stream_event): thinko fix.
3336
3337         * lily/tie.cc (set_default_control_points): robustness fix.
3338
3339         * python/musicxml.py (Part.interpret): don't complain about
3340         incomplete measures.
3341
3342         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3343         new music if last_event_chord() returned None.
3344
3345         * python/musicxml.py (Part.interpret): skip back over chord notes.
3346
3347 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
3348         
3349         * lily/percent-repeat-engraver.cc, lily/parser.yy,
3350         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3351         lily/slash-repeat-engraver.cc,
3352         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3353         iterator sends PercentEvents
3354
3355         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3356         rework tuplets: send start/stop events to engraver
3357
3358         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3359         dispatchers event-source and events-below to Context
3360         
3361 2006-05-15  Graham Percival  <gpermus@gmail.com>
3362
3363         * Documentation/user/README.txt: update info for doc writers.
3364
3365         * Documentation/user/programming-interface.itely: integrate
3366         Nicolas' fixes for chapter rewrite.
3367
3368         * Documentation/user/ various: minor fixes.
3369
3370 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
3371
3372         * lily/clef-engraver.cc: cleanup.
3373
3374         * Documentation/user/GNUmakefile: dist context-example.eps too.
3375
3376         * lily/key-engraver.cc (create_key): use
3377         explicitKeySignatureVisibility for cancellation too. 
3378
3379         * lily/font-config.cc (init_fontconfig): don't close file if
3380         f==NULL. 
3381
3382 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
3383
3384         * Documentation/topdocs/NEWS.tely: niente and rotation news
3385
3386 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
3387
3388         * lily/include/stencil.hh
3389         * lily/stencil.cc (rotate): new function. Makes it possible
3390         to rotate a stencil around a given offset.
3391
3392         * lily/grob.cc (get_print_stencil): add rotation support
3393
3394         * lily/stencil-interpret.cc (interpret_stencil_expression):
3395         add rotation support
3396
3397         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3398
3399         * scm/define-grob-properties.scm: add 'rotation property
3400
3401         * scm/define-markup-commands.scm: add rotate markup command
3402         
3403         * scm/output-ps.scm: add rotation support in PostScript backend
3404
3405         * scm/output-svg.scm: add rotation support in SVG backend
3406
3407 2006-05-13  Graham Percival  <gpermus@gmail.com>
3408
3409         * Documentation/user/music-glossary.itely: French correction.
3410
3411         * Documentation/user/programming-interface.itely: major
3412         new docs, some reorg, some info from Nicolas.
3413
3414         * Documentation/user/ various: small fixes.
3415
3416 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
3417
3418         * Documentation/user/programming-interface.itely (Markup
3419         programmer interface): Remove duplicate text.
3420
3421 2006-05-12  Graham Percival  <gpermus@gmail.com>
3422
3423         * Documentation/user/context-example.eps: new file.
3424
3425         * Documentation/user/changing-defaults.itely: set up file to
3426         use eps image.
3427
3428         * Documentation/user/programming-interface.itely: changes
3429         from mailist.
3430
3431 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
3432
3433         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3434
3435 2006-05-11  Graham Percival  <gpermus@gmail.com>
3436
3437         * Documentation/user/programming-interface.itely: first round of
3438         editing and merging emails from Nicolas.
3439
3440         * Documentation/user/scheme-tutorial: minor edit.
3441
3442 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
3443
3444         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3445         XML attributes.
3446         (Xml_node.message): use it.
3447
3448         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
3449         oops. Add duration argument.
3450
3451 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
3452
3453         * lily/paper-column-engraver.cc (make_columns):
3454         * scm/define-grobs.scm: Revert my previous change and set the default
3455         in define-grobs.scm instead.
3456
3457 2006-05-09  Graham Percival  <gpermus@gmail.com>
3458         
3459         * Documentation/user/changing-defaults.itely: general editing,
3460         info about \set and \override.
3461
3462         * Documentation/user/tweaking.itely, advanced-notation.itely:
3463         fixes from Dave Luttinen, thanks!
3464
3465 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
3466
3467         * lily/paper-column-engraver.cc (make_columns): By default, a column
3468         needs to be breakable.
3469
3470 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
3471
3472         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3473         Attributes methods
3474         (musicxml_time_to_lily): idem
3475         (musicxml_key_to_lily): idem
3476         (instrument_drumtype_dict): dict for supported drumtypes.
3477         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3478         moments and pending mm rests
3479         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3480         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3481         (musicxml_voice_to_lily_voice): add mode change.
3482         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3483         speed and less memory usage (factor 5 to 10).
3484         (convert): write -defs.ly  and driver file separately so people
3485         can script their own part extraction.
3486
3487         * python/musicxml.py (minidom_demarshal_node): new function:
3488         separate minidom handling.
3489         (lxml_demarshal_node): new function: support lxml.etree too.
3490         (Xml_node.message): new function: verbose error message, with XML
3491         path to offending node.
3492         (Attributes.get_measure_length): sane interface to MusicXML attributes.
3493         (Part_list.generate_id_instrument_dict): new method: collect
3494         instrument names, to be able to set drum_type.
3495         (Part.interpret): handle underfull measures
3496         (Part.interpret): assign instrument names.
3497
3498         * python/musicexp.py (Output_printer.close): new method
3499         (MusicWrapper.print_ly): new class: support other modes,
3500         eg. \drummode
3501         (BarCheck.print_ly): new class. Support bar checks, with comments
3502         and fancy barchecks. 
3503         (NoteEvent.__init__): also set drum_type for drum notes.
3504         (MultiMeasureRest.lisp_expression): dump mm rests.
3505
3506         * lily/paper-column-engraver.cc (stop_translation_timestep): set
3507         line-break-permission if forbidBreak is not set.
3508
3509 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
3510
3511         * scm/define-context-properties.scm:
3512         * scm/define-grob-properties.scm:
3513         * scm/define-grobs.scm:
3514         * scm/define-music-display-methods.scm:
3515         * scm/define-music-properties.scm:
3516         * scm/define-music-types.scm:
3517         * scm/music-functions.scm:
3518         * ly/declarations-init.ly:
3519         * lily/include/constrained-breaking.hh:
3520         * lily/system.cc:
3521         * lily/spaceable-grob.cc:
3522         * lily/simple-spacer.cc:
3523         * lily/paper-score.cc:
3524         * lily/paper-column.cc:
3525         * lily/paper-column-engraver.cc:
3526         * lily/item.cc:
3527         * lily/gourlay-breaking.cc:
3528         * lily/constrained-breaking.cc:
3529         * python/convertrules.py:
3530         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3531         "page-break-penalty" and "line-break-permission".
3532         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3533         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3534
3535         * lily/bar-engraver.cc:
3536         * lily/beam-engraver.cc:
3537         * lily/forbid-break-engraver.cc:
3538         * lily/ligature-engraver.cc:
3539         * lily/paper-column-engraver.cc:
3540         * lily/percent-repeat-engraver.cc:
3541         * lily/score-engraver.cc:
3542         * lily/score-engraver.hh:
3543         * lily/paper-column-engraver.hh:
3544         Inter-engraver communication regarding line breaks is done through context
3545         properties (Score.forbidBreak) instead of function calls.
3546
3547 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
3548
3549         * VERSION (PACKAGE_NAME): release 2.9.4
3550
3551 2006-05-08  Graham Percival  <gpermus@gmail.com>
3552
3553         * Documentation/user/working.itely: proofreading from Dave
3554         Luttinen, thanks.
3555
3556         * Doucmentation/user/README.txt: updated with manual style info.
3557
3558         * Documentation/user/ various: trim linewidth to 78 chars.
3559
3560 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3561
3562         * scm/define-grob-properties.scm (all-internal-grob-properties):
3563         remove chord-tremolo property.
3564
3565         * lily/beam.cc (get_beam_segments): don't use stem position as
3566         base for broken ends.
3567
3568 2006-05-06  Graham Percival  <gpermus@gmail.com>
3569
3570         * Documentation/user/putting.itely: proofreading from Dave
3571         Luttinen, thanks!
3572
3573         * Documentation/user/ various: more reorg and clarifications.
3574
3575 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3576
3577         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3578
3579         * ly/music-functions-init.ly: new function featherDurations
3580
3581         * lily/beam.cc: read grow-direction for feathered beaming.
3582
3583         * Documentation/topdocs/NEWS.tely (Top): typo.
3584
3585 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3586
3587         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3588         tremolo beams.
3589
3590 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
3591         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3592         used by music streams.
3593
3594         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3595         lily/stream-event.cc, lily/stream-event-scheme.cc,
3596         lily/listener.cc, lily/scheme-listener.cc,
3597         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3598         lily/include/stream-event.hh, lily/include/listener.hh,
3599         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3600         Created data structures for music streams.
3601         
3602 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3603
3604         * lily/beam.cc (get_beam_segments): new function. Reorganise the
3605         construction of a beam. 
3606         (print): rewrite. 
3607
3608         * flower/include/std-vector.hh (default_compare): use only one comparison.
3609
3610         * scm/define-markup-commands.scm (note-by-number): remove debug display.
3611         (note-by-number): further attachment fixes.
3612
3613         * scm/lily-library.scm (ordered-cons): new function.
3614         (interval-index): new function
3615
3616         * lily/note-head-scheme.cc (LY_DEFINE): new file.
3617
3618         * lily/note-head.cc (get_stem_attachment): new function.
3619
3620         * scm/define-markup-commands.scm (note-by-number): read 'style
3621         property. 
3622
3623         * input/regression/markup-note.ly: show note-head style option.
3624
3625         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3626         triangle head.
3627
3628 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
3629
3630         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3631
3632         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3633
3634         * lily/include/constrained-breaking.hh: GCC 4 fix.
3635
3636 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
3637
3638         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3639         Replace it with functions get_line_forces and get_line_configuration.
3640         (class Simple_spacer): Make data private.
3641         Rewrite compression algorithm to be faster and simpler.
3642
3643         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3644         * lily/gourlay-breaking.cc (solve):
3645         * lily/constrained_breaking.cc (space_line):
3646         Change it to the new simple-spacer code.
3647
3648         * lily/paper-score.cc (get_paper_systems):
3649         (Paper_score):
3650         (process):
3651         Delay breaking the systems until they are requested.
3652         (find_break_indices):
3653         Use vsize for indices.
3654         (calc_breaking):
3655         Move the "Calculating line breaks" message here.
3656
3657         * lily/system.cc (pre_processing):
3658         Move the "Calculating line breaks" message away from here.
3659         (break_into_pieces):
3660         Allow multiple calls to this function in sequence (with touching-but-
3661         not-overlapping breakpoints).
3662
3663         * lily/constrained-breaking.cc:
3664         Replace most of the get_XXXX functions with get_line_details.
3665         Only calculate the force for each line. Calculate configurations only
3666         for the lines we will actually use.
3667         Replace cols_ with lines_.
3668
3669 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3670
3671         * mf/GNUmakefile (depth): remove FC_FIND.
3672
3673         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3674
3675         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3676
3677         * scm/framework-ps.scm (write-preamble): new function.
3678         (write-preamble): load mac fonts via fondu, even if gs-font-load
3679         is set.
3680
3681 2006-05-03  Werner Lemberg  <wl@gnu.org>
3682
3683         * mf/GNUmakefile (FC_FIND): Fix typo.
3684
3685 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
3686
3687         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3688
3689 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3690
3691         * stepmake/aclocal.m4: run python-config for crosscompiling
3692         flags. 
3693
3694         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3695         -f png for HTML, TEXINFO formats. 
3696
3697         * input/tutorial/lbook-html-test.html: new file.
3698
3699         * lily/include/tie-formatting-problem.hh (class
3700         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3701         [column, direction]. This fixes laissez vibrer ties.
3702  
3703         * flower/include/tuple.hh (struct Tuple2): new file.
3704
3705         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3706         $(FCMATCH), only if $(NCSB_DIR) not set. 
3707
3708         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3709
3710         * config.make.in (DOCUMENTATION): set FCMATCH.  
3711
3712         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3713
3714 2006-05-03  Graham Percival  <gpermus@gmail.com>
3715
3716         * Documentation/user/ various: final round of reorg.
3717
3718         * Documentation/user/instrument-notation.itely: some more
3719         fixes from Eduardo, thanks!
3720
3721 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3722
3723         * VERSION (PACKAGE_NAME): release 2.9.3
3724
3725         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3726
3727         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3728
3729 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3730
3731         * scm/define-grob-properties.scm (all-user-grob-properties):
3732         Correct typo, thanks to Eduardo.
3733
3734 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3735
3736         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3737
3738         * buildscripts/lilypond-words.py (F): indent fix.
3739
3740         * input/regression/tie-arpeggio-collision.ly: new file.
3741
3742         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3743         function: store outlines per column rank.
3744
3745         * lily/include/tie-configuration.hh (class Tie_configuration): add
3746         column_ranks_ to specification and configuration, to distinguish
3747         between ties for different heads in arpegiated chords.
3748
3749         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3750
3751         * *.py: more 4 space indents.
3752
3753         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3754
3755 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3756
3757         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3758
3759 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3760
3761         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3762
3763         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3764
3765         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3766
3767 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3768
3769         * python/convertrules.py (conv): indent 4 for python files.
3770
3771 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3772
3773         * Documentation/user/changing-defaults.itely (Creating contexts):
3774         Clarify \new semantics.
3775
3776 2006-04-28  Graham Percival  <gpermus@gmail.com>
3777
3778         * Documentation/user/ various: major new sections in the
3779         Learning manual, slight reorg elsewhere.
3780
3781 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3782
3783         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3784
3785         * scm/framework-ps.scm (output-framework): remove PageMedia
3786
3787 2006-04-27  Graham Percival  <gpermus@gmail.com>
3788
3789         * Documentation/user/ tweaks.itely, working.itely: new
3790         files, being more advanced "learning manual" chapters.
3791
3792         * Documentation/user/ tutorial, putting, lilypond: reorg.
3793
3794 2006-04-26  Graham Percival  <gpermus@gmail.com>
3795
3796         * input/regression/lyric-combine-polyphonic.ly: fixed test
3797         (no more "can't find context `one'" error).
3798
3799 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3800
3801         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3802
3803         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3804         
3805 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3806
3807         * lily/relocate.cc (read_relocation_dir): new function.
3808
3809 2006-04-26  Graham Percival  <gpermus@gmail.com>
3810
3811         * Documentation/user/instrument-notation.itely: a few more fixes
3812         from Eduardo, thanks!
3813
3814         * Documentation/user/README.txt: new file; contains info on
3815         style that used to be in lilypond.tely.
3816
3817         * Documentation/user/ various: first round of doc reorg.
3818
3819         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3820         graphic; this probably causes problems on some pdf
3821         viewers, notably Adobe Acrobat.
3822
3823 2006-04-24  Graham Percival  <gpermus@gmail.com>
3824
3825         * Documentation/user/instrument-notation.itely: many alterations
3826         to Vocal music, from Eduardo Viera.
3827
3828 2006-04-23  Graham Percival  <gpermus@gmail.com>
3829
3830         * Documentation/user/instrument-notation.itely: fix \new
3831         instead of \context problem.
3832
3833 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3834
3835         * lily/relocate.cc (expand_environment_variables): new function.
3836         (read_line): id.
3837         (read_relocation_file): id.
3838
3839         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3840
3841 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3842
3843         * ly/engraver-init.ly: remove old comments from TabVoice
3844
3845 2006-04-20  Graham Percival  <gpermus@gmail.com>
3846
3847         * Documentation/user/instrument-notation.itely: added Erlend's
3848         latest doc patch, thanks!
3849
3850 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3851
3852         * lily/include/slur.hh:
3853         * lily/slur.cc:
3854         * lily/phrasing-slur-engraver.cc:
3855         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3856         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3857         Slur_engraver:: and putting it in
3858         Slur::auxiliary_acknowledge_extra_object ().
3859
3860         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3861
3862         * lily/note-collision.cc: fix a comment
3863
3864 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3865
3866         * stepmake/bin/add-html-footer.py: fix footer position in
3867         generated html files: before </body> and </html> tags.
3868
3869 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3870
3871         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3872         Earlier successive `make' commands finally compiled ok.
3873
3874         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3875
3876 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3877
3878         * lily/include/stem-tremolo.hh:
3879         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3880         callers.
3881
3882         * lily/lookup.cc:
3883         * lily/include/lookup.hh: add rotated_box ()
3884
3885 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3886
3887         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3888         been generated. Fixes "can't get `--help'" bug after make clean.
3889
3890         * THANKS: alphabetize contributors.
3891
3892 2006-04-17  Graham Percival  <gpermus@gmail.com>
3893
3894         * Documentation/user/instrument-notation.itely: added Erlend's
3895         tabs and banjo doc patch.  Thanks!
3896
3897 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3898
3899         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3900
3901         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3902
3903         * scm/output-lib.scm: add some more predefined string tunings.
3904
3905         * Documentation/user/instrument-notation.itely: and doc them.
3906
3907 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3908
3909         * ly/engraver.ly: Remove obsolete comments.
3910
3911         * ly/gregorian-init.ly: Define default layout block.
3912
3913         * input/puer-fragment.ly: Updated and extended.
3914
3915 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3916
3917         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3918         pdf conversion behaviour.
3919
3920         * flower/file-name.cc (dir_name)
3921         (get_working_directory): Move from relocate.cc.
3922
3923         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3924         
3925         * lily/relocate.cc: Encapsulate sys/stat.h in
3926         HAVE_STAT_H.
3927
3928 2006-04-14  Graham Percival  <gpermus@gmail.com>
3929
3930         * Documentation/user/ various: small updates from Cameron
3931         and Juergen, thanks!
3932
3933         * Documentation/user/ various: small updates of my own.
3934
3935         * THANKS: 2.7 -> 2.8.
3936
3937 2006-04-11  Graham Percival  <gpermus@gmail.com>
3938
3939         * scm/define-context-properties.scm: typo.
3940
3941         * Documentation/user/ : many more small updates.
3942
3943 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3944
3945         * scm/define-music-types.scm: disposed "docme".
3946
3947 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3948
3949         * lily/hairpin.cc: make niente circles a bit smaller.
3950
3951 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3952
3953         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3954         get-pfa and get-*-fonts targets.
3955
3956 2006-04-10  Graham Percival  <gpermus@gmail.com>
3957
3958         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3959         music-glossary, programming-interface: more minor fixes
3960         from mailist.
3961
3962         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3963
3964         * scm/define-context-properties.scm: another old \property update.
3965         This time tested for compiling!
3966
3967 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3968
3969         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3970
3971 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3972
3973         * scm/define-context-properties.scm (all-user-translation-properties): 
3974         * Documentation/user/global.itely (Page formatting): Compile fix.
3975
3976 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3977
3978         * Documentation/user/advanced-notation.itely (Polymetric
3979         notation): Update the example to use the "+" symbol and add link
3980         to input/test/compound-time.ly.
3981
3982 2006-04-08  Graham Percival  <gpermus@gmail.com>
3983
3984         * scm/define-grob-properties.scm: clarify docs for #'direction.
3985
3986         * scm/define-context-properties.scm: update old \property override.
3987
3988         * Documentation/user/ advanced-notation, global, lilypond-book:
3989         more minor doc updates.
3990
3991 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3992
3993         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3994
3995         * scm/backend-library.scm (search-gs): oops.
3996
3997 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3998
3999         * scripts/lilypond-book.py (output): use base, not filename for href.
4000
4001         * scm/backend-library.scm: only look for gs.
4002
4003         * scripts/lilypond-book.py (output): fix printfilename.
4004
4005         * lily/parser.yy (music_function_musicless_prefix): fold together
4006         definitions of signature (SCM*) (Music|post_event|chord_body_element)
4007
4008         * lily/slur.cc (print): only set font-size if not set yet.
4009
4010         * lily/slur-configuration.cc (add_score): improved layout of debug
4011         scoring output.
4012
4013 2006-04-05  David Feuer  <David.Feuer@gmail.com>
4014
4015         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4016         (draw_circle): Hopefully fixed regression.
4017         Improved documentation for several procedures.
4018         
4019 2006-03-04  Werner Lemberg  <wl@gnu.org>
4020
4021         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4022
4023 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
4024
4025         * scripts/musicxml2ly.py (bindir): add dynamic
4026         relocation. 
4027
4028 2006-04-04  Graham Percival  <gpermus@gmail.com>
4029
4030         * Documentation/user/ basic-notation, advanced-notation, putting,
4031         instrument-notation, invoking, lilypond, THANKS: another ream of small
4032         fixes from the Doc Helpers.
4033
4034 2006-04-03  David Feuer  <David.Feuer@gmail.com>
4035
4036         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4037
4038         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4039
4040         * Cleaned up interfaces between PostScript and Scheme, and moved
4041         computations from PostScript to Scheme:
4042
4043         * music-drawing-routines.ps
4044         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
4045         with stroke_and_fill throughout.
4046         (euclidean_length, print_letter, draw_box): Deleted unused
4047         procedures.  If someone needs draw_box, implement it using
4048         draw_round_box; don't duplicate code.
4049         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4050         Refactored/cleaned up interfaces.
4051         (mark_URI): Moved.
4052
4053         * output-ps.scm: reordered arguments to PostScript functions to
4054         match new interfaces
4055         (glyph-string): Rewrote glyph-string.
4056         (grob-cause): Replaced string-append with format.
4057         (repeat-slash): Rewrote to do computation here.
4058         (round-filled-box): Rewrote to do computation here.
4059
4060 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
4061
4062         * stepmake/stepmake/generic-targets.make: add cvs-clean target
4063
4064         * stepmake/stepmake/toplevel- targets.make: print help info about
4065         cvs-clean
4066
4067 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
4068
4069         * input/regression/hairpin-circled.ly: new file
4070
4071 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
4072
4073         * lily/hairpin.cc (print): add support for circled tip
4074
4075         * scm/define-grob-properties.scm: add circled-tip parameter
4076
4077         * scm/define-grobs.scm: init circled-tip to false
4078         
4079 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
4080
4081         * scm/music-functions.scm (quote-substitute): set
4082         iterators-ctor. 
4083
4084 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
4085
4086         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4087         BSTINPUTS. 
4088
4089         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4090
4091         * scm/output-ps.scm (glyph-string): revert cid selectfont.
4092
4093 2006-03-31  David Feuer  <david.feuer@gmail.com>
4094         
4095         * scm/framework-ps.scm:
4096         
4097         * scm/output-ps.scm: glyph-string now produces smaller, more
4098         readable, and probably faster PostScript.  Several findfont
4099         scalefont setfont instances changed to selectfont
4100         Hacked-up string-appends changed to formats.
4101
4102         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4103         
4104 2006-03-30  Graham Percival  <gpermus@gmail.com>
4105
4106         * scm/lily-library.scm: make "no version" warning message more polite.
4107
4108         * lily/music.cc: add double quotes to failed octave check.
4109
4110         * Documentation/user/ advanced-notation, changing-defaults,
4111         instrument-notation, invoking, music-glossary: whole bunch of minor
4112         fixes from mailist.
4113
4114 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
4115
4116         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4117         $(buildscriptdir) iso. depth.
4118
4119         * VERSION (PACKAGE_NAME): release 2.9.1
4120
4121 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4122
4123         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4124
4125         * VERSION (PATCH_LEVEL): bump version number.
4126
4127         * flower/include/guile-compatibility.hh (scm_from_uint32): add
4128         scm_from_uint32 ()
4129
4130         * lily/pango-font.cc (pango_item_string_stencil): use
4131         scm_from_uint32 ()
4132
4133         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4134         $(outdir)/emmentaler-%.svg): remove canary.
4135
4136         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4137         glyphnames if we have a ttf font.
4138
4139 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
4140
4141         * Documentation/user/advanced-notation.itely (Font selection):
4142         Corrected reference to the font-family-override.ly example.
4143
4144 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
4145         
4146         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4147         stem-tremolo object in the stem (or else the stem might not be
4148         long enough).
4149
4150 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4151
4152         * lily/ttf.cc (print_trailer): only print existing glyphs.
4153
4154 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
4155
4156         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4157         position the tremolo based on the position of the notehead.
4158
4159         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4160         notes and update the texidoc line with the new positioning rules.
4161         
4162 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4163
4164         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4165
4166         * scripts/lilypond-book.py (Module): set default for linewidth if
4167         preamble not found.
4168
4169 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4170
4171         * VERSION (PACKAGE_NAME): release 2.9.0.
4172
4173         * input/regression/stem-tremolo-position.ly: new file.
4174
4175         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4176
4177 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
4178
4179         * lily/stem-tremolo.cc (print): position
4180         the tremolo depending only on the end of the stem
4181         and not on the notehead
4182         (raw_stencil): center, on the middle staff line, the
4183         flag that is closest to the end of the stem (previously
4184         the bottom flag)
4185         (calc_width): add this callback to shorten a tremolo when
4186         it is beamed or it is stemup with a flag
4187         (style): add this callback to make a tremolo rectangular when
4188         it is beamed or it is stemup with a flag
4189         (rotated_box): this is like Lookup::beam but makes a rotated
4190         rectangle instead of a parallelogram
4191
4192         * lily/stem.cc (calc_stem_info): make sure the stem
4193         is long enough to fit the tremolo
4194         (calc-length): reduce the length of tremolo stems since the
4195         tremolo code is now capable of better positioning
4196
4197         * scm/define-grobs.scm: make calc_width the default beam-width
4198         callback for stem-tremolo and add the style callback
4199                 
4200 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4201
4202         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4203         case. 
4204
4205 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4206
4207         * lily/ttf.cc (make_index_to_charcode_map): restore old
4208         cmap. 
4209
4210 2006-03-28  Werner Lemberg  <wl@gnu.org>
4211
4212         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4213
4214 2006-03-28  Graham Percival  <gpermus@gmail.com>
4215
4216         * THANKS: update for 2.9, add section for Documentation helpers.
4217
4218         * Documentation/topdocs/NEWS.tely: compile fix.
4219
4220         * Documentation/user/ basic-notation, global, advanced-notation,
4221         examples.itely: minor fixes from mailist.
4222
4223 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
4224
4225         * mf/feta-bolletjes.mf: match width of solfa notes with normal
4226         note heads. 
4227
4228         * lily/ttf.cc (print_trailer): use it.
4229
4230         * lily/pango-font.cc (get_unicode_name): new function.
4231
4232         * lily/ttf.cc (make_index_to_charcode_map): move function from
4233         open-type-font.cc
4234         (print_trailer): substitute uniXXXX name if applicable. 
4235
4236         * lily/pango-font.cc (get_index_to_charcode_map): new function.
4237         (pango_item_string_stencil): use it to generate uniXXXX names.
4238
4239         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4240         note heads, for uniform widths in shape note output.
4241         (overdone_heads): hmm. remove them again.
4242
4243         * scripts/lilypond-book.py (output): add links to filenames.
4244
4245         * Documentation/topdocs/INSTALL.texi (Top): update versions.
4246
4247         * lily/note-collision.cc (get_clash_groups): only consider when
4248         Note_column::dir <> CENTER. 
4249
4250         * scripts/lilypond-book.py (get_option_parser): init output_name
4251         to ''. 
4252
4253 2006-03-24  Graham Percival  <gpermus@gmail.com>
4254
4255         * Documentation/topdocs/NEWS.tely: add @end itemize
4256
4257         * Documentation/user/ global, advanced-notation: minor
4258         stuff from mailist.
4259
4260 2006-03-23  Graham Percival  <gpermus@gmail.com>
4261
4262         * Documentation/user/ lilypond.tely, music-glossary,
4263         preface: housekeeping; 2005->2006, remove "notes for 2.6"
4264
4265 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
4266
4267         * mf/GNUmakefile: don't install .enc files.
4268
4269         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4270
4271         * VERSION (PATCH_LEVEL): bump to 2.9.0
4272
4273 2006-03-22  Graham Percival  <gpermus@gmail.com>
4274
4275         * Documentation/user/advanced-notation.itely: minor fixes
4276         from mailist.
4277
4278 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
4279
4280         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4281
4282         * branch lilypond_2_8
4283
4284 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
4285
4286         * scripts/lilypond-book.py (samefile): new function, for windoze
4287         compatibility.
4288
4289 2006-03-21  Graham Percival  <gpermus@gmail.com>
4290
4291         * ly/engraver-init.ly: add info about StaffGroup.
4292
4293 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
4294
4295         * input/regression/stem-direction-context.ly: idem.
4296
4297         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4298
4299         * THANKS: add Mats.
4300
4301         * input/regression/page-layout-twopass.ly: comment out \markup so
4302         tweak-file is left.
4303
4304         * lily/instrument-name-engraver.cc (finalize): add to instrument
4305         name global System. This also fixes chopped instrument names, but
4306         doesn't crash when there are slurs/beams.
4307
4308         * lily/slur-configuration.cc (add_score): disallow negative slur
4309         scores.
4310         
4311 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4312
4313         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4314
4315         * lily/instrument-name-engraver.cc (process_music): kludge: add
4316         InstrumentName spanner to axis group of left bound. Fixes chopped
4317         off instrument names in EPS images.
4318
4319         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4320
4321         * scripts/abc2ly.py (option_parser): update to 2.7.40
4322
4323 2006-03-20  Graham Percival  <gpermus@gmail.com>
4324
4325         * THANKS: move small doc contributors to SUGGESTIONS.
4326
4327         * Documentation/user/ basic-notation, advanced-notation,
4328         global: small changes from mailist.
4329
4330 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4331
4332         * Documentation/user/advanced-notation.itely (Text marks): update
4333         for new rehearsalMarkAlignSymbol convention.
4334
4335         * VERSION (PATCH_LEVEL): bump version.
4336
4337         * input/test/instrument-name-align.ly: new file.
4338
4339         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4340
4341         * input/test/instrument-name-align.ly: new file. Document how to
4342         align instrument names.
4343
4344         * lily/mark-engraver.cc: remove properties.
4345
4346         * scm/define-context-properties.scm
4347         (all-user-translation-properties): remove align symbol properties
4348         for barnumber/reh. mark.
4349
4350         * lily/break-align-interface.cc (self_align_callback): new
4351         interface, new function. Look at complete alignment. This handles
4352         tunable break alignments in case break-align-symbols are missing.
4353
4354         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4355
4356         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4357
4358         * python/convertrules.py (conv): mark/bar number alignment rule.
4359
4360         * lily/break-align-interface.cc (calc_positioning_done): also
4361         store offset from last visible break-alignment to its
4362         neighbor. This makes alignment on non-visible objects more reliable.
4363
4364         * po/lilypond.pot (Module): ran po-replace.
4365
4366         * input/regression/tie-single-manual.ly (Module): new file.
4367
4368         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4369         look at has_manual_position_.
4370         (from_ties): set has_manual_position_ if tie has staff-position set.
4371
4372         * lily/tuplet-bracket.cc (calc_positions): idem.
4373
4374         * lily/tuplet-number.cc (print): don't print tupletnumber if it
4375         doesn't span time.
4376
4377 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4378
4379         * scm/define-markup-commands.scm (smallCaps): new markup command
4380         for turning a text to small caps using smaller font size and upper
4381         casing.
4382
4383 2006-03-17  Graham Percival  <gpermus@gmail.com>
4384
4385         * Documentation/user/ examples, instrument-notation,
4386         advnaced-notation: minor fixes from mailist.
4387
4388 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4389
4390         * Documentation/user/tutorial.itely (First steps): change example
4391         to verbatim.  
4392
4393 2006-03-17  Graham Percival  <gpermus@gmail.com>
4394
4395         * Documentation/user/ examples, advanced: minor changes from mailist.
4396
4397         * THANKS: add Geoff Horton, for documentation stuff.
4398
4399 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4400
4401         * python/lilylib.py (system): revert have_select kludge.
4402
4403         * Documentation/user/tutorial.itely (Commenting input files):
4404         update version numbers in doc. 
4405
4406         * scm/define-grob-interfaces.scm (multi-measure-interface): add
4407         bound-padding to multi-measure-interface
4408
4409 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4410
4411         * input/test/engraver-example.ily: update version number.
4412
4413         * VERSION (PACKAGE_NAME): release 2.7.39
4414
4415         * lily/note-spacing.cc (get_spacing): heighten threshold where
4416         accidentals/arpeggios influence previous spacing fully.
4417
4418         * lily/rest.cc (y_offset_callback): only use direction if
4419         staff-position wasn't set before.
4420
4421         * lily/bar-number-engraver.cc: add support for
4422         barNumberAlignSymbol. 
4423         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4424
4425         * lily/pointer-group-interface.cc (set_ordered): new function. 
4426         (add_unordered_grob): new function.
4427
4428         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4429         to ordered, unless the opposite has been proved.  This fixes
4430         random reordering of large object groups across linebreaks,
4431         eg. beams.
4432
4433         * lily/main.cc (do_chroot_jail): printf format fix.
4434
4435         * lily/tie-formatting-problem.cc (generate_configuration):
4436         multiply y-shift for dot with direction.
4437  
4438         * scm/define-markup-commands.scm (note-by-number): put (magstep
4439         size) in y-attach too.
4440
4441         * Documentation/topdocs/NEWS.tely (Top): show override.
4442
4443         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4444         direction for stems.
4445         
4446 2006-03-15  Graham Percival  <gpermus@gmail.com>
4447
4448         * Documentation/user/ changing-defaults, global: minor
4449         fixes from mailist.
4450
4451 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4452
4453         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4454
4455         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4456         breakable items after uniformly stretched notes.
4457
4458         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4459         outline with outer edge of note heads. This prevents infinity
4460         problems with tied whole notes.
4461
4462         * scripts/lilypond-book.py (do_file): use os.popen
4463
4464         * python/convertrules.py (conv): add rule for Stem #'beamed-*
4465
4466 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
4467
4468         * Documentation/user/invoking.itely: Add ragged-right to bug report
4469         guidelines.
4470
4471 2006-03-14  Graham Percival  <gpermus@gmail.com>
4472
4473         * Documentation/user/global.itely: small fix from mailist.
4474
4475 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
4476
4477         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4478         file descriptor returned by tempfile.mkstemp() when writing
4479         to tmpfile and closing it. Solves problem with unlink(tmpfile)
4480         on mingw.
4481
4482 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4483
4484         * po/fi.po: newline bugfix.
4485
4486 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4487
4488         * scm/paper.scm (paper-alist): Rounding fixes.
4489
4490 2006-03-13  Graham Percival  <gpermus@gmail.com>
4491
4492         * Documentation/user/ changing-defaults, instrument-notation,
4493         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
4494
4495 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
4496
4497         * po/fi.po: update.
4498
4499 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4500
4501         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4502         mailto: to http:// 
4503
4504         * python/lilylib.py (print_environment): move ps_page_count to
4505         lilypond-book.py
4506
4507 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4508
4509         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4510
4511         * scm/framework-ps.scm (embed-document): new function. Use to
4512         embed PFA files.
4513
4514         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4515
4516 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
4517
4518         * Documentation/user/instrument-notation.itely (Setting simple
4519         songs): Added \book{...} around the full example, so the separate
4520         markups are included in the printed example. 
4521
4522 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4523
4524         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4525         tmphandle.
4526
4527         * python/lilylib.py (system): rewrite system() using
4528         subprocess. Remove >& redirection trickery.
4529
4530 2006-03-11  Graham Percival  <gpermus@gmail.com>
4531
4532         * Documentation/user/ changing-defaults, global, scheme-tutorial,
4533         notation-appendices.itely: minor fixes from mailist.
4534
4535 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4536
4537         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4538         unsplit man also needs images.
4539
4540         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4541
4542         * VERSION (PACKAGE_NAME): 2.7.38 released.
4543
4544 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4545
4546         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4547         log in output dir.
4548
4549 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
4550
4551         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4552         respects the Score.skipTypesetting property.
4553         
4554 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4555
4556         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4557         Prolog. No %%EOF after CFF file.
4558
4559 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
4560         
4561         * lily/constrained-breaking.cc (get_max_systems): used to return a
4562         much too big value
4563         (combine_demerits): use pointers to reduce copying data
4564         (calc_subproblem): idem
4565         (get_page_penalty): add page turn penalties
4566         
4567 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4568
4569         * Documentation/user/invoking.itely (Invoking lilypond): better
4570         explanation of -e usage.
4571
4572         * lily/main.cc (main_with_guile): don't append to
4573         init_scheme_code_string
4574
4575         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4576
4577         * Documentation/user/invoking.itely: add note about MacOS X scripts.
4578
4579         * scripts/convert-ly.py (do_options): don't print help for
4580         --show-rules rule.
4581
4582         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4583         @code and @example. Update from texinfo.tex from CVS.
4584
4585 2006-03-08  Graham Percival  <gpermus@gmail.com>
4586
4587         * Documentation/user/scheme-tutorial.itely: clarifies distances
4588         measured in staff-spaces.
4589
4590 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4591
4592         * lily/slur.cc (outside_slur_callback): only calculate offsets if
4593         consider[k] is true.
4594
4595         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4596
4597         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4598         consider columns that have originals.  Unifies spacing for mm
4599         rests around line breaks.
4600
4601         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4602         (set_text_rods): idem.
4603         (calculate_spacing_rods): new function: share code between
4604         set_text_rods and set_spacing_rods.
4605         (set_text_rods): take extents of bounds into account.  
4606
4607 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4608
4609         * Documentation/user/basic-notation.itely (Writing music in
4610         parallel): don't use relative.
4611
4612 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4613
4614         * ly/music-functions-init.ly (Module): add shiftDurations
4615
4616         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4617
4618         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
4619
4620         * ly/engraver-init.ly: init vocalName to nil.
4621
4622 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
4623
4624         * scm/music-functions.scm (music->make-music): bugfix,
4625         KeyChangeEvents are now handled correctly.
4626
4627         * scripts/lilypond-book.py: Add --debug option.
4628
4629 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4630
4631         * python/lilylib.py: add tempfile.
4632
4633 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4634
4635         * VERSION (PACKAGE_NAME): release 2.7.37
4636
4637         * python/lilylib.py (ps_page_count): remove make_ps_images().
4638         (ps_page_count): remove mkdir_p
4639         (system): remove cleanup_temp.
4640         (exit): remove lilypond_version_(check)
4641         (error_log): remove pseudo_filter_p
4642         remove read_pipe
4643         remove cp_to_dir
4644         remove identify
4645
4646         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4647         use __main__
4648
4649         * lily/accidental-engraver.cc (make_standard_accidental): only add
4650         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4651
4652         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4653         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4654         Make incompatibilities.
4655
4656         * scm/output-ps.scm (grob-cause): replace backslashes by /
4657         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4658
4659 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4660
4661         * cygwin/GNUmakefile: Install fixes.
4662
4663         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4664
4665         * lily/note-head.cc (head::get_balltype): Compile fix.
4666
4667         * flower/file-name.cc (dos_to_posix): Flower string fix.
4668
4669 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4670
4671         * python/lilylib.py: pychecker cleanups.
4672
4673         * scripts/lilypond-book.py
4674         (Lilypond_snippet.output_print_filename): pychecker cleanups
4675
4676         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4677
4678         * python/lilylib.py (underscore): remove identify() , warranty()
4679
4680         * ps/music-drawing-routines.ps: change Border routine for GSView
4681         compatibility.
4682
4683         * lily/stem.cc (height): use quantize-positions.  This triggers
4684         set_stem_lengths, so scripts on beamed stems are handled correctly.
4685
4686         * lily/side-position-interface.cc (aligned_side): check if edges
4687         of script are inside staff. Fixes accent of edge of the staff.
4688
4689         * input/regression/staccato-pos.ly: more examples.
4690
4691         * stepmake/aclocal.m4 (depth): fix bashism.
4692
4693         * lily/lyric-combine-music-iterator.cc: move from
4694         new-lyric-combine-iterator.cc
4695         (process): add pending_grace_lyric_ member to delay lyrics on
4696         grace notes.
4697
4698         * lily/system-start-text.cc (print): suicide if we don't have any
4699         elements. Fixes hara kiri'd instrument names.
4700
4701         * scripts/mup2ly.py (Module): remove.
4702
4703 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4704
4705         * Documentation/user/global.itely (A single music expression):
4706         close @lilypond properly
4707
4708         * lily/volta-bracket.cc (modify_edge_height): change from
4709         after_line_breaking_callback. Suicide last bracket if appropriate.
4710  
4711         * python/lilylib.py: strip getopt support
4712
4713         * scripts/etf2ly.py (do_options): use optparse
4714
4715         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4716
4717         * scripts/abc2ly.py (voices): use optparse.
4718
4719         * stepmake/stepmake/generic-vars.make: new function absdir.
4720
4721         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4722
4723         * scripts/lilypond-book.py (find_file): use global_options for
4724         include path
4725
4726         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4727         entering C code.
4728
4729 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4730
4731         * python/lilylib.py (get_global_option): ughness for extracting
4732         global options from lilylib.
4733         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4734
4735         * scripts/lilypond-book.py (get_option_parser): use optparse for
4736         option handling.  Put options in global_options variable.
4737
4738 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4739
4740         * Documentation/index.html.in: clarify.
4741
4742 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4743
4744         * scm/layout-page-layout.scm (write-page-breaks): add a
4745         music-system-heights property to the page layout output.
4746
4747         * scm/page.scm (make-page-stencil): take footer into account when
4748         computing the 'space-left page property
4749         (annotate-space-left): take footer into account when annonating
4750         space left.
4751
4752 2006-02-28  Graham Percival  <gpermus@gmail.com>
4753
4754         * Documentation/user/ advanced-notation, global: more (final)
4755         docs for music expressions, removed special fermatas.
4756
4757 2006-02-27  Graham Percival  <gpermus@gmail.com>
4758
4759         * Documentation/user/ basic-notation, global: minor changes
4760         from mailist.
4761
4762 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4763
4764         * scm/framework-ps.scm:         
4765         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4766         layer for inf? and nan? from framework-ps to lily-library.
4767
4768 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4769
4770         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4771         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4772
4773         * buildscripts/substitute-encoding.py (Module): remove file.
4774
4775         * mf/GNUmakefile: more PFA strippage.
4776
4777         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4778
4779         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4780         generation
4781
4782         * scm/framework-ps.scm: remove font name munging.
4783
4784         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4785
4786 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4787
4788         * scm/markup.scm (define-markup-command): change
4789         def-markup-command to define-markup-command
4790
4791         * scm/music-functions.scm (define-music-function): change
4792         def-music-function to define-music-function.
4793
4794         * python/convertrules.py (conv): rules for def-music-function
4795         and def-markup-commands
4796
4797         * Documentation/user/programming-interface.itely,
4798         input/no-notation/display-lily-tests.ly,
4799         input/regression/lily-in-scheme.ly,
4800         input/regression/markup-user.ly,
4801         input/regression/music-function.ly, input/regression/tie-chord.ly,
4802         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4803         ly/gregorian-init.ly: use new macro names (define-music-function,
4804         define-markup-command).
4805
4806 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4807
4808         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4809         (output): add comments to lp-book latex output.
4810
4811         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4812         address.
4813
4814 2006-02-23  Graham Percival  <gpermus@gmail.com>
4815
4816         * Documentation/user/ tutorial, global: minor changes.
4817
4818 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4819
4820         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4821         blocks (for make 3.80)
4822
4823         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4824         \notemode so that user should not have to explicitely type it.
4825
4826         * scm/define-music-display-methods.scm: various
4827         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4828         constructs)
4829
4830         * input/no-notation/display-lily-tests.ly: new tests for
4831         \applyOutput and \applyContext
4832
4833 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4834
4835         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4836         changed it slightly so that the number of systems returned by
4837         solve () will be the same as the last value passed to resize
4838         (). I've also added more documentation, removed casts, fixed style
4839         problems and put in some recovery if constraints aren't satisfied."
4840
4841 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4842
4843         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4844         for emacs < 22 compatibility.
4845         (count-rexp): Use it.
4846         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4847         substring juggling (Milan Zamazal).
4848
4849 2006-02-23  Graham Percival  <gpermus@gmail.com>
4850
4851         * Documentation/user/ basic-notation, advanced-notation,
4852         global.itely, invoking.itely, tutorial,itely:
4853         minor fixes from mailist.
4854
4855         * scm/define-markup-commands.scm: improve docs of \filled-box.
4856
4857 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4858
4859         * Documentation/index.html.in: changes concern the previous release.
4860
4861         * input/regression/+.ly: cultivate typographical terminology.
4862
4863 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4864
4865         * scm/define-grob-interfaces.scm (parentheses-interface): add
4866         padding to parentheses-interface.
4867
4868         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4869         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4870
4871         * VERSION (PATCH_LEVEL): release 2.7.36
4872
4873         * lily/slur.cc: add avoid-slur (ugh.)
4874         
4875         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4876         intersection gets smaller. This fixes slurs over extreme points.
4877
4878         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4879         stems with neutral-direction set.
4880
4881         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4882
4883         * lily/open-type-font.cc (load_table): format error.
4884
4885         * lily/change-iterator.cc (process): format fix.
4886
4887         * flower/include/international.hh (_f): idem.
4888
4889         * flower/include/std-string.hh: add format printf attribute.
4890
4891         * scm/define-grobs.scm (all-grob-descriptions): height of all
4892         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4893
4894         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4895         ambitus lines.
4896
4897         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4898
4899 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4900
4901         * input/regression/: upgraded syntax for some files.
4902
4903         * THANKS: Add bughunters.
4904
4905 2006-02-22  Graham Percival  <gpermus@gmail.com>
4906
4907         * Documentation/user/ invoking.itely, advanced-notation.itely,
4908         global.itely: long-awaited "let's make chapter 10 not suck"
4909         update.  Rearrange chapter 10; now called "global issues",
4910         addresses file structure, etc.  Some info from other files
4911         moved into global.itely.
4912
4913 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4914
4915         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4916         catch trill-span-event notes.
4917
4918         * Documentation/user/examples.itely (Ancient notation templates): typo.
4919         (Jazz combo): typo.
4920
4921         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4922
4923         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4924
4925         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4926
4927         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4928
4929         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4930         froum Laissez_vibrer_engraver.
4931
4932         * ly/declarations-init.ly (repeatTie): add \repeatTie
4933
4934         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4935
4936         * scm/define-grob-properties.scm (all-user-grob-properties): add
4937         head-direction property.
4938
4939         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4940         from_lv_ties. Take head direction argument.
4941
4942         * lily/semi-tie-column.cc: rename from
4943         laissez-vibrer-tie-column.cc. Rename class too.
4944
4945         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4946         class too.
4947
4948         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4949
4950         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4951         0 case.
4952         (find_breaks): idem.
4953
4954 2006-02-21  Graham Percival  <gpermus@gmail.com>
4955
4956         * Documentation/user/advanced-notation.itely: fixed make-moment]
4957         example.
4958
4959         * Documentation/user/basic-notation.itely: more clarification to
4960         transpose.
4961
4962 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4963
4964         * lily/include/constrained-breaking.hh (class
4965         Constrained_breaking): new file.
4966
4967         * lily/constrained-breaking.cc (resize): new file.
4968
4969         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4970
4971         * Documentation/user/advanced-notation.itely (Clusters): insert
4972         end ignore too.
4973
4974         * lily/tie-column.cc (calc_positioning_done): support for
4975         tie-score debugging
4976
4977         * lily/tie-formatting-problem.cc
4978         (generate_extremal_tie_variations): factor out.
4979         (score_ties_configuration): annotate all tie 
4980         (print_ties_configuration): new routine.
4981         (generate_configuration): nudge extremal ties outside of the head
4982         Y extents.
4983         (score_ties_configuration): oops. convert to staff-space before
4984         determining position symmetry.
4985
4986 2006-02-20  Graham Percival  <gpermus@gmail.com>
4987
4988         * Documentation/user/*-notation.itely: misc minor editing,
4989         shifting doc sections around.
4990
4991         * Documentation/user/*-notation-itely, global.itely,
4992         changing-defaults.itely: added new stuff from NEWS.
4993
4994 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4995
4996         * po/fi.po: update.
4997
4998 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4999
5000         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5001         lilypond --verbose for lp-book.
5002
5003         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5004         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5005
5006         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5007         $(buildscript-dir) iso. absolute depth.
5008
5009         * buildscripts/genicon.py (dir): thinko.
5010
5011         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5012
5013 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
5014
5015         * scm/output-lib.scm: swap darkcyan/darkyellow
5016
5017         * THANKS: Add bughunters.
5018
5019 2006-02-19  Graham Percival  <gpermus@gmail.com>
5020
5021         * Documentation/user/programming-interfaces.itely: fixed example.
5022
5023         * Documentation/user/instrument-notation.itely: fix @{ @}.
5024
5025         * scm/script.scm: add avoid-slur for \open.
5026
5027 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5028
5029         * lily/tie-formatting-problem.cc (score_configuration): use
5030         sliding score for min-length. 
5031
5032         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5033         spaghetti for icons.
5034
5035         * buildscripts/genicon.py (program_name): new file.
5036
5037         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5038         in outline too.  
5039         (generate_configuration): for small ties, also look for collisions
5040         at Y + DIR*h + DELTA_Y.
5041         (get_variations): consider variation for dot positions too.
5042
5043         * lily/side-position-interface.cc (aligned_side): take abs for
5044         quantized rounded position. Fixes tenuto below staff.
5045
5046         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5047         markers when necessary.
5048
5049         * lily/program-option.cc (internal_set_option): add
5050         strict_infinity_checking option.
5051
5052         * scm/output-lib.scm (cyan): swap yellow and cyan.
5053
5054 2006-02-19  Graham Percival  <gpermus@gmail.com>
5055
5056         * darwin.patch: trivial linenumber update.
5057
5058         * Documentation/user/ {various}: `\context foo = named' changed
5059         to `\new foo = "name"' in docs.
5060
5061 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5062
5063         * scm/stencil.scm (annotate-y-interval): use it.
5064
5065         * scm/lily-library.scm (interval-sane?): new function.
5066
5067         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5068         tfm_checksum stuff.
5069
5070         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5071         common refpoint.
5072
5073         * flower/include/std-vector.hh (iterof): add iterof macro.
5074
5075         * lily/enclosing-bracket.cc (width): new function.
5076
5077         * lily/align-interface.cc (align_elements_to_extents): reinstate
5078         warning.
5079
5080 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
5081
5082         * Documentation/index.html.in: fix spelling: thankyous.
5083
5084 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5085
5086         * lily/lyric-hyphen.cc: typo.
5087
5088 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5089
5090         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5091         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5092         builds don't work. 
5093
5094         * VERSION: release 2.7.35
5095
5096         * lily/beam.cc (get_default_dir): oops. Take abs () for
5097         extremes[DOWN].
5098         (get_default_dir): use extreme position criterion only in absence
5099         of forced stem directions.
5100
5101         * VERSION (PATCH_LEVEL): bump VERSION.
5102
5103         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5104         dependencies. Necessary for -jX builds.  
5105
5106 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5107
5108         * lily/relocate.cc (setup_paths): Yet another const fix.
5109
5110 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5111
5112         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5113
5114         * lily/relocate.cc (setup_paths): oops.
5115
5116 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
5117
5118         * Documentation/index.html.in: order links: html before PDF.
5119
5120 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5121
5122         * lily/tie-column-format.cc (Module): remove.
5123
5124         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5125
5126         * lily/text-spanner.cc (print): idem.
5127
5128         * lily/dynamic-text-spanner.cc (print): only print line if longer
5129         than dash-period.
5130
5131         * lily/auto-change-iterator.cc (change_to): formatting.
5132
5133         * lily/beam.cc (get_default_dir): take extreme note head as input
5134         for stem direction.
5135
5136         * lily/tie.cc (get_default_dir): only look directions for visible
5137         stems. 
5138
5139         * lily/side-position-interface.cc (aligned_side): oops. Don't
5140         mutiply with direction. This fixes quantized (staccato, tenuto)
5141         scripts below notes.
5142
5143         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5144         direction. Fixes c-lyrics-center-align.ly
5145
5146 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5147
5148         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5149         constructor.
5150
5151         * lily/std-string.cc:
5152         * lily/include/std-vector.hh (split_string): Move and rename from
5153         lily/include/misc.hh, lily/misc.cc.  Update callers.
5154
5155 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5156
5157         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5158
5159 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5160
5161         * flower/test-file.cc: New file.
5162
5163         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5164         libraries.
5165
5166         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5167
5168 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5169
5170         * flower/include/file-storage.hh: remove file.
5171
5172         * lily/include/midi-item.hh (class Midi_track): idem.
5173
5174         * lily/include/source.hh (class Sources): idem.
5175
5176         * lily/include/performance.hh (class Performance): use vector
5177         iso. Cons<>
5178
5179         * flower/include/cons.hh (class Cons): remove file.
5180
5181         * flower/include/flower-proto.hh: remove template cruft.
5182
5183         * lily/include/font-metric.hh: use size_t not vsize for indices.
5184
5185         * flower/include/flower-proto.hh (Module): remove std-vector.hh
5186         from proto.
5187
5188         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5189
5190         * lily/include/paper-book.hh (class Paper_book):
5191         make get_system_specs() public.
5192
5193         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5194         the force=10000 case if we don't have a current-best. 
5195
5196         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5197         vsize 
5198
5199         * flower/include/flower-proto.hh: remove outdated templates.
5200
5201         * scm/page.scm: use annotate-spacing
5202
5203 2006-02-15  Graham Percival  <gpermus@gmail.com>
5204
5205         * scm/translation-functions.scm: circle patch from Erlend, thanks!
5206
5207         * THANKS: moved Erlend Aasland to contributors.
5208
5209 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5210
5211         * config.hh.in: remove HAVE_PANGO_16
5212
5213         * lily/tuplet-bracket.cc (calc_positions): multiply with
5214         staff-space for beam case. This fixes tuplets+beams on scaled
5215         staves.
5216
5217         * config.hh.in: remove all Kpathsea related defines.
5218
5219         * lily/dot-column.cc (side_position): reach stem via dots->
5220         head->stem. Inspect all stems for dot collisions. 
5221
5222         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5223         stem handling.
5224
5225         * lily/bar-number-engraver.cc (process_music): document function
5226         of whichBar.
5227
5228         * lily/score.cc (default_rendering): add pscore, not systems
5229         themselves.
5230
5231         * lily/paper-book.cc (get_system_specs): separate generation of
5232         titles and systems.
5233
5234         * flower/include/std-vector.hh: don't include config.hh
5235
5236 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5237
5238         * flower/include/std-vector.hh: Better wrapper compatibility with
5239         std::vector.
5240
5241         * flower/include/flower-proto.hh: Remove cheap forward declaration
5242         attempts.
5243
5244         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5245
5246 2006-02-14  Graham Percival  <gpermus@gmail.com>
5247
5248         * Documentation/user/invoking.itely: add warning about command line.
5249
5250 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5251
5252         * lily/include/lily-proto.hh: add Prob, rm Page.
5253
5254         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5255
5256         * VERSION: release 2.7.34
5257
5258         * lily/relocate.cc (framework_relocation): show canary if
5259         GHOSTSCRIPT_VERSION undefined.
5260
5261         * GNUmakefile.in: remove $(VERSION) symlink.
5262
5263         * lily/relocate.cc (setup_paths): add + 
5264
5265 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
5266
5267         * Documentation/index.html.in: specify sizes for all big HTML pages.
5268
5269 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5270
5271         * config.hh.in: remove @FRAMEWORKDIR@
5272
5273         * lily/system-start-text.cc (get_stencil): new file: separate out
5274         system-start-delimiter text support.
5275
5276         * input/**ly: replace \context with \new where appropriate.
5277         
5278         * THANKS: add Don.
5279
5280         * lily/slur-scoring.cc (get_base_attachments): use
5281         robust_relative_extent. This fixes problems with empty paper-columns. 
5282
5283 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5284
5285         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5286
5287         * scm/define-music-properties.scm (all-music-properties):
5288         create-new property.
5289
5290         * lily/context-specced-music-iterator.cc (construct_children):
5291         inspect 'create-new property iso. magical $uniqueContextId context
5292         id.
5293
5294         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5295
5296         * lily/context-key-manager.cc (Module): new file. Encapsulate
5297         object key generation.
5298
5299         * lily/include/context-key-manager.hh (Module): new file.
5300
5301 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5302
5303         * scm/define-grobs.scm (all-grob-descriptions): center instrument
5304         names vertically
5305
5306         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5307         options.
5308         (reloc_b): excise --enable-framework-dir
5309
5310         * lily/relocate.cc (framework_relocation): use getenv
5311         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5312
5313 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5314
5315         * flower/include/std-string.hh: 
5316         * flower/include/std-vector.hh: Finish std:: conversion; move
5317         flower extensions from std:: namespace.  Update users.
5318
5319         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5320         their expansion to vector<*>.  Update users.
5321
5322 2006-02-10  Graham Percival  <gpermus@gmail.com>
5323
5324         * Documentation/user/invoking.itely: add example to File structure.
5325
5326         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5327         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5328
5329 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5330
5331         * ly/paper-defaults.ly: typo.
5332
5333         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5334         set_parent() for parentheses. This will make it show up in bbox
5335         calculations.
5336
5337         * scm/output-lib.scm (parentheses-item::print): rewrite, using
5338         ly:grob-common* functions.
5339
5340         * lily/grob-scheme.cc (LY_DEFINE):
5341         ly:grob-common-refpoint-of-array: new function 
5342         ly:grob-common-refpoint: new function 
5343         ly:grob-relative-coordinate: new function 
5344
5345         * lily/instrument-name-engraver.cc (process_music): use
5346         Text_interface::is_markup(). This fixes \markup on instrument names.  
5347
5348         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5349         for ties and slurs.
5350
5351         * lily/slur.cc (print): idem.
5352
5353         * lily/tie.cc: add line-thickness for ties. 
5354
5355 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5356
5357         * scm/output-svg.scm: Document diversion from GNU coding standards
5358         as a workaround for a bug in Microsoft Internet Explorer.
5359
5360 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5361
5362         * lily/instrument-name-engraver.cc (process_music): use
5363         is_markup() iso. is_string()
5364
5365         * Documentation/user/changing-defaults.itely (Module): add menu entry.
5366
5367         * lily/percent-repeat-engraver.cc (process_music): only look at
5368         main_part_ for % repeats.
5369
5370         * lily/stem-tremolo.cc (get_beam_translation): new function.
5371         (calc_slope): new function.
5372         (height): don't use real slope.
5373
5374 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
5375
5376         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5377         new connect-to-neighbor, control-points and staff-padding
5378         properties to make ligature brackets showing up again.
5379
5380 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5381
5382         * VERSION: release 2.7.33
5383
5384         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5385         too many.
5386
5387         * Documentation/user/changing-defaults.itely (Difficult tweaks):
5388         remove applyOutput example.
5389         (Objects connected to the input): document \tweak, \parenthesize
5390
5391         * lily/relocate.cc (prefix_relocation): allow "current"
5392         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5393         changing VERSION in a lily tree less painful.
5394
5395         * input/regression/parenthesize.ly: new file. 
5396
5397         * scm/output-lib.scm (parenthesize-element): new function.
5398
5399         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5400
5401         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5402
5403         * lily/accidental-engraver.cc (make_standard_accidental): reroute
5404         cause: accidentals are caused by note heads, not note events. 
5405
5406 2006-02-08  Graham Percival  <gpermus@gmail.com>
5407
5408         * darwin.patch: small patch from Erlend, thanks!
5409
5410         * Documentation/user/basic-notation.itely: add stem-neutral example.
5411
5412         * Documentation/user/putting.itely: clarifications.
5413
5414 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5415
5416         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5417         note, add more guidelines to what should go into NEWS.
5418
5419         * input/sakura-sakura.ly: document how to override font.
5420
5421         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
5422
5423 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5424
5425         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5426
5427 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5428
5429         * scripts/convert-ly.py (lilypond_version_re_str): Move from
5430         convertrules.  Add explicit grouping, needed for python2.2.
5431
5432 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5433
5434         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5435
5436 2006-02-07  Graham Percival  <gpermus@gmail.com>
5437
5438         * Documentation/user/global.itely: fix line-width in (text) docs.
5439
5440         * Documentation/user/lilypond-book.itely: same.
5441
5442 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5443
5444         * VERSION (PACKAGE_NAME): release 2.7.32
5445
5446         * Documentation/topdocs/NEWS.tely (Top): document new variable
5447         naming.
5448
5449         * flower/include/array.icc (Message): remove file.
5450
5451         * flower/include/std-vector.hh: make sure vsize and VPOS are
5452         defined for binary_search_bounds().
5453
5454         * flower/std-string.cc (std): add to_string(long unsigned).
5455
5456         * configure.in (gui_b): excise std_string option.
5457         (gui_b): excise std_vector option.
5458
5459         * flower/string.cc (Module): excise flower array & string
5460
5461         * flower/include/std-string.hh: excise flower string.
5462
5463         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5464
5465         * python/convertrules.py (lilypond_version_re_str): require
5466         only numbers and dots in \version string.
5467
5468 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5469
5470         * lily/system-start-delimiter.cc (print): allow style = text too.
5471
5472         * lily/system-start-delimiter-engraver.cc
5473         (acknowledge_system_start_text): new function, also add add to
5474         support of system-start-text (instrument names). This fixes
5475         instrument names on piano staves.
5476
5477         * lily/instrument-name-engraver.cc: rewrite. Use
5478         system-start-delimiter approach. This save memory and cpu.
5479
5480         * scm/define-grobs.scm (all-grob-descriptions): remove
5481         instrument-name from break-alignment.
5482
5483         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5484
5485 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
5486
5487         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5488         jobserver going.
5489
5490         * configure.in (std_vector): On by default.
5491
5492         * lily/include/font-metric.hh:
5493         * lily/include/tfm-reader.hh: 
5494         * lily/include/spanner.hh: Use unsigned for indices and sizes.
5495         Update users.
5496
5497         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5498
5499 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5500
5501         * VERSION (PACKAGE_NAME): 2.7.31
5502
5503         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5504         EPS edge at 0, but take minimum with left-overshoot. This fixes
5505         cut off system start delims. 
5506
5507         * lily/instrument-name-engraver.cc (stop_translation_timestep):
5508         hack: add to axis group if not added yet. This fixes hara kiri'd
5509         piano staves.
5510
5511         * lily/hara-kiri-group-spanner.cc
5512         (force_hara_kiri_in_y_parent_callback): fix signatures.
5513
5514         * lily/hairpin.cc (print): check next hairpin to see whether or
5515         not to be continuing.
5516
5517 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5518
5519         * Remove trailing whitespace from makefiles.
5520         
5521         * flower/include/std-vector.hh: Add binary_search_bounds workaround
5522         for earlier gcc.
5523
5524         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
5525
5526         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5527
5528         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5529
5530         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5531
5532         * configure.in: Use it.
5533
5534 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5535
5536         * scm/music-functions.scm (pitch-of-note): new function.
5537
5538         * ly/music-functions-init.ly: add \octave and \addquote
5539
5540         * lily/parser.yy (music_function_chord_body): softcode \octave.
5541         (lilypond_header): softcode \addquote
5542
5543 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5544
5545         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5546         array.hh, parray.hh at all.  Getting ready to flip the
5547         configure default.
5548
5549         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5550
5551         * lily/source-file.cc (file::get_line): Help binary_search_bounds
5552         a bit.
5553
5554         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5555
5556 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5557
5558         * flower/include/array.hh: typo. 
5559
5560 2006-02-02  Graham Percival  <gpermus@gmail.com>
5561
5562         * Documentation/user/advanced-notation.itely: doc "\#" in text.
5563
5564 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5565
5566         * flower/include/pqueue.hh: Derive from std::vector.
5567
5568         * flower/include/parray.hh: Conform to std::vector interface.
5569         Update users.
5570
5571 2006-02-02  Graham Percival  <gpermus@gmail.com>
5572
5573         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5574
5575 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5576
5577         * flower/file-path.cc (is_file): remove if 0 section.
5578
5579         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5580         selecting afii61352.
5581
5582 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5583
5584         * flower/include/std-vector.hh (boundary): Oops, reverse.
5585
5586         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5587         remove superfluous `d'.
5588
5589         * flower/include/std-vector.hh (boundary, top): Detach from class.
5590         Remove empty vector shell.
5591
5592         * flower/include/array.hh (reverse, swap): Detach from class.
5593         Update users.
5594         
5595         * flower/include/std-vector.hh
5596         * flower/include/array.hh (concat): Globally change to insert ().
5597
5598         
5599         * flower/include/std-vector.hh
5600         * flower/include/parray.hh
5601         * flower/include/array.hh (elem, elem_ref): Globally replace by
5602         at ().
5603
5604 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5605
5606         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5607
5608         * python/convertrules.py (FatalConversionError.sub_cxx_id):
5609         anticipate on identifier substitutions.
5610
5611 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5612
5613         * flower/include/std-vector.hh (insert): Remove, replace by
5614         std::vector interface.  Update callers.
5615
5616         * flower/include/array.icc (insert): Change signature to
5617         match std::vector interface.
5618         
5619         * flower/include/array.icc (vector_sort): Bugfix.
5620
5621 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5622
5623         * lily/parser.yy (output_def_head_with_mode_switch): new
5624         production. Result: dashes and underscores may be used in the
5625         \paper block.
5626
5627         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
5628
5629         * python/convertrules.py (conv): oops. One slash too much.
5630
5631 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5632
5633         * flower/include/std-vector.hh (sort): Remove, replace by
5634         ::vector_sort.  Update callers.
5635
5636         * flower/include/std-vector.hh (slice): Remove.  Update callers.
5637         (sort): Bugfix.
5638
5639         * flower/test-std.cc (vector_sort): New test.
5640
5641 2006-02-01  Graham Percival  <gpermus@gmail.com>
5642
5643         * Documentation/user/putting.itely: fixes from Erik.
5644
5645 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5646
5647         * flower/test-std.cc: Add simple unit test for vector migration.
5648
5649         * stepmake/stepmake/test*: Unit test support.
5650
5651         * flower/include/std-vector.hh (del): Remove.  Use erase (),
5652         update callers.
5653
5654         * flower/include/array.hh (begin, end): Add.
5655         (del, get): Remove.
5656
5657 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5658
5659         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5660         std::string not String. 
5661
5662         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5663         iso UINT_MAX.
5664
5665         * lily/prob.cc (Prob): copy type_ too.
5666
5667         * lily/lily-guile.cc (mangle_cxx_identifier): new
5668         function. Class_bla::foo_bar_[px] ->
5669         ly:class-bla::foo-bar[?!]. Changes throughout
5670
5671 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5672
5673         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5674
5675         * lily/beam.cc (calc_direction): take dir from visible stem in
5676         degenerate case.
5677
5678 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5679
5680         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5681         Fix -1, >=0 boundary checks for unsigned vsize.
5682
5683         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5684         loop for unsigned vsize.
5685
5686         * configure.in (--enable-std-vector): New option.
5687         (--enable-std-string): On by default.
5688
5689         * flower/include/std-vector.hh: New file.  Enable switch to
5690         std::vector, update client code.
5691
5692 2006-01-30  Graham Percival  <gpermus@gmail.com>
5693
5694         * scm/document-translation.scm: clarify "this context is also
5695         known as".  Thanks, Werner!
5696
5697         * Documentation/user/putting.itely: small fixes from Don Blaheta.
5698
5699         * Documentation/user/invoking.itely: small fix from Don.
5700
5701 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5702
5703         * scm/lily.scm (define-scheme-options): rename option
5704         preview-include-book-title to book-title-preview
5705         (define-scheme-options): move force-eps-font-include (from paper
5706         block) to eps-font-include -d option.
5707
5708         * VERSION (PATCH_LEVEL): release 2.7.30
5709
5710         * input/bach-schenker.ly (staffPiano): new file.
5711
5712         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5713
5714         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5715         credits to Nicolas.
5716
5717         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5718
5719         * ps/lilyponddefs.ps: remove start-system, stop-system,
5720         start-page fluff. This saves putting { } code on the stack, fixing
5721         stack overflows when including EPS files.
5722
5723 2006-01-29  Graham Percival  <gpermus@gmail.com>
5724
5725         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5726
5727 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5728
5729         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5730
5731 2006-01-28  Graham Percival  <gpermus@gmail.com>
5732
5733         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5734
5735 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5736
5737         * input/mutopia/claop.py: Update.
5738
5739 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5740
5741         * input/regression/completion-heads.ly (texidoc): fix.
5742
5743         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5744
5745         * lily/tie-formatting-problem.cc
5746         (set_ties_config_standard_directions): use abs iso fabs for ints.
5747
5748         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5749
5750         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5751         little less than noteheight, to prevent overlaps in chords.
5752
5753         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5754         head, and fudge stem-attachment.
5755
5756         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5757
5758         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5759
5760 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5761
5762         * lily/main.cc (main): Debugging aid: catch exceptions.
5763
5764         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5765         output with std::string.
5766
5767 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5768
5769         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5770
5771 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5772
5773         * Fix -DSTRING_UTILS_INLINED.
5774
5775 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5776
5777         * VERSION (PATCH_LEVEL): release 2.7.29
5778
5779         * lily/relocate.cc (setup_paths): mingw uses std string too.
5780
5781         * lily/*.cc: various fixes for substr(ARG).
5782
5783         * lily/sustain-pedal.cc (print): 
5784
5785         * flower/file-name.cc (slashify): use std strings.
5786
5787         * flower/string-convert.cc: remove publib.h
5788
5789         * scm/define-markup-commands.scm (verbatim-file): new markup
5790         command \verbatim-file
5791
5792         * Documentation/topdocs/NEWS.tely: fixup URLs
5793
5794         * input/regression/alignment-vertical-manual-setting.ly (Module):
5795         new file.
5796
5797         * lily/align-interface.cc (align_elements_to_extents): overwrite
5798         translations with numbers in alignment-offsets from left bound
5799
5800         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5801         (page-translate-systems): new function: take into account Y-offset.
5802
5803         * Documentation/topdocs/NEWS.tely (Top): document new features.
5804
5805         * input/regression/page-layout-manual-position.ly (Module): new
5806         file.
5807
5808 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5809
5810         * flower/file-path.cc (path::parse_path): Oops.
5811
5812         * Finish std::string interface.  For now, use std:: marker
5813         throughout for easy s/r.
5814
5815 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5816
5817         * Documentation/user/putting.itely (Score is a single musical
5818         expression): typo.
5819         (Score is a single musical expression): more typos.
5820
5821         * scm/page.scm (annotate-space-left): thinko.
5822         (annotate-page): more thinkos.
5823
5824 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5825
5826         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5827         for different \score blocks separately.
5828         (post-process-pages): put write-page-layout into paper block.
5829
5830         * lily/output-def.cc (get_parser): new file.
5831
5832         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5833         file.
5834
5835         * lily/include/output-def.hh (class Output_def): add parser_ member.
5836
5837         * input/regression/page-layout-twopass.ly (Module): new file.
5838
5839         * scm/lily.scm: remove cpp hack.
5840
5841         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5842
5843 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5844
5845         * GNUmakefile.in (c-clean): New target.
5846
5847         * flower/include/std-string.hh: String/std::string compatibility:
5848         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5849         type.
5850
5851         * flower/rational.cc: 
5852         * flower/include/rational.hh: 
5853
5854         * flower/offset.cc: 
5855         * flower/include/offset.hh: 
5856
5857         * flower/interval.cc: 
5858         * flower/include/interval.hh: 
5859
5860         * flower/string-convert.cc: 
5861         * flower/include/string-convert.hh: Use std::string [interface].
5862         Update callers.
5863
5864 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5865
5866         * Documentation/index.html.in: clean up.
5867
5868 2006-01-25  Graham Percival  <gpermus@gmail.com>
5869
5870         * Documentation/user/putting.itely: another new untested doc section.
5871
5872 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5873
5874         * scm/layout-page-layout.scm (write-page-breaks): write
5875         \spacingTweaks #ALIST. Handle grace timing.
5876
5877         * scm/: more imports.
5878
5879         * scm/page.scm (make-page): add footer/header.
5880         (annotate-space-left): revise: only take page argument.
5881         (layout->page-init): new function.
5882
5883         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5884         version of the system/spacing/linebreak hack writing to the output
5885
5886         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5887         ly:make-prob.
5888
5889         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5890         ly:spanner-bound
5891
5892 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5893
5894         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5895
5896         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5897
5898         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5899         handling to page.scm
5900
5901         * lily/prob-scheme.cc (LY_DEFINE): new file.
5902         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5903
5904         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5905         prob functions.
5906
5907         * lily/music.cc (derived_mark): derive Music from Prob.
5908
5909         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5910
5911         * lily/prob.cc (Module): Implement Prob (Property Object), object
5912         with shared and r/w property alists.  
5913
5914         * lily/include/prob.hh (Module): new file. Declare Prob.
5915
5916         * flower/string.cc: remove is_empty().
5917
5918         * flower/include/string.hh (class String): remove String:: qualifier.
5919
5920         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5921         substitute appropriate functions.
5922
5923         * flower/include/string.hh (class String): remove to_str0 and
5924         is_empty(). S&R everywhere.
5925
5926 2006-01-23  Graham Percival  <gpermus@gmail.com>
5927
5928         * Documentation/user/basic-notation.itely: add hairpin
5929         after-linebreak tweak to commonprop.
5930
5931         * Documentation/user/putting.itely: added two new sections.
5932
5933 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5934
5935         * flower/international.cc: 
5936         * flower/include/international.hh: 
5937
5938         * flower/getopt-long.cc: 
5939         * flower/include/getopt-long.hh: Use std::string [interface].
5940         Update callers.
5941
5942         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5943
5944         * stepmake/stepmake/executable-rules.make: Add dependency on
5945         module libraries.
5946
5947 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5948
5949         * flower/file-path.cc: 
5950         * flower/include/file-path.hh: Use std::string [interface].
5951         Update callers.
5952
5953         * flower/direction.cc: 
5954         * flower/axis.cc: Unused.  Remove.
5955
5956         * configure.in (--enable-std-string): New option.
5957
5958         * flower/std-string.cc: 
5959         * flower/include/std-string.hh: New file.
5960
5961         * flower/file-name.cc[STD_STRING]:
5962         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5963
5964 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5965
5966         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5967
5968         * scm/define-markup-commands.scm (with-dimensions):
5969         with-dimensions markup command.
5970
5971         * input/test/font-table.ly: use it.
5972
5973         * lily/open-type-font.cc (glyph_list): new function.
5974
5975         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5976
5977         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5978
5979 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5980
5981         * ly/music-functions-init.ly (parallelMusic): new music function
5982         for parallel music entry.
5983
5984         * scm/define-music-properties.scm (all-music-properties): new
5985         'void music property
5986
5987         * scm/music-functions.scm (ly:music-message): make public, to be
5988         used in music function definitions
5989
5990         * scm/lily-library.scm (collect-music-for-book): discard music
5991         when the 'void property is set.
5992
5993 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5994
5995         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5996
5997         * mf/GNUmakefile: idem.
5998
5999         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6000
6001         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6002
6003         * Documentation/user/notation-appendices.itely (The Feta font):
6004         use it.
6005
6006         * input/test/font-table.ly: new file. Generate font table within lily.
6007
6008         * Documentation/user/notation-appendices.itely (The Feta font):
6009         use new font-table.ly file. 
6010
6011         * stepmake/stepmake/install-out-targets.make
6012         (local-install-outfiles): only create directory if
6013         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6014
6015 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6016
6017         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6018
6019         * VERSION (PACKAGE_NAME): release 2.7.28
6020
6021         * scm/framework-ps.scm (write-preamble): use it to pick exactly
6022         the right font from a Mac dfont.
6023         (write-preamble): don't forget directory, only look at files.
6024
6025         This fixes problems with TTF files in dfonts that don't match
6026         their PostScript names.
6027          
6028         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6029         PS name from TTF font.
6030
6031         * input/regression/tie-manual.ly: document new feature.
6032
6033         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6034
6035         * VERSION (MY_PATCH_LEVEL): bump to .28
6036
6037         * Documentation/user/basic-notation.itely (Ties): add tie examples
6038         refs.
6039
6040         * lily/tie-formatting-problem.cc (score_ties_configuration):
6041         symmetry penalties for outer ties.
6042
6043 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6044
6045         * lily/tie-formatting-problem.cc (generate_configuration) 
6046         (set_manual_tie_configuration): skip non-pair manual
6047         tie-configuration, so you can set individual ties as
6048
6049           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6050
6051         * input/regression/tie-chord.ly: use generateTiePattern to
6052         simplify file.
6053
6054         * lily/tie-formatting-problem.cc (peak_around): new function.
6055         (score_configuration): use sliding criterion for staff line collisions. 
6056         (score_configuration): idem for dot collisions.
6057         (generate_configuration): use separate stem_gap for gap to stem.
6058
6059         * lily/include/tie-formatting-problem.hh (struct Tie_details):
6060         separate penalty factors for x and y distance.
6061         (struct Tie_details): separate penalties for tip and center line collisions.
6062
6063 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
6064
6065         * lily/tie-formatting-problem.cc (generate_configuration): make
6066         large ties avoid stafflines in the horizontal section.
6067         (score_configuration): use softcoded penalties
6068         (score_aptitude): idem.
6069
6070         * lily/tie-helper.cc (from_grob): softcode tie details
6071
6072         * lily/staff-symbol-referencer.cc (on_staff_line): new function
6073
6074         * lily/staff-symbol-referencer.cc (on_line): rename from
6075         on_staffline 
6076
6077 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6078
6079         * ly/music-functions-init.ly: remove duplicate tag.
6080
6081         * lily/include/*.hh: GCC 4.1 fixes.
6082
6083 006-01-16  Erlend Aasland  <erlenda@gmail.com>
6084
6085         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6086
6087         * scm/define-music-types.scm: fix bug in desc. string
6088         for OverrideProperty
6089
6090 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
6091
6092         * scripts/lilypond-book.py: bugfix
6093
6094         * scm/define-music-types.scm: fix typos.
6095
6096 2006-01-14  Graham Percival  <gpermus@gmail.com>
6097
6098         * Documentation/user/ basic-notation.itely, global.itely,
6099         advanced-notation.itely, instrument-notation.itely: small
6100         additions (bugs and commonly tweaked properties).
6101
6102 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6103
6104         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6105         detection of mingw build.
6106         (MINGW_BUILD): opps.
6107
6108 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
6109
6110         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6111         i686-mingw32.
6112
6113 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6114
6115         * scm/music-functions.scm (skip->rest): add skip->rest
6116
6117 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6118
6119         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6120         explicitly.
6121
6122         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6123         config dirs. Aids debugging. 
6124         (display_config): also display config files.
6125
6126 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6127
6128         * VERSION: release 2.7.27
6129
6130         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6131         for determining bar size.
6132
6133         * lily/staff-symbol.cc (print): place lines at distance line-positions
6134
6135         * scm/define-grob-properties.scm (all-user-grob-properties): add
6136         line-positions.
6137
6138         * lily/staff-symbol.cc (height): new function.
6139
6140         * input/regression/staff-line-positions.ly:  new file.
6141
6142 2006-01-06  Graham Percival  <gpermus@gmail.com>
6143
6144         * input/test/add-staccato.ly: remove reference to old file.
6145
6146 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6147
6148         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6149         lilypond binary too.
6150
6151 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6152
6153         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6154
6155 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6156
6157         * scripts/midi2ly.py: Bugfix: Declare datadir.
6158
6159         * make/ly-rules.make:
6160         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6161         that seems to be gone). Fixes make web.
6162
6163         * The grand 2005-2006 replace.
6164
6165         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6166
6167 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6168
6169         * make/lilypond-vars.make: set LILYPOND_BINARY variable
6170         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6171         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6172         like -dgs-font-load.
6173
6174         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6175         remove absolute path to lilypond binary.
6176         
6177 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
6178
6179         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6180
6181 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6182
6183         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6184
6185         * mf/GNUmakefile: remove broken dvips map symlink.
6186
6187 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
6188
6189         * lily/main.cc: 
6190         * configure.in: Cosmetic fixes.
6191
6192 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
6193
6194         * Documentation/user/music-glossary.tely (Pitch names): Added
6195         Spanish pitch names and durations, thanks to Ernesto Gancedo
6196
6197 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6198
6199         * scm/lily.scm (define-scheme-options): use quasi-quote for option
6200         init. Fixes verbose printing of .scm files.
6201
6202         * stepmake/aclocal.m4: add spaces before - options.
6203         
6204 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6205
6206         * lily/relocate.cc (setup_paths): Bugfix: do not store result
6207         of path search in local block variable.
6208
6209 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6210
6211         * configure.in (NCSB_DIR): --enable-ncsb-dir
6212         (LINK_GXX_STATICALLY): denko.
6213
6214         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
6215
6216         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
6217         use locate to find c059033l.pfb. 
6218         
6219 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6220
6221         * lily/tie-formatting-problem.cc
6222         (problem::generate_base_chord_configuration): Use my_round (was
6223         round).
6224
6225         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6226         do not invoke mbrtowc.
6227
6228         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6229
6230 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6231
6232         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6233
6234 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
6235
6236         * Documentation/user/invoking.itely (svg): revise.
6237
6238 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6239
6240         * lily/lexer.ll: use sourcefilename iso. renameinput.
6241
6242 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6243
6244         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6245         <PostScriptName>.ttf instead of c059XXXttf.
6246
6247         * lily/program-option.cc (LY_DEFINE): special support for
6248         --verbose, so it works before option init too.
6249  
6250         * mf/GNUmakefile (local-install): oops.
6251
6252         * lily/lyric-hyphen.cc (print): oops.
6253
6254         * buildscripts/pfx2ttf.fontforge: new file.
6255         
6256         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6257         ($(outdir)/%.ttf): new rule. 
6258
6259         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6260         to LyricHyphen.
6261
6262         * lily/lyric-hyphen.cc (print): multiply hyphen height by
6263         font-size
6264
6265 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6266
6267         * VERSION: release 2.7.26
6268         
6269         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6270
6271 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6272
6273         * lily/font-config.cc (init_fontconfig): verbosity.
6274
6275         * THANKS: add Muziekacademie Lede. 
6276
6277         * scripts/musicxml2ly.py (print_voice_definitions): new function 
6278         (print_score_setup): new function
6279         (convert): read part definition to output staves properly.
6280
6281         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6282         Music_xml notes.
6283
6284         * python/musicexp.py (Output_printer.__init__): use _ in data
6285         members.
6286         (Output_printer.unformatted_output): new function: no formatting,
6287         but count braces.
6288         (Duration.get_length): remove isinstance() checks for
6289         Output_printer everywhere.
6290
6291         * input/regression/lyrics-bar.ly (texidoc): add
6292         Separating_line_group_engraver.
6293
6294 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
6295
6296         * lily/relocate.cc (framework_relocation): New function,
6297         factored from set_relocation ().
6298         (prefix_relocation): Rename from set_relocation ().
6299         (setup_paths): Use it.
6300
6301 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6302
6303         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6304         numbers. Patch by Erlend Aasland.
6305
6306 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6307
6308         * lily/font-config.cc (init_fontconfig): print warning if cache
6309         file is not existant.
6310
6311         * lily/main.cc: don't use #ifdef but #if
6312
6313 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6314
6315         * lily/grob-property.cc (internal_set_property): don't abort on
6316         calculation-in-progress.
6317
6318         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6319
6320         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6321         connect-to-neighbor property not connect-to-other
6322
6323         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6324         (LY_DEFINE): oops. don't forget protection.
6325
6326         * flower/parse-afm.cc (Module): strip AFM handling completely.
6327
6328         * lily/stencil-expression.cc: idem.
6329
6330         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6331
6332         * lily/function-documentation.cc (ly_add_function_documentation):
6333         use static member iso. Protected_scm
6334
6335         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6336
6337         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6338
6339 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6340
6341         * lily/relocate.cc (set_env_dir): New function.
6342         (set_relocation): Use it to fix setting PANGO_PREFIX.
6343
6344 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6345
6346         * input/regression/stem-direction-context.ly: remove rest.
6347
6348         * lily/melody-engraver.cc (process_music): restart for bar lines.
6349         (acknowledge_slur): restart for slurs.
6350
6351 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
6352
6353         * Documentation/user/invoking.itely: describe how to view SVG 
6354         output using Inkscape which replace embedded fonts with OTF fonts.
6355
6356 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6357
6358         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6359
6360 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6361
6362         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6363         comment.
6364
6365 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6366
6367         * VERSION (PACKAGE_NAME): release 2.7.25
6368
6369         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6370
6371         * input/regression/stem-direction-context.ly: new file.
6372
6373         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6374
6375         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6376         on rest.
6377
6378         * ly/engraver-init.ly: add Melody_engraver
6379
6380         * lily/beam.cc (calc_direction): use default-direction
6381         iso. get_default_direction()
6382
6383         * scm/define-grob-properties.scm (all-user-grob-properties): add
6384         default-direction property.
6385
6386         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6387
6388         * lily/stem.cc (calc_default_direction): remove
6389         Stem::get_default_direction, use default-direction with callback
6390         instead.
6391
6392         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
6393
6394         * lily/melody-engraver.cc: new file. Acknowledge stems for
6395         interpolated stem directions. 
6396
6397         * lily/melody-spanner.cc: new file. Interpolate stem directions.
6398
6399         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6400
6401         * lily/slur-configuration.cc (fit_factor): more robust check for
6402         point in curve X-extent.
6403
6404         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6405         (outside_slur_callback): check for 'outside avoidance.
6406
6407         * lily/slur-configuration.cc (score_extra_encompass): don't use
6408         bound->column() == avoid->column() for checking extents, as this
6409         doesn't work for accidentals. 
6410
6411         * lily/slur-engraver.cc (acknowledge_extra_object): remove
6412         DynamicText hardcoding.
6413
6414         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6415         crash if bound stem is NULL
6416
6417         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6418         pedals.
6419
6420 2005-12-22  Graham Percival  <gpermus@gmail.com>
6421
6422         * scm/define-markup-commands.scm: typo.  @code{\raise}
6423         => @code{\\raise}.
6424
6425         * darwin.patch: now used again, includes a
6426         required patch from fink.
6427
6428 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
6429
6430         * po/TODO: mention gtranslator along with kbabel.
6431         * po/fi.po: update translations.
6432
6433 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6434
6435         * lily/relocate.cc (setup_paths): Bugfix.
6436
6437 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6438
6439         * lily/slur-configuration.cc (score_extra_encompass): don't use
6440         "avoid" choice for avoid-slur.
6441
6442         * stepmake/bin/install.py (dest): don't create existing dir.
6443
6444 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6445
6446         * stepmake/bin/install.py: Remove file before copying.
6447
6448         * config.make.in: 
6449         * stepmake/aclocal.m4: Do not substitute INSTALL.
6450
6451 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6452
6453         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6454         depend on link-tree.
6455
6456         * lily/relocate.cc (setup_paths): only check path for non-absolute
6457         dir without directory part.
6458
6459         * flower/file-name.cc (is_absolute):  new method.
6460         (is_absolute): check root_ too.
6461
6462 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6463
6464         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6465         relocation code.  Oops, don't comment out too much.
6466
6467         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6468         iso itself.
6469
6470         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
6471         compile.
6472
6473 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6474
6475         * .cvsignore: Add install-sh.
6476
6477         * autogen.sh (srcdir): Typo.
6478
6479 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6480
6481         * autogen.sh (srcdir): urg. Touch install-sh.
6482
6483         * stepmake/bin/install-sh (Module): remove.
6484
6485         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6486
6487         * lily/include/relocate.hh: new file.
6488
6489         * lily/relocate.cc: new file. Contain relocation logic.
6490
6491         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6492         (main): read LILYPOND_VERBOSE as the first thing.
6493
6494         * stepmake/aclocal.m4: remove INSTALL variable.
6495
6496         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6497         separate target for making font symlinks.
6498         (documentation-dir): use $(if $(findstring )) for switching off
6499         Documentation.
6500
6501         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6502         something if DOCUMENTATION is no.
6503
6504 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6505
6506         * VERSION: release 2.7.24
6507
6508         * lily/script-column-engraver.cc (stop_translation_timestep):
6509         delay adding to script-column.
6510
6511         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
6512
6513         * python/convertrules.py (conv): rule for number-visibility
6514
6515         * lily/slur-configuration.cc (score_extra_encompass): different
6516         distance measure for avoid and inside avoidance.
6517         (score_extra_encompass): use 1/(distance+eps) as penalty.
6518
6519         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6520         encompass objects for generating slur curves.
6521
6522         * lily/slur.cc: use details iso. slur-details property.
6523
6524         * input/regression/slur-tuplet.ly: new file.
6525
6526         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
6527
6528         * flower/include/offset.hh (class Offset): new operator /=
6529
6530         * lily/tuplet-number.cc (print): new file, new interface.
6531
6532         * scm/define-grob-properties.scm (all-user-grob-properties):
6533         remove number-visibility property.
6534
6535         * lily/tuplet-bracket.cc (calc_control_points): new function
6536         (calc_connect_to_neighbors): new function.
6537         (print): remove text handling for tuplet numberdef.
6538
6539         * lily/tuplet-engraver.cc (struct Tuplet_description): create
6540         TupletNumbers too. 
6541
6542         * lily/lily-guile.cc (robust_scm2booldrul): new function
6543
6544         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6545
6546         * lily/tuplet-bracket.cc (calc_position_and_height): use
6547         staff-padding to control whether tuplet brackets are over staves.
6548
6549         * lily/grob.cc (suicide): clear dim_caches_.
6550
6551         * lily/dimension-cache.cc (clear): new function.
6552
6553         * lily/grob.cc (extent): swap order of min-extent and extent
6554         calculations. This fixes hara kiri staves. 
6555
6556 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6557
6558         * lily/main.cc: Nitpick: relocation is not based on path, but on
6559         directory (location).
6560
6561 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6562
6563         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6564
6565         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6566
6567         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6568
6569         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6570
6571         * stepmake/stepmake/generic-vars.make (Module): idem.
6572
6573         * stepmake/stepmake/executable-targets.make (default): use it.
6574
6575         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6576
6577         * make/GNUmakefile: don't install make rules.
6578
6579         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6580         slashes.
6581         (prepend_env_path): more verbosity.
6582
6583 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6584
6585         * GNUmakefile.in: add dir argument for find command.
6586
6587         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6588         fixes weird line numbers for point & click.
6589
6590         * lily/source-file.cc (get_counts): init line/column/char counts.
6591
6592 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6593
6594         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6595
6596 2005-12-16  Graham Percival  <gpermus@gmail.com>
6597
6598         * Documentation/user/basic-notation.itely, advanced-notation.itely:
6599         minor fixes from Fredric.  Thanks!
6600
6601 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6602
6603         * ly/music-functions-init.ly: add \bar and \clef music function 
6604
6605         * lily/lily-lexer.cc: idem.
6606
6607         * lily/parser.yy (FIXME): remove BAR and CLEF.
6608
6609 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6610
6611         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6612
6613         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6614         function arguments too
6615
6616         * lily/main.cc (set_relocation): new function.
6617
6618         * scripts/musicxml2ly.py (convert): add \version
6619
6620         * lily/tie.cc: remove get_default_attachments()
6621
6622         * VERSION (PACKAGE_NAME): release 2.7.23
6623         
6624         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6625         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6626
6627         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6628
6629         * lily/tie-formatting-problem.cc (score_ties): new function
6630         (get_variations): new function. Try flipping dirs for collisions.
6631         (generate_optimal_chord_configuration): new function. 1-opt search
6632         for better configuration.
6633
6634         * lily/tie-configuration.cc: new file.
6635
6636         * lily/tie.cc: junk Tie::get_configuration()
6637
6638         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6639         (score_ties_configuration): new function.
6640         (generate_ties_configuration): new function.
6641         (generate_base_chord_configuration): new function.
6642         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
6643         (set_manual_tie_configuration): Move body from tie-column-format.cc 
6644
6645         * input/regression/tie-dot.ly: new file.
6646
6647         * lily/tie-formatting-problem.cc (score_configuration): score
6648         tie/dot collisions.
6649
6650         * lily/tie-helper.cc (get_transformed_bezier): new function
6651
6652         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6653
6654         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6655         -undefined suppress iso. -framework Python 
6656
6657         * scm/define-grobs.scm (all-grob-descriptions): set
6658         springs-and-rods (thanks Joe Neeman!)
6659
6660 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6661
6662         * input/no-notation/display-lily-tests.ly (test): 
6663         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6664         changed from \tag #'(a b) to \tag #'a \tag #'b
6665
6666 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6667
6668         * Documentation/topdocs/NEWS.tely: strip out-www.
6669
6670         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6671
6672         * config.make.in (AR): add AR and RANLIB
6673
6674         * flower/libc-extension.cc: include cassert
6675
6676         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6677         darwin check.
6678
6679 2005-12-11  Graham Percival  <gpermus@gmail.com>
6680
6681         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6682
6683         * stepmake/stepmake/python-modules-vars.make: define
6684         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
6685
6686         * THANKS: added Johannes Schindelin.
6687
6688 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6689
6690         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6691
6692         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6693         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
6694
6695         * lily/parser.yy: reorganize file layout.
6696
6697         * ly/music-functions-init.ly: add tweak music function.
6698
6699         * lily/grob-info.cc (ultimate_music_cause): new function:
6700         recursively lookup causes. 
6701
6702         * lily/parser.yy (chord_body_element): allow music functions for
6703         post-events, allow music functions for chord elements. 
6704  
6705         * lily/font-config-scheme.cc (display_fontset): add cast.
6706
6707         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6708         #'(a b) -> \tag #'a \tag #'b rule.
6709
6710         * python/musicexp.py (Output_printer.dump_version): new function
6711
6712 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6713
6714         * lily/parser.yy (FIXME): remove \tag
6715         (FIXME): remove tag_music() function.
6716
6717         * lily/lily-lexer.cc: remove \tag
6718
6719         * ly/music-functions-init.ly: define music-function "tag"
6720
6721         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6722
6723 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6724
6725         * VERSION (PATCH_LEVEL): release 2.7.22
6726
6727         * input/regression/lyric-hyphen-retain.ly: renew.
6728
6729         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6730         grob
6731
6732         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6733         iso. minimum-length property for rods.
6734
6735         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6736         LyricSpace item to keep lyrics spaced apart.
6737
6738         * ly/engraver-init.ly: remove Separating_line_group_engraver
6739
6740         * Documentation/user/music-glossary.tely: do setfilename before
6741         music-glossary.
6742
6743 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6744
6745         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6746         See xref documentation, for example.
6747
6748 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6749
6750         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6751         pending_skip iso. ly_voice[-1]
6752         (main): add if __main__ for debugging.
6753
6754         * python/musicxml.py (Accidental.__init__): new class.
6755
6756         * scripts/musicxml2ly.py (progress): new function
6757         (musicxml_key_to_lily): don't barf on modeless keys.
6758         (create_skip_music): new function.
6759         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6760         (musicxml_note_to_lily_main_event): new function.
6761
6762         * python/musicexp.py (Music.__init__): add comment field.
6763         (NestedMusic.append): new routine.
6764         (SequentialMusic.print_ly): print comment.
6765         (ArpeggioEvent.ly_expression): new class
6766         (BeamEvent.ly_expression): new class
6767         (NoteEvent.__init__): support for cautionary/forced accs.
6768
6769         * lily/lookup.cc (slur): normal order for array loop.
6770
6771         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6772         to 0.0.
6773
6774         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6775         collapsed.
6776
6777 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6778
6779         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6780
6781         * scripts/lilypond-book.py: Introduce option
6782             --preserve-line-breaks, for usage with srcltx
6783
6784 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6785
6786         * scm/output-lib.scm (print-circled-text-callback): draw circle
6787         around text using make-circle-markup.
6788
6789         * Documentation/user/*: strip out-www from file names.
6790
6791 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6792
6793         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6794         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6795
6796 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6797
6798         * Documentation/user/GNUmakefile: idem.
6799
6800         * Documentation/user/macros.itexi: strip out-www
6801
6802         * python/rational.py: python 2.3 compat.
6803
6804         * VERSION (PATCH_LEVEL): release 2.7.21
6805
6806         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6807         option formatting, lilypond style.
6808
6809         * python/musicexp.py: grab from Ikebana: a library for composing
6810         ly music expressions. 
6811         (Output_printer): class for advanced .ly printing.
6812         (eg. tupletting) 
6813
6814         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6815         convert to pythonesque structure.
6816
6817         * python/rational.py: PD rational number class.
6818
6819         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6820
6821 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6822
6823         * lily/part-combine-iterator.cc: Minor bugfix
6824         
6825         * THANKS: Update bughunters
6826
6827 2005-12-02  Werner Lemberg  <wl@gnu.org>
6828
6829         * mf/README: Document process for proper mf2pt1 conversion.
6830
6831         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6832         overlapping.
6833
6834         * mf/feta-harmonica.mf: Removed.  Unused.
6835
6836 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6837
6838         * scripts/lilypond-book.py (do_file): fix thinkos.
6839
6840 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6841
6842         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6843         ($(outdir)/parser.cc): 
6844         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6845
6846 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6847
6848         * ly/titling-init.ly (tagline): it should be a space between
6849         "Music engraving by LilyPond" and the version number.
6850
6851 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6852
6853         * VERSION (PACKAGE_NAME): release 2.7.20
6854
6855 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6856
6857         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6858
6859         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6860         1.0.
6861         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6862
6863 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6864
6865         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6866
6867         * kpath-guile/: remove directory
6868
6869         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6870         file. Encapsulate kpathsea using commandline tools.
6871
6872         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6873         kpathsea) module.
6874
6875 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6876
6877         * Documentation/user/advanced-notation.itely (Setting automatic
6878         beam behavior): Correct a few typos. Thanks to David Bobroff.
6879
6880         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6881         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6882
6883 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6884
6885         * scripts/*.py: gmane address for bugs.
6886
6887 2005-11-28 Pal Benko <benkop@freestart.hu>
6888         
6889         * make/ly-rules.make: add -f switch to mv
6890
6891         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6892
6893         * lily/bar-line.cc: interpret it
6894
6895 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6896
6897         * configure.in (--disable-documentation): New switch.
6898
6899         * GNUmakefile.in: Use it.
6900
6901         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6902
6903 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6904
6905         * scripts/lilypond-book.py (do_file): search chunks for
6906         \\begin{document}
6907
6908         * GNUmakefile.in: add copy step in between so we can lose the
6909         out-www directories.
6910
6911 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6912
6913         * lily/pango-font.cc (pango_item_string_stencil): put
6914         geometry.width into glyph-string too.
6915
6916 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6917
6918         * scm/define-music-display-methods.scm (RevertProperty):
6919         (OverrideProperty): Use grob-property-path property, a list of
6920         symbols, instead of grob-property, which used to be a single
6921         symbol.
6922         (BassFigureEvent): a figure can be a plain number, not necessarily a
6923         markup.
6924
6925 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6926
6927         * VERSION: release 2.7.19
6928         
6929         * lily/figured-bass-engraver.cc (process_music): check
6930         figuredBassCenterContinuations first.
6931
6932         * scm/translation-functions.scm (format-bass-figure): make double
6933         sharp larger. 
6934
6935         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6936         determine X-parent.
6937
6938         * lily/system-start-delimiter-engraver.cc: move from
6939         Nested_system_start_delimiter_engraver, rename
6940         Nested_system_start_delimiter_engraver ->
6941         System_start_delimiter_engraver.
6942
6943         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6944         bracket type from hierarchy.
6945
6946 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6947
6948         * lily/rest.cc (y_offset_callback): read staff-position.
6949
6950         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6951         mark after-line-breaking-callback as internal.
6952
6953         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6954
6955 2005-11-25  Werner Lemberg  <wl@gnu.org>
6956
6957         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6958
6959 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6960
6961         * stepmake/bin/add-html-footer.py (do_file): add google
6962
6963         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6964         staff if first_start_ is true.
6965
6966 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6967
6968         * scripts/midi2ly.py (split_track): add __repr__ members.
6969         (track_first_item): only return Item if not None. This fixes a
6970         problem when dumping a track that starts with an empty channel.
6971
6972         * python/midi.c: doc module.
6973
6974 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6975
6976         * Documentation/user/global.itely (Creating MIDI files): Fix
6977         compilation problem.
6978
6979 2005-11-22  Graham Percival  <gpermus@gmail.com>
6980
6981         * Documentation/user/basic-notation.itely: clarify dynamic
6982         padding text.
6983
6984         * Documentation/user/advanced-notation.itely: add unicode
6985         escape control example, whatever that is.  :)
6986
6987         * Documentation/user/global.itely: added "removing dynamics
6988         from MIDI" code.
6989
6990 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6991
6992         * VERSION (PATCH_LEVEL): release 2.7.18
6993
6994         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6995         System_start_delimiter_engraver by
6996         Nested_system_start_delimiter_engraver.
6997
6998         * lily/nested-system-start-delimiter-engraver.cc (struct
6999         Bracket_nesting_node): new class.
7000         (struct Bracket_nesting_group): new class
7001         (struct Bracket_nesting_staff): new class.
7002         (process_music): create hierarchy of grobs. This allows separate
7003         tuning of different SSDs. 
7004
7005         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7006         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7007
7008 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7009
7010         * lily/side-position-interface.cc (aligned_side): multiply
7011         staff_radius by 2.
7012
7013         * lily/script-engraver.cc (make_script_from_event): allow setting
7014         values to '()
7015
7016 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7017
7018         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7019
7020         * scm/define-grobs.scm (all-grob-descriptions): new grob
7021         NestedSystemStartDelimiter.
7022
7023         * input/regression/system-start-heavy-bar.ly: new file.
7024
7025         * lily/nested-system-start-delimiter-engraver.cc: new file.
7026
7027         * lily/nested-system-start-delimiter.cc: new file.
7028
7029         * input/regression/system-start-nesting.ly: new file.
7030
7031         * scm/define-grobs.scm (all-grob-descriptions): use X side
7032         positioning for positioning braces for nested contexts.
7033
7034         * lily/system-start-delimiter.cc (print): don't divide extent by
7035         staff_space.
7036         (print): use style iso. glyph.
7037         (staff_bracket): translate glyph inside routine already.
7038
7039 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
7040
7041         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7042         names.
7043
7044 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7045
7046         * scm/define-context-properties.scm
7047         (all-user-translation-properties): rename figuredBassFormatter
7048         from newFiguredBassFormatter.
7049
7050         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7051
7052         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7053
7054         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7055
7056         * lily/beam.cc (calc_beaming): new function.
7057         (calc_shorten): new function.
7058
7059         * THANKS: add Edward Neeman.
7060
7061         * input/regression/accidental-clef-change.ly: new file.
7062
7063         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7064
7065         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7066
7067         * lily/clef-engraver.cc (inspect_clef_properties): reset
7068         localKeySignature for clef changes.
7069
7070 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
7071
7072         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
7073         add dummy definition that works in Linux and add information in
7074         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7075
7076         * Documentation/user/changing-defaults.itely (Modifying context
7077         plug-ins): Add index for \with.
7078
7079         * Documentation/user/music-glossary.tely (dal segno): Updated
7080         example to version >=2.6.
7081
7082 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
7083
7084         * Documentation/user/instrument-notation.itely (Printing chord
7085         names): Reorder \chordmode and \repeat in one example.
7086
7087 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7088
7089         * VERSION: release 2.7.17
7090         
7091         * Documentation/topdocs/NEWS.tely (Top): add note about
7092         refactoring.
7093
7094         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7095         new function. Search region of 3 positions for best tie.
7096         (score_configuration): new function.
7097         (score_aptitude): new function.
7098         (generate_configuration): new function.
7099         (get_configuration): new function.
7100         (Tie_formatting_problem): new function
7101
7102         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
7103
7104         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7105
7106         * THANKS: add Eduardo Vieira & Ralph Little
7107
7108         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7109         narrower.
7110
7111         * lily/include/tie-formatting-problem.hh (class
7112         Tie_formatting_problem): add Tie_details to
7113         Tie_formatting_problem. Update calling conventions.
7114
7115         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7116         config.make.
7117
7118         * Documentation/user/lilypond.tely: remove musedata2ly entry.
7119
7120 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
7121
7122         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7123         scm/define-context-properties.scm: Maintenance bugfix: make
7124         ligature brackets work again by removing obsolete ligature
7125         primitive callback push/pop.
7126
7127         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7128         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
7129         value.
7130
7131 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
7132
7133         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7134         used and do not call it a path.
7135         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7136
7137 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7138
7139         * lily/include/tie-formatting-problem.hh (class
7140         Tie_formatting_problem): new file.
7141
7142         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7143
7144         * Documentation/misc/ChangeLog-2.3:  new file.
7145
7146         * lily/audio-staff.cc (output): degarianize.
7147
7148 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7149
7150         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7151         Unset PYTHONOPTIMIZE.  Fixes install if set.
7152
7153 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7154
7155         * python/convertrules.py (conv): add warning about drums. 
7156
7157         * make/stepmake.make: include toplevel-version.make after config.make.
7158
7159         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7160         also allow python2.4
7161
7162         * config.make.in (configure-srcdir): remove GXX GCC vars.
7163
7164         * stepmake/aclocal.m4: don't do non-srcdir build with
7165         symlinks. Use inclusion, so the src directory name can be changed.
7166
7167 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7168
7169         * make/mutopia-vars.make:
7170         * make/ly-vars.make: Use src-wildcard iso wildcard for source
7171         files.
7172
7173 2005-11-13  Werner Lemberg  <wl@gnu.org>
7174
7175         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7176         but the affected path.  This ensures that the (overlapping) outlines
7177         have the same direction, which is a necessary prerequisite for
7178         FontForge's algorithm to remove overlaps.
7179         Formatting.
7180
7181         * mf/feta-haak.mf: Formatting.
7182         (draw_bracket): Slightly modify outline to avoid an unnecessary
7183         corner.
7184         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7185         them from the affected paths.
7186
7187 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7188
7189         * mf/README: remove xpm / accordion notes.
7190
7191         * lily/tie-column-format.cc (set_chord_outline): add dots into
7192         skyline extents. This fixes tie formatting if the left head has dots.
7193
7194         * lily/tie.cc (get_configuration): only shift tie by a whole staff
7195         space inside the staff.
7196         (get_configuration): shift another position if necessary in case
7197         of left head tie  
7198
7199 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7200
7201         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7202         buildscript-dir iso. $(depth)/buildscripts.
7203
7204         * tex/GNUmakefile (local-uninstall): remove
7205         music-drawing-routines.ps juggling.
7206
7207         * stepmake/stepmake/install-targets.make (local-install-files):
7208         prepend src-dir to install targets.
7209
7210         * lily/system-start-delimiter-engraver.cc
7211         (acknowledge_system_start_delimiter): use
7212         add_offset_callback(). This fixes translation of nested
7213         staffgroups.
7214
7215         * lily/grob-closure.cc (add_offset_callback): only encaps in
7216         simple_closure if it's a procedure.
7217         
7218         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7219         from bar-line.
7220
7221         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7222         remove-empty where pertinent.
7223
7224 2005-11-12  Graham Percival  <gpermus@gmail.com>
7225
7226         * Documentation/user/instrument-notation.itely: added
7227         Cameron Horsburgh's multiple stanzas docs.  Thanks!
7228
7229 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7230
7231         * lily/GNUmakefile
7232         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7233         make picture in builddir, not srcdir.
7234
7235 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7236
7237         * VERSION: release 2.7.16
7238         
7239         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7240         shell arguments. 
7241
7242 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
7243
7244         * Documentation/user/examples.itely (Piano templates): Minor
7245         modification to the Piano centered lyrics example.
7246
7247 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7248
7249         * scripts/lilypond-invoke-editor.scm (run-browser): look at
7250         $BROWSER.
7251
7252         * Documentation/user/point-and-click.itely: simplify p&c
7253         instruction: don't configure firefox. Put lilypond-invoke-editor
7254         in front of the browser.
7255
7256         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7257         (run-browser): new function.
7258
7259         * lily/parser.yy (Lily_lexer): recognize Book
7260
7261         * lily/book.cc (clone): new function
7262
7263         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7264
7265 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
7266
7267         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7268         Maintenance bugfix: reduce number of font related warnings by
7269         updating naming conventions for glyph-name.
7270
7271 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7272
7273         * scm/define-grobs.scm (all-grob-descriptions): add
7274         rhythmic-grob-interface to TabNoteHead.
7275
7276         * scm/layout-beam.scm (check-quant-callbacks): remove
7277         set_stem_lengths()
7278
7279 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
7280
7281         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7282         alignment of centered divisiones.
7283
7284         * scm/scripts.scm (articulations): Maintenance bugfix:
7285         follow-into-staff -> quantize-position.
7286
7287         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7288         plica head in porrectus deminutus.
7289
7290 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7291
7292         * make/lilypond.fedora.spec.in (Group): add %clean section.
7293
7294         * lily/tuplet-bracket.cc (print): change check: remove bracket if
7295         less then 1/5th of total length.  
7296         (print): use gap too.  Fixes tupletUp-single-bracket.ly
7297
7298         * scm/music-functions.scm (glue-mm-rest-texts): also put other
7299         events into EventChord. This fixes textspanners on mm rests. Fixes
7300         spanner-rest.ly
7301
7302         * lily/side-position-interface.cc (get_axis): read side-axis
7303         (set_axis): set side-axis.
7304
7305         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7306         properties everywhere.
7307
7308         * lily/spacing-spanner.cc (breakable_column_spacing): add
7309         average-spacing-wishes. Take maximum if not set.
7310         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7311
7312         * scm/define-grobs.scm (all-grob-descriptions): add
7313         average-spacing-wishes.
7314
7315         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7316         offset callbacks. This fixes alignment for Fingering objects.
7317
7318         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7319         space for key - timesig combination. 
7320
7321         * input/regression/script-stem-tremolo.ly (Module): new file.
7322
7323         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7324         to key sig.
7325
7326         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7327         Fixes: c-tremolo-script.ly.
7328         
7329         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7330
7331         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7332         
7333         * scm/define-grobs.scm (all-grob-descriptions): remove
7334         self-X-offset. Fixes alignment of octavate-8.
7335
7336         * scripts/lilypond-book.py (datadir): look in
7337         LILYPONDPREFIX/share/lilypond/current/
7338
7339         * GNUmakefile.in: symlink current to <VERSION>. 
7340
7341 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
7342
7343         * lily/main.cc: eps listed as a backend.
7344
7345 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7346
7347         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7348
7349 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7350
7351         * lily/include/score.hh (class Score): remove texts_ member.
7352
7353         * lily/beam.cc (set_stem_lengths): force direction callback.
7354         (print): read quantized-positions, so we can force
7355         Beam::set_stem_lengths to occur.
7356         (rest_collision_callback): use common X parent. 
7357
7358 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7359
7360         * flower/file-path.cc (find): Bugfix: Return name of file found.
7361
7362         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7363         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7364         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7365
7366 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7367
7368         * flower/offset.cc: idem.
7369
7370         * mf/*.mf: update email address.
7371
7372         * lily/font-config-scheme.cc:  new file.
7373
7374         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7375
7376         * lily/*:  cs.uu.nl -> xs4all.nl
7377
7378         * VERSION (PATCH_LEVEL): release 2.7.15
7379
7380         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7381         spec files.
7382
7383         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7384
7385 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7386
7387         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
7388
7389         * lily/staff-performer.cc (process_music): add audio
7390         elements. This makes MIDI instrument changes work once again.
7391
7392         * lily/main.cc (LY_DEFINE): add gmane address.
7393
7394         * lily/beam.cc: remove calc_positions()
7395
7396         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7397         original_ in private scope.
7398         (class Grob): drop pscore_ pointer, change to output_def pointer.
7399         (class Grob): cleanup class definition.
7400
7401         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7402
7403 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7404
7405         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7406         absolute.  Better diagnostics.
7407
7408         * GNUmakefile.in: Add bin/ to tree and populate with some links.
7409         This makes lilypond run from the build directory using argv0
7410         relocation (without any --prefix or LILYPONDPREFIX setting).
7411
7412 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7413
7414         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7415
7416         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7417         with simple-closure.
7418
7419         * lily/self-aligment-interface.cc (set_align_self): new function
7420         (set_center_parent): new function.
7421
7422         * lily/side-position-interface.cc (set_axis): new function.
7423
7424         * lily/new-fingering-engraver.cc (position_scripts): use drul for
7425         generic code. 
7426
7427         * scm/define-grob-properties.scm (all-user-grob-properties):
7428         remove [XY]-offset-callbacks add [YX]-offset
7429         
7430 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
7431
7432         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7433         entry for time signatures after breathing signs. Bug report by
7434         Scott Russell.
7435
7436 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7437
7438         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7439         not absolute, make it absolute using PATH.
7440
7441 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7442
7443         * python/midi.c (initmidi): Fix type for mingw.
7444
7445 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
7446
7447         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7448
7449         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7450         cross compiling.
7451
7452         * stepmake/aclocal.m4: Support python cross compiling.
7453
7454         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7455         Add mingw section.
7456
7457 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7458
7459         * scm/output-lib.scm (chain-grob-member-functions): replace
7460         chained-callback.cc
7461
7462         * lily/chained-callback.cc (Module): remove file.
7463
7464         * lily/rest-collision.cc (force_shift_callback_rest): change to
7465         chained callback.
7466
7467         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
7468
7469         * lily/grob.cc (y_parent_positioning): remove axis argument from
7470         parent_positioning callbacks.
7471         (Grob): junk init code
7472         (get_offset): use generic property callbacks for
7473         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7474         (axis_parent_positioning): new function
7475         (axis_offset_symbol): new function
7476         (chain_offset_callback): new function
7477         (add_offset_callback): new function
7478
7479         * lily/beam.cc (rest_collision_callback): change signature; this
7480         is now a chained callback.
7481
7482         * lily/include/dimension-cache.hh (class Dimension_cache): remove
7483         callback administration.
7484
7485         * lily/simple-closure.cc: new file. Smob type that allows "grob
7486         member functions",
7487
7488             (ly:make-simple-closure FUNC A B)
7489
7490         is evaluated as (FUNC grob A B). This allows chaining of callbacks
7491         in various ways.
7492
7493         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7494         callbacks.
7495
7496         * lily/slur.cc (outside_slur_callback): take 2 arguments.
7497
7498         * lily/rest.cc (polyphonic_offset_callback): remove.
7499
7500         * lily/script-engraver.cc (try_music): remove bool* argument.
7501
7502         * scm/script.scm (default-script-alist): set quantize-position
7503         appropriately.
7504
7505         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
7506
7507         * lily/side-position-interface.cc (aligned_side): move staff
7508         position quantization from
7509         Side_position_interface::quantised_position().
7510         (quantised_position): remove
7511         
7512 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7513
7514         * input/regression/beam-quant-standard.ly: reindent, set
7515         debug-beam-quanting to #t.
7516
7517         * lily/beam-concave.cc (calc_concaveness): set concaveness to
7518         10000 if this is a "hard" concave beam.
7519
7520         * lily/beam.cc (calc_least_squares_positions): change from
7521         calc_least_squares_dy
7522         (set_stem_lengths): this is now a chained callback.
7523
7524         * lily/context-property.cc (execute_general_pushpop_property):
7525         bugfix override with procedure should have effect.
7526
7527         * scm/define-grob-properties.scm (all-internal-grob-properties):
7528         remove position-callbacks.
7529
7530         * scm/define-grobs.scm (all-grob-descriptions): use
7531         ly:make-callback-chain for positions property.
7532
7533         * scm/layout-beam.scm (check-quant-callbacks): return list of
7534         chained callbacks.
7535
7536         * scm/lily.scm (type-p-name-alist): add callback-chain
7537
7538         * lily/lily-guile.cc (type_check_assignment): type check failure
7539         is warning not message.
7540
7541         * lily/grob-property.cc (try_callback): walk callback chain if
7542         appropriate.
7543
7544         * lily/chained-callback.cc: new file. new smob type.
7545
7546         * lily/lily-guile.cc (procedure_arity): new function.
7547
7548 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7549
7550         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7551
7552 2005-10-25  John Mandereau  <john.mandereau@free.fr>
7553  
7554         * Documentation/user/instrument-notation.itely (Figured bass):
7555         describe new features
7556
7557 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7558
7559         * lily/beam.cc (calc_least_squares_dy): use property callback.
7560
7561         * lily/beam-concave.cc (calc_concaveness): use property callback.
7562
7563         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
7564
7565 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
7566
7567         * HACKING: Update.
7568
7569 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7570
7571         * scm/layout-page-layout.scm (page-headfoot): annotate
7572         pagetopspace too.
7573
7574         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
7575
7576         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7577         doesn't take y-space.
7578
7579         * scm/paper.scm (paper-alist): fix A7 dimensions. 
7580
7581 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
7582
7583         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7584         src-wildcard, remove $(wildcard).
7585
7586         * po/GNUmakefile (PO_FILES): 
7587         * ps/GNUmakefile (PS_FILES): 
7588         * tex/GNUmakefile (TEX_FILES): 
7589         * cygwin/GNUmakefile (POSTINSTALLS):
7590         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7591         some wildcard calls.
7592
7593 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7594
7595         * THANKS: add Thomas Bushnell.
7596
7597 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
7598
7599         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7600         (lilypond-main): Redirect to gui-main if 'gui is set.
7601
7602         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7603         for alternative installations kludging s/share/lib/g
7604         LILYPONDPREFIX. 
7605
7606         * SConstruct (libdir_package_version): Define.
7607
7608         * python/SConscript: 
7609         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7610         module in libdir.  
7611
7612 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7613
7614         * lily/main.cc: clarify --safe.
7615
7616 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7617
7618         * VERSION: release 2.7.14
7619         
7620         * Documentation/user/*.itely: remove minimumVerticalExtent.
7621
7622         * scm/define-grobs.scm (all-grob-descriptions): remove
7623         RemoveEmptyVerticalGroup
7624
7625         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7626
7627         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7628         compile on MOSX
7629
7630         * python/convertrules.py (conv): add rules.
7631
7632         * lily/grob.cc: remove is_empty()
7633
7634         * lily/grob-property.cc: remove add_to_list_property().
7635
7636         * scripts/convert-ly.py (datadir): add prefix switching hack to
7637         .py too.
7638
7639         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7640         space-function tweak.
7641
7642         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7643
7644         * scm/define-grob-properties.scm (all-user-grob-properties):
7645         remove callback property.
7646
7647         * lily/include/grob.hh (class Grob): remove property_callbacks_
7648         member. Properties of procedure type are assumed to be callbacks.
7649
7650         * lily/ligature-engraver.cc (override_stencil_callback):
7651         rewrite. Use noteHeadLigaturePrimitive as source.
7652
7653         * scm/define-grob-properties.scm (all-internal-grob-properties):
7654         remove ligature-primitive-callback
7655
7656         * lily/include/dimension-cache.hh (class Dimension_cache): make
7657         class, with Grob as friend.
7658
7659         * lily/grob.cc: remove set_extent_callback(), set_extent() and
7660         has_extent_callback()
7661
7662         * scm/translation-functions.scm (format-new-bass-figure): read
7663         figuredBassPlusDirection
7664
7665         * scm/define-context-properties.scm
7666         (all-user-translation-properties): add figuredBassPlusDirection.
7667
7668         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7669
7670         * lily/align-interface.cc (set_ordered): new function.
7671
7672         * lily/grob.cc (flush_extent_cache): rewrite.
7673
7674         * lily/dimension-cache.cc (Dimension_cache): cache extent as
7675         Interval pointer directly.
7676
7677         * lily/main.cc (setup_paths): insert extra / .
7678         (setup_paths): junk cff entry.
7679
7680         * lily/font-config.cc (init_fontconfig): only add type1 / otf
7681         directories.
7682
7683         * lily/axis-group-engraver.cc (finalize): remove
7684         extraVerticalExtent, minimumVerticalExtent verticalExtent.
7685
7686         * lily/grob.cc (Grob): don't set extent from ctor.
7687         (extent): use property callbacks. 
7688
7689         * lily/axis-group-interface.cc: remove set_axes() function.
7690
7691         * lily/grob-property.cc (del_property): new function.
7692
7693 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7694
7695         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7696         
7697 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7698
7699         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7700
7701 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7702
7703         * mf/SConscript: Updates.
7704
7705         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7706
7707         * stepmake/stepmake/*:
7708         * */GNUmakefile:
7709         * config.make.in:
7710         * GNUmakefile.in:
7711         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7712         from any directory in build-dir.  Cleanups.
7713
7714         * make/srcdir.make.in: Remove.
7715
7716         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7717
7718         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7719         main).
7720
7721         * lily/SConscript: Remove ttftools.
7722
7723         * SConstruct: Resurrect.
7724
7725 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7726
7727         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7728         Y coordinate. 
7729
7730         * lily/paper-book.cc (add_score_title): put Paper_score title into
7731         systems_ list.
7732
7733         * scm/translation-functions.scm (format-new-bass-figure): also
7734         allow plus in combination with _
7735
7736 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7737
7738         * VERSION: 2.7.13 released.
7739
7740         * lily/note-collision.cc (check_meshing_chords): don't wipe
7741         stencil, merely set transparent.
7742
7743         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7744         (Top): document #'callbacks.
7745         (Top): document nested \override.
7746
7747         * input/regression/figured-bass.ly: update for slash and pluses.
7748
7749         * input/regression/figured-bass-continuation-forbid.ly (Module):
7750         new file.
7751
7752         * scm/translation-functions.scm (format-new-bass-figure): use
7753         slashed-digit if diminished is set.
7754         (format-new-bass-figure): add + if 'augmented is set.
7755
7756         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7757
7758         * input/test/piano-staff-distance.ly: remove file.
7759
7760         * Documentation/user/advanced-notation.itely (Formatting cue
7761         notes): use length-fraction for making stems/beams smaller.
7762
7763         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7764         modifications.
7765
7766         * lily/new-figured-bass-engraver.cc: new property
7767         centerFiguredBassContinuations
7768
7769         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7770         use callbacks.
7771
7772         * lily/context-property.cc (execute_general_pushpop_property):
7773         robustness checks.
7774
7775         * input/regression/override-nest.ly: new file.
7776
7777         * python/convertrules.py (FatalConversionError.subber): conversion
7778         rule for #'callbacks
7779
7780         * input/regression/override-nest.ly: new function.
7781
7782         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7783         #c too. 
7784
7785         * lily/context-property.cc (lookup_nested_property): new function.
7786         (evict_from_alist): new function.
7787         (general_pushpop_property): new function.
7788         (execute_general_pushpop_property): rewrite. Support nested
7789         properties too.
7790
7791 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7792
7793         * lily/beam.cc: use length-fraction too.
7794
7795         * scm/define-grob-properties.scm (all-user-grob-properties):
7796         remove property flag-width-function
7797         (all-user-grob-properties): remove space-function.
7798
7799         * scm/layout-beam.scm: remove flag-width-function.
7800
7801         * lily/beam.cc: remove flag-width-function
7802
7803         * scm/layout-beam.scm: remove beam dir functions.
7804
7805         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7806
7807         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7808         for easier grace tweaks.
7809
7810         * lily/beam.cc: remove dir-function.
7811
7812         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7813
7814         * lily/grob.cc: remove spacing-procedure.
7815
7816         * lily/note-head.cc (calc_stem_attachment): new function.
7817         (internal_print): use callback to get glyph-name.
7818
7819         * lily/grob-property.cc (get_interfaces): new function.
7820
7821         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7822
7823         * lily/stem.cc (calc_stem_end_position): new function.
7824         (calc_length): new function.
7825         document details for stem.
7826         remove Stem::get_direction()
7827
7828         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7829
7830         * lily/grob-property.cc (set_callback): new function.
7831
7832         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7833
7834         * lily/item-scheme.cc: new file.
7835
7836         * lily/bar-line.cc (before_line_breaking): remove function.
7837         remove bar-size-procedure, break-glyph-function
7838
7839         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7840
7841         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7842
7843         * lily/system-start-delimiter.cc (print): suicide from
7844         here. Remove after_line_breaking_callback.
7845
7846         * lily/script-interface.cc (calc_direction): use callback for direction.
7847
7848         * lily/side-position-interface.cc (aligned_side): don't use
7849         Side_position_interface::get_direction directly. Use callback. 
7850
7851         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7852         calculate stencil.
7853         (get_print_stencil): rename from get_stencil: create stencil with
7854         transparency, color and cause. 
7855
7856         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7857
7858         * python/convertrules.py (conv): insert temporary warning rule.
7859
7860         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7861
7862         * lily/grob-property.cc (try_callback): remove marker if applicable.
7863
7864         * lily/grob.cc: elucidate doc about after/before-line-breaking
7865
7866         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7867
7868         * lily/stem.cc (height): idem.
7869
7870         * lily/stem-tremolo.cc: idem.
7871
7872         * lily/slur.cc (height): don't use get_uncached_stencil()
7873
7874         * lily/rest.cc (y_offset_callback): use offset callback
7875         iso. after-line-breaking callback.
7876
7877         * lily/grob.cc: change after/before-line-breaking-callback to
7878         after/before-line-breaking dummy properties.
7879
7880         * lily/include/grob.hh: remove Grob_status.
7881
7882         * scm/define-context-properties.scm
7883         (all-user-translation-properties): remove verticalAlignmentChildCallback
7884
7885         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7886         (calc_direction): use callback
7887         (calc_positions): use callback.
7888
7889         * lily/tie.cc (calc_direction): use callback. Only call parent
7890         positioning for more than one tie.
7891
7892         * lily/tie-column.cc (calc_positioning_done): use callback
7893
7894         * lily/slur-scoring.cc (calc_control_points): use callback
7895
7896         * lily/slur.cc (calc_direction): use callback.
7897
7898         * lily/note-collision.cc (force_shift_callback): remove.
7899
7900         * lily/dot-column.cc (force_shift_callback): remove. Use
7901         other_axis_parent_positioning.
7902
7903         * lily/grob.cc (other_axis_parent_positioning): new function.
7904         (same_axis_parent_positioning): new function
7905
7906         * lily/align-interface.cc (alignment_callback): remove function.
7907
7908         * lily/note-collision.cc (calc_positioning_done): use callback.
7909
7910         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7911         (calc_direction): idem.
7912         remove print function.
7913
7914         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7915
7916         * lily/dot-column.cc (calc_positioning_done): use callback.
7917
7918         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7919
7920         * lily/beam.cc (calc_direction): use pseudo-property for beam
7921         direction callback.
7922         (calc_positions): use callback 
7923
7924         * lily/align-interface.cc (calc_positioning_done): use
7925         callback. Fold fixed  distance and normal alignment in one function.
7926
7927         * lily/stem.cc (calc_stem_end_position): use callback.
7928         (calc_positioning_done): idem.
7929         (calc_direction): idem.
7930         (calc_stem_end_position): idem
7931         (calc_stem_info): idem.
7932
7933         * lily/grob-property.cc (get_property_data): new function: 
7934         (try_callback): new function.
7935
7936         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7937         callbacks property.
7938
7939         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7940
7941 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7942
7943         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7944         tie
7945         has no heads.
7946         
7947         * lily/include/*.hh (Module): compile fixes.
7948
7949 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7950
7951         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7952         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7953         instead of (char-syntax nil), thanks to Milan Zamazal.
7954
7955 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7956
7957         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7958         dist.
7959
7960         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7961         themselves.
7962
7963 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7964
7965         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7966         add class_name() method.
7967
7968         * lily/music-scheme.cc: remove ly:music-name.
7969
7970 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7971
7972         * cygwin/postinstall-lilypond.sh: Remove cruft.
7973
7974         * cygwin/postremove-lilypond.sh: Remove.
7975
7976         * cygwin/GNUmakefile (default): Remove postremove rules.
7977
7978 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7979
7980         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7981         even header too.
7982         
7983         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7984         MacOS 9 users.
7985
7986         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7987         consider break index for broken spanner.
7988
7989         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7990         characters from string before splitting.
7991
7992 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7993
7994         * scm/framework-ps.scm (output-preview-framework): use
7995         is-book-title to determine whether to chop off the booktitle.
7996
7997         * lily/paper-book.cc (systems): init from book-title-properties
7998         (add_score_title): init score-title-properties.
7999
8000         * ly/paper-defaults.ly: add {score,book}-title-properties.
8001
8002         * scm/document-backend.scm (lookup-interface): error message if
8003         using unknown interface.
8004
8005         * lily/volta-bracket.cc (after_line_breaking): new function. Set
8006         edge-height.
8007
8008         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8009         make_bracket.
8010         (make_bracket): new function.
8011
8012         * scm/lily.scm (define-scheme-options): add paper-size option.
8013
8014         * ly/declarations-init.ly (laissezVibrer): get paper size from
8015         -dpaper-size
8016
8017         * scm/translation-functions.scm: use \fontsize for changing the
8018         fontsize.
8019
8020         * scm/define-grobs.scm (all-grob-descriptions): set
8021         between-length-limit to 1.0
8022
8023         * lily/tie-helper.cc: add between_length_limit_ detail property.
8024
8025         * mf/feta-bolletjes.mf: typos.
8026
8027         * lily/note-head.cc (internal_print): don't shadow idx
8028         parameter. This fixes wrong attachment for do shape heads.
8029
8030 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8031
8032         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8033
8034         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8035
8036         * scm/layout-slur.scm: rename from slur.scm
8037
8038         * scm/layout-page-layout.scm: rename from page-layout.scm
8039
8040         * scm/layout-beam.scm: rename from beam.scm
8041
8042         * scm/define-grob-interfaces.scm (bass-figure-interface): add
8043         bass-figure-interface
8044
8045         * lily/new-figured-bass-engraver.cc (process_music): add
8046         implicitBassFigures property.
8047         
8048         * scm/define-markup-commands.scm (pad-x): new markup.
8049
8050         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8051         minimumVerticalExtent on FiguredBass context.
8052
8053         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8054         case the continuation crosses a line break.
8055
8056 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8057
8058         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8059         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
8060         absolute file name bug.  
8061
8062 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8063
8064         * VERSION (PACKAGE_NAME): release 2.7.12
8065
8066         * input/regression/figured-bass-continuation-center.ly: new file.
8067
8068         * input/regression/beam-outside-beamlets.ly: new file.
8069
8070         * lily/beam.cc (set_beaming): don't clip edges.
8071         (connect_beams): don't clip edges.
8072
8073         * lily/beaming-info.cc (clip_edges): new function.
8074
8075         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8076
8077         * Documentation/user/instrument-notation.itely (Figured bass):
8078         demonstrate extenders, update seealso links.
8079
8080         * scm/titling.scm (marked-up-headfoot): change tagline
8081         handling. tagline = ##f will blank the tagline as well.
8082
8083 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8084
8085         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8086
8087         * lily/new-figured-bass-engraver.cc (struct
8088         New_figured_bass_engraver): add new_music_found_ member.
8089
8090         * lily/lilypond-version.cc (Lilypond_version): deal with
8091         incorrectly formatted version strings. 
8092
8093         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8094         New_figured_bass_engraver by default.
8095
8096         * lily/ttf.cc (print_trailer): only define glyph names when
8097         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8098
8099 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8100
8101         * lily/horizontal-bracket.cc (make_bracket): new function.
8102
8103         * scm/define-grobs.scm (all-grob-descriptions): new grobs
8104         NewBassFigure, BassFigureBracket, BassFigureContinuation,
8105         BassFigureLine, BassFigureAlignment
8106
8107         * lily/new-figured-bass-engraver.cc (process_music): new file.
8108
8109         * lily/figured-bass-continuation.cc: new file.
8110
8111         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8112         new file.
8113
8114 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
8115
8116         * scripts/lilypond-book.py: Bug fix, put the quote around the
8117         actual score for LaTeX documents.
8118
8119         * scm/define-grobs.scm (all-grob-descriptions): Change
8120         collapse-height of the SystemStartBracket grob to 5.0, 
8121         so the bracket disappears for single stave score lines (similarly
8122         to SystemStartBraces). 
8123
8124         * Documentation/user/advanced-notation.itely (Polymetric
8125         notation): Clarify the use of compressMusic.
8126
8127         * Documentation/user/basic-notation.itely (Grace notes): Clarify
8128         that the grace spacer note in other staves need the same duration
8129         and document the stroke-style property.
8130
8131 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8132
8133         * Documentation/user/global.itely (Vertical spacing): document
8134         alignment-extra-space and fixed-alignment-extra-space.
8135
8136         * Documentation/topdocs/NEWS.tely (Top): add entry.
8137
8138         * input/regression/alignment-vertical-spacing.ly: new file.
8139
8140         * python/convertrules.py (conv): add rule.
8141
8142         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8143
8144         * lily/align-interface.cc (stretch_after_break): new
8145         function. Read fixed-alignment-extra-space property.
8146         (align_elements_to_extents): read alignment-extra-space property.
8147
8148         * lily/lily-guile.cc (robust_scm2dir): new function.
8149
8150         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8151         (annotate-space-left): new function. Annotate space left on page. 
8152         (annotate-y-interval): new function.
8153         (paper-system-annotate-last): new function. Annotate bottom-space.
8154
8155         * mf/feta-beugel.mf (y): 
8156
8157 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8158
8159         * VERSION (PACKAGE_NAME):  release 2.7.11
8160
8161         * scm/lily-library.scm (interval-translate): new function
8162         (interval-center): new function. 
8163
8164         * scm/page-layout.scm (paper-system-annotate): new function. Add
8165         arrows for dimensions.
8166  
8167         * scm/stencil.scm (dimension-arrows): new function.
8168
8169         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8170
8171         * input/regression/page-spacing.ly: add annotatespacing
8172
8173         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8174         (LY_DEFINE): new function ly:paper-system-set-property!
8175
8176         * Documentation/user/global.itely (Paper size): explain how to add
8177         sizes.
8178
8179         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8180         correspond to GS's definition.
8181
8182         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8183         tuplet bracket.
8184         (print): only connect to next bracket if the next one is alive.
8185         (print): set padding to 0.0 if the bound is a breakable
8186         column. This makes tupletFullLength brackets reach up to the staff
8187         line if it doesn't connect to the next line.
8188
8189 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8190
8191         * lily/bar-number-engraver.cc: correct docs.
8192
8193         * scm/output-lib.scm (first-bar-number-invisible): rename from
8194         default-bar-number-visibility
8195
8196 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8197
8198         * scm/define-music-properties.scm (all-music-properties): remove
8199         predicate property.
8200
8201 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
8202
8203         * po/fi.po: refresh.
8204
8205 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8206
8207         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8208         superfluous s1.
8209         (disappear): bugfix.
8210
8211         * lily/stem-tremolo.cc (raw_stencil): read slope property.
8212
8213         * lily/include/paper-system.hh (class Paper_system): remove
8214         staff_extents_ member.
8215
8216         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8217
8218         * lily/include/paper-system.hh (class Paper_system): remove
8219         number_ variable. Remove is_title_. Remove break_before_penalty_
8220
8221         * lily/paper-book.cc (systems): use 'number property iso. number_
8222         member.
8223
8224         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8225         remove ly:paper-system-number.
8226
8227         * scm/lily-library.scm (paper-system-title?): new function.
8228
8229         * lily/book.cc (process): bugfix: flip ?: cases. 
8230
8231         * Documentation/user/changing-defaults.itely (Difficult tweaks):
8232         add outputProperty.
8233
8234         * ly/music-functions-init.ly: add outputProperty music function.
8235
8236         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8237
8238         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8239         and next-padding.
8240         (optimal-page-breaks): rename from ly:optimal-page-breaks.
8241
8242         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8243
8244         * lily/paper-system.cc (internal_get_property): new function.
8245
8246         * Documentation/user/global.itely (Vertical spacing): refer to
8247         page-spacing.ly
8248
8249         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8250         pagetopspace
8251
8252         * input/regression/page-spacing.ly: new file.
8253
8254         * input/regression/page-top-space.ly: new file.
8255
8256         * lily/spacing-spanner.cc: cmath -> math.h
8257
8258         * lily/paper-system.cc (read_left_bound): new function. Read
8259         line-break-system-details from left bound to determine extents.
8260  
8261         * Documentation/user/programming-interface.itely (Using LilyPond
8262         syntax inside Scheme): change applyxxx -> applyXxx.
8263
8264         * ly/music-functions-init.ly: add outputProperty music function.
8265
8266         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8267
8268         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8269
8270         * python/convertrules.py (conv): rule
8271
8272         * ly/music-functions-init.ly: applyxxx -> applyXxx
8273
8274         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8275         TabVoice to Voice.
8276
8277 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8278
8279         * flower/include/real.hh: include <math.h> iso. <cmath>
8280
8281         * flower/include/offset.hh: include real.hh
8282
8283 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8284
8285         * Documentation/user/changing-defaults.itely (Difficult tweaks):
8286         fix example, now that 'interfaces is no longer directly available.
8287
8288         * lily/book.cc (process): don't crash if paper == NULL.
8289
8290         * po/fr.po: update.
8291
8292 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8293
8294         * scm/define-music-types.scm (music-descriptions): set length and
8295         start-callback for QuoteMusic
8296
8297 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
8298
8299         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8300         arguments. Fixes compilation error with gcc 3.3.
8301
8302 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8303
8304         * VERSION: release 2.7.10
8305
8306         * stepmake/stepmake/python-module-rules.make
8307         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
8308
8309         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8310         real.hh
8311
8312 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8313
8314         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8315         -Werror. Otherwise GCC barfs over various optimizations.
8316
8317         * scm/define-grob-properties.scm (all-internal-grob-properties):
8318         add note-head property
8319
8320         * Documentation/user/instrument-notation.itely (Laissez vibrer
8321         ties): new node.
8322
8323         * input/regression/laissez-vibrer-ties.ly: new file.
8324
8325         * lily/laissez-vibrer-engraver.cc: new file.    
8326
8327         * lily/include/tie-column-format.hh: new file.
8328
8329         * lily/tie-column-format.cc: new file. 
8330
8331         * lily/tie-column.cc (set_manual_tie_configuration): new function.
8332
8333         * lily/laissez-vibrer-tie.cc: new file.
8334
8335         * lily/include/laissez-vibrer-tie.hh: new file.
8336
8337         * ly/engraver-init.ly: add Laissez_vibrer_engraver
8338
8339         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8340
8341         * scm/define-grobs.scm (all-grob-descriptions): add
8342         LaissezVibrerTie, LaissezVibrerTieColumn
8343
8344         * lily/tie-column.cc (set_tie_config_directions): new function
8345         (final_shape_adjustment): new function.
8346         (shift_small_ties): new function.
8347
8348         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8349
8350         * lily/include/tie.hh (struct Tie_details): add x_gap_
8351         (struct Tie_configuration): add head_position_
8352
8353         * lily/tie-column.cc (set_chord_outline): new function.
8354
8355         * mf/cmr.enc.in:  remove file.
8356
8357 2005-09-11  Graham Percival  <gpermus@gmail.com>
8358
8359         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
8360
8361 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8362
8363         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8364         reduce aliasing effects.
8365
8366         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8367         box in skyline.
8368
8369 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8370
8371         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8372
8373         * flower/include/real.hh: std::fabs too.
8374
8375 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8376
8377         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
8378
8379         * lily, flower: Include C++ iso C headers.  Import namespace std
8380         throughout.
8381
8382         * lily/side-position-interface.cc: 
8383         * lily/scm-hash.cc: 
8384         * lily/note-head.cc: 
8385         * lily/include/includable-lexer.hh: 
8386         * flower/include/string-data.icc: Remove using std::*.
8387
8388         * lily, flower: Include C++ iso C headers.  Import namespace std
8389         throughout.
8390
8391         * lily/side-position-interface.cc: 
8392         * lily/scm-hash.cc: 
8393         * lily/note-head.cc: 
8394         * lily/include/includable-lexer.hh: 
8395         * flower/include/string-data.icc: Remove using std::*.
8396
8397         * Documentation/user/instrument-notation.itely (Entering lyrics):
8398         Multiple latin-1->utf-8 conversion fix.
8399
8400         * Documentation/user/*tely: Update Emacs cookie to utf-8.
8401
8402 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8403
8404         * lily/tie.cc (get_configuration): also avoid dots for non-space
8405         situations.
8406
8407 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8408
8409         * Documentation/user/instrument-notation.itely: Bugfix.
8410
8411 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8412
8413         * tex/GNUmakefile: don't install texinfo.tex
8414
8415         * tex/ : cleanup: remove unused files.
8416
8417         * lily/general-scheme.cc: remove my_{isinf,isnan}.
8418
8419         * flower/include/real.hh: using std::{isnan,isinf}
8420         
8421         * VERSION (PATCH_LEVEL): release 2.7.9
8422
8423 2005-09-05  Graham Percival  <gpermus@gmail.com>
8424
8425         * Documentation/user/ instrument-notation.itely,
8426         advanced-notation.itely: minor tweaks.
8427
8428         * input/test/script-chart.ly: add item padding.
8429
8430 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8431
8432         * flower/offset.cc: use math.h iso. <cmath>
8433
8434         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8435         of IE users.
8436
8437         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8438         (widen-left-stencil-edges): new function. Fix alignment problems
8439         with LaTeX includegraphics.
8440
8441         * lily/text-interface.cc (interpret_markup): use abort().
8442
8443 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8444
8445         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8446
8447         * lily/tie.cc (get_configuration): update bezier shape as we
8448         change Y positions.
8449         (get_configuration): don't move large ties if we're outside of the
8450         staff.
8451
8452 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8453
8454         * scm/define-markup-commands.scm (strut): swap X and Y dims.
8455         
8456 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
8457
8458         * .cvsignore: Add auto-generated configure files and then some.
8459
8460 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8461
8462         * scm/define-grobs.scm (DynamicLineSpanner): Add
8463         X-extent-callback.  Fixes hairpin-slur collision.
8464
8465 2005-08-31  Graham Percival  <gpermus@gmail.com>
8466
8467         * Documentation/user/advanced-notation.itely,
8468         basic-notation.itely: minor changes.
8469
8470 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
8471
8472         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8473         \linebreak between each .eps file if \betweenLilyPondSystem is
8474         undefined. 
8475
8476         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8477         music): Document the \linebreak
8478
8479         * Documentation/user/lilypond-book.itely,
8480         input/tutorial/lbook-latex-test.tex,
8481         Documentation/user/examples.itely: Remove \usepackage{graphics}
8482
8483 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8484
8485         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8486
8487         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8488         compat bugfix.
8489
8490         * scripts/lilypond-book.py (PREAMBLE_LY): define
8491         inside-lilypond-book
8492         (modify_preamble): new function. Insert \RequirePackage{graphics}
8493         when no {graphics found in preamble.  
8494
8495 2005-08030  Graham Percival  <gpermus@gmail.com>
8496
8497         * Documentation/user/basic-notation.itely, global.itely,
8498         tutorial.itely: misc small changes.
8499
8500 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8501
8502         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8503         VERSION.
8504
8505 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8506
8507         * lily/tie-column.cc (new_directions): put Tie down on center
8508         staff line. 
8509
8510         * lily/script-interface.cc (before_line_breaking): use
8511         Grob::programming_error
8512
8513         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8514
8515         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8516         of splitext.
8517
8518 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8519
8520         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8521
8522 2005-08-29  Werner Lemberg  <wl@gnu.org>
8523
8524         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8525         the `*.scale.pfa' files to avoid warnings.
8526
8527 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8528
8529         * lily/tempo-performer.cc (process_music): idem.
8530
8531         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8532
8533 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8534
8535         * Documentation/user/advanced-notation.itely (Text markup): not a
8536         fragment.
8537
8538         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8539
8540         * lily/staff-performer.cc (initialize): add tempo/name to
8541         audio_staff_
8542
8543
8544 2005-08-26  Graham Percival  <gpermus@gmail.com>
8545
8546         * Documentation/user/advanced.itely: add text-only example.
8547
8548         * Documentation/user/invoking.itely: add index entries for
8549         convert-ly.
8550
8551         * Documentation/user/ tutorial.itely, basic-notation.itely:
8552         small fixes suggested by Steve D.  Thanks!
8553
8554 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8555
8556         * input/regression/markup-bidi-pango.ly: new file.
8557
8558         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8559         standard. Remove #ifdef. Remove memleak.
8560         (text_stencil): use text_dir to decide how to composite items.
8561         (text_stencil): determine uniform text direction for the entire
8562         string.
8563
8564         * scripts/lilypond-book.py (output_name): remove
8565         latex_filter_cmd. Non-portable to non-Unix systems. 
8566         (get_latex_textwidth): use File.write and os.unlink() instead.
8567
8568         * THANKS: add Vicente & Trevor.
8569
8570         * lily/grob.cc (discretionary_processing): look up origin for
8571         programming_error too. 
8572
8573         * input/regression/tie-broken.ly: new file.
8574
8575         * lily/tie-column.cc (set_chord_outlines): set outline for line
8576         break case too.
8577         
8578 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8579
8580         * lily/pango-font.cc (text_stencil): don't translate glyphs in
8581         unscaled transform, just translate stencils.
8582
8583         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
8584         MIDI.
8585
8586         * scm/define-markup-commands.scm (wordwrap-string): use
8587         text-direction
8588         (wordwrap-stencils): idem.
8589         (line): idem.
8590         (fill-line): idem.
8591         (wordwrap-stencils): translate last line to right for
8592         text-direction = LEFT.
8593
8594         * scm/define-grob-properties.scm (all-user-grob-properties): add
8595         text-direction.
8596
8597 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8598
8599         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8600         when copying a Lily_parser object.
8601
8602 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8603
8604         * scm/define-markup-commands.scm (null): add null markup.
8605
8606 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
8607
8608         * lily/item.cc: Add documentation of center-invisible
8609
8610 2005-08-24  Graham Percival  <gpermus@gmail.com>
8611
8612         * Documentation/user/advanced-notation.itely: add info about
8613         raising text.
8614
8615         * Documentation/user/programming-interface.itely: fix example
8616         involving raised text.
8617
8618 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8619
8620         * lily/beam.cc (print): fix X start/end points of isolated
8621         beamlets.
8622
8623         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8624
8625         * lily/multi-measure-rest.cc (set_text_rods): new function.
8626
8627         * lily/vertical-align-engraver.cc (process_music): call
8628         Align_interface::set_axis(). This forces #'elements to be ordered,
8629         preventing random vertical reordering of staves.
8630
8631         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8632         add avoid-slur property. 
8633
8634         * Documentation/user/basic-notation.itely (Measure repeats): add
8635         countPercentRepeats example.
8636
8637         * Documentation/user/advanced-notation.itely (Other text markup
8638         issues): remove remark about normal-font.  We have \normal-text
8639
8640         * input/regression/tie-chord.ly: add note about remaining bugs.
8641
8642         * lily/tie.cc (print): try Tie_column::set_directions () if
8643         control-points not yet defined.
8644
8645 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8646
8647         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8648         extent. This fixes braces falling out of the EPS bbox.
8649
8650         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8651         exactly to bbox.
8652
8653 2005-08-23  Graham Percival  <gpermus@gmail.com>
8654
8655         * {various} : change #up->#UP and #down->#DOWN.
8656
8657         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8658
8659         * Documentation/user/advanced-notation.itely: clarify
8660         what objects handles text on a multimeasure rest.
8661
8662 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8663
8664         * VERSION (PATCH_LEVEL): release 2.7.7
8665
8666 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8667
8668         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
8669
8670         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8671
8672         * input/regression/*.ly: formatting clean-up. Default layout
8673         before music expression.
8674
8675         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8676         romanze28-2 example.
8677
8678         * scm/ps-to-png.scm: remove dir-re function.
8679         (make-ps-images): generate page names, instead of globbing them.
8680         This brings down LilyPond memory usage for make web by a factor
8681         10. 
8682
8683         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8684         don't use glob. With 3000 files, globbing
8685         Documentation/user/out-www/ can take too much time. 
8686         
8687         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8688
8689         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8690
8691         * input/regression/tie-manual.ly: new file
8692
8693         * input/regression/tie-chord.ly: update.
8694
8695         * flower/include/interval.hh (struct Interval_t): 
8696
8697         * lily/tie.cc (distance): new function 
8698         (height): new function.
8699         (init): new function
8700         (Tie_details): new struct.
8701
8702         * lily/skyline.cc (skyline_height): new function.
8703
8704         * lily/tie-column.cc (set_chord_outlines): new function.
8705         (new_directions): read tie-configuration
8706
8707         * lily/skyline.cc: fix ASCII art.
8708         
8709 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8710
8711         * python/convertrules.py (string_or_scheme): Fix spelling error
8712
8713 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8714         
8715         * lily/tie-column.cc (set_directions): set directions only once.
8716         (add_configuration): new function.
8717
8718         * lily/tie.cc (set_control_points): new function
8719
8720         * lily/tie-column.cc (new_directions): new function.
8721
8722         * ly/music-functions-init.ly: set 'pitch property
8723         iso. trill-pitch. This makes \relative work with \pitchedTrill
8724
8725         * lily/tie.cc (get_configuration): new function. Don't generate
8726         control points, rather, generate configuration.
8727         remove head-pair property.
8728
8729         * lily/include/tie.hh (struct Tie_configuration): new struct.
8730
8731 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8732
8733         * Documentation/topdocs/NEWS.tely: clarify.
8734
8735 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8736
8737         * lily/tie.cc: remove minimum-length
8738
8739         * scm/define-grob-properties.scm (all-user-grob-properties):
8740         remove staffline-clearance, y-offset 
8741
8742         * input/regression/tie-dots.ly (Module): remove.
8743
8744         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8745         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8746
8747         * input/regression/tie-single.ly: new file.
8748
8749 2005-08-21  Graham Percival  <gpermus@gmail.com>
8750
8751         * ly/bagpipe.ly: fix compile problem.
8752
8753 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8754
8755         * lily/midi-item.cc (name): new method.
8756
8757         * lily/staff-performer.cc (acknowledge_audio_element): use
8758         signature of baseclass.
8759
8760         * lily/engraver-group.cc (do_announces): move recursion call out
8761         of while loop. 
8762
8763         * lily/drum-note-performer.cc (class Drum_note_performer): use
8764         process_music everywhere.
8765
8766         * ly/performer-init.ly: add default children everywhere.
8767
8768         * lily/paper-book.cc (output): call paper-book-write-midis
8769         directly: always write MIDI, even if no \layout {} block. 
8770
8771 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8772
8773         * VERSION (PACKAGE_NAME): release 2.7.6
8774
8775         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8776         about not being able to handle repeat.
8777
8778 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8779
8780         * Documentation/user/examples.itely (Piano templates):
8781         * lily/include/performer-group.hh: Remove last traces of
8782         Performer_group_performer.  Fixes make web.
8783
8784 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8785
8786         * Documentation/user/examples.itely (Piano templates): change
8787         Engraver_group_engraver -> Engraver_group
8788
8789         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8790         scm_stand_in_procs is not weak_any.
8791
8792         * lily/volta-bracket.cc (print): don't use strcmp().
8793
8794         * lily/volta-engraver.cc (process_music): use
8795         Text_interface::is_markup() for setting the 'text property of the
8796         volta bracket.
8797
8798         * input/mutopia/claop.py (accents): update syntax to 2.6
8799
8800         * scm/define-context-properties.scm
8801         (all-user-translation-properties): add countPercentRepeats.
8802
8803         * Documentation/user/basic-notation.itely (Measure repeats): add
8804         isolated percent example.
8805
8806 2005-08-18  Graham Percival  <gpermus@gmail.com>
8807
8808         * input/ {various}: change direction #1, #-1 to
8809         #up/#down or \fooUp, \fooDown.
8810
8811         * Documentation/user/music-glossary.tely: #-1 to #down.
8812
8813         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8814         to #up, #-1 to #down.
8815
8816 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8817
8818         * lily/include/engraver-group.hh: rename.
8819
8820         * lily/include/performer-group.hh: rename.
8821
8822 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8823
8824         * input/test/script-abbreviations.ly: Removed some old LaTeX
8825         left overs.
8826
8827 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8828
8829         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8830         Remove functions.  Remove if 1: constructs, reindent.
8831
8832         * scripts/convert-ly.py (add_version): Add functions from
8833         convertrules.py
8834
8835         * scm/script.scm (default-script-alist):
8836         s/priority/script-priority.  Fixes script stacking.  Backportme.
8837         (Fermata): Very low priority.
8838
8839 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8840
8841         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8842
8843         * input/regression/slur-script.ly: remove padding tweaks. Add
8844         comment strings.
8845
8846         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8847         time sigs and related stuff.
8848
8849         * scm/define-grob-properties.scm (all-user-grob-properties): add
8850         @code{} tags to property description.
8851
8852         * lily/include/line-group-group-engraver.hh (Module): remove file.
8853
8854         * python/convertrules.py (conv): add rule for
8855         Engraver_group_engraver -> Engraver_group.
8856
8857         * lily/include/performer-group-performer.hh: analogous.
8858
8859         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8860
8861         * lily/context-def.cc (instantiate): check for
8862         Engraver_group_engraver and Performer_group_performer not
8863         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8864  
8865 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8866
8867         * input/les-nereides.ly: Remove three fingering tweaks, update
8868         remaining one.
8869
8870         * input/regression/slur-script-inside.ly: Update, fix doc.
8871
8872         * scm/script.scm: Update to avoid-slur.
8873
8874         * scm/define-grob-properties.scm (avoid-slur): New property.
8875
8876         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8877         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8878         outside_slur_callback if avoid-slur != #'inside.
8879
8880         * scm/define-grobs.scm (Fingering, Textscript): No
8881         inside-slur/outside-slur preference.
8882         (DynamicLineSpanner): Always outside slur.
8883
8884         * input/regression/slur-script.ly: More tests.
8885
8886 2005-08-17  Graham Percival  <gpermus@gmail.com>
8887
8888         * Documentation/user/lilypond-book: fix notime entry.
8889
8890         * Documentation/user/advanced-notation.itely: add info on
8891         getting an I rehearsal mark.
8892
8893         * Documentation/user/putting.itely: reinstate "I", re-enforce
8894         the fact that \override numbers are the result of
8895         experimentation and personal taste.
8896
8897         * Documentation/user/invoking.itely: update convert-ly bugs.
8898
8899 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8900
8901         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8902         to #t.
8903
8904         * lily/timing-translator.cc (initialize): don't initialize timing.
8905
8906         * input/regression/stem-spacing.ly (Module): remove file.
8907
8908         * input/regression/spacing-stick-out.ly: specify Score context for
8909         \override
8910
8911         * input/regression/clefs.ly: remove spurious {}s 
8912
8913 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8914
8915         * Documentation/topdocs/NEWS.tely,
8916         input/regression/repeat-percent-count.ly: clarify a bit.
8917
8918 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8919
8920         * input/no-notation/display-lily-tests.ly: delete
8921         display-lily-init call.
8922
8923         * ly/music-functions-init.ly (displayLilyMusic): move
8924         display-lily-init call at top level, so that the user should not
8925         have to call it.
8926
8927         * scm/define-music-display-methods.scm (note-name->lily-string):
8928         retrieve note names directly from pitchnames using new function `rassoc'.
8929         (display-lily-init): note names list construction removed.
8930
8931 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8932
8933         * THANKS: spello.
8934
8935         * lily/lily-parser.cc (get_header): copy module, instead of
8936         returning it.
8937
8938         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8939         counters.
8940
8941         * Documentation/user/basic-notation.itely (Measure repeats): add
8942         links to Counter grobs.
8943
8944         * scm/define-grobs.scm (all-grob-descriptions): add
8945         DoublePercentRepeatCounter
8946         (all-grob-descriptions): add PercentRepeatCounter
8947
8948         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8949         also create counter grobs.
8950
8951         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8952         return grob without space-alist.
8953
8954         * input/proportional.ly: tune staff-padding.
8955
8956         * input/regression/repeat-percent-count.ly: new file. 
8957
8958 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8959
8960         * input/no-notation/display-lily-tests.ly: moved from
8961         input/regression/ to input/no-notation. Be sure to call
8962         `display-lily-init' before trying to use the display function.
8963
8964 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8965
8966         * scripts/lilypond-book.py (option_definitions): Don't localize
8967         the empty string. Fixes bug when --psfonts was used with
8968         non-English locale.
8969
8970 2005-08-15  Graham Percival  <gpermus@gmail.com>
8971
8972         * lily/tuplet-bracket.cc: simple build fix.
8973
8974         * Documentation/user/putting.itely: use "we" instead of "I".
8975
8976         * Documentation/user/basic-notation.itely: cautionary accidentals
8977         work with naturals, too.
8978
8979 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8980
8981         * lily/tuplet-bracket.cc (calc_position_and_height): add
8982         staff-padding support.
8983
8984         * input/proportional.ly: set staff-padding.
8985         
8986         * VERSION (PATCH_LEVEL): release 2.7.5
8987
8988         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8989         fixes. Remove tweaks.
8990
8991         * input/regression/tuplet-slope.ly: add a test case.
8992
8993         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8994         erroneous fix. Add spanner bounds to offset array with relative X
8995         positions.
8996
8997         * ly/engraver-init.ly: add Rest_engraver only once.
8998
8999         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
9000         (*parser*) lookup if (*parser*) != #f.
9001
9002 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
9003
9004         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
9005         Cut-and paste update.
9006
9007         * input/regression/slur-script.ly: Add example of reverting
9008         inside-slur for fingering.
9009
9010         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
9011         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
9012
9013         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
9014         outside_slur_callback if inside-slur == #f (as opposed to unset).
9015
9016 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9017
9018         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
9019         encoding files are already removed.
9020
9021 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
9022
9023         * Documentation/user/advanced-notation.itely (Instrument names):
9024         Document a workaround for instrument names that collide with
9025         system start braces/brackets.
9026
9027 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9028
9029         * lily/rest-collision.cc (do_shift): spello.
9030
9031         * input/proportional.ly: use #'used property. Set break-overshoot
9032         property.
9033
9034         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
9035
9036         * lily/paper-column.cc: add #'used property
9037
9038         * lily/mark-engraver.cc (stop_translation_timestep): set grob
9039         array for staves found.
9040
9041         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
9042         array for stavesFound.
9043
9044         * lily/staff-spacing.cc (next_note_correction): add fixed and
9045         space to calling convention. This fixes spacing of accidentals
9046         after barlines.
9047
9048         * input/regression/spacing-accidental-stretch.ly: add barline -
9049         accidental case.
9050
9051         * scm/framework-ps.scm (page-header): add version number to
9052         creator
9053         (eps-header): idem.
9054
9055         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
9056         
9057 2005-08-13  Graham Percival  <gpermus@gmail.com>
9058
9059         * Documentation/user/global.itely: add "fit as much as
9060         possible onto this page" example (Vertical spacing).
9061
9062 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
9063
9064         * *: Nitpick run.
9065
9066         * buildscripts/fixcc.py: Fixes.
9067
9068 2005-08-12  Graham Percival  <gpermus@gmail.com>
9069
9070         * Documentation/user/advanced-notation.itely: add markup
9071         example to Text spanners.
9072
9073 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
9074
9075         * Documentation/user/basic-notation.itely (Ties): Add example of
9076         tying a tremolo to a chord. Thanks to Steve Doonan. 
9077
9078         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
9079         properties and move tieMelismaBusy to the list of written
9080         properties. 
9081
9082 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
9083
9084         * po/TODO: suggest to use a dedicated tool like kbabel.
9085
9086         * po/fi.po: update using kbabel.
9087
9088 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9089
9090         * *: Remove obsolete files.  Nitpick run.
9091
9092         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
9093
9094 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
9095
9096         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
9097         too.
9098
9099         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
9100
9101         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
9102         whitespace as symbol separator.
9103
9104         * lily/side-position-interface.cc: Add slur-padding.
9105
9106         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
9107         quite a large fix, and it never worked in a stable release; so not
9108         really a regression.
9109
9110         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
9111         Update cut and paste code from Slur_engraver.
9112
9113         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9114         Add.
9115
9116         * scm/define-grobs.scm (DynamicLineSpanner): Add
9117         dynamic-line-spanner-interface.
9118         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
9119
9120 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9121
9122         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
9123         to_boolean () so that non-set 'inside-slur means false.
9124
9125         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
9126         slur has control-points.  Skip script without direction.  Always
9127         do_shift if script inside slur, even if slur not contained in
9128         script y-extent.  Increment k in loop.
9129
9130 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
9131
9132         * scm/define-markup-commands.scm: Improved regexp to search for
9133         EPS bounding boxes and corrected call to ly:warning.
9134
9135 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9136
9137         * Documentation/user/programming-interface.itely (Displaying music
9138         expressions): doc for \displayLilyMusic. Also some precisions in
9139         "Markup construction in Scheme"
9140
9141 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
9142
9143         * scm/define-markup-commands.scm (normal-text): Added 2 new
9144         markup commands, \normal-text and \medium (the latter thanks to
9145         Bruce Fairchild). 
9146
9147 2005-08-08  Graham Percival  <gpermus@gmail.com>
9148
9149         * Documentation/user/programming-interface.itely: fix @{ @}.
9150
9151         * scm/define-markup-commands.scm: add linewidth info to
9152         \justify and \wordwrap, add "upright is the opposite of italic".
9153
9154         * Documentation/user/advanced-notation.itely: shaped->shape,
9155         add (cons (markup "foo")) type of example to text markup,
9156         reword multi-measure rests section.
9157
9158         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
9159         comment.  No actual code was touched.
9160
9161         * Documentation/user/invoking.itely: add more info about
9162         \include.  Thanks, Bruce!
9163
9164         * THANKS: add Bruce Fairchild, alphabetise.
9165
9166         * Documentation/user/global.itely: document \score{\header{}}
9167         behavior.
9168
9169         * Documentation/user/basic-notation.itely: reword multi-measure
9170         rest discussion in Rests.
9171
9172 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
9173
9174         * Documentation/user/programming-interface.itely (Markup
9175         construction in Scheme): Corrected example and tried to clarify
9176         the implicit \line in the table.
9177
9178 2005-08-07  Graham Percival  <gpermus@gmail.com>
9179
9180         * Documentation/user/instrument-notation.itely: moved
9181         some bagpipe info back into the bagpipe section.  Somehow
9182         it ended up in the "other vocal issues" section?!  :o_O
9183
9184 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9185
9186         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
9187         directories, not paths).
9188
9189 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9190
9191         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
9192         plain emmentaler/aybabtu.  Backportme.
9193
9194         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
9195         missing dir correction.
9196
9197 2005-08-05  Graham Percival  <gperlist@shaw.ca>
9198
9199         * scm/define-markup-commands: fix reversed justify/wordwrap
9200         doc strings.
9201
9202 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
9203
9204         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
9205         lily/gregorian-ligature-engaver.cc,
9206         lily/include/ligature-engraver.hh,
9207         lily/include/coherent-ligature-engraver.hh,
9208         lily/include/gregorian-ligature-engraver.hh: make these classes
9209         truely abstract.  This should fix some internal oddities such as
9210         duplicate as well as dead translator/property declarations, and
9211         also some dead code.
9212
9213         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
9214         bugfix: avoid message "junking empty ligature" on ligature
9215         brackets by collecting dummy grobs.
9216
9217 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9218
9219         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
9220
9221         * input/proportional.ly (staffKind): bugfix.
9222         (staffKind): updates by Trevor Baca.
9223
9224         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
9225         default layout. 
9226
9227         * lily/tuplet-bracket.cc (print): check whether edge-text is a
9228         pair.
9229
9230         * lily/beam.cc (rest_collision_callback): call position_beam() if
9231         necessary.
9232
9233         * VERSION: release 2.7.4
9234
9235         * input/regression/spacing-uniform-stretching.ly: new file.
9236
9237         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
9238
9239         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
9240         contributor.
9241
9242         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
9243
9244         * input/proportional.ly: new file.
9245
9246         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
9247         columns is empty
9248
9249         * lily/tuplet-engraver.cc (finalize): new function. Reset right
9250         bounds to currentCommandColumn for the last step.
9251         (start_translation_timestep): if tupletFullLength is set, set
9252         bound to Paper Column
9253
9254         * input/regression/tuplet-full-length.ly (indent): new file.
9255
9256         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
9257         clique of loose columns, eg. a set of grace notes in strict
9258         notespacing.
9259
9260         * input/regression/spacing-strict-spacing-grace.ly: new file.
9261
9262         * lily/key-signature-interface.cc: change property name to
9263         alteration-alist
9264
9265         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
9266         keyAccidentalOrder
9267
9268         * python/convertrules.py (conv): keyAccidentalOrder ->
9269         keyAlterationOrder
9270
9271         * lily/key-engraver.cc (create_key): always print a cancellation
9272         for going to C-major/A-minor, regardless of printKeyCancellation.
9273         (create_key): remove typecheck for visibility. This fixes key
9274         signature not being printed.
9275
9276         * lily/spacing-determine-loose-columns.cc: new file.
9277
9278         * input/regression/spacing-strict-notespacing.ly: new file.
9279
9280         * lily/spacing-spanner.cc (generate_springs): rename from
9281         do_measure. 
9282         (generate_pair_spacing): new function.
9283         (init, generate_pair_spacing): set between-cols for floating
9284         nonmusical columns.
9285
9286         * lily/spaceable-grob.cc (get_spring): new function. 
9287
9288         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
9289         relative to the right edge of the prefatory matter.
9290
9291         * lily/beam.cc (print): read break-overshoot to determine where to
9292         stop/start broken beams.
9293
9294         * input/regression/spanner-break-overshoot.ly: new file.
9295
9296 2005-08-04  Graham Percival  <gperlist@shaw.ca>
9297
9298         * ly/bagpipe.ly: updated.
9299
9300         * Documentat/user/instrument.itely: un-comment out bagpipe example.
9301
9302 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9303
9304         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
9305         support: now (de)crescs avoid slurs as well.
9306
9307         * Documentation/user/instrument-notation.itely (Bagpipe example):
9308         comment out non-functioning bagpipe example.
9309         (Bagpipe definitions): idem.
9310
9311         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
9312         (Top): add proportionalNotationDuration example.
9313
9314         * input/regression/spacing-proportional.ly: new file.
9315
9316         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
9317         synched to a beam.
9318
9319         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
9320         fixes beams with a single stem (eg. beams across linebreaks.)
9321
9322         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
9323
9324         * flower/rational.cc (operator +): prevent overflow. This fixes
9325         heavily nested tuplets.
9326
9327         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
9328         have to protect even those unlikely to be corrupted data members.  
9329
9330 2005-08-04  Graham Percival  <gperlist@shaw.ca>
9331
9332         * ly/bagpipe.ly: new file.
9333
9334         * THANKS: added Sven Axelsson.
9335
9336 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9337
9338         * lily/spacing-engraver.cc (stop_translation_timestep): directly
9339         copy proportionalNotationDuration into currentMusicalColumn if
9340         set.
9341
9342         * lily/spacing-spanner.cc (musical_column_spacing): if
9343         uniform-stretching set, fixed space is 0.0
9344
9345         * input/regression/spacing-multi-tuplet.ly: show
9346         uniform-stretching property.
9347
9348         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
9349
9350         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
9351         (struct Spacing_options): new struct.
9352
9353         * lily/spacing-basic.cc: new file.
9354
9355         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
9356         delta_t doesn't have to be smaller than shortest_playing_len
9357
9358 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9359
9360         * input/regression/markup-arrows.ly:  new file.
9361
9362         * lily/tuplet-bracket.cc: document new behavior.
9363
9364         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
9365         with line breaks.
9366
9367         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
9368
9369         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
9370         default 
9371
9372         * lily/tuplet-bracket.cc: add edge-text property.
9373         add break-overshoot.
9374         (print): read break-overshoot.
9375         (print): read edge-text, add stencils.
9376
9377         * mf/feta-arrow.mf: new file.
9378
9379         * mf/feta-generic.mf: add feta-arrow.
9380
9381 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
9382
9383         * Documentation/user/lilypond-book.itely (An example of a
9384         musicological document): Added flag -o to dvips for people who use
9385         the default setting in teTeX where output is sent to the printer. 
9386
9387         * Documentation/user/global.itely (Vertical spacing): Added
9388         reference to the Axis_group_engraver which documents the *Extent
9389         properties.
9390
9391 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9392
9393         * Documentation/user/basic-notation.itely (Tuplets): add note
9394         about nested tuplets. Remove BUG. 
9395
9396         * input/regression/tuplet-nest.ly: update: remove manual hack. 
9397
9398         * lily/tuplet-bracket.cc (print): use robust_scm2drul
9399         (print): manually call print() for subtuplets.
9400         (calc_position_and_height): add subtuplets to the
9401         support. Vertically shift outer tuplet 
9402
9403         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
9404         remove-first for Lyrics, ChordNames and FiguredBass
9405
9406         * scm/define-grob-properties.scm (all-internal-grob-properties):
9407         use ly:grob-array? iso. grob-list?
9408         (all-internal-grob-properties): add tuplets grob-array.
9409
9410         * lily/tuplet-bracket.cc (add_tuplet_bracket):
9411         new function
9412
9413 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9414
9415         * input/test/time-signature-staff.ly: new file.
9416
9417         * ly/declarations-init.ly (center): escape to Scheme. Fixes
9418         spurious #<Music FingerEvent> errors. Backportme.
9419
9420 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
9421
9422         * Documentation/user/programming-interface.itely (Markup
9423         construction in Scheme): Corrected markup syntax in the
9424         translation table.
9425
9426 2005-08-03  Graham Percival  <gperlist@shaw.ca>
9427
9428         * Documentation/user/instrument-notation.itely: small update
9429         to bagpipe notation docs; thanks Sven!
9430
9431         * Documentation/user/basic-notation.itely: add link about trills.
9432
9433 2005-08-02  Graham Percival  <gperlist@shaw.ca>
9434
9435         * Documentation/user/music-glossary: remove accidentally committed
9436         fink patch.
9437
9438 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9439
9440         * lily/lily-parser.cc (get_header): new function. Enable multiple
9441         \header definitions.
9442
9443         * lily/parser.yy (lilypond_header_body): use get_header.
9444
9445         * ly/init.ly:
9446         * scm/lily-library.scm (print-score-with-defaults): renamed
9447         $globalheader to $defaultheader
9448             
9449         * Documentation/user/global.itely (Creating titles): added short
9450         explanation that multiple headers are useable.
9451
9452
9453 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9454
9455         * lily/module-scheme.cc (LY_DEFINE): new file. 
9456
9457         * Documentation/user/advanced-notation.itely (Font selection): add
9458         doco for make-pango-font-tree.
9459
9460 2005-07-31  Graham Percival  <gperlist@shaw.ca>
9461
9462         * Documentation/user/music-glossary: more languages
9463         for tenuto.
9464
9465         * Docuemntation/user/instrument-notation.itely: minor
9466         update for bagpipe example.
9467
9468 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9469
9470         * input/regression/+.ly (TODO): add some text.
9471
9472 2005-07-28  Graham Percival  <gperlist@shaw.ca>
9473
9474         * Documentation/user/invoking.itely: \score begins with music.
9475
9476         * Documentation/user/ basic-notation.itely,
9477         instrument-notation.itely: minor changes.
9478
9479         * Documentation/user/music-glossary.itely: began tenuto entry.
9480
9481 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9482
9483         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
9484
9485         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
9486
9487 2005-07-27  Graham Percival  <gperlist@shaw.ca>
9488
9489         * Documentation/user/examples.itely: remove bagpipe template.
9490
9491         * Documentation/user/instrument-notation.itely: add bagpipe
9492         section, maybe fix quotes in lyrics.  I hate text encoding.
9493         Clarify chord durations, more bagpipe stuff.
9494
9495 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9496  
9497         * lily/accidental-engraver.cc: formatting fixes.
9498
9499         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
9500         grob-array.
9501
9502         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
9503
9504         * lily/note-column.cc (arpeggio): new function.
9505
9506         * lily/note-spacing.cc (get_spacing): also take arpeggio into
9507         account for spacing.
9508
9509 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
9510
9511         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
9512         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
9513         mingw build.
9514         
9515 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9516
9517         * scm/lily.scm (lilypond-all): clear anonymous modules after
9518         processing files.
9519
9520 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9521
9522         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
9523         SCM_I_CONSP
9524
9525         * VERSION: 2.7.3 released
9526
9527         * Documentation/user/invoking.itely (Invoking lilypond): add
9528         LILYPOND_GC_YIELD documentation.
9529
9530         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
9531         scm_from_real / scm_make_real.
9532
9533         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
9534         higher. This increases memory footprint, but provides overall
9535         speedup of 15 to 20%. 
9536
9537         * lily/include/translator.hh (class Translator): remove
9538         PRECOMPUTED_VIRTUAL everywhere.
9539
9540         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
9541
9542         * lily/context.cc (now_mom): non-recursive now_mom() 
9543
9544         * lily/include/profile.hh: new file.
9545
9546         * lily/profile.cc: new file.
9547
9548         * lily/grob.cc (Grob::Grob): look properties up directly.
9549
9550         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
9551         lookups.
9552
9553         * lily/include/box.hh (class Box): smob Box type.
9554
9555         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
9556
9557         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
9558         protect() and unprotect(). Use throughout.
9559
9560 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9561
9562         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
9563
9564         * scm/define-music-display-methods.scm (markup->lily-string):
9565         markup elements can also be strings (without simple-markup
9566         appended)
9567
9568 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9569
9570         * lily/context.cc (where_defined): also assign value in
9571         where_defined().
9572
9573         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
9574         (curve_coordinate): new function
9575
9576         * lily/simple-spacer.cc (add_columns): only add rods between
9577         column i and begin/end if keep-inside-line is set (this repleces
9578         allow-outside-line as default)
9579
9580 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9581
9582         * lily/tuplet-engraver.cc (start_translation_timestep): only read
9583         tupletSpannerDuration if applicable.
9584
9585         * lily/font-size-engraver.cc (process_music): read fontSize only
9586         once per timestep.
9587
9588         * lily/engraver*cc: use throughout.
9589         
9590         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
9591
9592         * lily/translator.cc (add_acknowledger): new file. Directly jump
9593         into an Engraver::acknowledge_xxx () method based on a grobs
9594         interface-list.
9595
9596         * lily/include/translator-dispatch-list.hh (class
9597         Engraver_dispatch_list): new struct, new file.
9598
9599         * scm/define-context-properties.scm
9600         (all-internal-translation-properties): remove acceptHashTable,
9601         acknowledgeHashTable
9602
9603         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
9604
9605         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
9606         change acknowledgeHashTable to C++ member. 
9607
9608         * lily/rest-collision.cc (do_shift): use extract_grob_set().
9609
9610 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9611
9612         * scm/display-lily.scm: new file. Define a `display-lily-music'
9613         function, that displays the music expression given as an argument,
9614         using LilyPond notation.
9615
9616         * scm/define-music-display-methods.scm: new file. Implementation
9617         of display methods for each music type.
9618
9619         * ly/music-functions-init.ly (displayLilyMusic): new function for
9620         displaying music with LilyPond notation.
9621
9622         * input/regression/display-lily-tests.ly: new regression test file
9623         for `display-lily-music'.
9624
9625         * scm/markup.scm: remove obsolete debugging code (for printing
9626         markups with LilyPond notation).
9627
9628         * scm/define-music-types.scm (music-name-to-property-table):
9629         * scm/clef.scm (supported-clefs): export, in order to be accessible
9630         from the (scm display-lily) module.
9631
9632 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9633
9634         * Documentation/topdocs/NEWS.tely (Top): Typo.
9635
9636 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
9637
9638         * Documentation/index.html.in, Documentation/texinfo.css,
9639           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9640           Documentation/bibliography/index.html.in,
9641           Documentation/bibliography/html-long.bst: revert css-width patch,
9642           it does not work with IE6.
9643
9644 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9645
9646         * Documentation/texinfo.css: revert 760px hack. 
9647
9648         * VERSION: release 2.7.2
9649
9650         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
9651
9652         * Documentation/user/basic-notation.itely (Barnumber check): add
9653         section.
9654
9655         * scm/music-functions.scm (skip-to-last): new function. Show only
9656         last showLastLength part of the \score.
9657
9658         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
9659
9660         * python/convertrules.py (conv): add ly:x-moment rule
9661
9662         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
9663
9664         * Documentation/topdocs/NEWS.tely (Top): add new feature.
9665
9666         * Documentation/user/instrument-notation.itely (Flexibility in
9667         alignment): options in subsections.
9668
9669         * lily/lyric-engraver.cc (process_music): don't typeset text for _
9670         syllable text. Instead, assume that the previous lyric text is a
9671         melismated text.
9672
9673         * Documentation/index.html.in: revert 800x600 change.
9674
9675 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9676
9677         * lily/main.cc (main): Remove invalid handle kludge.
9678
9679         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
9680         (lambda): add gui define.
9681
9682 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9683
9684         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
9685
9686         * Documentation/user/instrument-notation.itely (Musica ficta
9687         accidentals): add section Musica ficta accidentals
9688
9689         * lily/accidental-engraver.cc (make_suggested_accidental): new
9690         function.
9691         (make_standard_accidental): move into new function.
9692         (create_accidental): new function.
9693
9694         * scm/define-grobs.scm (all-grob-descriptions): new Grob
9695         AccidentalSuggestion
9696
9697         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
9698
9699         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9700         undefined.
9701
9702         * Documentation/user/global.itely (Page formatting): document
9703         horizontalshift.
9704
9705         * scm/page-layout.scm (default-page-music-height):
9706         horizontalshift: new variable, shift all systems by
9707         horizontalshift to the right, to make space for instrument names.
9708
9709         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9710
9711         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9712
9713 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9714
9715         * lily/note-column.cc (dir): idem.
9716
9717         * lily/spacing-spanner.cc (Module): idem.
9718
9719         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9720
9721         * lily/include/paper-column.hh (class Paper_column): add
9722         non-static get_rank() member.
9723
9724         * VERSION: release 2.7.1
9725         
9726         * scm/framework-null.scm: new file, used for benchmarking.
9727
9728 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9729
9730         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9731         version dependencies for fontforge and gs.
9732
9733         * Documentation/index.html.in, Documentation/texinfo.css,
9734         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9735         Documentation/bibliography/index.html.in, 
9736         Documentation/bibliography/html-long.bst: optimize width of
9737         html for a 800x600 screen (width:760), increases printability
9738         when 'fit to page' is not set and readability in wide screens.
9739
9740         * stepmake/bin/add-html-footer.py: add missing </p>.
9741
9742 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9743
9744         * scm/define-markup-commands.scm (beam): use polygon in beam
9745         command.
9746
9747         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9748         all acknowledged grobs, and do potentially expensive merge and
9749         write in one go.
9750
9751         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9752
9753         * configure.in (reloc_b): add --enable-static-gxx to statically
9754         link to libstdc++
9755
9756         * lily/GNUmakefile (static-gxx-libs): new target
9757         static-gxx-libs. Create symlink to libstdc++.a
9758
9759         * lily/new-lyric-combine-music-iterator.cc: rename to
9760         Lyric_combine_music_iterator
9761
9762         * lily/lyric-combine-music-iterator.cc
9763         (Old_lyric_combine_music_iterator): rename to
9764         Old_lyric_combine_music_iterator
9765
9766         * lily/*-engraver.cc (various): remove double use of
9767         PRECOMPUTED_VIRTUAL function: only use
9768         start_translation_timestep() and stop_translation_timestep(), not
9769         both.
9770
9771         * lily/break-substitution.cc (fast_substitute_grob_array): do
9772         fast_substitute_grob_array for all unordered grob_arrays.
9773         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9774         (substitute_grob_array): optimize.
9775
9776         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9777
9778         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9779
9780         * lily/parser.yy: revert $globalheader patch.
9781         
9782         * lily/include/translator.icc
9783         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9784         Translator methods, without _static helper.
9785  
9786         * lily/grob-smob.cc (derived_mark): rename from
9787         do_derived_mark(). Return void.
9788
9789         * scm/define-context-properties.scm
9790         (all-internal-translation-properties): remove tweakCount/tweakRank.
9791
9792         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9793         predefined break-visibilities.
9794
9795         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9796         booleans for break-visibility.
9797
9798         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9799
9800         * python/convertrules.py (conv): rule for Timing_translator. 
9801
9802         * lily/include/translator.icc: new file. 
9803
9804         * lily/paper-column-engraver.cc (process_music): new
9805         file. Separate Paper_column factory from Score_engraver.
9806
9807         * lily/vertically-spaced-context-engraver.cc: administer
9808         spaceable-staves property of System.
9809
9810         * lily/translator-group-ctors.cc: new file.
9811
9812         * lily/context-property.cc (make_grob_from_properties): construct
9813         the right Grob class programmatically, looking at the class entry
9814         for the meta property.
9815
9816         * lily/break-align-engraver.cc (stop_translation_timestep): call
9817         Break_align_interface::add_element() directly.
9818
9819         * lily/context.cc (measure_position): measure_position() is now a
9820         normal function.
9821
9822         * lily/include/translator.hh (class Translator): rename
9823         process_acknowledged_grobs() to process_acknowledged() and move to
9824         Translator.
9825
9826         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9827         field for each grob description.
9828
9829         * lily/include/translator-group.hh (class Translator_group):
9830         change to base class. Separate class from Translator. This gets
9831         rid of virtual inheritance for Engravers/Performers.
9832
9833         * lily/staff-performer.cc (class Staff_performer): derive
9834         Staff_performer from Performer, not Performer_group_performer 
9835
9836         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9837         new function.
9838         (precompute_method_bindings): new function. Precompute lists of
9839         Translators, so we only call methods (process_music,
9840         start_translation_timestep, etc.) for Translators needing
9841         it. Also: dispose of pointer-to-member-function calls.
9842
9843         * lily/engraver-group-engraver.cc: remove engraver_each,
9844         recurse_down_engravers ()
9845
9846         * lily/note-head.cc (internal_print): only call
9847         glyph-name-procedure if style != default. 
9848
9849 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9850
9851         * ly/titling-init.ly: add printallheaders option.
9852
9853         * Documentation/user/global.itely: document printallheaders.
9854
9855 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9856
9857         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9858         anymore, but do it centrally.  
9859
9860         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9861         hammer hack.
9862
9863         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9864
9865         * scm/output-lib.scm: remove hammer-print-function.
9866
9867         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9868         macro. Declare a Link_array<Grob> and fill it from a grob.
9869         (extract_item_set): idem for item.
9870
9871         * lily/break-substitution.cc: add header.
9872         (fast_substitute_grob_array): rewrite for Grob_arrays.
9873         (substitute_grob_array): idem.
9874
9875         * lily/group-interface.cc (add_thing): remove file.
9876
9877         * flower/include/parray.hh (class Link_array): slice() is const.
9878
9879         * lily/include/grob-array.hh: new file.
9880
9881         * lily/grob-array.cc (spanner): new file.
9882
9883         * lily/beam-quanting.cc (fill): read details property from beam.
9884
9885         * lily/beam.cc: support details property.
9886
9887         * total speedups below: approx 10%.
9888
9889         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9890
9891         * lily/include/grob.hh (class Grob): add interfaces_ member.
9892
9893         * lily/bezier.cc (init_polynomial_cache): new function: cache
9894         binom(3,j) t^j (1-t)^{3-j}
9895         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9896
9897         * lily/*.cc: substitution throughout.
9898
9899         * lily/grob-property.cc (internal_get_object): new routine.
9900         (internal_set_object): idem. Store grob refrences in separate
9901         alist. This saves processing time, since properties aren't
9902         break-substituted, and the per grob namespace is smaller, both for
9903         grobs and non-grob properties.
9904
9905         * scm/define-grob-properties.scm (all-internal-grob-properties):
9906         remove center-element.
9907
9908         * lily/grob.cc: remove tweak-count, tweak-rank.
9909
9910 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9911
9912         * Documentation/user/lilypond-book.itely: fixes example.
9913
9914 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9915
9916         * Documentation/user/global.itely (Creating titles):    
9917         * Documentation/user/examples.itely (All headers): change the
9918         place of \header in \score blocks (after music block) to make
9919         examples compile (cf. changes on parser.yy on 2005-07-10)
9920
9921 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9922
9923         * python/convertrules.py: add exc -> ecc rule.
9924
9925         * scripts/convert-ly.py: add location of convertrules.py
9926         in a comment.
9927
9928         * Documentation/user/changing-defaults.itely: fix language.
9929
9930 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9931
9932         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9933
9934 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9935
9936         * scm/output-socket.scm (grob-bbox): don't use inf? 
9937
9938         * flower/include/rational.hh: add operator bool() 
9939
9940         * scm/define-music-types.scm (music-descriptions): remove
9941         internal-class-name properties.
9942
9943         * lily/include/event.hh: remove file.
9944
9945         * lily/include/music-constructor.hh: remove file.
9946
9947         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9948         in 'types property.
9949
9950         * lily/music.cc (duration_length_callback): new function.
9951
9952         * lily/event.cc: remove file.
9953
9954         * lily/music-constructor.cc: remove file.
9955
9956         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9957
9958         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9959         (get_context_key): idem.
9960
9961         * scm/lily.scm (lambda): new option object-keys (default to #f)
9962
9963         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9964
9965         * scm/output-gnome.scm: remove beam routine.
9966
9967         * scm/output-ps.scm (scm): idem.
9968
9969         * scm/output-svg.scm: remove beam.
9970
9971         * ps/music-drawing-routines.ps: remove draw_beam.
9972
9973         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9974
9975         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9976         add scm_from_locale_string compatibility glue. 
9977
9978 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9979
9980         * scripts/lilypond-book.py: Prevent occuring error when
9981         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9982         times and target file shoud be overwritten.  (Error message said
9983         'input file and output file is same'.)
9984
9985 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9986
9987         * input/regression/slur-extreme.ly,
9988         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9989         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9990         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9991         "excentricity" to "eccentricity".
9992
9993         * Documentation/user/converters.itely: fix URL for Noteedit and
9994         Rosegarden.
9995
9996         * THANKS: added Yoshinobu Ishizaki.
9997
9998 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9999
10000         * scm/define-markup-commands.scm (justify-field): add. 
10001
10002         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
10003
10004 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10005
10006         * lily/lookup.cc (filled_box): express filled_box with
10007         round_filled_box
10008
10009         * scm/midi.scm (paper-book-write-midis): new function. Write all
10010         performances in numbered MIDI files.
10011
10012         * lily/performance-scheme.cc (LY_DEFINE): new file.
10013         (LY_DEFINE): new function ly:performance-write.
10014
10015         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
10016         new function.
10017         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
10018
10019         * scm/framework-*.scm: use port arguments throughout.
10020
10021         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
10022
10023         * lily/paper-outputter.cc (Paper_outputter): take port argument.
10024
10025         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
10026
10027         * scm/framework-texstr.scm (output-framework): 
10028
10029         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
10030
10031         * scm/output-lib.scm (tablature-stem-attachment-function):
10032         tablature stem attachment fix. 
10033
10034 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10035
10036         * lily/bezier.cc: hardcode binomial coefficients of order 3.
10037
10038         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
10039
10040         * scm/define-music-types.scm (music-descriptions): don't use
10041         Music_wrapper type.
10042
10043         * lily/paper-column.cc (print): print moment too.
10044
10045         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
10046         remove compatibility cruft.
10047
10048         * lily/parser.yy (score_body): \score can only begin with Music. 
10049
10050         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
10051         make-score. Take music argument only. Move parser interaction to
10052         Scheme.
10053
10054         * scm/lily-library.scm (scorify-music): new function.
10055
10056         * python/lilylib.py (datadir): remove 2.1 compat kludge.
10057         (datadir): remove resource import.
10058         (print_environment): remove get_bbox()
10059         (cp_to_dir): remove pre 1.5.2 compat glue.
10060
10061 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10062
10063         * lily/include/simple-spacer.hh (Module): idem.
10064
10065         * lily/include/spring.hh (struct Spring): store inverse
10066         strength. This prevents division by zero.
10067
10068         * VERSION: release 2.7.0
10069         
10070         * lily/include/music.hh (class Music): remove Music::duration_log()
10071
10072         * lily/stem-engraver.cc (make_stem): take duration log from event.
10073
10074         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
10075
10076 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10077
10078         * scm/lily.scm (ly:load): load autochange.scm
10079
10080         * Documentation/user/tutorial.itely (Running LilyPond for the
10081         first time): remove reference to DVI/TeX
10082
10083         * scm/define-markup-commands.scm (text): add \text markup command.
10084
10085         * configure.in (reloc_b): bump requirement to Python 2.2.
10086
10087         * lily/include/dots.hh (class Dots): make has_interface() static.
10088
10089         * python/convertrules.py (conv): add rule for ly:grob-default-font
10090
10091         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
10092         alphabetical order.
10093
10094         * input/regression/trill-spanner-pitched.ly: new file.
10095
10096         * lily/font-interface-scheme.cc (LY_DEFINE): function
10097         ly:grob-default-font (changed from get-default-font).
10098
10099         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
10100
10101         * lily/note-head.cc (internal_print): if style is not a symbol,
10102         set style to 'default. 
10103         (internal_print): no style suffix if glyph-name-procedure not
10104         set. Default to quarter head.
10105
10106         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
10107
10108         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
10109
10110         * ly/music-functions-init.ly: \pitchedTrill
10111
10112         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
10113
10114         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
10115
10116         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
10117
10118         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
10119
10120         * po/fr.po: update
10121
10122         * po/de.po: update.
10123
10124 2005-07-06  Graham Percival  <gperlist@shaw.ca>
10125
10126         * Documentation/user/changing-defaults.itely: add link
10127         to grob-iterface.
10128
10129         * Documentation/user/advanced-notation.itely: add material
10130         to Setting automatic beam behaviour.  Thanks, Joe!
10131
10132         * Documentation/user/lilypond.itely: change encoding to utf-8.
10133
10134 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
10135
10136         * Documentation/user/advanced-notation.itely (Setting automatic
10137         beam behavior): Correct the documentation of
10138         revert-auto-beam-setting (backportme)
10139
10140 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10141
10142         * lily/ly-module.cc (ly_make_anonymous_module): define
10143         %module-public-interface of module. 
10144
10145         * lily/lily-parser.cc (print_smob): allow printing of parser smob
10146         without lexer.
10147
10148 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10149
10150         * input/regression/fret-diagrams.ly: stretch example.
10151
10152 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10153
10154         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
10155         Fodor).
10156
10157 2005-06-30  Graham Percival  <gperlist@shaw.ca>
10158
10159         * Documentation/topdocs/AUTHORS.texi: update personal web address.
10160
10161         * Documentation/user/examples.itely, lilypond-book.itely:
10162         change \RequirePackage to \usepackage.
10163
10164         * Documentation/user/global.itely: document copyright and tagline.
10165
10166 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10167
10168         * Documentation/user/basic-notation.itely (Transpose): remove link
10169         to nonexistent UntransposableMusic.
10170
10171         * scm/output-svg.scm: remove old definitions.
10172
10173         * scripts/lilypond-book.py (do_file): search for kpsewhich before
10174         invoking.
10175
10176         * python/lilylib.py (search_exe_path): new function.
10177
10178 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10179
10180         * python/lilylib.py (mkdir_p): remove setup_environment()
10181         (backportme)
10182
10183         * buildscripts/mutopia-index.py (headertext): trim text.
10184
10185         * Documentation/topdocs/NEWS.tely (Top): refresh.
10186
10187         * scm/define-markup-commands.scm (wordwrap-string): new function:
10188         split string in paras and words.
10189         (wordwrap-markups): new function.
10190         (wordwrap-stencils): new function. 
10191         (justify): use it.
10192         (wordwrap): use it.
10193         (wordwrap-string): use it
10194         (justify-string): use it.
10195
10196         * scm/lily-library.scm (regexp-split): new function.
10197
10198         * scm/define-markup-commands.scm: remove encoded-simple. 
10199         remove font-markup.
10200         (fontsize): remove old version  of fontsize.
10201         (wordwrap): new markup function. Wrap into paragraphs.
10202
10203         * VERSION: Branch lilypond_2_6
10204         (MINOR_VERSION): go to 2.7.0
10205
10206 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10207
10208         * po/zh_TW.po: update from translation project.
10209
10210 2005-06-28  Graham Percival  <gperlist@shaw.ca>
10211
10212         * scm/midi.scm: compile fix.
10213
10214 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
10215
10216         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
10217         patch. Now, the tempfile module is loaded too, not only used.
10218
10219 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
10220
10221         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
10222         0.05 - 1.00 to 0.25 - 1.00
10223
10224         * scm/midi.scm: moved the default-instrument-equalizer procedure
10225         to just under the insturment-equalizer-alist it takes as an
10226         argument.
10227
10228 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10229
10230         * Documentation/user/advanced-notation.itely (Font selection):
10231         remove CMR note.
10232
10233         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
10234
10235 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10236
10237         * THANKS: Add UTF-8 marker.
10238
10239         * Documentation/user/point-and-click.itely (http): Update: use
10240         lilypond-invoke-editor.  Fix: instruct to use user.js.
10241
10242 2005-06-27  Graham Percival  <gperlist@shaw.ca>
10243
10244         * ly/titling-init.ly: implements printpagenumber, increases
10245         space between dedication and title (to avoid collisions with
10246         "g" and "q" in dedication), and nicer logic about copyright
10247         and instrument fields being printed on the first page.
10248         Thanks Vincent!
10249
10250         * Documentation/user/global.itely: document printpagenumber.
10251
10252 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10253
10254         * Documentation/topdocs/NEWS.tely: Update to 2.6.
10255
10256 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10257
10258         * THANKS: update to 2.6
10259
10260         * VERSION: 2.6.0 released.
10261
10262 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10263
10264         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
10265         rule, errorneously removed probably because of misleading comment.
10266
10267 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10268
10269         * python/lilylib.py (datadir): py2exe comments.
10270
10271         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
10272
10273         * configure.in (reloc_b): make fontconfig REQUIRED.
10274
10275 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
10276
10277         * po/fi.po: add latest translations.
10278
10279 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10280
10281         * ChangeLog: recode utf-8
10282
10283         * Documentation/pictures/lilypond.xpm (Module): edited photo as
10284         logo.
10285
10286         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
10287
10288         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
10289
10290         * python/convertrules.py (do_conversion): don't print program_name
10291         from within a module
10292
10293         * configure.in (reloc_b): bump fontforge requirement to 20050624.
10294
10295         * python/convertrules.py (conv): add 2.6.0 dummy rule.
10296
10297 2005-06-23  Graham Percival  <gperlist@shaw.ca>
10298
10299         * Documentation/user/lilypond-book.itely,
10300         Documentation/user/examples.itely: add \RequirePackage{graphics}.
10301
10302         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
10303         fixes baseline-skip.  Thanks Vincent!
10304
10305         * Documentation/user/advanced-notation.itely, global.itely:
10306         moved "Selecting font sizes" to global, since it deals with
10307         notation font size, not text fonts.
10308
10309 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10310
10311         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
10312         to fonts.
10313
10314 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
10315
10316         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
10317         workaround since /dev/stdin doesn't work on Cygwin. Using a
10318         temporary file in the current directory since latex doesn't
10319         understand the path name to the default TMP in Cygwin (at least on
10320         win XP).
10321         
10322         * Documentation/user/global.itely (Creating titles): Correct
10323         misprint in example. Thanks to Rob Vlasaty.
10324
10325 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10326
10327         * VERSION (PATCH_LEVEL): release 2.5.32
10328
10329         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
10330         variable in lily module
10331
10332         * scm/framework-ps.scm (output-classic-framework): error message
10333         regarding the classic framework.
10334
10335         * Documentation/user/henle-flat-gray.png (Module): new file.
10336
10337         * Documentation/user/baer-flat-gray.png (Module): new file.
10338
10339         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
10340         whiteout for markups.
10341
10342         * buildscripts/substitute-encoding.py (note_glyph): include _ in
10343         regex too. This fixes change clef appearance in PDF. 
10344
10345         * ttftool/include/*: remove.
10346
10347         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
10348
10349         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
10350
10351         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
10352
10353         * ttftool/*: remove ttftool subdirectory.
10354
10355         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
10356
10357         * lily/ttf.cc (print_header): new file. Convert to type42, using
10358         FreeType to parse the TTF. 
10359
10360         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
10361         and post table may differ. Pass around post_nglyphs as well.
10362
10363 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10364
10365         * ly/music-functions-init.ly (musicMap): new music function
10366         musicMap. 
10367         
10368 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10369
10370         * make/mutopia-rules.make: anti-alias-factor = 2
10371
10372         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
10373         page switch.
10374
10375         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
10376         anti-alias-factor for lilypond-book runs.
10377
10378         * scm/ps-to-png.scm (scale-down-image): new function.
10379         (my-system): new function.
10380         (make-ps-images): blow up GS resolution by anti-alias-factor,
10381         scale down image by anti-alias-factor.  This improves appearance
10382         of bitmaps
10383         (make-ps-images): remove showpage. Fixes spurious empty png at
10384         end.
10385
10386         * scm/framework-ps.scm (write-preamble): downcase filename before
10387         string-matching. Should fix .TTF files (as opposed to ttf files)  
10388
10389         * Documentation/user/tutorial.itely (Running LilyPond for the
10390         first time): separate subsections for windows, macos and unix.  
10391
10392         * Documentation/user/invoking.itely (Updating files with
10393         convert-ly): add MacOS X note.
10394
10395 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10396
10397         * Documentation/user/introduction.itely (Engraving): don't include
10398         file optical-spacing, add directly.
10399
10400         * lily/paper-outputter.cc (file): open file in binary mode. This
10401         fixes OTF embedding on windows.
10402
10403 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10404
10405         * scm/framework-ps.scm (write-preamble): remove debugging output.
10406
10407         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
10408
10409         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
10410         outdir.
10411         (install-fc-cache): install font cache in installation directories.
10412
10413 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10414
10415         * scm/editor.scm (editor-command-template-alist): Use char iso
10416         column, except for Emacs.
10417         (get-editor-command): Substitute char too (Bertalan Fodor).
10418
10419 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10420
10421         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
10422         quoted ~s.  This should fix PNG output on Windows; single quotes
10423         are regular characters on Windows.
10424
10425 2005-06-16  Graham Percival  <gperlist@shaw.ca>
10426
10427         * Documentation/user/basic-notation.itely: include ChoirStaff
10428         in System start delimiters.
10429
10430         * Documentation/user/putting.itely: new doc section on
10431         fixing overlapping notation.
10432
10433 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10434
10435         * Documentation/user/global.itely (Paper size): \paper is in
10436         \book, not \score.
10437
10438         * make/mutopia-rules.make: -ddelete-intermediate-files
10439
10440         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
10441
10442 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10443
10444         * ChangeLog: Recode utf-8.
10445
10446         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
10447         datadir with .py modules.
10448
10449 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
10450
10451         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
10452
10453 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10454
10455         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
10456         
10457         * scm/framework-ps.scm (write-preamble): remove status check.
10458
10459         * Documentation/user/invoking.itely (Updating files with
10460         convert-ly): remove -o option.
10461
10462         * VERSION (PACKAGE_NAME): release 2.5.31
10463
10464         * scm/framework-ps.scm (write-preamble): use ly:system.
10465         (write-preamble): verbosity.
10466
10467         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
10468
10469         * python/convertrules.py: new file. Store conversion rules
10470         separately.
10471
10472 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10473
10474         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
10475
10476 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
10477
10478         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
10479         \musicDisplay 
10480
10481         * Documentation/user/instrument-notation.itely (More stanzas): Add
10482         reference to StanzaNumber.
10483
10484 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10485
10486         * THANKS: separate section for website translators.
10487
10488 2005-06-14  Graham Percival  <gperlist@shaw.ca>
10489
10490         * Documentation/topdocs/INSTALL.texi: update vim info;
10491         thanks Simon Bailey!
10492
10493         * Documentation/user/advanced-notation.itely: included
10494         color names.
10495
10496         * Documentation/user/advanced-notation.itely,
10497         Documentation/usr/notation-appendices.itely: moved
10498         color names into an appendix.
10499
10500 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10501         
10502         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
10503
10504         * scm/lily.scm (lambda): initialize program options from here.
10505
10506         * scm/framework-*.scm: add header info.
10507
10508         * lily/main.cc (parse_argv): only set output format to pdf if no
10509         other format specified.
10510
10511         * scm/backend-library.scm (postprocess-output): process
10512         'delete-intermediate-files after running convert-to-*. This fixes
10513         PNG generation when 'delete-intermediate-files is set.
10514         
10515 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10516
10517         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
10518         links on website. 
10519
10520 2005-06-13  Graham Percival  <gperlist@shaw.ca>
10521
10522         * Documentation/topdocs/INSTALL.texi,
10523         Documentation/user/lilypond-book.itely: typos.
10524
10525 2005-06-12  Pal Benko  <benkop@freestart.hu>
10526
10527         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
10528         added between program name and switch; -b changed to -f not
10529         to generate pdf
10530
10531 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10532
10533         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
10534         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
10535
10536         * input/sakura-sakura.ly: add \midi.
10537
10538         * buildscripts/mutopia-index.py (find): use /usr/bin/find
10539         iso. python find. 
10540
10541         * ttftool/test.c (main): cosmetics.
10542
10543         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
10544
10545         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
10546         create a ttf2ps binary.
10547
10548         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
10549
10550         * scm/backend-library.scm (postscript->png): set rename-page-1 to
10551         true.
10552
10553 2005-06-11  Graham Percival <gperlist@shaw.ca>
10554
10555         * Documentation/user/lilypond-book.itely: add warning about
10556         the font warnings in dvips.
10557
10558 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10559
10560         * THANKS: typo
10561
10562         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
10563
10564         * GNUmakefile.in: remove links for .map, .enc
10565         don't fail if out/ doesn't exist yet.
10566
10567 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10568
10569         * ttftool/util.c (surely_read): return nbytes
10570
10571         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
10572
10573         * VERSION (PACKAGE_NAME): release 2.5.30
10574
10575         * flower/string-convert.cc (precision_string): >? fix.
10576
10577         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
10578         (make-ps-images): add verbose -q too.
10579
10580         * lily/default-actions.cc (Module): new file. default
10581         {book,score}-print functions.
10582
10583         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
10584         pass results via parseStringResult, lookup via ly:parser-lookup.  
10585
10586         * lily/lily-parser.cc (Lily_parser): only clone lexer in
10587         constructors.
10588         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
10589         (parse_string): idem.
10590
10591         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
10592
10593         * lily/main.cc (main_with_guile): copy be_verbose_global into
10594         ly_set_option()
10595
10596 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10597
10598         * scm/backend-library.scm (postscript->pdf):
10599         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
10600         verbose mode.  Search for several names of gs executable.
10601
10602 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10603
10604         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
10605         directly. This fixes a massive memory leak, provided you use CVS
10606         GUILE.
10607
10608 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
10609
10610         * ly/property-init.ly: Added tieDashed.
10611
10612         * THANKS: Added some bughunters for 2.5.
10613
10614 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10615
10616         * lily/program-option.cc: add debug-gc option.
10617
10618         * lily/include/lily-guile-macros.hh: don't protect exported module
10619         objects.
10620
10621         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
10622
10623         * scm/backend-library.scm (postscript->pdf): use
10624         delete-intermediate-files iso. running-from-gui? 
10625
10626         * ttftool/util.c (surely_read): robustness. Allow read() to return
10627         less bytes than requested, as per posix standards.
10628
10629         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
10630         program option.
10631
10632         * ttftool/include/ttftool.h ("C"): rename verbosity to
10633         ttf_verbosity. Add to public interface.
10634
10635         * scm/music-functions.scm (unfold-repeats): remove debugging display.
10636
10637         * lily/program-option.cc: rename from scm-option.cc
10638
10639         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
10640         (get_help_string): Print pretty help string.
10641
10642         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
10643         to snippet preamble.
10644
10645         * lily/scm-option.cc: remove command-line-settings option. Fold
10646         all command-line options plus default settings in a generic
10647         interface. 
10648
10649         * flower/getopt-long.cc (table_string): indent 2nd lines of help
10650         texts too.
10651
10652 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10653
10654         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
10655         or EXT_ components non-empty.
10656
10657 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10658
10659         * scm/lily.scm (running-from-gui?): Export.
10660
10661         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
10662         output in .ly source directory.
10663
10664 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10665
10666         * ttftool/util.c (surely_lseek): more verbosity.
10667
10668         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
10669         compile.
10670
10671         * lily/parser.yy (Repeated_music): remove >? 
10672
10673         * scm/backend-library.scm (postscript->pdf): Support for
10674         -dgs-font-load=1
10675
10676         * scm/framework-ps.scm (write-preamble): make font loading
10677         switchable to GS via --define-default gs-font-load=1
10678
10679 2005-06-09  Graham Percival  <gperlist@shaw.ca>
10680
10681         * Documentation/user/global.itely: added \layout docs.
10682
10683 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10684
10685         * lily/lily-parser-scheme.cc: add unistd.h
10686
10687 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10688
10689         * scm/editor.scm: add char argument.
10690
10691         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
10692
10693         * ttftool/util.c (syserror): use errno for better error reporting.
10694
10695         * lily/source-file.cc (get_counts): new function. Calc column,
10696         line and char count in one go.
10697
10698         * lily/binary-source-file.cc (quote_input): rename to quote_input
10699
10700         * lily/input.cc (set): new function.
10701
10702 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10703
10704         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10705         directory part of file name to search directory.
10706
10707         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10708         search path and chdir to DIR if --outname=DIR used.
10709
10710         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10711         existence before appending original path.
10712
10713 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10714
10715         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10716         file" massage.
10717
10718         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10719         texinfo.tex is always used.
10720         
10721 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10722
10723         * flower/include/axis.hh: rename from axes.hh
10724
10725         * lily/include/text-interface.hh (Module): rename from text-item.hh
10726
10727         * VERSION (PATCH_LEVEL): release 2.5.29
10728
10729         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10730
10731         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10732         (handle-macfont): new function. Call fondu for Native mac fonts.
10733
10734         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10735         '() case.
10736
10737 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10738
10739         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10740         multi-page.  Fix .eps regular expression.
10741
10742 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10743
10744         * Documentation/user/putting.itely: add info on modifying templates.
10745
10746         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10747         misc small changes.
10748
10749 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10750
10751         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10752
10753         * scripts/lilypond-ps2png.scm
10754
10755         * VERSION (PACKAGE_NAME): release 2.5.28
10756
10757 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10758
10759         * lily/main.cc (prepend_env_path): Do not append /, that does not
10760         work.  Localedir lives in datadir, not in prefix.
10761
10762         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10763         hack for windows.
10764
10765         * flower/include/file-cookie.hh: Compile fix.
10766
10767 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10768
10769         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10770
10771         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10772         system primitives.
10773         (gulp-port): using read-string!/partial. We don't want to read an
10774         entire PS file  (GUILE 1.6 limits strings to 16M) 
10775
10776         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10777         properties. Add font-interface. 
10778
10779         * scm/define-grob-properties.scm (all-user-grob-properties):
10780         remove old bracket properties.
10781
10782         * scm/x11-color.scm: reformat. 
10783
10784         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10785         LedgerLineSpanner if new StaffSymbol is found. 
10786
10787         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10788         staff-symbol for finishing staff. 
10789
10790         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10791
10792         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10793         change black to currentColor everywhere. This fixes color support
10794         in SVG.
10795
10796 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10797
10798         * input/regression/fret-diagrams.ly: new file to test fret diagram
10799         capability
10800
10801         * scm/output-tex.scm: remove white-dot and white-text
10802
10803         * scm/output-ps.scm: remove white-dot and white-text
10804
10805         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10806         using ly:stencil-in-color instead
10807         (draw-dots) : remove call to white-dot
10808
10809 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10810
10811         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10812         support.
10813
10814         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10815
10816         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10817
10818         * flower/file-cookie.cc: new file. lily_cookie extension.
10819         
10820 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10821
10822         * scm/editor.scm (editor-command-template-alist): Add syn
10823         editor (Jaap [de Vos]).
10824
10825 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10826
10827         * scripts/lilypond-ps2png.scm:
10828         * scm/ps-to-png.scm: New file.
10829
10830         * scm/backend-library.scm (postscript->png): Use it.
10831
10832         * scripts/lilypond-ps-to-png.py: Remove file.
10833
10834         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10835
10836 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10837
10838         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10839
10840         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10841         start on grace moment. Fixes autobeam-grace.ly.
10842
10843         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10844         process anything unless we're at the end of a pending beam. Fixes
10845         syncopated 8ths beamed across a beat.
10846
10847 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10848
10849         * scm/editor.scm (editor-command-template-alist): Start emacs if
10850         emacslient fails.
10851
10852         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10853
10854         * flower/file-path.cc (is_file, is_dir): Export.
10855
10856         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10857
10858 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10859
10860         * lily/easy-notation.cc: Added include cctype to correct
10861         compilation error.
10862
10863 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10864
10865         * scm/backend-library.scm (postscript->pdf): set resolution to
10866         1200, so bitmap fonts aren't that ugly. 
10867
10868         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10869
10870         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10871         parent if we have a notehead. Fixes incorrect offsets when
10872         Paper_column is very wide in the X direction.
10873
10874         * input/regression/font-family-override.ly (Module): new file.
10875
10876         * scm/font.scm (make-pango-font-tree): new function.
10877
10878         * lily/beam.cc (before_line_breaking): remove warning about less
10879         than 2 visible stems. We still get a warning when there is only
10880         one stem.
10881
10882 2005-06-01  Werner Lemberg  <wl@gnu.org>
10883
10884         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10885         correctly.
10886
10887 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10888
10889         * lily/slur-scoring.cc (generate_avoid_offsets): new
10890         function. Generate avoid offsets once per slur.
10891
10892         * lily/slur.cc (add_extra_encompass): add dependency to
10893         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10894
10895         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10896         too. Fixes inf error with added bass notes.
10897
10898         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10899         argument anymore.
10900
10901         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10902
10903         * input/tutorial/lbook-latex-test.tex: add line length test.
10904
10905         * scripts/lilypond-book.py (set_default_options): new
10906         function. Call this before dissecting snippets, so linewidth
10907         settings reach the snippets.
10908
10909 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10910
10911         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10912
10913 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10914
10915         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10916
10917 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10918
10919         * stepmake/aclocal.m4: More autopackage friendliness.
10920
10921 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10922
10923         * Documentation/index.html.in: remove link to LSR.
10924
10925         * Documentation/user/global.itely: remove duplicate
10926         "dedication" \header{} section.
10927
10928 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10929
10930         * VERSION (PACKAGE_NAME): release 2.5.27.
10931
10932         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10933         too. Plugs memory leak.
10934
10935         * make/lilypond.fedora.spec.in (Group): remove
10936         lilypond-pdfpc-helper.
10937
10938         * scripts/GNUmakefile (SEXECUTABLES): remove
10939         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10940
10941         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10942         'typewriter family.
10943
10944         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10945         memory leak.
10946
10947         * lily/parser.yy (score_body): don't clone Score, that's done in
10948         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10949
10950         * lily/score-engraver.cc (derived_mark): new function.
10951         (initialize): unprotect Paper_score. This fixes a memory leak.
10952
10953         * lily/score-performer.cc (derived_mark): new function.
10954
10955         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10956
10957         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10958         spurious warning.
10959
10960         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10961         serif.
10962
10963 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10964
10965         * configure.in (reloc_b): Add --enable-relocation.
10966
10967 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10968
10969         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10970
10971         * input/regression/alignment-order.ly: add Staff example.
10972
10973 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10974
10975         * po/fr.po: update.
10976
10977 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10978
10979         * Documentation/index.html.in: add link to LSR.
10980
10981 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10982
10983         * scm/define-stencil-commands.scm (Module): new file. Register all
10984         allowed stencil expression heads in a central place.
10985
10986         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10987         ly:make-stencil
10988
10989         * lily/stencil-expression.cc (all_stencil_heads): registering
10990         stencil expressions.
10991
10992         * lily/stencil-interpret.cc: new file. Stencil expression
10993         interpreting.
10994
10995         * input/xiao-haizi-guai-guai.ly: move file back.
10996
10997 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10998
10999         * Documentation/user/advanced.itely, converters.itely,
11000         instrument-notation.itely, lilypond-book.itely: misc small
11001         changes.
11002
11003 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
11004
11005         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
11006
11007         * make/lilypond.fedora.spec.in: Fix source url.
11008
11009         * cygwin: Update from mingw patches.
11010
11011         * scm/editor.scm (editor-command-template-alist): Use jedit
11012         -reuseview (Bertalan), add uedit (Patrick Huberts).
11013
11014         * input/xiao-hai-zi-guai-guai.ly: Rename from
11015         xiao-haizi-guai-guai.ly.
11016
11017         * input/*: Reindent, do not use TAB.
11018
11019         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
11020         white background.
11021
11022 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
11023
11024         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
11025         numerical overflow error.
11026
11027 2005-05-29 Laura Conrad <lconrad@laymusic.org>
11028         
11029         * abc2ly.py: fix to syntax error in multi-part output.
11030
11031 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11032
11033         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
11034         with disappearing span bars when alignAboveContext is active
11035
11036         * lily/property-iterator.cc (check_grob): use is-grob?
11037         object-property. Fixes crash-key-sig-font-size.ly. 
11038
11039 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11040
11041         * lily/bar-line.cc (print): don't round barlines; this produces
11042         odd aliasing effects in Acroread.
11043
11044         * lily/timing-engraver.cc (process_music): robustness fix.
11045
11046         * lily/context-def.cc (filter_engravers): bugfix.
11047
11048 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11049
11050         * lily/lilypond.rc.in: Add ly-icon.
11051
11052         * lily/GNUmakefile: 
11053         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
11054         rules.
11055
11056 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11057
11058         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
11059
11060         * ps/music-drawing-routines.ps: 
11061
11062         * scm/output-ps.scm: remove draw ez_ball.
11063
11064         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
11065         EasyNotation context definition.
11066
11067         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
11068         Text_interface and color for making easy note heads.
11069
11070         * lily/stencil.cc (with_color): new function.
11071
11072         * ps/music-drawing-routines.ps: remove draw_zigzag_line
11073
11074         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
11075         output routine. Zigzag now works in SVG too.
11076
11077         * scm/output-tex.scm (filledbox): idem.
11078
11079         * scm/output-svg.scm (filledbox): idem.
11080
11081         * scm/output-ps.scm (lily-def): remove horizontal-line. 
11082
11083         * lily/lookup.cc (horizontal_line): use draw-line. 
11084
11085         * lily/system-start-delimiter.cc: remove old staff bracket code.
11086
11087         * mf/feta-haak.mf: further tweaks.
11088
11089         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
11090
11091         * mf/feta-generic.mf: include feta-haak.
11092
11093         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
11094
11095         * scm/framework-ps.scm (write-preamble): only load fonts if their
11096         filename is a string. 
11097
11098 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11099
11100         * scm/output-svg.scm (circle): support circle.
11101         (bracket): stub for bracket.
11102
11103         * scripts/lilypond-book.py (main): make sure --psfonts warning is
11104         correct.
11105
11106 2005-05-26  Graham Percival  <gperlist@shaw.ca>
11107
11108         * Documentation/user/lilypond.tely, advanced-notation.itely,
11109         basic-notation.itely, instrument-notation.itely, global.itely,
11110         introduction.itely, tutorial.itely: rearranging, editing,
11111         clean-up.
11112
11113         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
11114         for compiling on FreeBSD.
11115
11116 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11117
11118         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
11119         otf files.
11120
11121         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
11122         bugfixes.
11123
11124         * VERSION: 2.5.26 released.
11125
11126         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
11127
11128 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
11129
11130         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
11131         if printpagenumber is false.
11132
11133 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11134
11135         * lily/font-config.cc (init_fontconfig): comment out FontConfig
11136         cache warning.
11137
11138         * lily/tie.cc (print): support dotted ties.
11139         
11140 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11141
11142         * scm/define-grobs.scm (all-grob-descriptions): switch off
11143         debugging
11144         (all-grob-descriptions): Arpeggio has Y-extent.
11145
11146         * scm/define-music-properties.scm (all-music-properties): document
11147         length-callback and start-callback as "read-only".
11148
11149         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
11150         length-callback after creation. 
11151
11152         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
11153         compressmusic -> compressMusic.
11154
11155         * ly/music-functions-init.ly (oldaddlyrics): idem.
11156
11157         * lily/parser.yy: NewLyricCombineMusic ->
11158         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
11159
11160 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
11161
11162         * ly/Welcome_to_LilyPond.ly: typo.
11163
11164 2005-05-24  Graham Percival  <gperlist@shaw.ca>
11165
11166         * Documentation/user/lilypond.tely: move changing-defaults to be
11167         before global issues.
11168
11169         * Documentation/user/basic-notation.itely: move Transpose section
11170         here from advanced/Other.
11171
11172         * Documentation/user/changing-defaults.itely,
11173         advanced-notation.itely: move Fonts to advanced, edit.
11174
11175 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11176
11177         * lily/parser.yy (bare_int): remove rule.  From now on, we require
11178         # before negative integers.
11179
11180 2005-05-23  Graham Percival  <gperlist@shaw.ca>
11181
11182         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
11183
11184         * Documentation/user/lilypond.tely: change Unified index to
11185         LilyPond index.
11186
11187         * Documentation/user/advanced-notation.itely,
11188         instrument-notation.itely: editing.
11189
11190 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
11191
11192         * scm/lily.scm (lilypond-all): Bugfix: return failed.
11193
11194         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
11195
11196 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11197
11198         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
11199         ly:port-move.  Needs to be stderr-specific on mingw.
11200         Run fixcc.
11201
11202 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11203
11204         * lily/general-scheme.cc (ly:port-move): Remove.
11205
11206         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
11207         windows.
11208
11209         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
11210         variables.  This eliminates the need for a gs.bat wrapper, which
11211         opens a console.
11212
11213         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
11214         * scm/lily.scm (running-from-gui?): 
11215         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
11216         artifact of not compiling with -mwindows.
11217
11218         * scm/editor.scm: Define PLATFORM.
11219
11220 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11221
11222         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
11223         can start to cut & paste lilypond-book fragments.  
11224
11225         * scm/define-music-types.scm (music-descriptions): remove
11226         UntransposableMusic
11227
11228 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11229
11230         * scm/output-ps.scm (glyph-string): remove / before CIDs.
11231
11232 2005-05-20  Graham Percival  <gperlist@shaw.ca>
11233
11234         * Documentation/user/instrument-notation.itely: remove *Engraver.
11235
11236         * Documentation/user/advanced-notation.itely: edit, rearrange.
11237
11238 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11239
11240         * scm/output-ps.scm (glyph-string): take cid? argument. Use
11241         findresource iso. findfont for CID CFF fonts.
11242
11243         * VERSION (PACKAGE_NAME): release 2.5.25
11244
11245         * ly/Welcome_to_LilyPond.ly: add  \version
11246
11247 2005-05-20  Graham Percival  <gperlist@shaw.ca>
11248
11249         * Documentation/user/programming-interface.itely: move
11250         \displayMusic into its own section.
11251
11252         * Documentation/user/basic-notation.itely: finish editing.
11253
11254 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11255
11256         * flower/file-path.cc (find): don't throw away file_name.dir, but
11257         append to it. Fixes \include with directories.
11258
11259         * flower/include/file-path.hh (class File_path): don't derive from
11260         Array<String>.
11261
11262         * flower/include/file-name.hh (class File_name): remove to_str0()
11263
11264         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
11265         Hara_kiri_engraver in separate file.
11266
11267         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
11268         translation went wrong. Fixes vertically translated slurs.
11269
11270 2005-05-19  Graham Percival  <gperlist@shaw.ca>
11271
11272         * Documentation/user/basic-notaton.itely: editing.
11273
11274 2005-05-18  Graham Percival  <gperlist@shaw.ca>
11275
11276         * Documentation/user/macros.itexi, basic-notation.itely:
11277         add @commonprop (commonly used properties) macro.
11278
11279 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11280
11281         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
11282
11283         * scripts/lilypond-book.py (invokes_lilypond): new function
11284         (main): only run fontextract if invokes_lilypond() is true.
11285
11286         * lily/function-documentation.cc (ly_add_function_documentation):
11287         duh, use !=
11288
11289         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
11290
11291         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
11292
11293         * scm/lily.scm (running-from-gui?): lowercase Darwin.
11294
11295         * lily/function-documentation.cc (ly_add_function_documentation):
11296         use scm_hash_table_p() for checking.
11297
11298 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11299
11300         * Documentation/user/advanced-notation.itely (Text scripts):
11301         Change nonexisting @internalsref{Text markup} to @ref{Text
11302         markup}.  Change @internalsref{Text script} to
11303         @internalsref{TextScript}.
11304
11305         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
11306
11307 2005-05-17  Graham Percival  <gperlist@shaw.ca>
11308
11309         * Documentation/user/tutorial.itely, basic-notation.itely,
11310         changing-defaults.itely: remove duplicate cindex entries
11311         that appear on the same page.
11312
11313         * scm/define-grobs.scm: change default padding for TextSpanner.
11314
11315         * Documentation/topdocs/AUTHORS.texi: update email address.
11316
11317         * Documentation/user/global.itely: add info about \include.
11318
11319 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11320
11321         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
11322         when running-from-gui.
11323
11324         * scm/editor.scm (get-editor): Add platform defaults.
11325
11326         * scm/backend-library.scm (postscript->pdf): Typo.
11327
11328 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11329
11330         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
11331
11332         * lily/font-config.cc (init_fontconfig): add warning about cache.
11333
11334 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11335
11336         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
11337
11338 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
11339
11340         * lily/horizontal-bracket.cc (print): Take care of the direction
11341         property so brackets above the stave point downwards. 
11342
11343         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
11344         for HorizontalBracket so it doesn't end up within the stave.
11345
11346 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11347
11348         * lily/GNUmakefile (default): Typo.
11349
11350         * scm/lily.scm (PLATFORM): Export.
11351
11352         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
11353         load-font-via-GS, ttftool or fopencookie is broken on windows.
11354         
11355         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
11356         -dSAFER, that is broken on windows.
11357
11358 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11359
11360         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
11361         for FlexLexer.h
11362
11363         * scripts/lilypond-invoke-editor.scm: remove stray -
11364
11365 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
11366
11367         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
11368         Fixes deprecation warning.
11369
11370         * flower/include/string.icc (to_string): Only inline if
11371         -DSTRING_UTILS_INLINED.
11372
11373         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
11374         name.  Remove windows comment.
11375
11376         * scm/editor.scm (slashify): New function.
11377         (get-editor-command): Use it.
11378         (get-command-template): Do not alter editor command if
11379         environment value includes `%(file)s' magic.
11380
11381         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
11382         (dissect-uri): Use it.
11383         (unquote-uri): Bugfix.
11384
11385 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11386
11387         * scm/framework-ps.scm (write-preamble): add TTF rule.
11388
11389         * Documentation/topdocs/README.texi (Top): remove note about
11390         xdelta.
11391
11392         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
11393         requirement.
11394
11395         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
11396         function. Figure out where FlexLexer.h lives
11397
11398         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
11399         
11400 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11401
11402         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
11403         with Windows root in file name.
11404
11405         * scm/backend-library.scm (ly:system): Only redirect output (using
11406         system and shell, ugh) if /dev/null is writable.
11407
11408         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
11409         windows icon.
11410
11411         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
11412         on Mingw.
11413
11414         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
11415         click.
11416
11417         * flower/file-path.cc (is_dir, is_file): New function.  Actually
11418         use result of stat when available.
11419
11420         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
11421         absolute file name and root.
11422
11423         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
11424
11425         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
11426
11427         * flower/file-name.cc (slashify): Bugfix, do substitute if no
11428         slashes in file name.
11429
11430 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11431
11432         * Documentation/user/preface.itely (Preface): Run
11433         texinfo-all-menus-update.
11434
11435         * scm/editor.scm (get-editor-command): Bugfix: allow full
11436         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
11437
11438         * Documentation/pictures/lilypond-48.xpm: New file.
11439
11440         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
11441
11442         * ly/Welcome_to_LilyPond.ly: New file.
11443
11444         * lily/main.cc (main): Only identify if we have a terminal.
11445
11446         * scm/backend-library.scm (postscript->png)
11447         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
11448         non-/bin/sh).
11449
11450 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
11451
11452         * Documentation/topdocs/AUTHORS.texi: polish, update.
11453
11454 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11455
11456         * Documentation/user/preface.itely (Notes for version 2.6): new
11457         notes for 2.6
11458
11459         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
11460         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
11461         is not fully contained" warnings.
11462
11463         * lily/slur-scoring.cc (get_bound_info): remove warning.
11464
11465         * lily/staff-symbol-engraver.cc (process_music): start initial
11466         spanner in process_music(). This fixes overrides of StaffSymbol
11467         properties.
11468
11469         * scm/framework-pdf.scm (Module): remove.
11470
11471         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
11472
11473         * lily/ambitus-engraver.cc: formatting cleanups.
11474
11475         * mf/feta-solfa.mf (Module): remove.
11476
11477         * ChangeLog: more details about contributions.
11478
11479 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11480
11481         * lily/align-interface.cc (align_elements_to_extents): warn if
11482         called too early. Fixes: disappearing-staff-lines.ly
11483
11484         * VERSION (PACKAGE_NAME): release 2.5.24
11485
11486 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11487
11488         * stepmake/aclocal.m4: Typo.
11489
11490         * flower/string.cc (substitute): Take two strings or two
11491         characters.  Update callers.
11492
11493 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11494
11495         * flower/file-name.cc (File_name): Slashify.
11496
11497         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
11498
11499         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
11500
11501         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
11502
11503         * configure.in (gui_b): Use it.
11504
11505         * lily/lilypond.rc.in: New file.
11506
11507         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
11508
11509 2005-05-12  Graham Percival  <gperlist@shaw.ca>
11510
11511         * Documentation/user/advanced-notation.itely: edit of Text
11512         section; clarify text scripts vs. text markup.
11513
11514 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11515
11516         * lily/multi-measure-rest-engraver.cc
11517         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
11518         separation items on start. Fixes mm rests in start of score.
11519
11520         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
11521         don't access StaffSymbol if not there.
11522         Fixes: crash-staff-symbol-engraver.ly.
11523
11524         * lily/instrument-name-engraver.cc (class
11525         Instrument_name_engraver): data member first_. Create
11526         InstrumentName on start. 
11527
11528 2005-05-12  Graham Percival  <gperlist@shaw.ca>
11529
11530         * Documentation/user/instrument-notation.itely: add guitar
11531         position.
11532
11533         * Documentation/user/introduction.itely,
11534         Documentation/user/lilypond.tely,
11535         Documentation/user/tutorial.itely: begin pruning
11536         unused (duplicated) cindex entries and misc cleanup.
11537
11538 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
11539
11540         * input/test/volta-chord-names.ly: Bring the explanation up to
11541         date.
11542
11543 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
11544
11545         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
11546         Specify `@documentencoding utf-8' for html, ignore warnings.
11547
11548 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
11549
11550         * THANKS: Added bughunters.
11551
11552 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
11553
11554         * lily/main.cc: update help string for `lilypond -H'.
11555
11556         * po/fi.po: update.
11557         
11558 2005-05-10  Graham Percival  <gperlist@shaw.ca>
11559
11560         * Documentation/user/advanced-notation.itely: minor fixes.
11561
11562 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11563
11564         * scm/editor.scm: New module.
11565
11566         * scm/lily.scm (gui-main): Use it.
11567
11568         * scm/framework-gnome.scm (spawn-editor): Use it.
11569
11570         * scripts/lilypond-invoke-editor.scm: Use it in new script.
11571
11572 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11573
11574         * scm/framework-ps.scm (load-font-via-GS):  new function.
11575
11576         * lily/pango-font.cc (pango_item_string_stencil): add support for
11577         CID keyed font.
11578
11579         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
11580
11581 2005-05-10  Graham Percival  <gperlist@shaw.ca>
11582
11583         * Documentation/user/basic-notation.itely: add @ref.
11584
11585         * Documentation/user/advanced-notation.itely: add example
11586         of 5/8 beaming.
11587
11588 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11589
11590         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
11591
11592         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
11593         going through ps2pdf wrappers.
11594
11595 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
11596
11597         * Documentation/user/instrument-notation.itely: petrucci note
11598         heads: updated docu
11599
11600         * input/regression/note-head-style.ly: updated regression test;
11601         indentation fixes
11602
11603         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
11604         heads as default
11605
11606         * mf/parmesan-heads.mf: minor editing; use musicological names
11607         (rather than optical description) as note head names
11608
11609         * scm/output-lib.scm: complete petrucci heads
11610
11611 2005-05-09  Pal Benko  <benkop@freestart.hu>
11612
11613         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
11614         heads, but bigger)
11615
11616 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11617
11618         * lily/main.cc (main_with_guile): Remove no files check.
11619
11620         * lily/main.cc (ly:usage): Export to Scheme.
11621
11622         * scm/lily.scm (no-files-handler): New function.
11623
11624         * scm/lily.scm (lilypond-main): Use it.
11625
11626         * configure.in (gui_b): Add mbrtowc checking.
11627         Resurrect [utf8/]wchar.h checking.
11628
11629 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11630
11631         * Documentation/user/advanced-notation.itely (Metronome marks):
11632         Add link to the program reference for MetronomeMark
11633
11634         * Documentation/user/lilypond-book.itely (An example of a
11635         musicological document): Correct the example using psfonts 
11636
11637 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
11638
11639         * po/fi.po: update after a lesson how to update entries against
11640         source.
11641         
11642         * po/TODO: document the lesson.
11643
11644 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11645
11646         * configure.in (gui_b): remove wcrtomb checking.
11647
11648         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
11649         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
11650
11651 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11652
11653         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
11654         keep Scheme expressions and strings unmodified when doing the
11655         conversion to postfix notation for slurs and beams. Should
11656         hopefully solve most related conversion problems. 
11657
11658         * Documentation/user/lilypond-book.itely : Clarify and correct how
11659         to call dvips with -h psfonts.
11660
11661 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11662
11663         * Documentation/user/instrument-notation.itely (Entering lyrics):
11664         Typo.  Fixes build.
11665
11666 2005-05-09  Graham Percival  <gperlist@shaw.ca>
11667
11668         * Documentation/user/lilypond-book.itely: document PSFONTS file.
11669
11670         * Documentation/user/lilypond.tely, lilypond-book.itely,
11671         tutorial.itely: change references to 2.5.x to 2.6.x.
11672
11673         * Documentation/user/instrument-notation.itely: clarified \addlyrics
11674         vs \lyricmode.
11675
11676         * Documentation/user/invoking.itely: remove old info about
11677         lilypond-profile.
11678
11679         * Documentation/topdocs/INSTALL.texi: remove old info about
11680         lilypond-profile, add warning about needing international fonts
11681         to build docs.
11682
11683 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11684
11685         * lily/include/grob-info.hh (class Grob_info): make data member
11686         private. Changes throughout.
11687
11688         * input/regression/alignment-order.ly: new file. 
11689
11690         * lily/vertical-align-engraver.cc (acknowledge_grob): read
11691         alignAboveContext and alignBelowContext
11692
11693 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11694
11695         * lily/pfb.cc (LY_DEFINE): add cast.
11696
11697         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11698         matches .otf
11699         (write-preamble): warn about unknown fonts.
11700
11701         * lily/pfb.cc (Module): new function ly:otf->cff
11702
11703         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11704         (get_otf_table): new function.
11705
11706 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11707
11708         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11709         iso. ps2png.
11710
11711 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11712
11713         * po/fi.po: apply second round of update.
11714
11715 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11716
11717         * scm/x11-color.scm (make-x11-color-handler): don't use
11718         #\sp. Apparently doesn't work on all platforms. 
11719
11720 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11721
11722         * Documentation/user/advanced-notation.itely, putting.itely,
11723         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11724
11725 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11726
11727         * VERSION (PACKAGE_NAME): release 2.5.23
11728
11729 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11730
11731         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11732         convert to utf-8.
11733
11734         * THANKS: Add translators for this release, convert to utf-8.
11735
11736         * mf/GNUmakefile (MFTRACE_FLAGS):
11737         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11738         outdir as option (WAS: hardcoded).
11739
11740 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11741
11742         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11743         finished_span_
11744
11745         * THANKS: add Hans Forbrich.
11746
11747         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11748
11749         * Documentation/user/basic-notation.itely (Staff symbol): document
11750         start/stop staff. Reference to ossia.ly
11751
11752         * input/test/ossia.ly: new example using stop and startStaff.
11753
11754         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11755         in other words, don't create "|" barline at start of the score.
11756         (start_translation_timestep): don't set whichBar for start of score.
11757
11758         * input/regression/staff-halfway.ly: use new functionality.
11759
11760         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11761         start and stop staff based on events.
11762
11763         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11764
11765         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11766
11767 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11768
11769         * Documentation/user/programming-interface.itely (How markups work
11770         internally ): remove \encoding reference.
11771
11772 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11773
11774         * scripts/convert-ly.py: Attempt to do a smarter update of 
11775         text markups from versions < 1.9.0 with arbitrary nesting.
11776
11777 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11778
11779         * po/fi.po: convert to utf-8, and update.
11780
11781 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11782
11783         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11784
11785         * lily/*.cc: more <? >? to min/max changes
11786
11787         * lily/include/interpretation-context-handle.hh: rename
11788         Interpretation_context_handle to Context_handle.
11789
11790 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11791
11792         * input/regression/GNUmakefile (local_delete): use `find` together 
11793         with `xargs` to avoid too long argument-lists in cmd line.
11794
11795 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11796
11797         * Documentation/user/introduction.itely: updates "About this manual".
11798
11799         * Documentation/user/advanced-notation.itely,
11800         invoking.itely: minor fixes.
11801
11802 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11803
11804         * COPYING: add font exception. Update FSF address. 
11805
11806         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11807         should be taken without child context.
11808
11809         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11810
11811         * scm/define-markup-commands.scm (triangle): new command, as
11812         robust replacement for unicode Delta/Triangle.
11813
11814 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11815
11816         * ps/music-drawing-routines.ps: add fillp argument.
11817
11818         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11819
11820         * lily/font-config.cc (init_fontconfig): don't add cff/
11821
11822         * VERSION (PACKAGE_NAME): release 2.5.22
11823
11824         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11825
11826         * lily/grace-engraver.cc (consider_change_grace_settings): use
11827         is_alias(). Fixes problem with CueVoice grace notes. 
11828
11829         * lily/simultaneous-music-iterator.cc (construct_children): call
11830         Music_iterator::quit() for iterators that start out invalid. This
11831         fixes indefinitely continuing contexts.
11832
11833         * buildscripts/substitute-encoding.py: new file
11834
11835         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11836         missing @end 
11837
11838         * scripts/lilypond-book.py (write_if_updated): print file name.
11839
11840         * Documentation/user/basic-notation.itely (Explicitly
11841         instantiating voices): idem.
11842
11843         * Documentation/user/advanced-notation.itely (Text spanners):
11844         remove stray { } 
11845
11846         * lily/context.cc (default_child_context_name): the default child
11847         is now first in accepts_list_.
11848
11849         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11850         \defaultchild to all relevant contexts.  This fixes:
11851         drums-pitch.ly.
11852
11853         (Probably also fixes similar problems with ancient
11854         transcriptions getting CueVoices instead of the desired voices.)
11855  
11856         * lily/context-def.cc (get_default_child): new function.
11857         (get_accepted): place default child in front of list.
11858
11859         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11860
11861         * lily/include/context-def.hh (struct Context_def): add
11862         default_accept_
11863
11864 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11865
11866         * scm/define-grobs.scm: remove "remove-first" line, since
11867         the absent property is set to #f anyway.
11868
11869         * Documentation/user/basic-notation.itely,
11870         advanced-notation.itely, instrument-notation.itely: minor
11871         fixes.
11872
11873         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11874
11875         * Documentation/user/advanced-notation.itely,
11876         changing-defaults.itely: consolidate Text stuff in
11877         advanced notation.
11878
11879         * Documentation/user/global.itely: better docs for \header.
11880
11881         * Documentation/user/putting.itely: new chapter; placeholder
11882         for future expansion.
11883
11884         * Documentation/user/examples.itely: moved "suggestions for
11885         writing LP files" section into putting.itely.
11886
11887         * Documentation/user/lilypond.itely: added new chapter,
11888         fixed the short table of contents.
11889
11890 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11891
11892         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11893         infinity for unfeasible beams.
11894
11895         * make/lilypond.fedora.spec.in (Group): idem.
11896
11897         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11898
11899         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11900
11901         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11902         fonts directly.
11903
11904         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11905
11906         * mf/GNUmakefile: remove all CFF rules.
11907
11908         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11909
11910         * lily/open-type-font-scheme.cc (LY_DEFINE):
11911         new function ly:otf-font-table-data.
11912         (LY_DEFINE): new function otf-font?
11913
11914 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11915
11916         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11917         ($(outdir)/Fontmap.lily): idem.
11918
11919         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11920         for PFAEmmentaler-XXX.pfa. 
11921
11922         * Documentation/user/music-glossary.tely (accidental): NL
11923         translation of accidental.
11924
11925 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11926
11927         * flower/include/international.hh: Bugfix: include "string.hh".
11928
11929         * lily/include/mingw-compatibility.hh: New file.
11930
11931         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11932
11933         * configure.in: Search for mingw wcrtomb library.
11934
11935 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11936
11937         * scripts/convert-ly.py: Bug fix
11938
11939         * Documentation/user/changing-defaults.itely (Common tweaks):
11940         Added example where the context has to be specified explicitly
11941         (MetronomeMark). 
11942
11943 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11944
11945         * scripts/lilypond-book.py (ly_options): set timing to #f for
11946         notime option.
11947
11948         * scripts/convert-ly.py (conv): typo.
11949
11950         * flower/*.cc: remove <? and >?
11951         
11952         * lily/*.cc: remove <? and >?
11953
11954         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11955         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11956         editor.
11957
11958 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11959
11960         * lily/part-combine-engraver.cc: add space to variable list.
11961
11962 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11963
11964         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11965         remove-first to false (matches docs)
11966
11967         * Documentation/user/advanced-notation.itely: corrected docs
11968         concerning remove-first.
11969
11970 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11971
11972         * lily/part-combine-engraver.cc: make sure that the relevant
11973         properties are included in the documentation.
11974
11975 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11976
11977         * Documentation/user/lilypond-book.itely: Bernard's docs
11978         for \betweenLilyPondSystem.
11979
11980 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11981
11982         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11983         remarks.
11984
11985 2005-04-28  Pal Benko  <benkop@freestart.hu>
11986
11987         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11988         only on vertical lines of flexa shape, and use a constant
11989         thickness value for horizontal lines (patch slightly modified by
11990         Jürgen Reuter)
11991
11992         * lily/include/mensural-ligature.hh: make 2 comments clearer
11993
11994 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11995
11996         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11997         to need_extra_horizontal_space; bugfix: use class scope to avoid
11998         global namespace pollution
11999
12000         * Documentation/user/instrument-notation.itely (ligatures): added
12001         comment on possible future syntax change and how to work around
12002
12003         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
12004         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
12005         intervals (fixes agnus dei example)
12006
12007         * Documentation/user/instrument-notation.itely (white mensural
12008         ligatures): selected a more illustrative example
12009
12010 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
12011
12012         * Documentation/index.html.in: specify utf-8 charset in meta content.
12013
12014 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12015
12016         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
12017         empty 2nd page for single page.
12018
12019         * scm/lily.scm: remove p&c definitions.
12020
12021         * po/zh_TW.po (Module): new translation.
12022
12023         * lily/lily-guile.cc (ly_chain_assoc): remove.
12024
12025         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
12026         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
12027
12028 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12029
12030         * lily/beaming-info.cc: remove infinity_i
12031
12032         * scripts/abc2ly.py (out_filename): fix thinko with \version.
12033
12034 2005-04-26  Graham Percival  <gperlist@shaw.ca>
12035
12036         * Documentation/user/basic-notation.itely,
12037         instrument-notation.itely, advanced-notation.itely,
12038         changing-defaults.itely: minor fixes.  Added docs
12039         for colors to advanced-notation.itely.
12040
12041         * Documentation/user/advanced-notation.itely: fixed compile
12042         problem and added Bernard's x11-color doc patch.
12043
12044 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
12045
12046         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
12047         alright this time round.
12048
12049 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12050
12051         * Documentation/topdocs/INSTALL.texi (Top): idem.
12052
12053         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
12054
12055         * VERSION (MAJOR_VERSION): release 2.5.21
12056
12057         * scm/output-ps.scm (grob-cause): bugfix.
12058
12059 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
12060
12061         * cygwin/*: Update.
12062
12063         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
12064         stuff.
12065
12066         * scm/output-ps.scm (grob-cause): Bugfix.
12067
12068         * scm/lily.scm (ly:load): Remove x11-color.
12069
12070         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
12071         quote executable, fixes getting version from program --with
12072         --options.
12073         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
12074         $ac_exeect.
12075
12076         * Documentation/user/GNUmakefile: Only build music-glossary with
12077         rendered lilypond snippets during web.
12078
12079 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12080
12081         * po/de.po: update.
12082
12083         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
12084
12085 2005-04-22  Laura Conrad <lconrad@laymusic.org>
12086  
12087         * scripts/abc2ly:
12088         second title line append with punctuation dash character;
12089         encode abc2ly python strings in utf-8
12090        
12091 2005-04-21  Laura Conrad <lconrad@laymusic.org>
12092
12093         * scripts/abc2ly fix chords (again)
12094  
12095 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
12096
12097         * scm/x11-color.scm: new file
12098         All x11 color names can be accessed with:
12099         #(x11-color 'ColorName),
12100         #(x11-color "ColorName") or:
12101         #(x11-color "color name")
12102         If the x11 color name is not recognised then it defaults
12103         to black
12104
12105         * scm/lily.scm: amended to call scm/x11-color.scm
12106
12107 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12108
12109         * Documentation/user/invoking.itely (Reporting bugs): comment out
12110         reference to online PNG bug repository.
12111
12112 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
12113
12114         * lily/translator-scheme.cc (ly:translator-property): Remove.
12115         Update callers.
12116
12117         * lily/context-scheme.cc (ly:context-now): Move from translator.
12118         Update callers.
12119
12120 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12121
12122         * input/regression/grid-lines.ly (skips): refine example.
12123
12124         * scm/define-context-properties.scm
12125         (all-user-translation-properties): doc autoBeamCheck
12126
12127         * input/regression/grid-lines.ly (Module): new file.
12128
12129         * lily/grid-point-engraver.cc (Module): new file.
12130
12131         * lily/grid-line.cc (Module): new file.
12132
12133         * lily/grid-line-span-engraver.cc (Module): new file.
12134
12135         * lily/grid-line-interface.cc (Module): new file.
12136
12137 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
12138
12139         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
12140         missing parameter, actualy cdr through list.  Actually return a
12141         list with ENTRY removed (was '()).
12142
12143         * scripts/convert-ly.py: Update.  Print warning if file cannot be
12144         opened.
12145         (do_conversion): Fix printing of continuation comma.
12146
12147         * Documentation/user/advanced-notation.itely (Beam formatting):
12148         Remove refbugs about compound time and mixed duration.
12149
12150         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
12151         modulo moments explicitely.
12152
12153         * lily/moment.cc (operator %): New function.
12154
12155         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
12156
12157         * lily/translator-scheme.cc (ly:translator-now,
12158         ly:translator-property): New function.
12159
12160         * scm/auto-beam.scm (default-auto-beam-check): New function.
12161
12162         * lily/auto-beam-engraver.cc (test_moment): Use it.
12163
12164         * flower/rational.cc (operator %): Bugfix.
12165
12166 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
12167
12168         * scripts/abc2ly: Bugfix
12169
12170 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12171
12172         * python/fontextract.py (write_extracted_fonts): bugfix, too many
12173         %'s on EndFont comment.
12174
12175         * lily/ledger-line-spanner.cc: some more words of explanation.
12176
12177 2005-04-20  John Williams <williams@tni.com>  
12178         
12179         * scripts/lilypond-book.py: htmlquote bugfix.
12180         Allow snippets to be given distinct filenames.
12181         Allow the default alt text to be overridden.
12182
12183 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
12184
12185         * ly/performer-init.ly: Bugfix
12186
12187         * THANKS: Added bughunters.
12188
12189 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
12190
12191         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
12192
12193         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
12194         position (was: use modulo measure length).
12195
12196         * configure.in (no gui_b): Remove optional gtk+ requirement.
12197
12198 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12199
12200         * Documentation/user/basic-notation.itely (Pitches): add
12201         LedgerLineSpanner.
12202
12203         * lily/dynamic-engraver.cc (process_music): set right bound to
12204         script if present. Else, do not set.
12205         (acknowledge_grob): only set right bound of finished spanner to
12206         note column if no other bound is set.
12207
12208         * python/lilylib.py (make_ps_images): switch back to png16m.
12209         
12210 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
12211
12212         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
12213         writing up to date file.  Add dvips usage suggestion.
12214
12215         * scripts/convert-ly.py: Fix error message.
12216         Print usage if no files on command line.
12217         (usage): Add example usage.
12218
12219         * input/test/compound-time.ly: New file.
12220
12221         * input/test/circle.ly: New file.
12222
12223         * Documentation/topdocs/NEWS.tely: Use them.
12224
12225         * input/test/boxed-stencil.ly: Remove \score.
12226
12227         * buildscripts/mf-to-table.py (base): Add .log dependency.
12228
12229         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
12230         pfa's.  Add .log dependency
12231
12232         * scm/define-markup-commands.scm (lower): New command.
12233
12234         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
12235         make it default.
12236
12237 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12238
12239         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
12240         also to finished cresc as right bound. This fixes:
12241         skip-string-decresc.ly
12242
12243         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
12244         relative_coordinate if extent is empty.
12245
12246         * lily/stem.cc (width_callback): determine correct extent if flag
12247         is not there. This fixes slur-no-flag.ly
12248
12249         * lily/grace-engraver.cc (consider_change_grace_settings): new
12250         function.
12251         (initialize): also consider_change_grace_settings() on
12252         initialization. Fixes large grace notes at start of score.
12253
12254         * lily/break-align-interface.cc (do_alignment): don't translate if
12255         total_extent is empty.
12256
12257         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
12258
12259 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12260
12261         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
12262         with slash.
12263
12264 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12265
12266         * stepmake/aclocal.m4: Remove tfm_path.
12267
12268 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12269
12270         * scm/music-functions.scm (markup-expression->make-markup): fix
12271         bug with cons arguments of markup commands.
12272         (music->make-music): fix music expression property list building
12273
12274 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12275
12276         * aclocal.m4: Massage package names.
12277
12278         * SCons updates.
12279
12280 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12281
12282         * VERSION (PACKAGE_NAME): release 2.5.20
12283
12284         * lily/stem.cc (calc_stem_info): add minimum Y extent of
12285         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
12286
12287         * lily/percent-repeat-engraver.cc (try_music): add measure before
12288         next_moment to future processing moment. Fixes:
12289         percent-repeat-mm-rest.ly
12290         (process_music): don't add moment for 2nd time.
12291
12292         * input/regression/repeat-percent.ly: add mmrests as extra test.
12293
12294         * lily/axis-group-engraver.cc (acknowledge_grob): read
12295         keepAliveInterfaces to decide what to kill.
12296
12297         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
12298         percent-repeat-interface to keepAliveInterfaces. This fixes
12299         percent-repeat-harakiri.
12300
12301 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12302
12303         * SCons updates.
12304
12305 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12306
12307         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
12308
12309         * aclocal.m4: remove --enable-tfm-path configure option
12310
12311         * input/test/ancient-font.ly (lowerStaff): clef name errors.
12312
12313         * scm/backend-library.scm (postscript->png): newline after
12314         finishing command.
12315
12316         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
12317         (LY_DEFINE): ly:paper-score-paper-systems: new function 
12318
12319         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
12320
12321         * lily/score.cc (default_rendering): use Music_output too.
12322
12323         * input/test/chord-names-languages.ly (Module): rename file.
12324
12325         * lily/text-spanner.cc: add bound-padding.
12326
12327         * lily/paper-book.cc (systems): accept Paper_score
12328         iso. Paper_system vector. 
12329
12330         * input/regression/line-arrows.ly: new file.
12331
12332         * lily/paper-score.cc (process): run get_paper_systems() only once.
12333
12334         * lily/line-spanner.cc (line_stencil): add arrows.
12335
12336 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
12337
12338         * lily/line-interface.cc (make_arrow): new function. 
12339         (arrows): idem.
12340
12341 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
12342
12343         * input/test/chord-names-german.ly: update for italian/french
12344         chords.
12345         
12346         * Documentation/user/instrument-notation.itely (Printing chord
12347         names): update.
12348
12349 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12350
12351         * lily/include/paper-score.hh (class Paper_score): remove unused
12352         prototypes.
12353
12354         * lily/book.cc (process): add -COUNT to midi output.
12355
12356         * lily/score.cc (book_rendering): remove outname argument
12357         (book_rendering): return list of Music_outputs. 
12358
12359         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
12360
12361         * lily/book.cc (process): loop over Music_outputs returned from
12362         Score::book_rendering().
12363
12364         * lily/*.cc (width_callback): remove spurious "unused" warnings
12365         for assert (axis==[XY]_AXIS); 
12366
12367         * lily/include/music-output.hh (class Music_output): smobify class.
12368
12369         * lily/include/paper-score.hh (class Paper_score): make members
12370         private.
12371
12372         * lily/performance.cc (process): return #f iso. #<undefined>. This
12373         prevents #<undefined> leaking into GUILE-userspace.
12374
12375 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12376
12377         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
12378
12379 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
12380
12381         * scm/chord-name.scm : support for italian and french
12382         chords names.
12383
12384         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
12385         a space defined by chordPrefixSpacer when the root name is
12386         direclty followed by a prefix.
12387
12388         * ly/engraver-init.ly : chordPrefixSpacer       
12389         * scm/define-context-properties.scm : chordPrefixSpacer
12390         * ly/property-init.ly : italianChords, frenchChords 
12391
12392 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12393
12394         * mf/feta-din.mf: Remove.
12395
12396         * mf/GNUmakefile (fontdir): Bugfix.
12397
12398         * mf/SConstruct: Some updates.
12399
12400         * SConstruct: Require pkg-config.
12401         (test_program): Bugfix for double digit version compares, use
12402         integer (not string-) compare.
12403         Optionally require gs 8.14.
12404
12405         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
12406
12407         * lily/*: s/ifdef HAVE_*/if have/.
12408
12409         * SConstruct (test_lib): New function.  Update pkg-config and some
12410         other requirements.
12411
12412         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
12413         freetype, pangof2t.
12414
12415 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12416
12417         * po/lilypond.pot, ...: Update using bison-CVS.
12418
12419         * python/lilylib.py (make_ps_images): Fixo.
12420
12421 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12422
12423         * python/lilylib.py (make_ps_images): typo.
12424
12425         * configure.in (gui_b): make bison optional.
12426
12427         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
12428
12429 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
12430
12431         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
12432         with one parameter can be defined in a LaTeX file when processed
12433         by lilypond-book this will be evaluated between the systems of
12434         a multi-system score. The parameter is the number of systems processed.
12435
12436 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12437
12438         * python/lilylib.py (make_ps_images): Escape newline.
12439
12440         * Documentation/user/music-glossary.tely: Run
12441         texinfo-all-menus-update.
12442
12443 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12444
12445         * scm/lily-library.scm (old-relative-not-used-message)
12446         (version-not-seen-message): Add input-file-name-location to message.
12447
12448         * lily/parser.yy (lilypond): Add token aliases.
12449
12450         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
12451         not confuse with alteration.
12452         (alteration): Add.
12453
12454 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12455
12456         * python/lilylib.py (make_ps_images): use -dEPSCrop
12457
12458         * VERSION (PACKAGE_NAME): release 2.5.19 
12459
12460         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
12461         only put xrefs in info documentation.
12462
12463         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
12464         .pdf rule to tex-rules.make.
12465
12466         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
12467         from -systems.* output.
12468
12469         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
12470         directly, remove -$(PAGESIZE) target.
12471
12472         * input/test/embedded-postscript.ly: update.
12473
12474 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12475
12476         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
12477
12478         * Documentation/user/changing-defaults.itely (Font selection):
12479         document font-name.
12480
12481         * input/regression/font-name.ly: show Pango fonts for
12482         font-name. Update example. 
12483
12484         * lily/pango-select.cc (properties_to_pango_description): don't
12485         convert symbol font-size to number, but use to lookup.
12486
12487         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
12488
12489         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
12490         (NAME . FILE-NAME) tuples for font descriptions. 
12491         (write-preamble): display BeginFont DSC comments.
12492
12493         * python/fontextract.py (write_extracted_fonts): new file. Extract
12494         font resources from a PS file.
12495
12496         * scripts/lilypond-book.py (option_definitions): --psfonts option.
12497         (Compile_error.process_include): do_file returns chunks.
12498
12499         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
12500
12501         * make/lysdoc-targets.make: .texi is .PRECIOUS
12502
12503         * scripts/lilypond-book.py (write_if_updated): new function.
12504
12505 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12506
12507         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
12508
12509 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12510
12511         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
12512
12513         * input/regression/markup-syntax.ly: remove \score.
12514
12515         * scm/define-markup-commands.scm (draw-circle): add fill argument
12516
12517         * scm/stencil.scm (make-circle-stencil): add fill argument
12518
12519         * ps/music-drawing-routines.ps: add fill argument.
12520
12521         * ly/performer-init.ly: add CueVoice to MIDI too.
12522
12523         * ps/music-drawing-routines.ps: new routine BeginEPSF /
12524         EndEPSF.
12525
12526         * input/regression/markup-eps.ly: new file.
12527
12528         * scm/framework-ps.scm (write-preamble): change order: vars should
12529         be inited before procedures.
12530
12531         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
12532         for EPS files.
12533
12534         * scm/define-markup-commands.scm (epsfile): add epsfile command.
12535
12536 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12537
12538         * configure.in (gui_b): add check for ghostscript 8.15
12539
12540 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12541
12542         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
12543         start of line. Fixes cresc-after-newline.ly
12544
12545         * lily/source-file.cc (file_line_column_string): use get_column().
12546
12547 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12548
12549         * lily/source-file.cc (get_column): utf-8 support for column numbers.
12550
12551 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12552
12553         * lily/*: use message () iso progress_indication () for messages.
12554         Revise/uniformise user messages.
12555
12556         * flower/warn.cc (progress_indication): New function.
12557         (message): Use it.  Fixes newline problems.
12558
12559         * config.make.in (webdir): Sort out install dirs.
12560
12561         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
12562
12563         * python/lilylib.py (command_name): Bugfix.
12564         (make_ps_images):
12565
12566 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
12567
12568         * lily/main.cc: --help says what types of backends are availabe
12569
12570 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12571
12572         Fix ./VERSION dependency, and without need to reconfigure.
12573
12574         * lily/main.cc (setup_paths): Update.
12575
12576         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
12577
12578         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
12579
12580         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
12581         Add \line for some simplistic cases.
12582
12583         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
12584
12585 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12586
12587         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
12588         to compile LY files (useful for adding eg. "-I" args)
12589         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
12590         2Gnome command for gnome backend.
12591         (LilyPond-command-formatgnome): call the 2Gnome command. key
12592         binding: C-c C-g
12593
12594 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12595
12596         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
12597         depend on all PNG images.
12598
12599 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12600
12601         * GNUmakefile.in: Bugfix: also link .map files.
12602
12603 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12604
12605         * scm/music-functions.scm (music->make-music): generate 
12606         a (make-music ...) sexpr from a music expression.
12607         (display-scheme-music): use guile pretty printer to display the
12608         make-music sexpr.
12609
12610 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12611
12612         * ly/engraver-init.ly: reindent.
12613         Add CueVoice.
12614
12615         * scm/music-functions.scm (music-pretty-string): handle moments
12616         too.
12617         (music-pretty-string): only print non-empty lists.
12618         (cue-substitute): create CueVoice context, which has smaller type.
12619
12620         * lily/moment-scheme.cc (LY_DEFINE): new methods
12621         ly:moment-grace-{numerator,denominator}
12622
12623         * lily/context-handle.cc: remove quit() method. 
12624
12625         * lily/font-config.cc (init_fontconfig): be verbose about font path.
12626         (init_fontconfig): success is 0, not !0
12627
12628 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12629
12630         * mf/feta-nummer-code.mf (code): add plus glyph.
12631
12632         * lily/tie.cc (print): idem.
12633
12634         * lily/slur.cc (print): don't use thickness property for
12635         slur shape-thickness.
12636
12637         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
12638         while adding stencils.
12639
12640         * scm/define-markup-commands.scm (with-color): with-color markup
12641         command.
12642         (whiteout): new markup command 
12643         (filled-box): new markup command
12644
12645 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12646
12647         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
12648         test for PDF docs.
12649
12650         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
12651         PFAAybabtu-Regular.  Fixes feta font in PDFs.
12652         
12653         Notes for tetex-3.0 make web:
12654            psclean.map: s/uhv8a/uhvr8a/
12655            config.ps add:
12656                 p +psfonts_t1.map
12657                 p +psclean.map
12658                 p +typeface.map
12659
12660 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12661
12662         * scm/music-functions.scm (music-pretty-string): fix bug with
12663         string argument.
12664
12665 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12666
12667         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
12668
12669 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12670
12671         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
12672         only process options if they're there.
12673         (write_file_map): add version-seen? to snippet-map.ly
12674
12675 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12676
12677         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
12678         formatting cleanups.
12679
12680         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
12681         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
12682
12683 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12684
12685         * scm/framework-ps.scm (ps-font-command): don't hash, just use
12686         name directly.
12687
12688         * lily/main.cc (setup_paths): either add mf/out to search path or 
12689         fonts/{otf,type1,etc}
12690         
12691         * lily/font-config.cc (init_fontconfig): either add mf/out to
12692         FontConfig or fonts/{otf,type1,etc}
12693
12694         * GNUmakefile.in: don't put mf/ link in share/ dir.
12695
12696         * lily/staff-spacing.cc: move same-direction-correction to
12697         note-spacing-interface
12698
12699         * scm/lily.scm (lilypond-main): use variable argument count for
12700         exception handler.
12701
12702         * lily/font-config.cc (init_fontconfig): add operator pacification
12703         message.
12704
12705         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12706
12707         * buildscripts/gen-emmentaler-scripts.py (i): generate
12708         PFAEmmentaler as well.
12709
12710         * scm/framework-ps.scm (munge-lily-font-name): new function
12711         (write-preamble): hack: insert PFA equivalent of CFF into
12712         .PS. This makes LilyPond output printable on normal PS printers
12713         again.
12714
12715         * buildscripts/gen-emmentaler-scripts.py (i): generate
12716         PFAEmmentaler.pfa aswell.
12717
12718 2005-04-06  John Williams <williams@tni.com>  
12719         
12720         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12721         
12722 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12723
12724         * scm/page-layout.scm (default-page-make-stencil): always combine
12725         the header stencil, even if empty. This prevents the body text to
12726         reach up to the margins.
12727
12728         * po/rw.po (Module): new file, for Kinyarwanda.
12729
12730         * input/test/spacing-optical.ly (Module): new file.
12731
12732         * lily/staff-spacing.cc: add same-direction-correction
12733
12734 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12735
12736         * Documentation/user/introduction.itely (Engraving): Comment-out
12737         non-existent file.
12738
12739 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12740
12741         * scm/define-grob-properties.scm (all-user-grob-properties): add
12742         same-direction-correction
12743
12744         * VERSION: release 2.5.18
12745
12746 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12747
12748         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12749         dereferencing.  Fixes make web.
12750
12751         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12752         errno.h.
12753
12754         * Documentation/user/: Fix links.
12755
12756 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12757
12758         * lily/text-interface.cc (Module): rename from text-item.cc
12759
12760         * input/regression/apply-output.ly (texidoc): function naming fix.
12761
12762         * lily/time-signature-performer.cc (derived_mark): new function.
12763
12764         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12765
12766         * scripts/lilypond-book.py (find_linestarts): new function.
12767         (find_toplevel_snippets): keep track of line numbers.
12768
12769         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12770         all key changes.
12771
12772         * ly/declarations-init.ly (partCombineListener): use
12773         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12774
12775         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12776
12777 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12778
12779         * lily/text-item.cc: Fix link.
12780
12781         * Documentation/user/changing-defaults.itely (Changing defaults):
12782         Fix programs reference links.
12783
12784         * Documentation/user/music-glossary.tely: Convert to utf-8.
12785
12786 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12787
12788         * make/lilypond-vars.make: remove TEXMF from variables.
12789         remove DEB_BUILD pk font variables.
12790         remove GUILE_LOAD_PATH
12791         remove TeX memory vars.
12792
12793 2005-04-04  Werner Lemberg  <wl@gnu.org>
12794
12795         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12796
12797 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12798
12799         * ps/lilyponddefs.ps: remove reencode-font
12800
12801         * lily/simple-spacer.cc (add_columns): also compare
12802         directly. Column rank doesn't distinguish between broken and
12803         unbroken columns. This fixes large spaces before time sig changes.
12804
12805         * Documentation/user/point-and-click.itely: document ly:set-option.
12806
12807         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12808         point_and_click_global is set.
12809
12810         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12811         ly:set-option argument.
12812
12813 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12814
12815         * GNUmakefile.in: Include symlinks in webball.
12816
12817         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12818         source dir for split and non-split manuals.
12819
12820         * Documentation/user/*y: Fix @uref/@inputfile links for
12821         split/non-split HTML documents.
12822
12823         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12824         .ps.gz.
12825         
12826 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12827
12828         * GNUmakefile.in: Add newline.
12829
12830 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12831
12832         * tex/lilyponddefs.tex: use color instead of xcolor
12833         * scm/output-tex.scm: minor editing
12834
12835 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12836
12837         * scm/music-functions.scm (display-scheme-music): pretty printer
12838         for music expressions.
12839
12840 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12841
12842         * buildscripts/install-info-html.sh (index_file): Fix link.
12843
12844 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12845
12846         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12847
12848         * Documentation/index.html.in: Add size estimates with some big pages.
12849
12850         * Documentation/user/tutorial.itely (Running LilyPond for the
12851         first time): Add/replace some @rglos links.  TODO: add more
12852         @rglos links in tutorial, test non-intrusiveness (.css).
12853
12854         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12855         annoying's indication of referencing external document.
12856
12857         * Documentation/user/GNUmakefile: Split version of glossary too.
12858         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12859         links, not only for html.
12860
12861         * Documentation/user/introduction.itely: Fix some links for other
12862         than html, do not use `here' as link name.
12863
12864 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12865
12866         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12867         @glossaryref.
12868
12869 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12870
12871         * scm/page-layout.scm (default-page-make-stencil): only add header
12872         if existing and not empty. Fixes spurious programming error.
12873
12874         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12875
12876 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12877
12878         * scm/output-tex.scm: implement {re,}setcolor
12879         * tex/lilyponddefs.tex: use color package
12880
12881 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12882
12883         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12884         additions to website.
12885
12886         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12887
12888         * Documentation/user/macros.itexi: Fix @usermanref html links in
12889         split documents: use @inforef.
12890
12891 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12892
12893         * Documentation/user/programming-interface.itely: minor fix.
12894
12895         * Documentation/user/advanced-notation.itely: added info to
12896         Metronome markings.
12897
12898 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12899
12900         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12901         use box-stencil.  Remove y-padding argument.
12902         (make-stencil-circler): New function.
12903
12904         * buildscripts/lilypond-words.py (F): 
12905         * elisp/SConscript (a): 
12906         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12907         * vim/SConscript (a): 
12908         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12909
12910         * lily/general-scheme.cc: Build fix.
12911
12912         * scm/markup.scm:
12913         * input/regression/markup-scheme.ly: 
12914         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12915
12916         * scm/stencil.scm (make-circle-stencil): New function.
12917
12918         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12919         name (was cicle).  Update callers.
12920         (circle): New markup command, similar to box.
12921
12922         * scm/stencil.scm (circle-stencil): New function.
12923
12924 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12925
12926         * configure.in: Detect libutf8/wchar.h variant.
12927
12928         * stepmake/aclocal.m4: Modify shared size test.
12929
12930 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12931
12932         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12933
12934 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12935
12936         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12937         
12938         * VERSION (PACKAGE_NAME):  release 2.5.17
12939
12940 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12941
12942         * scm/backend-library.scm (postscript->png): Fix comment and png
12943         message.
12944
12945         * GNUmakefile.in (link-tree): Fix locales.
12946
12947 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12948
12949         * lily/stencil-scheme.cc (LY_DEFINE): change to
12950         ly:stencil-aligned-to, non mutating.
12951
12952         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12953
12954         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12955
12956         * lily/quote-iterator.cc (derived_mark): call
12957         Music_wrapper_iterator::derived_mark() too.
12958
12959         * lily/grace-engraver.cc (derived_mark): change signature, add
12960         const.
12961
12962 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12963
12964         * SConstruct (symlink): 
12965         * GNUmakefile.in (link-tree): Add scripts to prefix.
12966
12967         * lily/general-scheme.cc (ly:effective-prefix): New function.
12968
12969         * scm/backend-library.scm (postscript->png): Use it.
12970
12971 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12972
12973         * lily/paper-score.cc (process): don't delete grobs after
12974         producing stencils. 
12975
12976         * scm/part-combiner.scm (determine-split-list): switch off
12977         debugging info.
12978
12979         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12980         if available.
12981
12982         * scm/define-context-properties.scm
12983         (all-user-translation-properties): add stringNumberOrientations.
12984
12985         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12986         so fingering and string-numbers are separately controlled.
12987
12988 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12989
12990         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12991         not use debugging.
12992
12993 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12994
12995         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12996
12997         * config.hh.in: add HAVE_FONTCONFIG.
12998
12999         * Documentation/user/instrument-notation.itely (String number
13000         indications): new node.
13001
13002         * input/regression/new-markup-syntax.ly (texidoc): add circle.
13003
13004         * lily/new-fingering-engraver.cc (add_string): new function. 
13005         (acknowledge_grob): accept string-number-event as well.
13006
13007         * scm/define-markup-commands.scm (circle): new markup command.
13008
13009         * scm/output-lib.scm (print-circled-text-callback): new function.
13010
13011         * lily/GNUmakefile: move ifeq after include stepmake.make.
13012
13013 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13014
13015         * config.make.in (HAVE_LIBKPATHSEA_SO):
13016         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
13017
13018         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
13019         add KPATHSEA_LIBS.
13020
13021         * debian/watch: 
13022         * debian/control: Update.
13023
13024 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13025
13026         * input/test/title-markup.ly (spaceTest): remove.
13027
13028         * input/test/embedded-tex.ly (Module): remove.
13029
13030         * input/test/music-box.ly: use 'name property, not ly:music-name.
13031
13032         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
13033
13034         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
13035
13036 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13037
13038         * Documentation/topdocs/INSTALL.texi (Top): Remove information
13039         about xdeltas.  Add information about CVS.
13040
13041         * scm/lily.scm (lilypond-main): Fix invocation of handler,
13042         gracefully handle failed files.
13043
13044         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
13045
13046         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
13047         small fixes.
13048
13049         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
13050         No unnecessarily specific i18n messages.  Remove stray `1'.
13051
13052 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13053
13054         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
13055         documentencoding
13056
13057         * scm/documentation-lib.scm (texi-file-head): set utf-8
13058         documentencoding.
13059
13060         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
13061         Delta, not the Symbol one. 
13062
13063         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
13064         for the .map file.
13065
13066         * Documentation/topdocs/INSTALL.texi (Top): add running
13067         requirement as compilation requirement.
13068
13069 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13070
13071         * buildscripts/mutopia-index.py (headertext): add h1 header and
13072         utf-8 charset meta field.
13073
13074         * input/GNUmakefile: prune example list.
13075
13076         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
13077         options.
13078
13079         * lily/slur-scoring.cc (get_base_attachments): only look at stem
13080         extent for visible stems.
13081
13082         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
13083
13084 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13085
13086         * Documentation/topdocs/INSTALL.texi (Top): Updates.
13087
13088         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
13089
13090 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13091
13092         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
13093         pass inf/nan into slur scoring.
13094
13095         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
13096         page.
13097
13098         * scripts/abc2ly.py (dump_voices): use alphabet().
13099
13100 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
13101         
13102         * mf/GNUmakefile (depth): use $(FONTFORGE). 
13103
13104 2005-03-27 Matthias Neeracher <neeracher@mac.com>
13105         
13106         * flower/include/virtual-methods.hh: simplify. Patch by
13107
13108 2005-03-25  John Williams <williams@tni.com>  
13109
13110         * scripts/lilypond-book.py (main): add png for HTML too, guess
13111         only if necessary. 
13112
13113 2005-03-25  Graham Percival  <gperlist@shaw.ca>
13114
13115         * Documentation/topdocs/INSTALL.texi: now recommends
13116         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
13117
13118         * Documentation/user/basic-notation.itely,
13119         Documentation/user/tutoria.itely: warn about
13120         only one (phrasing) slur at once.
13121
13122 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
13123
13124         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
13125
13126 2005-03-23  Graham Percival  <gperlist@shaw.ca>
13127
13128         * Documentation/user/basic-notation.itely: fixed info about
13129         ending a (de)cresc.
13130
13131         * Documentation/user/lilypond-book.itely: fixed
13132         lilypond-book filter example and warned about not doing
13133         --filter and --process at the same time.
13134
13135 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
13136
13137         * lily/parser.yy (bass_number),
13138         Documentation/user/instrument-notation.itely (Figured bass): 
13139         Add the possibility to use text markup in figured bass. 
13140
13141 2005-03-19  Graham Percival  <gperlist@shaw.ca>
13142
13143         * Documentation/user/global.itely: added info about naming
13144         identifiers and breakbefore.
13145
13146         * Documentation/user/invoking.itely: added info about batch
13147         processing files with convert-ly, removed references to TeX
13148         in the jail section.
13149
13150         * Documentation/user/examples.itely: possibly fixed piano
13151         dynamics.
13152
13153         * Documentation/user/advanced-notation.itely: added info
13154         about removing other types of Staff.
13155
13156         * Documentation/user/instrument-notation.itely: possibly
13157         fixed piano staff line switch.
13158
13159         * Documentation/user/changing-defaults.itely: added info
13160         about using normal font in titles.
13161
13162 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13163
13164         * VERSION (PATCH_LEVEL): release 2.5.16
13165
13166         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
13167         explicitly.
13168
13169 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
13170
13171         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
13172         whitespace.
13173
13174         * python/lilylib.py (make_ps_images):
13175         * scm/backend-library.scm (postscript->pdf, postscript->png):
13176         Quote file name.  Use format rather than string-append juggling.
13177
13178 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13179
13180         * python/lilylib.py (make_ps_images): add x to -g argument. 
13181
13182         * lily/key-performer.cc (create_audio_elements): don't use
13183         scm_eval_string. Check for minor 3rd directly.
13184   
13185         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
13186         (sarabandeCelloGlobal): key is D minor, not F major.
13187
13188 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
13189
13190         Fix truncated --png output (Peter Danenberg).
13191         
13192         * python/lilylib.py (make_ps_images):
13193         * scripts/ps2png.py (copyright): Grok --papersize option.
13194
13195         * scm/backend-library.scm (postscript->png): Add parameter
13196         PAPERSIZE.  Update callers.
13197
13198         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
13199         Fixes symbol placement.
13200
13201         * lily/spanner.cc: 
13202         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
13203         <libc-extension.hh>).
13204
13205 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
13206
13207         * Nitpick run.
13208
13209         * buildscripts/fixcc.py: Update.
13210
13211         Builddir run fixes.
13212
13213         * HACKING (datadir): Add VERSION.
13214
13215         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
13216         higher up.
13217
13218 2005-03-15  Werner Lemberg  <wl@gnu.org>
13219
13220         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
13221         diagonal stem doesn't become thinner.
13222
13223 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
13224
13225         * buildscripts/fixcc.py: Fixes (Werner).
13226
13227 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13228
13229         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
13230         Emmentaler/Aybabtu.
13231
13232         * GNUmakefile.in: fix lilypond-words path.
13233
13234         * po/tr.po: update to 2.3.21
13235
13236         * lily/new-fingering-engraver.cc (position_scripts): take priority
13237         from head position.
13238
13239         * input/regression/finger-chords-order.ly (texidoc): new file.
13240
13241 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13242
13243         * make/ly-rules.make: 
13244         * stepmake/aclocal.m4: 
13245         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
13246
13247         * buildscripts/fixcc.py (rules): Leave space after operator.
13248
13249 2005-03-14  Werner Lemberg  <wl@gnu.org>
13250
13251         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
13252         top of the glyph with smooth curve.
13253
13254 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13255
13256         * Documentation/user/global.itely (Page layout): remove
13257         printpagenumber.
13258
13259 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
13260
13261         * input/regression/mensural-ligatures.ly: new file (with examples
13262         compiled by Pal Benko).
13263
13264         * Documentation/user/instrument-notation.itely: Bugfix: yet some
13265         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
13266         musicglyph access.  Many small beautifications in ancient
13267         examples.
13268
13269         * input/test/divisiones.ly: fixed indentation; small
13270         beautifications
13271
13272         * ly/engraver-init.ly: added FIXME comment
13273
13274         * scripts/lilypond-book.py,
13275         Documentation/user/lilypond-book.itely: added music fragment
13276         option "packed" to lilypond-book
13277
13278         * Documentation/user/instrument-notation.itely: Bugfix: added
13279         missing LedgerLineSpanner color setting in several places.  Added
13280         music fragment option "packed" to VaticanaContext example.
13281
13282 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13283
13284         * scm/define-grobs.scm (all-grob-descriptions): switch off
13285         Hyphen_spanner::set_spacing_rods 
13286
13287         * lily/lyric-hyphen.cc (print): add padding between syllable and
13288         hyphen.
13289         (print): shorten hyphen in tight situations (determine using
13290         minimum-length)
13291
13292         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
13293         0.4pt.
13294
13295 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
13296
13297         * ly/titling-init.ly (bookTitleMarkup): Refinements.
13298
13299         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
13300         header/footer markings for regression-test.
13301
13302         * scm/backend-library.scm (output-scopes, header-to-file): Move
13303         from framework-tex.scm.
13304
13305         * scm/framework-ps.scm (output-framework)
13306         (output-preview-framework):
13307         * scm/framework-eps.scm (output-classic-framework)
13308         (output-framework): Use it.  Fixes collated files.
13309
13310 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
13311
13312         * input/sakura-sakura.ly: 
13313         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
13314
13315         * buildscripts/guile-gnome.sh: Update.
13316
13317         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
13318
13319         * mf/aybabtu.pe.in: Capitalize Aybabtu.
13320
13321 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13322
13323         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
13324         culprit: always exit the loop if we find a rod, even if it has
13325         distance < 0. 
13326
13327         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
13328         algorithm.
13329
13330         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13331         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
13332
13333         * scm/output-svg.scm (dashed-line): new  function body.
13334         
13335         * GNUmakefile.in: create .htaccess.
13336
13337 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
13338
13339         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
13340
13341 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13342
13343         * VERSION (PACKAGE_NAME): release 2.5.15
13344
13345         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
13346
13347         * scm/framework-svg.scm (output-framework): put scaling in
13348         document header. Apply scaling only once.
13349         (output-framework): dump page size in px, not mm. 
13350
13351         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
13352         from font-size.
13353
13354         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13355         ly:outputter-output-scheme, new function.
13356
13357         * scm/output-svg.scm (pango-description-to-svg-font): new function
13358
13359 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13360
13361         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
13362         target.
13363
13364         * input/typography-demo.ly: new file.
13365
13366 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13367
13368         * Documentation/user/global.itely (File structure): Add markup blocks
13369         to toplevel expressions.
13370         (Multiple movements, Creating titles): Add markup blocks.
13371
13372         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
13373         <libc-extension.hh>).
13374
13375         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
13376
13377         * flower
13378         * lily
13379         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
13380
13381 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13382
13383         * lily/accidental.cc: special bboxes for natural. 
13384
13385         * mf/feta-toevallig.mf: make stems heavier.
13386
13387         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
13388         texts as well.
13389
13390         * mf/feta-klef.mf: revise. 
13391
13392         * mf/feta-schrift.mf: make thinning of accent less pronounced.
13393
13394         * mf/feta-klef.mf: add rounded curve at top. 
13395         make thinnib a little heavier.
13396
13397 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13398
13399         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
13400
13401         * buildscripts/fixcc.py: New file.
13402
13403         * input/regression/utf8.ly: Update Debian font description.
13404
13405 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13406
13407         * stepmake/aclocal.m4: Fix test.
13408
13409 2005-03-09  Graham Percival  <gperlist@shaw.ca>
13410
13411         * Documentation/user/invoking.itely: added Sebastino Vigna's
13412         docs for the --jail option.
13413
13414 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13415
13416         * lily/stem.cc (print): only produce stemlets if there are no
13417         noteheads on this stem.
13418
13419         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
13420         don't crash on stemlet (visible stem without heads).
13421
13422         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
13423         unbroken situations. 
13424
13425         * scm/output-lib.scm (center-invisible): new function.
13426
13427         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
13428         wishes to determine loose column space.
13429
13430         * lily/font-config.cc (init_fontconfig): add
13431         fonts/{otf,type1,cff}  to path.
13432
13433         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
13434
13435         * mf/GNUmakefile (Module): install all fonts under otf/
13436
13437         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
13438         replace /fonts/otf/ by /ps/ 
13439
13440         
13441 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13442
13443         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
13444
13445         * lily/book.cc (process): Oops, add score_.header_.
13446
13447         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
13448
13449         * lily/parser.yy: Handle toplevel and book texts as score.
13450
13451         * scm/page-layout.scm (default-page-make-stencil):
13452         Bugfix: (page-properties rename.
13453
13454         * scm/backend-library.scm (ly:system): Typo.
13455
13456 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13457
13458         * stepmake/stepmake/executable-targets.make (installexe): don't
13459         strip installed executables
13460
13461         * lily/font-select.cc (get_font_by_design_size): revert
13462         pango_description_string as well.
13463
13464         * lily/system.cc (set_loose_columns): put loose column just left
13465         of next column.
13466
13467         * lily/include/group-interface.hh (extract_grob_array): rename
13468         from Pointer_group_interface__extract_grobs
13469
13470         * input/regression/ledger-line-minimum.ly (texidoc): new file.
13471
13472         * lily/ledger-line-spanner.cc (set_spacing_rods): new
13473         function. Keep ledgered note heads at a minimum distance.
13474         Introduce minimum-length-fraction
13475         (print): introduce length-fraction property.
13476
13477 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13478
13479         * tex/GNUmakefile: remove latin1.enc rules.
13480
13481 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13482
13483         * scm/titling.scm: Typo.
13484
13485         * input/regression/score-text.ly: Really add.
13486
13487         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
13488
13489 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13490
13491         * lily/open-type-font-scheme.cc:  new file.
13492
13493 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13494
13495         * scm/titling.scm (layout-extract-page-properties): Rename from
13496         page-properties.  Update callers.
13497
13498         * lily/lexer.ll (Lily_lexer):
13499         * lily/parser.yy: Junk lyric_markup state.
13500
13501         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
13502
13503         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
13504         Add texts parameter.
13505
13506 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13507
13508         * lily/lexer.ll (lyric_markup): New mode.
13509         (Lily_lexer::push_lyric_markup_state): New method.
13510         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
13511
13512         * lily/parser.yy (book_body):
13513         (toplevel_expression): Grok \markup texts.
13514
13515         * lily/score-scheme.cc (ly:music-scorify): 
13516         * scm/lily-library.scm (collect-music-for-book): Take texts
13517         parameter.
13518
13519         * lily/score.cc (texts_): New member.
13520
13521         * lily/paper-book.cc (systems): Format score texts.
13522
13523         * score-text.ly: New file.
13524
13525         * ttftool/SConscript:
13526         * kpath-guile/SConscript: New file.
13527
13528         * lily/SConscript:
13529         * SConstruct: Update.
13530
13531 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13532
13533         * VERSION (PACKAGE_NAME): release 2.5.14
13534
13535 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13536
13537         * lily/main.cc: Add dummy xgettext markers.
13538
13539 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13540
13541         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
13542         requirements
13543
13544         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
13545         executable is < 40k
13546
13547         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
13548         hack.
13549
13550 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13551
13552         * flower/libc-extension.cc:
13553         * flower/include/libc-extension.hh: [Open]BSD simply cast
13554         cookie/funopen declarations.
13555
13556         * stepmake/aclocal.m4: Check for libkpathsea.so.
13557
13558         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
13559         dl_kpse_find_file.
13560
13561 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13562
13563         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
13564         (open_library): alternative for static library.
13565
13566 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13567
13568         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
13569
13570         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
13571
13572         Drop run-time dependency on teTeX.
13573
13574         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
13575
13576         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
13577         KPATHSEA_LIBS in LIBS.
13578         (STEPMAKE_DLOPEN): New function.
13579
13580         * lily/font-config.cc (init_fontconfig): Use dir for directory,
13581         not path.
13582
13583         * flower/file-path.cc (directories): Rename from paths, as this
13584         return an array of directories (a single path).
13585
13586 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13587
13588         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
13589
13590         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
13591         new ly:kpathsea-find-file
13592
13593         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
13594
13595         * kpath-guile/GNUmakefile: new file
13596
13597         * buildscripts/gen-emmentaler-scripts.py (i): generate
13598         emmentaler-X.fontname as well.
13599
13600         * buildscripts/ps-embed-cff.py: new script
13601
13602         * scm/lily-library.scm: remove ps-embed-cff.
13603
13604         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
13605         font loading. 
13606
13607         * scm/font.scm (add-music-fonts): load dynamics/numbers through
13608         fontconfig as well.
13609
13610         * lily/font-config.cc (init_fontconfig): add cff/ too.
13611
13612         * ly/generate-embedded-cff.ly: capitalize.
13613
13614         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
13615         so as to register the pango font.
13616
13617         * lily/font-config.cc (init_fontconfig): add
13618         prefix/{otf,type1,mf/out} to fontconfig path.
13619
13620         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
13621         overrides all. 
13622
13623         * configure.in (gui_b): remove ec mftrace check
13624
13625         * config.hh.in: use lilypond-Major.Minor as data directory.
13626
13627         * scm/framework-ps.scm (dump-page): use output-units for landscape.
13628
13629         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
13630         name.
13631
13632 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13633
13634         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
13635         error messages.
13636
13637         * flower/libc-extension.cc:
13638         * flower/include/libc-extension.hh: [Open]BSD fixes for
13639         cookie/funopen declarations.
13640
13641 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13642
13643         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
13644         emmentaler.
13645
13646         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
13647         lcrm10.
13648
13649         * scm/define-markup-commands.scm (fontsize): new markup
13650         command. Also set baseline-skip
13651
13652 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
13653         
13654         * lily/main.cc (do_chroot_jail): paranoia security for webserver
13655         use.
13656
13657 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13658
13659         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
13660
13661         * lily/pdf.cc: remove PDF related files
13662
13663 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13664
13665         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
13666         <hamamatsu@gmx.de>
13667
13668 2005-03-05  Graham Percival  <gperlist@shaw.ca>
13669
13670         * Documentation/user/advanced-notation.itely: first draft
13671         of reorg done.
13672
13673         * Documentation/user/global.itely: fixed (sub)section
13674         bits of MIDI.
13675
13676 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13677
13678         * cygwin/mknetrel (extras): Bufix (Bertalan).
13679
13680         * Documentation/user/basic-notation.itely (Chords): @ref fix.
13681         * Documentation/user/instrument-notation.itely (Introducing chord
13682         names): Compile fix: must have unique name.
13683
13684 2005-03-02  Graham Percival  <gperlist@shaw.ca>
13685
13686         * Documentation/user/instrument-notation.itely: reorg.
13687
13688 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13689
13690         * scm/output-gnome.scm:
13691         * scm/output-svg.scm: Fix font scaling.
13692
13693 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13694
13695         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
13696         what link to use best.
13697
13698         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
13699         * Documentation/user/tutorial.itely (Automatic and manual beams):
13700         Fix @ref.
13701
13702         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13703         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13704         * scm/framework-gnome.scm (tweak): Use it.
13705
13706 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13707
13708         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13709
13710         * scm/output-ps.scm (white-text): reinstate white-text
13711
13712 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13713
13714         * scm/output-ps.scm (offset-add): Remove.
13715
13716         * scm/lily-library.scm (offset-flip-y): New function.
13717         * scm/framework-gnome.scm (tweak): Use it.
13718
13719         * scm/output-gnome.scm (grob-cause): Add parameter.
13720
13721         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13722         * scm/output-ps.scm (url-link): Move.
13723         (white-text): Warn user about brokenness.
13724
13725         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13726         wrt ghostscript.
13727
13728 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13729
13730         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13731         if body length smaller than measure length.
13732
13733         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13734         for Y.
13735
13736         * ly/titling-init.ly (tagline): put default tagline in \paper
13737
13738 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13739
13740         * lily/kpath.cc: 
13741         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13742
13743         * scm/lily-library.scm (version-not-seen-message): New function.
13744         * ly/init.ly: Use it.
13745
13746         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13747         breaks as progess.
13748
13749         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13750         whitespace with l10n message.
13751
13752         * scm/framework-tex.scm (convert-to-ps):
13753         (convert-to-dvi): Do not use overly specific l10n messages.
13754
13755         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13756
13757         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13758         merge stderr with stdout.  
13759
13760 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13761
13762         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13763         Neeracher).
13764
13765 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13766
13767         * Documentation/user/instrument-notation.teily: moved
13768         \arpeggio to Basic.
13769
13770         * Documentation/user/advanced-notation.itely: Articulation to
13771         Basic, a bunch of stuff from Basic moved to Advanced.
13772
13773         * Documentation/user/basic.itely: swapped various sections,
13774         reorganized Basic.
13775
13776 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13777
13778         * flower/memory-stream.cc: 
13779         * flower/libc-extension.cc: Remove obsolete #undefs.
13780
13781         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13782         more carefully.
13783
13784 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13785
13786         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13787         dependency.
13788
13789         * VERSION (PACKAGE_NAME): release 2.5.13
13790
13791         * GNUmakefile.in (web-ext): don't ship ps.gz
13792
13793         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13794         stdout
13795
13796 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13797
13798         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13799         without libintl.  Now it compiles too.
13800
13801 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13802
13803         * Documentation/user/basic-notation.itely,
13804         instument-notation.itely, advanced-notation.itely:
13805         split up contents of notation.itely.
13806
13807         * Documentation/user/notation.itely: file removed.
13808
13809         * Documentation/user/invoking.itely, converters.itely:
13810         moved convert-ly info to invoking.itely.
13811
13812         * Documentation/user/global.itely, changing-defaults.itely,
13813         sound-output.itexi: moved global settings, file layout, and
13814         sound into global.itely.
13815
13816         * Documentation/user/sound-output.itexi: file removed.
13817
13818         * Documentation/user/lilypond.tely: removed links to
13819         notation.itely and sound.itely.
13820
13821 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13822
13823         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13824
13825         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13826  
13827         * THANKS: add sponsor.
13828
13829         * scm/define-markup-commands.scm (with-url): new markup command.
13830
13831         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13832         tagline.
13833         
13834         * scm/output-tex.scm (url-link): stub.
13835
13836         * scm/output-ps.scm (url-link): new function.
13837
13838         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13839         ly:set-point-and-click
13840
13841 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13842
13843         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13844         based on pdf-viewer setting.
13845
13846         * scm/framework-ps.scm (write-preamble): Find and set preferred
13847         pdf-viewer.
13848
13849 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13850
13851         * Documentation/user/point-and-click.itely: update for PDF point &
13852         click.
13853
13854         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13855         editors based on EDITOR setting.
13856
13857 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13858
13859         * scm/*: Oops, more grand 2005 replace bits.
13860
13861 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13862
13863         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13864
13865         * scm/output-ps.scm (grob-cause): point & click support for
13866         PostScript
13867
13868 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13869
13870         * lily/input-scheme.cc (LY_DEFINE): rename to
13871         ly:input-file-line-column
13872
13873 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13874
13875         * Documentation/user/examples.itely: small fix from Steve Doonan.
13876
13877         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13878
13879         * THANKS: added Yuval Harel.
13880
13881         * Documentation/user/{various}: inserted two spaces after a period.
13882
13883         * Documentation/user/lilypond.tely: added framework for reorg.
13884
13885         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13886         advanced-notation.itely, global.itely: new files, placeholder for
13887         future reorg.
13888
13889 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13890
13891         * Documentation/user/notation.itely: revamped Polyphony section
13892         
13893 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13894
13895         * Documentation/user/lilypond-book.itely (Music fragment options):
13896         doc fontload.
13897
13898         * Documentation/user/changing-defaults.itely (Text encoding): add
13899         fontload option to utf8 include
13900
13901         * scripts/lilypond-book.py (compose_ly): add fontload option
13902
13903         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13904         force-eps-font-include option.
13905
13906         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13907         black triangle
13908
13909         * Documentation/user/invoking.itely (Editor support): remove
13910         lilypond-latex section.
13911
13912         * scripts/lilypond-latex.py (Module): remove script.
13913
13914         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13915         overwrite .log. 
13916
13917         * lily/main.cc: remove -m, --no-layout
13918
13919         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13920         to define. We don't want to override fprintf everywhere.
13921
13922 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13923
13924         * cygwin/lilypond.hint: 
13925         * cygwin/README.in: Update dependencies.
13926
13927         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13928         Bugfix: do not pollute CPPFLAGS, LIBS.
13929
13930         * cygwin/mknetrel (extras): Cross compile fixes.
13931
13932         * ttftool/util.c: 
13933         * ttftool/ttfps.c: 
13934         * ttftool/ps.c: #include libc-extension.hh
13935
13936         * flower/include/libc-extension.hh:
13937         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13938         wrapper using funopen.
13939         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13940         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13941
13942         * config.hh.in:
13943         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13944         (AC_CHECK_HEADERS): Add libio.h
13945
13946         * scripts/convert-ly.py: Uniformize, internationalize.
13947         (2.5.2): Remove fatal encoding rule.
13948         (2.5.13): Handle latin1 encoding gracefully.
13949
13950 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13951
13952         * HACKING: Fix line breaks.
13953
13954 2005-02-23  Werner Lemberg  <wl@gnu.org>
13955
13956         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13957         contains those two files.
13958
13959 2005-02-21  Werner Lemberg  <wl@gnu.org>
13960
13961         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13962         to improve overlap removal process.
13963
13964         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13965         left and right ending.  This ensures better overlapping.
13966         Update all callers.
13967         ("lineprall"): Don't use draw_gridline to get better overlapping.
13968
13969 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13970
13971         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13972
13973         * Documentation/topdocs/NEWS.tely (Top): oops.
13974
13975 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13976
13977         * HACKING: new file.
13978
13979         * input/regression/utf8.ly (portuguese): added a portuguese example
13980         to show latin1 accents.
13981
13982 2005-02-21  Pal Benko  <benkop@freestart.hu>
13983
13984         * lily/mensural-ligature-engraver.cc:
13985         * lily/mensural-ligature.cc:
13986         * lily/include/mensural-ligature.hh: new algorithm implemented
13987
13988         * scm/define-grob-properties.scm: join-left killed (add-join may
13989         be used); join-left-amount changed to join-right-amount
13990
13991 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13992
13993         * Documentation/user/notation.itely: small but urgent fix.
13994
13995 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13996
13997         * lily/duration-scheme.cc: bugfix: correct parameters to
13998         SCM_ASSERT_TYPE.
13999
14000         * THANKS: added Pal.
14001
14002         * Documentation/user/notation.itely: bugfix: unTeXified
14003         $\\backslash$.  Bugfix: yet another glyph renaming victim:
14004         "timesig.*x/y" -> "timesig.*xy".
14005
14006 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14007         
14008         * VERSION (PACKAGE_NAME): release 2.5.12
14009
14010 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14011
14012         * ly/engraver-init.ly: set tieWaitForNote to #t by default
14013
14014         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
14015
14016         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
14017
14018         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
14019
14020 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14021
14022         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
14023         latin1..utf-8.
14024
14025         * input/regression/stanza-number.ly:
14026         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
14027
14028         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
14029
14030 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14031
14032         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
14033         NEWS. Refer to website for older news.  
14034
14035         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
14036         .HTML. This should be done for specific servers only.
14037
14038         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
14039         .ly image examples.
14040
14041         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
14042         in layer 0 too.
14043
14044         * scm/define-context-properties.scm
14045         (all-user-translation-properties): add tieWaitForNote
14046
14047         * scm/define-grobs.scm (all-grob-descriptions): add
14048         Tie_column::before_line_breaking
14049
14050         * lily/tie.cc (get_column_rank): new function
14051
14052         * lily/tie-column.cc (before_line_breaking): new function.
14053         (werner_directions): take into account ties that start on
14054         different columns.  
14055
14056         * lily/score-engraver.cc (set_columns): move add_column() so we
14057         have column rank available.
14058
14059         * lily/tie.cc (get_column_rank): new function.
14060
14061         * input/regression/utf8.ly (japanese): add japanese lyrics.
14062
14063         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
14064
14065         * THANKS: add Steve D
14066
14067         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
14068         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
14069
14070 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
14071
14072         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
14073         to show harmonic notes
14074         * scm/define-markup-commands.scm: in \markup-by-number
14075         "dots-dot" -> "dots.dot" to show dotted notes
14076
14077 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14078
14079         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
14080
14081         * flower/memory-stream.cc (writer): new file.
14082
14083         * configure.in: add endian test.
14084
14085 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
14086
14087         * Documentation/user/examples.itely: small
14088         simplification/beautification
14089
14090         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
14091         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
14092         notation manual.
14093
14094         * lily/mensural-ligature.cc: bugfix: another few victims of the
14095         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
14096
14097         * ly/gregorian-init.ly: commit some experimental code for hi-level
14098         ligature input language lying around here for several months.
14099
14100         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
14101         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
14102
14103         * lily/vaticana-ligature-engraver.cc: bugfix: another few
14104         "x-y-z"->"x.y.s-z" fixes.
14105
14106 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14107
14108         * scm/framework-pdf.scm (scm): new file
14109
14110         * lily/include/pdf.hh (class Pdf_file): new file.
14111
14112         * lily/pdf.cc (write_trailer): new file.
14113
14114 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
14115
14116         * input/regression/color.ly: new file
14117
14118         * lily/stencil.cc (interpret_stencil_expression):
14119         when a color expression is encountered: save current color,
14120         process the rest of the expression, and restore previous color.
14121
14122         * lily/system.cc (get_line): check all grobs for color property and
14123         prepare the stencil scheme expressions for further processing.
14124         Fix layer-loop.
14125
14126         * scm/define-grob-properties.scm: introduce the color property.
14127
14128         * scm/output-lib.scm: color helper functions.
14129
14130         * scm/output-ps.scm: introduce setcolor/resetcolor.
14131
14132 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
14133
14134         * ly/*.ly, input/regression/*.ly: Added missing \version
14135         statements in some files.
14136
14137 2005-02-15  Graham Percival  <gperlist@shaw.ca>
14138
14139         * Documentation/user/notation.itely: minor editing.
14140
14141         * Documentation/user/converters.itely: updated convert-ly bugs.
14142
14143         * Documentation/user/lilypond-book.itely: add info about using
14144         feta characters in latex.
14145
14146 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14147
14148         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
14149
14150 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14151
14152         * scm/define-grob-properties.scm (all-user-grob-properties):
14153         removed 'dashed property.
14154
14155 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14156
14157         * scm/lily.scm (define-safe-public): new macro for defining
14158         variables that can be used in --safe mode. Use it in *.scm
14159         instead of manually setting safe-objects in safe-lily.scm.
14160
14161 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14162         
14163         * lily/slur.cc: Slur-dash patch by Bertalan.
14164
14165         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
14166
14167         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
14168
14169 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
14170
14171         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
14172
14173 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14174
14175         * mf/GNUmakefile: teTeX-3.0 install fix.
14176
14177         * Cygwin patch from Bertalan.
14178
14179         * stepmake/stepmake/metafont-rules.make: Remove bashism.
14180
14181 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14182
14183         * GNUmakefile.in: 
14184         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
14185
14186         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
14187         2.0.x compatibility.
14188
14189 2005-02-08  Werner Lemberg  <wl@gnu.org>
14190
14191         * mf/feta-din-code.mf: Format; clean up code.
14192         Replace `---' with `--' plus explicit path directions.
14193         (linethickness#, stafflinethickness#): Remove.
14194         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
14195         ("dynamic s"): Improve shape.
14196         ("dynamic p"): Improve shape.
14197         Replace `draw' with better outline approximation.
14198         ("dynamic r"): Improve shape.
14199         Don't call `fill' and `draw' at the same time.
14200
14201 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14202
14203         * SConstruct (symlink):
14204         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
14205         build fix: add enc symlink.
14206
14207         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
14208
14209         Support for DESTDIR besides prefix=/foo
14210
14211         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
14212
14213         * stepmake/stepmake/*.make:
14214         * */GNUmakefile:
14215         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
14216
14217         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
14218
14219         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
14220         mawk in fontforge (date) test.
14221
14222 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14223
14224         * scm/font.scm (make-century-schoolbook-tree): add NCS as
14225         font-family=roman. Add Luxi Sans as sans
14226
14227 2005-02-07  Graham Percival  <gperlist@shaw.ca>
14228
14229         * Documentation/user/notation.itely: add warning about
14230         percent repeats and Voice contexts.
14231
14232         * Documentation/user/lilypond-book.itely: clarified the
14233         necessity of dvips -u arguments.
14234
14235 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
14236
14237         * THANKS: Added a bunch of bug hunters.
14238
14239 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14240
14241         * scm/framework-ps.scm (output-preview-framework): bugfix.
14242
14243         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
14244         o/ for chord modifier..
14245
14246         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
14247
14248         * lily/drum-note-performer.cc:  remove unused (thanks Michael
14249         Welsh Duggan). 
14250
14251 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
14252
14253         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
14254
14255         * ly/titling-init.ly: Do not also print intstrument in header on
14256         first page.  Do not print page number on first and only page.
14257
14258 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14259
14260         * input/regression/*.ly: remove old-relative everywhere
14261
14262         * lily/music-sequence.cc (simultaneous_relative_callback): do
14263         what-if analysis on copy, not on original. Fixes old-relative
14264         compatibility.
14265
14266         * scm/backend-library.scm (postscript->png): space before
14267         --verbose.
14268         
14269 2005-02-05  Werner Lemberg  <wl@gnu.org>
14270
14271         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
14272         is defined.
14273
14274         * mf/feta-alphabet.mf: Define `staffsize#'.
14275         Include `feta-params.mf'.
14276         s/staffheight/design_size/.
14277
14278         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
14279
14280         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
14281
14282         * mf/feta-nummer-code.mf: Reformatted.
14283         (draw_six): Use outline intersection to avoid a self-intersecting
14284         path.
14285         ("Numeral comma"): Fix serious outline glitches.  This slightly
14286         changes the glyph shape.
14287         ("Numeral dash"): Use `draw_rounded_block'.
14288         ("Numeral dot"): Use `drawdot'.
14289         ("Numeral 1"): Assure identical tangent directions for the
14290         intersection points of paths.  The glyph shape improvement is only
14291         visible at very high magnifications.
14292         ("Numeral 2"): Use `solve' macro to make the lower right part of
14293         the glyph outline touch the x axis exactly.  This changes the
14294         glyph shape.
14295         Minor fixes for better overlap removal support.
14296         ("Numeral 4"): Make lefter corner `rounder'.
14297         ("Numeral 5"): Assure identical tangent directions for the
14298         intersection points of paths.  This improves the glyph shape at
14299         high magnifications.
14300         ("Numeral 7"): Use `solve' macro to make the upper right part of
14301         the glyph outline touch the metrics box exactly.  This changes the
14302         glyph shape.
14303         Avoid corner in the upper left part of the glyph (causing a minor
14304         shape change).
14305
14306         * mf/feta-ital-*.mf: Removed.  Unused.
14307
14308 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14309
14310         * VERSION (PATCH_LEVEL): release 2.5.11
14311
14312         * input/regression/fill-line-test.ly: new file.
14313
14314         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
14315         emmentaler name, eg. emmentaler-23. 
14316
14317 2005-02-04  Christian Hitz  <chhitz@gmx.net>
14318
14319         * scm/scm/define-markup-commands.scm (fill-line): rework for better
14320         alignment with centered texts
14321
14322         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
14323         list of paddings
14324
14325 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14326
14327         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
14328
14329         * lily/note-column.cc (translate_rests): call flush_extent_cache()
14330         of parents when translating rests. Fixes: c-chord-rest.ly 
14331
14332         * lily/include/dimension-cache.hh (struct Dimension_cache): add
14333         dimension_callback_ member.
14334
14335         * lily/grob.cc (flush_extent_cache): new function. Force recompute
14336         of extents.
14337
14338 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
14339
14340         * all but lily/*: The grand 2004/2005 replace.
14341
14342 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14343
14344         * lily/*: add space after ,  
14345
14346         * scm/music-functions.scm (has-request-chord): don't use
14347         ly:music-name anywhere. Fixes <<\\>> notation. 
14348
14349         * scm/define-markup-commands.scm (box): use font-size for
14350         padding. Fixes boxed-rehearsal-marks.ly
14351
14352         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
14353         identifier definition too, so foo = \lyrics { ...   } bar = #1
14354         doesn't complain about "bar" being LYRICS_STRING.
14355
14356         * lily/paper-def.cc (find_pango_font): new routine; Store
14357         pango_fonts in hash tab too. This is necessary for retrieving
14358         Pango_fonts::physical_font_tab() later on.
14359  
14360         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
14361         crash if psname is null.
14362
14363         * lily/lily-guile.cc (ly_hash2alist): new function
14364
14365         * Documentation/user/changing-defaults.itely (Text encoding):
14366         rewrite. 
14367
14368         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
14369         -> font_filename mapping.
14370
14371         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
14372         ly_pango_font_physical_fonts
14373
14374         * scm/framework-ps.scm (supplies-or-needs): extract names from
14375         physical Pango_fonts.
14376
14377         * utf8.ly: new file.
14378
14379 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14380
14381         * Documentation/user/changing-defaults.itely (Page layout): add
14382         doco about systemSeparatorMarkup.
14383
14384         * scm/page-layout.scm (default-page-make-stencil): add-to-page
14385         function.
14386         (default-page-make-stencil): insert system separators.
14387
14388         * scm/define-markup-commands.scm (hcenter): add
14389         (beam): add.
14390
14391 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14392
14393         * scm/output-ps.scm (ez-ball): reinstate ez notation.
14394
14395 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
14396
14397         * lily/main.cc: Spell backend consistently.  Sort options.
14398
14399 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14400
14401         * scripts/lilypond-book.py (Module): revert @include.
14402         
14403 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
14404
14405         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
14406         Bugfix: @include .tex (not .texi).  Small cleanups.
14407
14408         * stepmake/bin/add-html-footer.py (i18n): New function.
14409
14410 2005-01-31  Werner Lemberg  <wl@gnu.org>
14411
14412         * mf/feta-nummer.mf: Removed.  Unused.
14413
14414 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14415
14416         * lily/ : 2004 -> 2005 s&r
14417
14418         * scm/file-cache.scm (cached-file-contents): add file. Read each
14419         file only once.
14420
14421         * scm/font.scm (add-pango-fonts): change order. Medium weight is
14422         now default.
14423
14424         * VERSION: release 2.5.10
14425         
14426         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
14427
14428         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
14429
14430         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
14431         that both X and Y extents of bbox are non-nil.
14432
14433 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14434
14435         * scm/chord-name.scm (alteration->text-accidental-markup): change
14436         - to . 
14437
14438         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
14439
14440         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
14441
14442         * Documentation/user/invoking.itely (Invoking lilypond): add note
14443         about EPS backend.
14444
14445         * scm/framework-eps.scm: new file: create per-system/per-page EPS
14446         files for inclusion in lilypond-book document.
14447
14448         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
14449
14450         * input/tutorial/lbook-texi-test.texi: new file.
14451
14452         * scm/safe-lily.scm (safe-objects): add
14453         {begin,end}-of-line-(in)?visible as safe.
14454  
14455 2005-01-30  Graham Percival  <gperlist@shaw.ca>
14456
14457         * Documentation/user/changing-defaults.itely: fixed example
14458         of (dynamics).
14459
14460 2005-01-29  Graham Percival  <gperlist@shaw.ca>
14461
14462         * lily/main.cc: fix info about -o=FILE.
14463
14464 2005-01-29  Werner Lemberg  <wl@gnu.org>
14465
14466         * mf/feta-toevallig.mf ("Natural"): Completely changed the
14467         construction to assure smooth transition from straight to curved
14468         lines.
14469
14470 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14471
14472         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
14473         stencils.
14474
14475         * ps/lilyponddefs.ps: add start-page, start-system doesn't
14476         translate to top of page. Fixes alignment problems of
14477         lilypond-generated EPS files.
14478
14479 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14480
14481         * scm/part-combiner.scm (analyse-spanner-states): trigger on
14482         crescendo-end as well, since Decrescendo maybe ended with Stop
14483         Crescendo.). Fixes: partcombine-diminuendo.ly
14484
14485         * scm/script.scm (default-script-alist): swap portato symbols.
14486
14487         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
14488
14489         * lily/paper-outputter-scheme.cc (LY_DEFINE):
14490         ly:outputter-port. New function.
14491
14492         * scm/framework-ps.scm (output-classic-framework): dump a
14493         -systems.texi too
14494         (output-classic-framework): dump multiple systems on an "infinite"
14495         page EPS including fonts. 
14496
14497         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
14498         .eps files for both texi and tex formats. Use PNG coming from
14499         lilypond.
14500         
14501 2005-01-28  Graham Percival  <gperlist@shaw.ca>
14502
14503         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
14504
14505         * scripts/lilypond-latex.py: fix info about -o=FILE.
14506
14507 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14508
14509         * ly/generate-embedded-cff.ly: write .cff.ps files.
14510
14511         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
14512
14513         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
14514         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
14515
14516 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
14517
14518         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
14519
14520 2005-01-28  Werner Lemberg  <wl@gnu.org>
14521
14522         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
14523         macros.
14524         (draw_bulb): Improved.
14525
14526         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
14527         metapost bug.
14528         (draw_pedal_P): Use soft_end_penstroke.
14529         (draw_pedal_d): Use soft_start_penstroke.
14530
14531         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
14532         path.
14533         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
14534         doesn't change the glyph shape.
14535
14536         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
14537         changing the shape) to avoid fontforge warnings.
14538
14539         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
14540         soft_end_penstroke and fix glyph shape.
14541
14542 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14543
14544         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
14545
14546 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14547
14548         * scm/define-markup-commands.scm (line): filter out empty stencils
14549         from line command.
14550
14551         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
14552         amount.
14553
14554 2005-01-27  Graham Percival  <gperlist@shaw.ca>
14555
14556         * Documentation/user/notation.itely: added info about what
14557         \voiceFoo does.  Also rewrote warning about marks at
14558         a line break.
14559
14560         * Documentation/user/changing-defaults.itely: added info
14561         about putting dynamics in parenthesis and brackets.
14562
14563 2005-01-27  Werner Lemberg  <wl@gnu.org>
14564
14565         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
14566
14567 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14568
14569         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
14570         portato-direction.ly
14571
14572         * lily/beam.cc (consider_auto_knees): add beam height to
14573         threshold. Fixes: knee-multiple-beam.ly
14574
14575         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
14576         pedal line spanners. Fixes: instrument-center-pedal.ly
14577
14578         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
14579         if encountering barline. Fixes: auto-beam-repeat.ly
14580
14581 2005-01-26  Werner Lemberg  <wl@gnu.org>
14582
14583         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
14584         overlapping.
14585
14586         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
14587         with inflections for the 1/2 sharp glyph.
14588
14589         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
14590         connection between `t' and `r'.
14591         Unify bulb with the rest of `r' to avoid grazing outlines which
14592         confuses the overlap removal algorithm of fontforge.
14593
14594         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
14595         inflections.
14596         (draw_cross): Fix shape to have uniform thickness in corners.
14597
14598         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
14599         to avoid an uneven number of self-intersections; this confuses
14600         fontforge.
14601         Fix a slight bug in the shape at left bottom (which is visible only
14602         at high magnifications).
14603         `Center' the stem horizontally to avoid overlapping.
14604
14605 2005-01-24  Werner Lemberg  <wl@gnu.org>
14606
14607         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
14608         to `asis'.
14609         (fet_begingroup): Save group name in string `feta_group'.
14610         (fet_endgroup): Updated.
14611         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
14612
14613         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
14614
14615         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
14616         in metapost.
14617
14618 2005-01-24  Graham Percival  <gperlist@shaw.ca>
14619
14620         * Documentation/user/notation.itely: really minor editing.
14621
14622 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14623
14624         * Documentation/user/examples.itely: minor editing.
14625
14626         * Documentation/user/changing-defaults.itely: minor editing.
14627
14628         * Documentation/user/notation.itely: clarified info on polyphony
14629         and \addlyrics.
14630
14631 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14632
14633         * scm/output-gnome.scm: 
14634         * scm/output-svg.scm:
14635         * scm/lily-library.scm (font-name-style): Update font name
14636         kludging for fontconfig use.
14637
14638 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
14639
14640         * scm/define-markup-commands.scm: Document right-align and
14641         larger markup commands. Remove "TODO" from the topmost comment
14642         "each markup function should have a doc string." More consistent
14643         use of new-lines.
14644
14645 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14646
14647         * Documentation/user/changing-defaults: removed info about
14648         copyright symbol, since it's likely to change soon.
14649         Added info about betweensystemspace.
14650
14651         * Documentation/user/notation.itely: minor fixes.
14652
14653         * Documentation/user/lilypond.tely,
14654         Documentation/user/music-glossary.tely: changed copyright
14655         date to 2005 instead of 2004.
14656
14657         * input/test/volta-chord-names.ly: added old example back.
14658
14659 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14660
14661         * mf/feta-beugel.mf: use design size 20 (not 15).
14662
14663         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
14664         change name to aybabtu completely
14665
14666 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14667
14668         * buildscripts/gen-emmentaler-scripts.py (outdir): add
14669         design_size to fontname
14670
14671 2005-01-19  Werner Lemberg  <wl@gnu.org>
14672
14673         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
14674         mf/feta-schrift.mf: s/p/pat/ if a path variable.
14675
14676         * mf/feta-autometric.mf (set_char_box): Add code which emits
14677         specials for mf2pt1 if run with metapost.
14678         (to_bp): New macro for mf2pt1.
14679
14680 2005-01-18  Graham Percival  <gperlist@shaw.ca>
14681
14682         * Documentation/user/changing-defaults: added info on
14683         creating a copyright symbol.
14684
14685 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14686
14687         * VERSION: release 2.5.9
14688         
14689 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
14690
14691         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14692
14693         * Documentation/user/notation.itely: Document
14694         score-override-auto-beam-setting Fix documentation for
14695         revert-auto-beam-setting.
14696
14697 2005-01-18  Werner Lemberg  <wl@gnu.org>
14698
14699         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14700         (procset): New function to define a procset resource.
14701         (ps-embed-pfa): New function to define a font resource.
14702         (setup): New function to define a `Setup' environment.
14703         (preamble): Use new functions.
14704
14705         * ps/lilypond.defs (init-lilypond-parameters): New function to
14706         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14707
14708 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14709
14710         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14711
14712 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14713
14714         * scm/define-markup-commands.scm: Change number->markletter-string
14715         to take two arguments (vector number). Add number->mark-alphabet-vector
14716         and markalphabet markup command.
14717
14718         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14719         format-mark-alphabet, format-mark-box-barnumbers and
14720         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14721
14722 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14723
14724         * Documentation/user/examples.itely: add SATB automatic piano
14725         reduction template.
14726
14727         * Documentation/user/notation.itely: added info about changing
14728         partcombine texts.  Also adds examples of alternate lyrics.
14729
14730         * Documentation/user/changing-defaults.itely: added warning
14731         about \RemoveEmptyStaffContext overriding previous changes.
14732
14733 2005-01-17  Werner Lemberg  <wl@gnu.org>
14734
14735         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14736         feta-alphabet*.
14737
14738 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14739
14740         * python/lilylib.py (make_ps_images): don't do final showpage for
14741         multi-page documents.
14742         
14743         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14744
14745 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14746
14747         * Documentation/user/lilypond.tely: changed order of appendices;
14748         unified index should be last.
14749
14750         * Documentation/user/notation.itely: add example of key signatures
14751         and info about Staff.printKeyCancellation.
14752
14753 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14754
14755         * lily/include/repeated-music.hh (class Repeated_music): change
14756         into "namespace" class.
14757
14758         * lily/event.cc: remove Key_change_event.
14759
14760         * lily/include/transposed-music.hh (class Transposed_music): remove.
14761
14762         * lily/transposed-music.cc: remove
14763
14764         * lily/include/relative-music.hh: remove.
14765
14766         * lily/include/music-sequence.hh (struct Music_sequence): change
14767         into "namespace" class.
14768
14769         * lily/untransposable-music.cc (Module): remove
14770
14771         * lily/include/un-relativable-music.hh (Module): remove
14772
14773         * lily/include/untransposable-music.hh (Module): remove
14774
14775         * lily/include/music-list.hh (Module): remove file
14776
14777         * lily/un-relativable-music.cc: remove file.
14778
14779 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14780
14781         * lily/parser.yy: Compile fix.
14782
14783 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14784
14785         * lily/include/music.hh (class Music): unvirtualize transpose().
14786
14787         * lily/sequential-music.cc: remove file.
14788
14789         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14790
14791         * lily/slur-scoring.cc (get_best_curve): only switch on
14792         DEBUG_SLUR_SCORING for non NDEBUG builds.
14793
14794         * lily/include/music.hh (class Music): replace Music::start_mom()
14795         by start-callback property
14796
14797         * lily/include/grace-music.hh: remove file. 
14798
14799         * lily/stem.cc (height): robustness fix.
14800
14801         * lily/time-scaled-music.cc: remove file.
14802
14803         * lily/include/music.hh (class Music): include SCM init argument.
14804         (class Music): replace Music::get_length() virtual by
14805         length-callback property everywhere.
14806
14807         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14808
14809         * mf/GNUmakefile: don't install *list.ly
14810
14811 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14812
14813         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14814
14815 2005-01-12  Werner Lemberg  <wl@gnu.org>
14816
14817         This patch addresses the following problems in the feta sources
14818         files which contribute to the fetaXX fonts.
14819
14820         . Many fixes for rasterization at low resolutions (consistent use of
14821           `vround' and `hround', integer shift values for paths, applying
14822           `eps' for mirrored paths, use of `define_whole_pixels' and
14823           friends, etc.) -- while this probably looks like a waste of time
14824           it has revealed deficiencies in some glyph shapes.  See comment at
14825           the end of feta-params.mf how vertical symmetry is achieved.
14826
14827         . The `---' operator has been replaced everywhere with `--'; this
14828           both improves and considerably reduces the font size after
14829           conversion with mf2pt1.
14830
14831         These change aren't explicitly mentioned below since virtually all
14832         glyphs are affected.
14833
14834         Other notable differences:
14835
14836         . Glyphs from feta-accordion.mf now have charboxes around the
14837           outline.
14838
14839         . Fixed incorrect charbox for `accDot'.
14840
14841         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14842
14843         . Fixed position of the bow in the `upprall' glyph and its siblings.
14844
14845         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14846           dependent on the staff line thickness to avoid touching the middle
14847           staff line at smaller sizes.
14848
14849         . Largely extended output for feta-testXX: Where useful, glyphs
14850         are shown both between and on staff lines.
14851
14852
14853         * mf/feta-params.mf (staff_space_rounded,
14854         stafflinethickness_rounded, linethickness_rounded,
14855         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14856         Update all code which uses them where appropriate.
14857         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14858         New variables used to control rasterization at low resolutions.  Set
14859         to zero if feta code is processed with metapost.
14860
14861         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14862         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14863         (flare_path): Updated.
14864         Make it work with `filldraw' (but only circular pens).
14865         (hfloor, vfloor, hceiling, vceiling): New macros.
14866
14867         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14868         Use `draw' again in mf mode to have good pixel dropout control.
14869         Fix intersection points of horizontal lines with circle.
14870         ("accDot"): Fix parameters for set_char_box.
14871         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14872         control.
14873
14874         * mf/feta-banier.mf: Updated.
14875
14876         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14877         testing.
14878         (undraw_inside_ellipse): Remove `center' argument.  Update all
14879         callers.
14880         (draw_brevis): New macro, called by "Brevis notehead".
14881         (draw_whole_triangle_head): New macro, called by "Whole
14882         trianglehead".
14883         (draw_small_triangle_head): Use `filldraw'.
14884
14885         * mf/feta-eindelijk.mf: Remove useless global group.
14886         Updated.
14887
14888         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14889         `filldraw'.
14890
14891         * mf/feta-pendaal.mf: Updated.
14892
14893         * mf/feta-puntje.mf: Updated.
14894
14895         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14896         less points.
14897         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14898         dropout control.
14899         ("Varied Coda"): Use `draw_block'.
14900         (draw_comma): Fix typo.
14901         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14902         pixel dropout control.
14903
14904         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14905         position of bow.
14906
14907         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14908         sizes.
14909
14910         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14911         testing.
14912         (draw_meta_sharp): Much simplified.
14913         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14914
14915         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14916
14917 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14918
14919         * Documentation/user/notation.itely (Ancient rests): Fix typo
14920         (thanks Anthony)
14921
14922 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14923
14924         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14925
14926         * lily/main.cc (setup_paths): Add cff.
14927
14928         * mf/GNUmakefile (foe): Include actual target %.cff.
14929         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14930
14931 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14932
14933         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14934         suffix for main_input_b_.
14935
14936         * scm/music-functions.scm (toplevel-music-functions):
14937         precompute music lengths for music expressions.  
14938
14939 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14940
14941         * lily/include/input.hh (class Input): new `end_' slot for end of
14942         input. Renamed defined_str0_ to start_.
14943
14944         * lily/input.cc (Input): Add Input::Input (Input const &) and
14945         remove Input::Input (Source_file*, char const *). Use the new
14946         slots.
14947         (set_location): method used by bison to propagate input
14948         locations (YYLLOC_DEFAULT).
14949         (end_line_number, end_column_number, step_forward): new methods
14950         
14951         * lily/input-scheme.cc (ly:input-both-locations): new function,
14952         similar to ly:input-location, but also return the end line and
14953         column.
14954
14955         * lily/include/includable-lexer.hh: 
14956         * lily/includable-lexer.cc: 
14957         * lily/include/lily-lexer.hh (class Lily_lexer): 
14958         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14959         Includable_lexer to Lily_lexer, in order to update lexloc (the
14960         yylloc), a new slot of Lily_lexer.
14961         (here_input, LexerError): simplify by using the lexloc slot (aka
14962         yylloc)
14963
14964         * lily/lexer.ll: #define yylloc to use input locations (it may
14965         be useless here?). Fixed the #embedded_scm rule (step the location
14966         forward in order to skip the sharp sign before parsing the scheme
14967         expression)
14968
14969         * lily/include/lily-parser.hh (class Lily_parser): 
14970         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14971         here_input()
14972         (parser_error): overload for more precise locations of errors.
14973
14974         * lily/parser.yy (YYLTYPE): set location type to Input
14975         (YYLLOC_DEFAULT): use Input::set_location()
14976         (yylex): add the YYLTYPE* location parameter.
14977         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14978         Give an Input parameter to THIS->parser-error() for more accurate
14979         messages.
14980
14981 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14982
14983         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14984
14985         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14986         on BEAMQUANTING for non-NDEBUG builds.
14987
14988         * lily/stem.cc (head_count): performance: avoid String::String()
14989         inside oft called function.
14990
14991 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14992
14993         * Documentation/user/examles.itely: attempted fix for broken
14994         string quartet template.
14995
14996         * Documentation/user/notation.itely: remove unnecessary broken
14997         link.
14998
14999 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15000
15001         * VERSION (PACKAGE_NAME): release 2.5.7
15002
15003 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15004
15005         * config.make.in (METAFONT): Append -progname=mf, fixes use with
15006         mf-nowin for teTeX-3.0.  Backportme.
15007
15008         * scm/output-svg.scm (utf8-string): New function.
15009
15010         * scm/output-gnome.scm (utf8-string): New function.
15011         (otf-name-mangling): Remove.
15012
15013         * lily/pango-font.cc (Pango_font): Use font string iso font
15014         filename for utf8-text.
15015
15016         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
15017         name.
15018
15019 2005-01-08  Graham Percival  <gperlist@shaw.ca>
15020
15021         * Documentation/user/notation.itely: add info about
15022         Staff.extraNatural = ##f in Pitches section.  Also
15023         fixed some minor issues in the Vocal music section.
15024
15025 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15026
15027         * scm/output-ps.scm (white-text): comment out Helvetica font,
15028         which is broken for my GS install.
15029
15030         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
15031         which provides a tighter bbox.
15032
15033         * scm/define-grobs.scm (all-grob-descriptions): remove all
15034         extra-offsets from definitions.
15035
15036 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
15037
15038         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
15039         add tuning for 4-string bass and some common 4/5-string banjo
15040         tunings.  New function (four-string-banjo) turns a 5-string tuning
15041         into a 4-string tuning.  New function
15042         (fret-number-tablature-format-banjo) computes correct fret numbers
15043         on 5-string banjos.
15044
15045         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
15046         Add beam correction to TabVoice.
15047
15048         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
15049         using bold font; makes tabs more readable.
15050
15051 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15052
15053         * lily/font-select.cc (get_font_by_design_size): don't make
15054         Modified_font_metric; this causes trouble, since we don't know the
15055         font magnification from inside Pango_font::text_stencil()
15056
15057         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
15058
15059         * Documentation/user/notation.itely (The Lyrics context): comment out
15060         broken {Small ensembles} link.
15061
15062         * scm/framework-svg.scm (output-framework): change calling convention.
15063
15064         * lily/object-key-dumper-scheme.cc: new file.
15065
15066         * lily/object-key-undumper-scheme.cc: new file.
15067
15068         * lily/tweak-registration-scheme.cc: new file.
15069
15070         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
15071
15072         * Documentation/user/examples.itely (String quartet): uncomment
15073         broken example.
15074
15075         * lily/font-config.cc: new file.
15076
15077 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
15078
15079         * scm/output-svg.scm: 
15080         * scm/output-gnome.scm: s/bigcheese/emmentaler.
15081
15082         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
15083
15084 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
15085
15086         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
15087         Add headers.
15088
15089         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
15090
15091 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15092
15093         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
15094
15095         * lily/include/main.hh: lose _b hungarian suffixes for global
15096         variables.
15097
15098         * lily/include/lily-guile-macros.hh: new file.
15099
15100         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
15101
15102         * lily/general-scheme.cc: new file. 
15103
15104         * lily/font-select.cc (get_font_by_design_size): retrieve
15105         PangoFont for (designsize . "pango-descr") entries.
15106
15107         * lily/lily-parser-scheme.cc: new file.
15108
15109         * lily/output-def-scheme.cc: new file.
15110
15111         * lily/paper-book-scheme.cc: new file.
15112
15113         * lily/duration-scheme.cc (LY_DEFINE): new file.
15114
15115         * lily/pitch-scheme.cc:  new file.
15116
15117         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
15118
15119 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15120
15121         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
15122
15123 2005-01-06  Graham Percival  <gperlist@shaw.ca>
15124
15125         * Documentation/user/notation.itely: minor editing.
15126
15127         * Documentation/user/changing-defaults: minor editing.
15128
15129         * Documentation/user/examples.itely: add template for
15130         string quartet part extraction; demonstrates tag.
15131
15132 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
15133
15134         * Documentation/user/notation.itely: documents
15135         format-mark-box-letters and format-mark-box-numbers
15136
15137         * scm/define-context-properties.scm: change comment.
15138
15139 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15140
15141         * scm/framework-ps.scm (output-classic-framework): new function:
15142         dump systems as separate .eps files (without fonts) and write a
15143         single collecting .tex file.
15144
15145 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
15146
15147         * Documentation/user/notation.itely (Setting simple songs):
15148         Correct several errors in the equivalent formulation of
15149         \addlyrics. 
15150         (The Lyrics context): Corrected link to the SATB example.
15151
15152 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15153
15154         * scm/lily.scm (completize-formats): new function
15155         (postprocess-output): new function
15156
15157         * lily/paper-book.cc (classic_output): change calling
15158         convention. Give basename as first argument. 
15159         remove Paper_book::post_processing().
15160
15161         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
15162
15163 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15164
15165         * lily/paper-outputter.cc (LY_DEFINE): new function
15166         ly:outputter-close.
15167
15168         * lily/main.cc: change --format,-f to --backend,-b
15169
15170         * lily/include/main.hh: rename format to backend.
15171
15172         * scm/translation-functions.scm (format-mark-box-numbers): add.
15173         patch by Erlend Aasland
15174
15175 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15176
15177         * lily/pango-font.cc (text_stencil): dump string as
15178         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
15179
15180 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
15181
15182         * configure.in (gui_b): Remove handy developer-only
15183         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
15184         CVS source installations (but break other non-default but correct
15185         PKG_CONFIG_PATH setups), as this is no longer developer-only.
15186
15187         * SConstruct: 
15188         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
15189         compatibility (backportme).
15190
15191         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
15192
15193 2005-01-03  Werner Lemberg  <wl@gnu.org>
15194
15195         Prepare glyph shapes for mf2pt1 conversion.
15196
15197         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
15198         (accDiscant, accFreebase, accStdbase): Replace `draw' with
15199         `penstroke'.
15200         (accDot): Use `drawdot'.
15201         (accBayanbase): Replace `draw' with `draw_gridline'.
15202         (print_penpos): Moved to feta-macros.mf.
15203         (accOldEE): Replace `filldraw' with `penstroke'.
15204         Replace `draw' with `penstroke' and `drawdot'.
15205
15206         * mf/feta-banier.mf: Code clean-up.
15207         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
15208         `fill'.
15209
15210         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
15211
15212         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
15213         paremeter to control drawing of labels.  Update all callers.
15214
15215         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
15216         (new_bulb): Return a bulb as a single path.  To do that, it now
15217         takes some more parameters.  Updated all callers.
15218         (draw_gclef): Major clean-up.  `draw' has been replaced with
15219         `penstroke', unnecessary outlines have been removed.
15220         Remove (unused) gnome-canvas code.
15221
15222         * mf/feta-macros.mf (print_penpos): New macro (from
15223         feta-accordion.mf).
15224         Other minor fixes.
15225
15226         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
15227         ("Pedal dot"): Use `drawdot'.
15228         (draw_pedal_P): Add parameter to control drawing of labels.  Update
15229         all callers.
15230         Fix shape at top.
15231         (draw_pedal_e): Add parameter to control drawing of labels.  Update
15232         all callers.
15233         (draw_pedal_d): Add parameter to control drawing of labels.  Update
15234         all callers.
15235         Revert drawing direction.
15236
15237         * mf/feta-schrift.mf (draw_fermata): Use single path.
15238         (draw_short_fermata): Replace `filldraw' with `fill'.
15239         (draw_long_fermata, draw_very_long_fermata): Replace calls to
15240         `draw_rounded_block' with a single path.
15241         ("Thumb"): Draw full circle instead of mirroring segments.
15242         (draw_accent): New macro.
15243         ("> accent", "espr"): Use it.
15244         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
15245         ("open (unstopped)"): Draw full circle instead of mirroring
15246         segments.
15247         (draw_vee): Removed.
15248         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
15249         ("Downbow"): Replace calls to `draw_rounded_block' with a single
15250         path.
15251         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
15252         partial pieces drawn with `fill' -- these do still overlap with the
15253         stem of the `t' but just once, not multiple times so that fontforge
15254         can handle it gracefully.
15255         Change other parts of the glyph so that fontforge's overlapping
15256         algorithm reliably works.
15257         (draw_heel): Replace `draw' with `fill'.
15258         (draw_toe): Use `draw_accent' instead of `draw_vee'.
15259         ("Flageolet"): Replace `draw' with `penstroke'.
15260         ("Segno"): Replace `filldraw' with `penstroke'.
15261         Replace `draw' with `drawdot'.
15262         ("Coda"): Replace `fill' with `penstroke', using a single path.
15263         ("Varied Coda"): Use less overlapping paths.
15264         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
15265         single path.
15266
15267         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
15268         group to better control the `labels' command.
15269         Rename argument to `offset' and use it actually.  Update all
15270         callers.
15271         Replace `filldraw' with `fill'.
15272         ("mordent", "prallmordent", "upmordent", "downmordent",
15273         "lineprall"): Replace `draw' with `draw_gridline'.
15274         ("upprall", "downprall"): Replace `draw' with `fill'.
15275
15276         * mf/feta-timesig.mf: Formatting.
15277
15278         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
15279         to...
15280         ("Flat"): Here.
15281         (draw_paren): Move code to draw labels to...
15282         ("Right Parenthesis"): Here.
15283
15284 2005-01-02  Graham Percival <gperlist@shaw.ca>
15285
15286         * Documentation/user/notation.itely: add example of \setTextDecresc
15287         and \setTextDim.
15288
15289 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
15290
15291         * scm/define-markup-commands.scm :  fix glyph-strings of
15292         accidentals and \note-by-number
15293
15294 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15295
15296         * VERSION: 2.5.6 released.
15297         
15298         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
15299
15300         * input/regression/new-markup-scheme.ly: oops. font-family=music
15301         -> font-encoding fetaMusic.  
15302
15303         * lily/main.cc: put default to PS.
15304
15305         * lily/tfm.cc: idem.
15306
15307         * lily/afm.cc: idem.
15308
15309         * lily/include/modified-font-metric.hh (struct
15310         Modified_font_metric): remove coding_scheme() method.
15311
15312         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
15313
15314         * scripts/convert-ly.py (conv): crash on encountering \encoding.
15315
15316         * input/les-nereides.ly: convert to utf8
15317
15318         * lily/modified-font-metric.cc (text_dimension): idem.
15319
15320         * lily/parser.yy (TODO): idem.
15321
15322         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
15323
15324         * lily/lexer.ll: remove encoding
15325
15326         * scm/framework-ps.scm (output-variables): separately scale the
15327         page to mm 
15328
15329         * lily/pango-font.cc (Pango_font): fix scaling.
15330
15331         * lily/font-metric.cc (design_size): design_size returns a
15332         dimension now as well.
15333
15334 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15335
15336         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
15337         brace generation. 
15338
15339         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
15340
15341 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
15342
15343         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
15344         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
15345
15346 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15347
15348         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
15349         in first run as well.
15350
15351         * scm/paper.scm (layout-set-staff-size): use text-font-size in
15352         dimension less points (ie. 12 = 12 point)
15353
15354         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
15355
15356         * lily/all-font-metrics.cc (find_pango_font): set description_
15357
15358         * lily/pango-font.cc (text_stencil): export size as well.
15359         (text_stencil): fix scaling and extents box.
15360
15361 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15362
15363         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
15364
15365         * Documentation/user/invoking.itely (Invoking lilypond): document
15366         texstr
15367
15368         * scripts/convert-ly.py (conv): add ancient rules.
15369
15370         * scm/clef.scm (c0-pitch-alist): replace - with .
15371
15372         * scripts/lilypond-book.py (process_snippets): add texstr support.
15373
15374         * scm/framework-texstr.scm (header): change extension to .textmetrics
15375
15376         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
15377         -f tex.
15378
15379         * lily/text-metrics.cc: new file.
15380         (try_load_text_metrics): new function
15381
15382         * lily/include/text-metrics.hh: new file.
15383
15384 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15385
15386         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
15387         ly_scheme_function to ly_lily_module_constant.
15388
15389         * lily/modified-font-metric.cc (text_dimension): try
15390         lookup_tex_text_dimension() first.
15391
15392         * lily/tfm.cc: new function ly:load-text-dimensions
15393
15394 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15395
15396         * scm/output-texstr.scm (text): use \lilygetmetrics
15397
15398         * scm/framework-texstr.scm (header): dump in new format.
15399
15400         * tex/lilypond-tex-metrics: new file.
15401         
15402 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
15403
15404         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
15405         mapping.
15406         (index_to_charcode): New method.
15407
15408         * scm/output-ps.scm (glyph-string): 
15409         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
15410
15411 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
15412
15413         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
15414         implement fully, need FONT to get to charcode.
15415
15416         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
15417
15418         * scm: Cleanups.
15419
15420         * Documentation/user/changing-defaults.itely: Fix internalsrefs
15421         {Tunable context properties},
15422         {All layout objects},
15423         {Music definitions}.
15424
15425 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15426
15427         * VERSION: release 2.5.5
15428         
15429         * lily/main.cc: use TeX as default output format.
15430
15431         * flower/file-path.cc (find): try to open directly as well, so we
15432         find absolute path files. 
15433
15434         * lily/pango-select.cc: new file.
15435
15436         * scm/framework-ps.scm: remove all encoding code. 
15437         load pfb/pfa for PangoFont too.
15438         
15439         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
15440
15441 2004-12-22  Werner Lemberg  <wl@gnu.org>
15442
15443         Prepare glyph shapes for mf2pt1 conversion.
15444
15445         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
15446
15447         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
15448         (define_triangle_shape): Use it to replace `draw' with `fill' and
15449         `unfill'.  Update all callers.
15450         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
15451         (draw_cross): Ditto.
15452         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
15453         Use penrazor for better conversion with mf2pt1.
15454         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
15455         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
15456         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
15457         draw_la_head, draw_ti_head): Replace `filldraw' with
15458         `fill'.  Update all callers.
15459
15460 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15461
15462         * lily/paper-book.cc (output): revert: only allow a single output
15463         format.
15464
15465         * lily/include/pango-font.hh: new file.
15466
15467         * lily/pango-font.cc: new file.
15468
15469         * lily/font-metric.cc (text_stencil): new routine
15470
15471         * lily/all-font-metrics.cc (find_pango_font): new routine.
15472
15473         * lily/include/font-metric.hh (struct Font_metric): add
15474         text_stencil()
15475
15476         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
15477
15478 2004-12-22  Werner Lemberg  <wl@gnu.org>
15479
15480         Prepare glyph shapes for mf2pt1 conversion.
15481
15482         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
15483
15484         * mf/feta-toevallig.mf: Formatting.
15485         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
15486         ("Natural"): Fix paths to allow better postprocessing.
15487         (draw_meta_flat): Use `z3l' as additional point in path to get
15488         better conversion with mf2pt1.
15489         Other minor cleanups.
15490         ("3/4 Flat"): Add auxiliary points and modify path to replace
15491         `draw' with `fill'.
15492         ("Double Sharp"): Mirror path segments instead of picture elements
15493         to get a single outline.
15494         Modify path to replace `filldraw' with `fill'.
15495
15496 2004-12-22  Graham Percival  <gperlist@shaw.ca>
15497
15498         * input/test/unfold-all-repeats.ly: added file back.
15499
15500         * Documentation/user/notation.itely,
15501         Documentation/user/programming-interface.itely
15502         Documentation/user/changing-defaults.itely: fixed misc broken
15503         links to input/test/ files.
15504
15505 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15506
15507         * tex/texinfo.tex: Update.  We should not be distributing this,
15508         but since we do, use latest version.
15509
15510         * Documentation/user/macros.itexi: Comment-out \fetaflat,
15511         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
15512         macros for feta glyphs.
15513
15514 2004-12-22  Graham Percival  <gperlist@shaw.ca>
15515
15516         * Documentation/user/changing-defaults.itely: fix index for set.
15517
15518         * Documentation/user/converters.itely: added convert-ly bugs list
15519         from CVS.
15520
15521 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15522
15523         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
15524         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
15525         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
15526         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
15527
15528         * mf/GNUmakefile (pfa_warning): Use less broken check.
15529
15530         * python/lilylib.py (setup_environment): Remove cruft from
15531         GS_FONTPATH.
15532
15533         * configure.in: Bump mftrace requirement to 1.1.1.
15534
15535 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
15536
15537         * scm/output-svg.scm (beam): Use polygon.
15538
15539         * scm/lily-library.scm: Bugfix.
15540
15541         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
15542
15543         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
15544
15545 2004-12-19  Werner Lemberg  <wl@gnu.org>
15546
15547         Prepare glyph shapes for mf2pt1 conversion.
15548
15549         * mf/feta-eindelijk: Some formatting.
15550         (multi_rest_x, multi_beam_height): Removed.  Unused.
15551         ("Quarter rest"): Use `intersectiontimes' to create a single
15552         outline.
15553         (rest_crook): Removed.  Unused.
15554         (draw_rest_bulb): Return path (without filling).  Update callers.
15555         Simplified.
15556         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
15557         "128th rest"): Simplify `pat'.
15558         Create single outline.
15559
15560 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15561
15562         * mf/GNUmakefile (ALL_GEN_FILES):
15563         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
15564
15565         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
15566         function.
15567
15568 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15569
15570         * scm/output-texstr.scm (placebox): add routine
15571
15572         * VERSION (PACKAGE_NAME): release 2.5.4
15573
15574         * scm/framework-texstr.scm (output-framework): new file.  
15575
15576         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
15577         processing.
15578
15579         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
15580
15581         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
15582         rule.
15583
15584         * configure.in (gui_b): bump mftrace requirement to 1.1.0
15585
15586         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
15587
15588         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
15589
15590 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15591
15592         * scm/framework-svg.scm (dump-page): Implement landscape.
15593
15594 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15595
15596         * lily/main.cc (setup_paths): Add svg to search path.
15597
15598         * scm/output-svg.scm:
15599         * scm/framework-svg.scm: Add pageSet.  Update.
15600         (dump-fonts): New function.
15601         (output-framework): Use it.
15602
15603         * mf/GNUmakefile: 
15604         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
15605
15606 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15607
15608         * tex/lilyponddefs.tex: comment out new ifpdf code.
15609
15610 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15611
15612         * GNUmakefile.in: 
15613         * SConstruct (symlink): Replace afm by otf.
15614
15615         * scm/framework-gnome.scm (gnome-main): Remove invocation of
15616         ly:pango-add-afm-decoder.
15617
15618         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
15619
15620 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15621
15622         * scm/output-ps.scm (new-text): don't access t glyph for getting
15623         space dimension.
15624
15625         * ly/init.ly: warn about \version
15626
15627         * lily/lexer.ll: set version-seen?
15628
15629 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15630
15631         * scm/output-svg.scm (string->entities): Update.
15632
15633 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15634
15635         * lily/main.cc (setup_paths): replace afm by otf for path. 
15636
15637         * lily/pangofc-afm-decoder.cc: remove.
15638
15639         * lily/include/pangofc-afm-decoder.hh: remove.
15640
15641         * scm/framework-scm.scm (output-framework): new file.
15642
15643         * mf/GNUmakefile: remove SAUTER_FONTS.
15644         remove SVG/sodipodi hacks.
15645
15646         * scm/lily-library.scm (stderr): move stderr.
15647
15648         * mf/GNUmakefile: remove AFM support.
15649
15650         * buildscripts/mf-to-table.py (base): remove AFM support.
15651
15652         * lily/open-type-font.cc (design_size): use design_size
15653
15654 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
15655
15656         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
15657
15658 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15659
15660         * mf/GNUmakefile: Generate combined aybabtu info.
15661         * mf/aybabtu.pe.in (i): Load it.
15662
15663         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
15664         are not symbols.
15665
15666         * lily/include/open-type-font.hh (count): New method.
15667
15668         * mf/aybabtu.pe.in: Typo.
15669
15670         * Documentation/user/out/lilypond-internals.nexi (Scheme
15671         functions): Typo.
15672
15673         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
15674
15675 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15676
15677         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
15678         subfonts.
15679
15680         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
15681
15682         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
15683         (tex-font-command-raw): new function.
15684
15685         * lily/include/virtual-font-metric.hh (Module): remove file
15686
15687         * lily/virtual-font-metric.cc (Module): remove file.
15688         
15689
15690         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15691         (get_indexed_char): read bbox from lily table if present.
15692
15693 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15694
15695         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15696         aybabtu.subfonts
15697
15698         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15699         global glyphname. Enables more than 64 glyphs in the OTF.
15700
15701 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15702
15703         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15704         braces.
15705
15706         * lily/open-type-font.cc (design_size): Use 12 as default for
15707         design size.
15708
15709         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15710
15711         * mf/GNUmakefile: Generate aybabtu.
15712
15713         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15714
15715 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15716
15717         * scm/lily-library.scm (char->unicode-index): Remove.
15718
15719         * scm/output-gnome.scm (text): Bugfix for plain string input.
15720         Updates.
15721
15722         * scm/output-svg.scm (svg-font): Add weight to font selection.
15723
15724 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15725
15726         * Documentation/topdocs/INSTALL.texi (Top): Point to
15727         buildscripts/out/clean-fonts instead of
15728         buildscripts/clean-fonts.sh. 
15729
15730 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15731
15732         * input/regression/figured-bass.ly: attempt to clarify text.
15733
15734         * Documentation/user/notation.tely: add cindex for tag, attempt to
15735         add figured bass example.
15736
15737         * Documentation/user/changing-defaults: basic editing.
15738
15739 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15740
15741         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15742
15743         * lily/open-type-font.cc (LY_DEFINE): new function
15744         ly:font-sub-fonts
15745
15746         * lily/include/font-metric.hh (struct Font_metric): new method
15747         sub_fonts()
15748
15749         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15750         . with - in add.stem.
15751         
15752 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15753
15754         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15755         and fetaDynamic.
15756
15757         * lily/rest.cc (glyph_name): Change - to . .
15758
15759         * scm/output-gnome.scm (text): Hello world, again.
15760
15761         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15762
15763         * lily/modified-font-metric.cc (index_to_charcode): New method.
15764
15765         * lily/include/font-metric.hh (index_to_charcode): New function.
15766
15767         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15768         new function.
15769         (ly:font-glyph-to-index): Remove.
15770
15771 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15772
15773         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15774
15775         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15776
15777         * lily/open-type-font.cc (load_scheme_table): new function
15778
15779         * lily/dots.cc (print): replace - 
15780
15781         * lily/open-type-font.cc (attachment_point): new function.
15782         (load_table): read LILC table
15783
15784         * buildscripts/gen-bigcheese-scripts.py (Module): new
15785         file. Generate FF scripts.
15786
15787         * mf/feta-din10.mf: idem.
15788
15789         * mf/feta-nummer10.mf: remove mf files.
15790
15791         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15792
15793 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15794
15795         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15796
15797         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15798         compatibility.
15799
15800 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15801
15802         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15803         design-size and units_per_EM.
15804
15805         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15806
15807 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15808
15809         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15810         does not crash fontforge.
15811
15812         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15813         PUA.
15814
15815 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15816
15817         * scm/framework-ps.scm (ps-embed-cff): new function.
15818
15819         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15820
15821 2004-12-12  Werner Lemberg  <wl@gnu.org>
15822
15823         * mf/bigcheese.pe.in: Add PUA mapping.
15824         Don't create Type 42 but bare CFF font.
15825
15826 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15827
15828         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15829         within canvas boundaries.
15830
15831         * mf/merge.pe.in: Set font names, version, license GPL.
15832
15833         * make/substitute.make: Add FONTFORGE.
15834
15835         * config.make.in (FONTFORGE): Add.
15836
15837         * configure.in (gui_b): Use PATH_PROG for fontforge.
15838
15839 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15840
15841         * scm/define-markup-commands.scm: add baseline-skip to info
15842         about \column.
15843
15844 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15845
15846         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15847
15848         * scm/output-gnome.scm (named-glyph): Use it.
15849
15850         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15851
15852         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15853         (upper_string, lower_string, reverse_string): Remove.
15854
15855         * configure.in (fontforge): Reinstate version check.
15856
15857         * ly/engraver-init.ly: Fix clef glyph names.
15858
15859         * lily/time-signature.cc (special_time_signature): Fix fraction
15860         glyph names.
15861
15862 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15863
15864         * mf/merge.pe: new file.
15865
15866         * lily/freetype.cc: new file.
15867
15868         * lily/include/open-type-font.hh (class Open_type_font): new file.
15869
15870         * lily/include/freetype.hh: new file.
15871
15872         * lily/open-type-font.cc: new file.
15873
15874         * lily/all-font-metrics.cc (find_otf): new function.
15875
15876 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15877
15878         * lily/time-signature.cc (special_time_signature): Fix.
15879
15880         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15881         GTK2 before checking for pango.  Fixes -fgnome.
15882
15883         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15884         Scheme name.
15885
15886         * scm/define-markup-commands.scm:
15887         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15888
15889         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15890
15891         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15892         date versions.  Fixes configure.
15893         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15894         argument.
15895
15896 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15897
15898         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15899         names in .enc
15900
15901         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15902
15903 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15904
15905         * Documentation/user/changing-defaults.itely: add info about
15906         make-dynamic-script
15907
15908         * Documentation/user/notation.itely: add link in dynamics to
15909         section about make-dynamic-script.
15910
15911 2004-12-09  Christian hitz  <chhitz@gmx.net>
15912
15913         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15914
15915 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15916
15917         * buildscripts/mf-to-table.py (parse_logfile): use . for
15918         concatting name and group.
15919         (parse_logfile): use M for Minus (negative.)
15920
15921         * lily/include/type-swallow-translator.hh
15922         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15923
15924         * lily/*.cc: cosmetics around = sign.
15925
15926         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15927         lyric spacing on the penultimate column.
15928
15929 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15930
15931         * configure.in:
15932         * lily/accidental-placement.cc:
15933         * lily/bar-line.cc:
15934         * lily/beam-concave.cc:
15935         * lily/beam-quanting.cc:
15936         * lily/beam.cc:
15937         * lily/bezier-bow.cc:
15938         * lily/bezier.cc:
15939         * lily/break-align-interface.cc:
15940         * lily/custos.cc:
15941         * lily/dimension-cache.cc:
15942         * lily/dot-column.cc:
15943         * lily/font-metric.cc:
15944         * lily/font-select.cc:
15945         * lily/gourlay-breaking.cc:
15946         * lily/grob-property.cc:
15947         * lily/grob.cc:
15948         * lily/lily-guile.cc:
15949         * lily/line-spanner.cc:
15950         * lily/lookup.cc:
15951         * lily/lyric-extender.cc:
15952         * lily/lyric-hyphen.cc:
15953         * lily/mensural-ligature.cc:
15954         * lily/midi-def.cc:
15955         * lily/misc.cc:
15956         * lily/note-collision.cc:
15957         * lily/note-column.cc:
15958         * lily/note-head.cc:
15959         * lily/paper-outputter.cc:
15960         * lily/percent-repeat-item.cc:
15961         * lily/rest-collision.cc:
15962         * lily/side-position-interface.cc:
15963         * lily/simple-spacer.cc:
15964         * lily/slur-configuration.cc:
15965         * lily/slur-scoring.cc:
15966         * lily/slur.cc:
15967         * lily/spaceable-grob.cc:
15968         * lily/spacing-spanner.cc:
15969         * lily/spanner.cc:
15970         * lily/staff-symbol-referencer.cc:
15971         * lily/stem.cc:
15972         * lily/stencil.cc:
15973         * lily/system-start-delimiter.cc:
15974         * lily/system.cc:
15975         * lily/text-item.cc:
15976         * lily/tie.cc:
15977         * lily/tuplet-bracket.cc:
15978         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15979         <cmath> beacause isinf/isnan is undefined in <cmath>
15980
15981 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15982
15983         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15984
15985 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15986
15987         * VERSION: release 2.5.3
15988         
15989 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15990
15991         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15992
15993 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15994
15995         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15996
15997         * lily/note-head.cc (internal_print): always try the "s" head if
15998         u/d not found.
15999
16000         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
16001
16002 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16003
16004         * mf/parmesan-heads.mf (overdone_heads): typos.
16005
16006 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
16007
16008         * lily/parser.yy (markup): in markups, { .. } without command
16009         before are also flattened, ie \line must be explicitely used.
16010
16011         * Documentation/user/changing-defaults.itely:
16012         * Documentation/user/notation.itely: 
16013         * input/wilhelmus.ly: 
16014         * input/regression/instrument-name-markup.ly: 
16015         * input/regression/markup-score.ly: 
16016         * input/regression/new-markup-scheme.ly: 
16017         * input/regression/new-markup-syntax.ly: 
16018         * input/test/coriolan-margin.ly: use \line in markups where
16019         appropriate
16020         
16021 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
16022
16023         * scm/new-markup.scm (map-markup-command-list): helper function
16024         used in parser.yy to map markup commands on a markup list.
16025
16026         * lily/parser.yy: get rid off < > in markups by treating { } as
16027         real lists.
16028
16029         * lily/lexer.ll: remove < > from markup lexer mode.
16030
16031         * scripts/convert-ly.py (conv): add rule for converting 
16032         \markup < > to \markup { }
16033
16034         * ly/titling-init.ly: 
16035         * input/test/coriolan-margin.ly: 
16036         * input/regression/new-markup-syntax.ly: 
16037         * input/regression/new-markup-scheme.ly: 
16038         * input/regression/multi-measure-rest-text.ly: 
16039         * input/regression/markup-stack.ly: 
16040         * input/regression/markup-score.ly: 
16041         * input/regression/instrument-name-markup.ly: 
16042         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
16043         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
16044         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
16045         * input/wilhelmus.ly: 
16046         * Documentation/user/notation.itely: 
16047         * Documentation/user/music-glossary.tely: 
16048         * Documentation/user/changing-defaults.itely: change < > to { } in
16049         markups
16050
16051 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16052
16053         * lily/accidental-placement.cc (position_accidentals): shortcut if
16054         no accidentals to place.
16055
16056 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
16057
16058         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
16059         typo s/ly:dimension ?/ly:dimension?/
16060
16061         * input/regression/lily-in-scheme.ly: 
16062         * input/regression/music-function.ly: 
16063         * ly/spanners-init.ly (assertBeamSlope): 
16064         * scm/music-functions.scm (def-grace-function): add the paper
16065         argument to music function definitions.
16066
16067 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16068
16069         * lily/moment.cc (LY_DEFINE):
16070         ly:moment-main-{denominator,numberator}, new function.
16071
16072         * lily/score-engraver.cc (typeset_all): assign to column on basis
16073         of axis-group-parent-X setting.
16074
16075         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
16076         add_element() on basis of axis-group-parent-Y setting.
16077
16078         * lily/grob.cc: add axis-group-parent-{XY} properties.
16079
16080         * input/regression/spacing-stick-out.ly: new file.
16081
16082         * lily/simple-spacer.cc (add_columns): use binary search for
16083         setting column rods. Changes O(n^2) to O(n log(n)) for
16084         constructing spacing problem from columns.
16085         (add_columns): read allow-outside-line to make sure no texts stick
16086         out.
16087         (solve): Simple_spacer::is_active() only determines
16088         satisfies_constraints_ for non-ragged typesetting.
16089
16090         * lily/simultaneous-music.cc (to_relative_octave): only set
16091         old_relative_used if return pitch actually changed.
16092
16093         * scm/define-context-properties.scm
16094         (all-user-translation-properties): change to match implementation.
16095
16096         * python/lilylib.py: Replace re.match by re.search and adds "-c
16097         showpage" to the gs command line (Johannes Schindelin)
16098
16099         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
16100         before processing. Prevents crash when inf is in the extent.
16101
16102         * scm/define-markup-commands.scm (note-by-number): add "s" to
16103         "noteheads-" glyphname.
16104  
16105         * lily/parser.yy (Generic_prefix_music): supply parser argument to
16106         music function as well.
16107         
16108 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16109
16110         * VERSION: release 2.5.2
16111
16112         * Documentation/user/changing-defaults.itely (Creating titles):
16113         add breakbefore variable.
16114
16115         * lily/paper-book.cc (set_system_penalty): new function. Set
16116         penalty_ based on breakBefore setting
16117
16118         * lily/context-specced-music-iterator.cc (construct_children):
16119         interpret special context id $uniqueContextId 
16120
16121         * lily/context.cc (create_unique_context): new method. Move
16122         creation of unique (\new) contexts into interpreting phase. This
16123         makes
16124
16125           foo= \new Staff ..
16126           << \foo \foo >>
16127
16128         produce 2 staves.
16129         
16130
16131         * scm/define-music-properties.scm (all-music-properties): add
16132         quoted-voice-direction
16133
16134         * ly/music-functions-init.ly: killCues function.
16135
16136         * scm/music-functions.scm (cue-substitute): move creation of voice
16137         contexts further to the back. 
16138
16139 2004-11-25  Werner Lemberg  <wl@gnu.org>
16140
16141         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
16142         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
16143
16144 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
16145
16146         * buildscripts/guile-gnome.sh: Fixed typo.
16147
16148 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16149
16150         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
16151
16152         * scripts/abc2ly.py (dump_slyrics): add ord(). 
16153
16154         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
16155         to regular engraver. 
16156
16157 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16158
16159         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
16160
16161 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
16162
16163         * scm/define-markup-commands.scm (fill-line): Typo.
16164
16165         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
16166         and newer.
16167
16168 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
16169
16170         * ly/dynamic-scripts-init.ly: Fixed typo.
16171
16172 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16173
16174         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
16175         note-head, to have different attachment points for up and down.
16176
16177         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
16178
16179         * mf/feta-generic.mf (else): remove solfa.
16180
16181         * mf/feta-bolletjes.mf (tishape): remove unicode test.
16182
16183         * scm/define-context-properties.scm
16184         (all-user-translation-properties): add shapeNoteStyles property.
16185
16186         * lily/shape-note-heads-engraver.cc (process_music): new file.
16187
16188         * lily/event.cc (transpose): call Event::transpose() for
16189         transposing the tonic.
16190
16191 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
16192
16193         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
16194         Unicode/OpenType and AFM.
16195
16196         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
16197
16198 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16199
16200         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
16201
16202         * lily/context.cc (Context): unprotect key from ctor.
16203
16204         * scm/stencil.scm (stack-lines): return empty-stencil if argument
16205         is '()
16206         (stack-stencils): idem.
16207
16208         * Documentation/user/changing-defaults.itely (Creating titles):
16209         document new title layout options.
16210
16211         * lily/parser.yy (lilypond_header_body): copy previous
16212         $globalheader if present.
16213
16214         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
16215         ly:module-copy
16216         
16217         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
16218
16219         * scm/titling.scm: remove old titling functions
16220
16221         * lily/stencil.cc (translate): remove absolute dimension.
16222
16223         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
16224         via markup.
16225
16226         * scm/page-layout.scm (marked-up-headfoot): create header/footer
16227         field from user-supplied markup
16228
16229         * scm/define-markup-commands.scm (on-the-fly): new markup
16230         command. Enter SCM markup procedure directly in Scheme.
16231         (fromproperty): new markup command. Read markup from props argument.
16232
16233         * scm/titling.scm (marked-up-title): create title via
16234         user-specified markup. 
16235
16236         * scm/define-markup-commands.scm (column): remove empty stencils
16237         from column.
16238
16239         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
16240         not have side-effect of creating variable stub.
16241
16242         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
16243
16244 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
16245
16246         * scm/encoding.scm (coding-alist): 
16247         * scm/font.scm (add-ec-fonts):
16248         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
16249         Extended-TeX-Font-Encoding---Latin.
16250
16251         * lily/side-position-interface.cc (general_side_position): Add
16252         actual offset to error message (avoid constant error messages).
16253
16254         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
16255         block.
16256
16257         * lily/font-select.cc (select_encoded_font)
16258         (get_font_by_mag_step, get_font_by_design_size): 
16259         * lily/modified-font-metric.cc (Modified_font_metric): 
16260         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
16261
16262         * scm/encoding.scm (coding-alist): Add fetaDynamic.
16263         (read-encoding-file): Bugfix: do not require space after bracket.
16264
16265         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
16266         these do not exist.
16267
16268 2004-11-20  Graham Percival  <gperlist@shaw.ca>
16269
16270         * Documentation/user/notation.itely: added info about typesetting
16271         boxed bar numbers.
16272
16273 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16274
16275         * flower/interval.cc (T_to_string): gcc4 fixes.
16276
16277         * scm/define-markup-commands.scm (fill-line): use
16278         stack-stencils. This fixes problems with putting already centered
16279         stencils in a line.
16280
16281         * VERSION: release 2.5.1
16282
16283         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
16284
16285 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16286
16287         * input/example-[1-3].ly: simplify.
16288
16289         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
16290
16291         * scm/output-ps.scm (new-text): new function. Use glyphshow to
16292         show glyphs.
16293
16294         * scm/encoding.scm (decode-byte-string): new function.
16295
16296         * scripts/convert-ly.py (conv): add warning about
16297         set-global-staff-size.
16298
16299         * Doxyfile: add. 
16300
16301         * scripts/convert-ly.py (conv): add raggedlastbottom rule
16302         (conv): warn for TextSpanner split.
16303         (conv): warn for textheight.
16304
16305 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
16306
16307         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
16308         building the documentation, info with images are installed.
16309         (final-install): Fix description.  Mention sourcing of login
16310         scripts (instead of running).
16311
16312 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
16313
16314         * Debian lmodern support.  Note that LilyPond will issue warnings
16315         
16316             no such encoding: "FontSpecific"
16317
16318           The font selection mechanism wants to get the encoding from the
16319           font itself, but the idea of lmodern is that it is usable with
16320           different encodings, ie, Lily should get the encoding from the
16321           font tree, rather than the font itself.  This would require some
16322           more work.
16323         
16324         * configure.in: Test for and accept lmodern if EC fonts not found.
16325
16326         * scm/framework-tex.scm (font-load-command): TeX font name
16327         mangling for latin1 encoded cork-lm fonts.
16328         (convert-to-ps): Load lm.map if available.
16329
16330         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
16331         available.
16332
16333         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
16334
16335         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
16336         available.
16337
16338         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
16339         path for absolute file name, that is silly.
16340
16341         * lily/score-engraver.cc (initialize): 
16342
16343         * Documentation/user/GNUmakefile (local-install-info): Invoke
16344         install-info --remove first.
16345
16346         * #include cleanup (Andreas Scherer).
16347
16348 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
16349
16350         * input/test/script-abbreviations.ly: fix typos.
16351
16352 2004-11-17  Werner Lemberg  <wl@gnu.org>
16353
16354         * python/lilylib.py (options_help_str): Support pretty-printing of
16355         newlines in fourth element of option description.
16356
16357         * scripts/lilypond-book.py (option_definitions): Use new lilylib
16358         feature.
16359         Sort options.
16360
16361         * Documentation/user/lilypond-book.itely: Finish update.
16362
16363 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
16364
16365         * Documentation/user/macros.itexi: Add comment about \command.
16366
16367         * Documentation/user/lilypond.tely:
16368         * Documentation/user/lilypond-book.itely: Fix names of lilypond
16369         and lilypond-book nodes, so that `info lilypond' visits the manual
16370         at top level, and `info lilypond-book' visits the lilypond-book
16371         section.
16372
16373         * Documentation/user/GNUmakefile (local-install-info): Fix rules
16374         and packager messages.
16375
16376         * lily/pangofc-afm-decoder.cc: Update test.
16377
16378 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
16379
16380         * scm/lily-library.scm (char->unicode-index): New function.
16381
16382         * scm/output-gnome.scm: 
16383         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
16384
16385         * Proper naming of file name throughout; s/filename/file[-_]name/.
16386
16387         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
16388
16389         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
16390
16391 2004-11-16  Werner Lemberg  <wl@gnu.org>
16392
16393         * scripts/lilypond-book.py: The Lord has commanded me to use only
16394         tabs for indentation.  Your humble servant obeys.
16395
16396 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
16397
16398         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
16399         including font, if LilyPond-feta font is only feta font in path.
16400
16401         * scm/output-gnome.scm (text): Revert to file name of font if font
16402         has no name.  Fixes ec font selection.
16403         (char): Bugfix: do not utf8 twice.  Fixes clefs.
16404
16405         * scm/framework-svg.scm:
16406         * scm/output-svg.scm: New file.  TODO: figure out how to
16407         do character by index in font.
16408
16409         * scm/output-sodipodi.scm: Remove.
16410
16411         * scm/output-ps.scm (stem): Remove.
16412
16413 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
16414
16415         * scm/output-gnome.scm (beam): New function.
16416         (slur): Round corners.
16417         (round-filled-box): Round corners.
16418
16419 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16420
16421         * scm/output-gnome.scm (beam): add function.
16422         (draw-line): new routine.
16423         (dashed-line): stub; call draw-line
16424         (polygon): new routine.
16425
16426 2004-11-15  Werner Lemberg  <wl@gnu.org>
16427
16428         * Documentation/user/lilypond-book.itely: Revise section on
16429         lilypond-book options.
16430         Other minor fixes.
16431
16432         * scripts/lilypond-book.py: Change indentation to 4.
16433         Minor formatting.
16434
16435 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16436
16437         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
16438         grobs that have tweaks specced.
16439         
16440 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
16441
16442         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
16443
16444 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
16445
16446         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
16447         actual char #, not 0 based index.
16448
16449         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
16450
16451         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
16452         Warning: do make -C mf clean.
16453
16454         * lily/context-property.cc: Compile fix.
16455
16456         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
16457         Grok ec-fonts, braces and dynamics.
16458
16459         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
16460
16461 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16462
16463         * lily/include/tweak-registration.hh: new file.
16464
16465         * lily/tweak-registration.cc: new file.
16466
16467         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
16468         saving tweaks.
16469
16470         * scm/output-gnome.scm (text): comment dribble.
16471
16472 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
16473
16474         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
16475
16476         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
16477         path-def before using.  Fixes muchtomany slurs in wrong places
16478         bug.
16479
16480 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16481
16482         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
16483
16484         * lily/include/object-key-undumper.hh (Module): new file.
16485
16486         * lily/object-key-undumper.cc (Module): New file. Deserialize
16487         keys. SCM bindings
16488
16489         * lily/object-key-dumper.cc (Object_key_dumper): idem.
16490         Provide SCM bindings.
16491
16492         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
16493         new file. Serialize object keys.
16494         
16495         * lily/object-key.cc (dump): new function.
16496         (as_scheme): new virtual function
16497         (undump): new function
16498         (undumpers): new table.
16499
16500         * lily/include/global-context.hh (Context): take \score key upon init.
16501
16502         * lily/object-key-dumper.cc (serialize_key): new file.
16503
16504         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
16505
16506         * lily/lily-lexer.cc: remove \quote.
16507
16508         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
16509
16510         * lily/context.cc (Context): take key argument in ctor.
16511         (create_context): new function
16512
16513         * lily/grob.cc (Grob): take key argument in ctor.  
16514
16515         * lily/lilypond-key.cc (do_compare): new file.
16516
16517         * lily/object-key.cc (Object_key): new file.
16518
16519         * lily/include/object-key.hh (class Object_key): new file.
16520
16521         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
16522
16523 2004-11-13  Graham Percival  <gperlist@shaw.ca>
16524
16525         * Documentation/user/lilypond-book.itely: add small warning about
16526         noindent default in lilypond-book.
16527
16528         * Documentation/user/converters.itely: add examples for convert-ly.
16529
16530         * Documentation/user/examples.itely: change version string in templates
16531         to 2.4.0.
16532
16533 2004-11-12  Karl Hammar  <karl@aspodata.se>
16534
16535         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
16536         cmdline, use xargs instead (backportme)
16537
16538 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
16539         
16540         * Documentation/user/: Numerous fixes in the user manual.
16541
16542 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16543
16544         * lily/parser.yy (re_rhythmed_music): search music expression for
16545         context-id, surround by \new Voice if not found. Fixes:
16546         addlyrics-second-staff.ly
16547
16548         * VERSION: 2.5.0 released.
16549         
16550 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
16551
16552         * Documentation/index.html.in: Fix url to one big page.  (backportme)
16553
16554         * Documentation/user/GNUmakefile: Separate rules for split and
16555         unsplit html documents.  Remove perl massaging.  (backportme)
16556
16557 2004-11-11  Graham Percival  <gperlist@shaw.ca>
16558
16559         * Documentation/user/lilypond-book.itely: add short warning about
16560         \lilypond{} in LaTeX docs.
16561
16562 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
16563
16564         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
16565         found.  (backportme)
16566
16567         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
16568         version requirement.  (backportme)
16569
16570         * configure.in: Be explicit about old versions of
16571         ec-fonts-mtraced.  (backportme)
16572
16573         * lily/context-selector.cc (set_tweaks): New function.
16574         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
16575         web with -DTWEAK.
16576
16577         * Documentation/user/introduction.itely (Automated engraving):
16578         Remove fragment option.  Fixes web.
16579
16580         * lily/context-property.cc (make_item_from_properties):
16581         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
16582         #ifdef.
16583
16584         * scm/define-context-properties.scm
16585         (all-internal-translation-properties): Add tweakRank and tweakCount.
16586
16587         * lily/grob.cc: 
16588         * scm/define-grob-properties.scm (all-internal-grob-properties):
16589         Add tweak-rank and tweak-count.
16590
16591 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16592
16593         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
16594         New function.
16595         (text): Use them.
16596
16597         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
16598         animated/opaque grob dragging tweaks.
16599
16600         * buildscripts/guile-gnome.sh: Update.
16601
16602 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
16603
16604         * scm/define-grobs.scm (all-grob-descriptions): Added
16605         line-interface to the LigatureBracket object.
16606
16607 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16608
16609         * scm/framework-gnome.scm (item-event): Support non-animated mouse
16610         dragging tweaks.
16611
16612         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
16613
16614         * lily/context-selector.cc (store_context): New function.
16615
16616         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
16617         (store_grob): New function.
16618         (identify_grob): Add Moment parameter.
16619
16620         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
16621         exists.
16622
16623         * scm/framework-gnome.scm (save-tweaks): Write as alist.
16624
16625 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
16626
16627         * scm/framework-gnome.scm (item-event): Print grob id.
16628         (save-tweaks): New function.
16629         (tweak): New funtion.
16630         (item-event): Use it, bound to arrow keys.
16631
16632         * lily/context-property.cc (make_item_from_properties): Register grob.
16633         * lily/context.cc (add_context): Register context.
16634
16635         * lily/include/context-selector.hh:
16636         * lily/include/grob-selector.hh:
16637         * lily/context-selector.cc:
16638         * lily/grob-selector.cc: New file.
16639
16640 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16641
16642         * lily/slur.cc: add 'positions to interface
16643
16644         * lily/main.cc: reinstate PS as standard output format. 
16645
16646         * scm/framework-tex.scm (output-preview-framework): print systems
16647         up to first non title system.
16648
16649         * lily/grace-engraver.cc (start_translation_timestep): split
16650         scm_cadddr
16651         
16652 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16653
16654         * lily/quote-iterator.cc (Module): remove old quote-iterator
16655
16656         * scm/define-music-types.scm (music-descriptions): move
16657         NewQuoteMusic over QuoteMusic
16658
16659         * Documentation/user/notation.itely (Formatting cue notes): use
16660         \cueDuring.
16661
16662         * lily/new-quote-iterator.cc (quote_ok): new function.
16663
16664         * input/regression/quote-cue-during.ly: new file.
16665
16666         * input/regression/quote-grace.ly: new file.
16667
16668         * scm/define-context-properties.scm (Module): change definition of
16669         graceSettings
16670
16671         * lily/context-property.cc (Module): rename from
16672         translator-property.cc
16673
16674         * lily/context.cc (context_name_symbol): new function
16675
16676         * lily/grace-engraver.cc: new file. Set properties for grobs based
16677         on the grace-ness of now_moment().
16678
16679         * scm/music-functions.scm (add-grace-property): use list
16680         iso. vector for graceSettings
16681         remove set-{start,stop}-grace-properties. 
16682
16683         * lily/new-quote-iterator.cc (construct_children): set
16684         quote_outlet_ if no quoted-context-{id,type} specified.
16685
16686         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
16687
16688         * lily/parser.yy (command_element): remove \quote.
16689
16690         * ly/music-functions-init.ly (location): add quoteDuring music
16691         function. 
16692
16693         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
16694         optional semicolon. (backportme)
16695
16696 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16697
16698         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16699         need to link to GUILE et al.
16700
16701 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16702
16703         * scm/define-music-properties.scm (all-music-properties): add
16704         quoted-context-type, quoted-context-id.
16705
16706         * scm/lily.scm (type-check-list): new function.
16707         
16708         * scm/lily-library.scm: new file. Generic library routines.
16709
16710         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16711         parser.
16712
16713         * ly/music-functions-init.ly: add quoteDuring function.
16714
16715         * lily/include/music-iterator.hh (class Music_iterator): rename
16716         set_translator -> set_context
16717
16718         * lily/parser.yy (Generic_prefix_music_scm): add
16719         MUSIC_FUNCTION_SCM_SCM_MUSIC
16720
16721         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16722
16723         * scm/framework-tex.scm (header): sanitize TeX paper size.
16724         (backportme)
16725
16726 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16727
16728         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16729
16730         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16731
16732         * scm/framework-tex.scm (font-load-command): Use T1 if no
16733         font-encoding set.  (backportme)
16734
16735         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16736         exists before converting.  (backportme)
16737
16738         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16739         exists before converting.  (backportme)
16740         (convert-to-ps): Remove .ps file if it exists before
16741         converting.  (backportme)
16742
16743         * lily/lexer.ll: Remove extra progress newline, use present tense.
16744
16745         * scm/paper.scm (paper-alist): public.
16746         * scm/framework-tex.scm (convert-to-ps):
16747         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16748         command line.
16749
16750 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16751
16752         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16753
16754         * lily/recording-group-engraver.cc (derived_mark): mark
16755         now_events_. (backportme)
16756
16757 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16758
16759         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16760
16761         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16762         invoking latex. (backportme.)
16763
16764         * lily/stem.cc (off_callback): center stems for all rest stems.
16765
16766 2004-11-05  Werner Lemberg  <wl@gnu.org>
16767
16768         * Documentation/user/lilypond.tely: Add more guidelines for writing
16769         lilypond texinfo documents.
16770
16771 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16772
16773         * Documentation/index.html.in: remove <hr>.
16774
16775         * THANKS: change 2.3 to 2.4.
16776
16777 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16778
16779         * scm/output-gnome.scm: More fontconfig comment.
16780
16781 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16782
16783         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16784         <package> directory in $(builddir)/share according with
16785         PACKAGE_NAME defined in the VERSION file.
16786
16787 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16788
16789         * lily/beam.cc (rest_collision_callback): use local beam
16790         multiplicity.
16791
16792         * input/regression/stem-stemlet.ly: new file.
16793
16794         * lily/stem.cc (add_head): store rests as well.
16795
16796         * scm/define-grob-properties.scm (all-user-grob-properties): add
16797         stemlet-length
16798
16799         * lily/stem.cc: store rests as well.
16800         
16801         * input/regression/new-slur.ly: mention forcing.
16802
16803 2004-11-04  Werner Lemberg  <wl@gnu.org>
16804
16805         * Documentation/user/*: A new round of layout fixes and document
16806         structure cleanup.
16807
16808 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16809
16810         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16811
16812 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16813
16814         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16815
16816 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16817
16818         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16819
16820         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16821
16822         * lily/main.cc (main): Invoke identify.
16823
16824         * scm/lily.scm (postscript->pdf): Remove progress newline.
16825         Write progress to stderr.
16826
16827         * lily/paper-book.cc (output): Remove progress newline.
16828
16829         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16830         gettext on user messages, and remove whitespace.
16831
16832         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16833
16834         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16835         argv[0] (Thomas Scharkowski).
16836
16837         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16838         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16839         for ec-fonts-mtraced.
16840
16841         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16842         --srcdir build (Bertalan).
16843
16844         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16845         headers and library too (Laura Conrad).
16846
16847         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16848         package for guile too (Laura Conrad).
16849
16850         * lily/main.cc (usage): Typo.
16851
16852 2004-11-02  Werner Lemberg  <wl@gnu.org>
16853
16854         * Documentation/user/notation.ly: More fixes to improve appearance.
16855
16856         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16857         better output for multicolumn tables.
16858
16859 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16860
16861         * lily/main.cc (dir_info): Fixed typo in the printouts.
16862
16863 2004-11-01  Werner Lemberg  <wl@gnu.org>
16864
16865         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16866         of output.
16867         Set `per_line' to 2; replace hard-coded value with it.
16868
16869         * Documentation/user/*: Many fixes to improve appearance of
16870         printed manual.
16871
16872 2004-11-01  Werner Lemberg  <wl@gnu.org>
16873
16874         * Documentation/user/changing-defaults.itely,
16875         Documentation/user/notation.ly,
16876         Documentation/user/programming-interface.itely: Use @/.
16877         Fix formatting of some lilypond snippets and tables.
16878
16879         * scripts/lilypond-book.py (compose_ly): Provide useful default
16880         for LINEWIDTH in `override'.
16881
16882 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16883
16884         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16885
16886 2004-10-31  Werner Lemberg  <wl@gnu.org>
16887
16888         Resetting @exampleindent to `5' gives ugly results with texinfo's
16889         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16890         (if not quoting) to change @exampleindent only locally.
16891
16892         * scripts/lilypond-book.py (NOQUOTE): New variable.
16893         (output) [LATEX]: Remove AFTER and BEFORE.
16894         [TEXINFO]: Remove AFTER and BEFORE.
16895         Fix QUOTE and VERBATIM pattern.
16896         Add NOQUOTE pattern.
16897         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16898         and BEFORE.
16899         [output_texinfo]: Use NOQUOTE.
16900
16901 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16902
16903         * Documentation/user/changing-defaults.itely: clarify paper
16904         size commands with correct info.
16905
16906         * Documentation/user/lilypond-book.itely: add more docs for
16907         filename extensions.
16908
16909 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16910
16911         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16912         (PATCH_LEVEL): start 2.5.0.
16913
16914 #Local variables:
16915 #coding: utf-8
16916 #End:
16917