]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* Documentation/user/page.itely (Displaying spacing): use \book
[lilypond.git] / ChangeLog
1 2006-10-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * Documentation/user/page.itely (Displaying spacing): use \book
4         explicitly, so arrows show .
5         (Line breaking): add note about Forbid_line_break_engraver
6
7         * Documentation/user/tweaks.itely (Common tweaks): also set length
8         to prevent tie squeezing. 
9         (Default files): use @var{}
10
11         * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
12         (Generating LilyPond files): add FOMUS.
13
14 2006-10-20  Joe Neeman  <joeneeman@gmail.com>
15
16         * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
17         Y-offset for TextScript and Script
18
19         * lily/text-engraver.cc (make_item): 
20         * lily/script-engraver.cc (make_script_from_event):
21         remove call to Side_position_interface::set_axis since all scripts
22         now have this set by default
23
24         * lily/context.cc: 
25         * lily/prob.cc: use variables
26
27 2006-10-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
28
29         * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
30         at typography, rather analyse stream event duration. 
31
32         * Documentation/user/page.itely (Page formatting): set a6 paper
33         for system separator example.
34         
35         * lily/arpeggio.cc (Module): idem.
36
37         * lily/accidental-placement.cc: add script-priority property.
38
39         * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
40
41         * lily/ttf.cc (print_trailer): if all else fails: use
42         glyphIndexXXXX as glyph name. Fixes #117.
43
44         * lily/pango-font.cc (pango_item_string_stencil): only use cmap
45         entry if cmap contains glyph.
46         (get_index_to_charcode_map): remove from Pango_font class, use
47         global filename -> font mapping.
48         (get_glyph_index_name): new function.
49         (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
50         only for TTF. 
51
52         * scripts/lilypond-book.py (main): use -deps-box-padding=-3
53
54         * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
55         a number.
56
57         * scm/define-grob-properties.scm (all-user-grob-properties):
58         remove outdated doc. Fixes #116
59
60         * lily/completion-note-heads-engraver.cc (process_music): always
61         clone input events; otherwise we may overwrite input 'duration
62         property. Fixes #115.
63
64         * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
65         scm_t_int32 != int
66
67         * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
68         anchor. Fixes #114
69
70         * VERSION (PATCH_LEVEL): bump version.
71
72 2006-10-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
73
74         * lily/engraver.cc (internal_make_grob): use variables.
75
76         * flower/string-convert.cc (dec2double): clean-up warnings. 
77
78         * configure.in (CXXFLAGS): add -Werror.
79
80         * VERSION (PACKAGE_NAME): release 2.9.25
81
82 2006-10-18  Joe Neeman  <joeneeman@gmail.com>
83
84         * lily/simple-spacer.cc (get_line_forces): test for non-fitting
85         line even if we precede a forced break.
86
87         * lily/optimal-page-breaking.cc (try_page_spacing): square line
88         forces too. Make page-spacing weight default to 10 because the
89         changes to vertical springs decreased the page force/line force
90         proportions. Also, take the average of line force and page force
91         instead of just the sum.
92
93         * lily/constrained-breaking.cc (initialize): make the stiffness
94         of the vertical springs depend on the height of the system. This
95         prevents pages with only a few large systems from getting huge
96         forces
97
98         * Documentation/user/page.itely (Page formatting): document the
99         change in default page-spacing-weight
100
101         * lily/include/constrained-breaking.hh: initialise bottom_padding_
102
103 2006-10-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
104
105         * input/typography-demo.ly (melody): remove superfluous slur.
106
107         * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
108         add piano-pedal-script-interface
109
110 2006-10-18  Bertalan Fodor  <lilypondtool@organum.hu>
111
112         * scripts/lilypond-book.py: DocBook support.
113
114 2006-10-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
115
116         * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
117         Y-alignment code.
118         (stop_translation_timestep): set bound to currentMusicalColumn if
119         not set yet. Fixes #102
120
121         * lily/piano-pedal-bracket.cc: formatting.
122
123         * input/test/engraver-one-by-one.ly (MyStaff): reformat.
124
125         * lily/piano-pedal-align-engraver.cc: new class
126         Piano_pedal_align_engraver. Handle side-positioning Y-alignment
127         for piano pedals.  
128
129 2006-10-18  Heikki Junes  <hjunes@gmail.com>
130
131         * po/fi.po: Update Finnish translation (before the next release).
132
133 2006-10-17  Joe Neeman  <joeneeman@gmail.com>
134
135         * lily/system.cc (get_paper_system): reinstate the backwards-
136         compatible page breaking for the old page breaker.
137
138 2006-10-17  Erik Sandberg  <mandolaerik@gmail.com>
139         
140         * lily/recording-group-engraver.cc: removed
141
142         * lily/context.cc, lily/translator-group.cc: Don't touch
143         Context::implementation_ if it's null
144
145 2006-10-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
146
147         * scm/paper.scm: only use left-margin if defined.
148
149         * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
150
151         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
152
153         * lily/new-fingering-engraver.cc: stringFingerOrientations ->
154         strokeFingerOrientations
155
156         * lily/script-column.cc (row_before_line_breaking): also handle
157         accidentals and arpeggios in horizontal script stacking.
158
159         * lily/script-row-engraver.cc (acknowledge_accidental_placement):
160         new function.
161
162         * input/regression/script-stack-horizontal.ly: trim.
163
164 2006-10-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
165
166         * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
167         'text property too.
168
169         * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
170         'text if string argument.
171
172         * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
173
174         * scm/define-context-properties.scm
175         (all-user-translation-properties): change to strokeFingerOrientations
176
177 2006-10-16  Erik Sandberg  <mandolaerik@gmail.com>
178
179         * lily/parser.yy: remove debug output
180
181 2006-10-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
182
183         * ly/paper-defaults.ly: set left/right margin.
184
185         * scm/paper.scm (set-paper-dimensions): use left-margin and
186         right-margin for computing linewidth.
187
188         * Documentation/topdocs/NEWS.tely (Top): idem.
189
190         * input/regression/lyric-tie.ly (texidoc): use vowels for tied
191         lyrics example.
192
193         * scm/define-markup-commands.scm (tied-lyric): increase negative
194         space: space syllables tighter.
195
196         * VERSION (PATCH_LEVEL): bump version.
197
198         * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
199         Ax paper sizes. 
200
201 2006-10-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
202
203         * COPYING: further clarification
204
205         * VERSION: release 2.9.24
206
207         * input/regression/script-stack-horizontal.ly: add version.
208
209         * scm/lily-library.scm (list-join): use fold-right. Fixes #112
210
211         * input/regression/lyric-tie.ly (texidoc): use different words.
212
213         * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
214
215 2006-10-15  Erik Sandberg  <mandolaerik@gmail.com>
216
217         * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
218         macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
219         
220 2006-10-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
221
222         * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4; 
223
224         * Doxyfile: remove file.
225
226         * scm/define-grob-interfaces.scm (string-finger-interface): add
227         string-finger-interface
228
229         * lily/general-scheme.cc (LY_DEFINE): move
230         ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[] 
231
232         * Documentation/topdocs/NEWS.tely (Top): add note for
233         string-finger feature.
234
235         * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
236         property.
237
238         * scm/output-lib.scm (string-finger::calc-text): read 'digit
239         instead of 'text
240
241         * input/regression/script-stack-horizontal.ly: new file.
242
243         * ly/engraver-init.ly: add Script_row_engraver.
244
245         * lily/script-column.cc (order_grobs): refactor: separate axis
246         independent code.
247         (row_before_line_breaking): new function.
248
249         * lily/script-row-engraver.cc (Script_row_engraver): new file.
250
251         * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
252
253 2006-10-14  Jürgen Reuter  <reuter@ipd.uka.de>
254
255         * Documentation/user/instrument-notation.itely: Cleanup: Remove
256         annoying skip notes from mensural ligature example.  Update
257         @refbugs for ligatures and mensural ligatures.
258
259         * lily/coherent-ligature-engraver.cc,
260         lily/include/coherent-ligature-engraver.hh,
261         lily/mensural-ligature-engraver.cc,
262         lily/vaticana-ligature-engraver.cc: Revise code for item
263         reparentizing.  There should now be less programming_error
264         messages.
265
266         * lily/mensural-ligature-engraver.cc: Improve placement of dots.
267
268         * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
269         Maintenance bugfix: Don't create empty Stencil (), but empty box
270         instead.  This fix should eliminate some programming_error
271         messages.
272
273         * ly/engraver-init.ly (MensuralStaff): Set default accidental
274         style.
275
276         * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
277         \layout block _before_ score.
278
279 2006-10-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
280
281         * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
282
283         * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
284
285 2006-10-13  Erlend Aasland  <erlenda@gmail.com>
286
287         * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
288
289 2006-10-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
290
291         * VERSION (PATCH_LEVEL): bump version.
292
293         * COPYING: clarify exception note.
294
295         * lily/main.cc: remove remark about "COPYING".
296
297         * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
298         system-count starts at 0 for each clip-region. Change name to
299         FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
300         layout block, per score.
301
302 2006-10-13  Erik Sandberg  <mandolaerik@gmail.com>
303
304         * lily/input-smob.cc: add equal_p for Input
305
306         * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
307         function
308
309         * lily/parser.yy: MY_MAKE_MUSIC sets music origin
310
311         * lily/prob.cc: Add equal_p predicate for Prob
312
313         * lily/translator.cc: small cleanup
314
315         * scm/document-music.cc: use data from translator listener
316         registration to generate documentation for event classes
317
318         * lily/*: Eliminate accept arg of ADD_TRANSLATOR
319         
320         * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
321         
322 2006-10-13  Jan Nieuwenhuizen  <janneke@gnu.org>
323
324         * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
325
326 2006-10-12  Jan Nieuwenhuizen  <janneke@gnu.org>
327
328         * Documentation/topdocs/INSTALL.texi: Thinko.
329
330         * .cvsignore: Update.
331
332         * lexer-gcc-3.1.sh: Remove.
333
334         * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
335         Update anonymous cvs access.  Remove comment about gcc 3.0.4.
336
337 2006-10-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
338
339         * VERSION: release 2.9.23
340
341         * lily/paper-column-engraver.cc (stop_translation_timestep): also
342         typecheck barnumber.
343
344         * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
345
346         * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
347
348         * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
349
350         * input/regression/clip-systems.ly (Notes): new file. 
351
352         * scm/lily.scm (define-scheme-options): add clip-systems option.
353
354         * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
355         function
356         (dump-stencil-as-EPS): move bbox calculation from previous
357         dump-stencil-as-EPS
358         (output-framework): use -dclip-systems 
359
360         * scm/lily-library.scm (filtered-map): new function
361
362         * scm/framework-ps.scm (clip-system-EPS): new function.
363         (clip-system-EPSes): new function.
364
365         * lily/paper-column.cc: add rhythmic-location to interface
366
367         * scm/define-grob-properties.scm (all-user-grob-properties): add
368         rhythmic-location property.
369
370         * scm/clip-region.scm: new file: rhythmic-location data type and
371         system-clipped-x-extent function.
372
373         * ly/init.ly: use (scm clip-region)
374
375         * lily/paper-column-engraver.cc (stop_translation_timestep): set
376         rhythmic-location for paper column grobs.
377
378         * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
379
380 2006-10-12  Jürgen Reuter  <reuter@ipd.uka.de>
381
382         * ly/engraver-init.ly: Remove obsolete comment on
383         Bar_number_engraver.
384
385         * Documentation/user/instrument-notation.itely: Tune Ancient
386         Articulations figure, such that the episem actually shows.
387
388         * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
389         fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
390
391         * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
392         cleanup.
393
394 2006-10-12  Graham Percival  <gpermus@gmail.com>
395
396         * Documentation/user/ {some}: minor edits that were lost somehow.
397
398 2006-10-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
399
400         * VERSION (PACKAGE_NAME): bump version.
401
402         * input/regression/lyric-tie.ly (texidoc): new file.
403
404         * Documentation/topdocs/NEWS.tely (Top): add new feature.
405
406         * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
407
408         * scm/define-markup-commands.scm (tied-lyric): new function: split
409         string along ~ and reattach with U+203F (tie character) and
410         negative space.
411
412         * scm/output-lib.scm (lyric-text::calc-text): new function.
413
414         * lily/lyric-engraver.cc (process_music): don't set 'text.
415
416         * scm/output-lib.scm (string-finger::calc-text): new function
417         (lyric-text::print): new function.
418
419         * lily/new-fingering-engraver.cc (add_fingering): refactor; make
420         generic for fingering & string number. Use for string-finger. 
421
422         * scm/define-music-types.scm (music-descriptions): add
423         StringFingerEvent
424
425         * lily/fingering-engraver.cc (listen_string_finger): new function
426
427         * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
428
429         * scm/define-context-properties.scm
430         (all-user-translation-properties): add stringFingerOrientations
431
432 2006-10-11  Jürgen Reuter  <reuter@ipd.uka.de>
433
434         * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
435         ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
436
437         * lily/dots.cc: Added style property for dots.
438
439         * mf/parmesan-heads.mf: Fix typo in comment.
440
441         * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
442         adding longa head to feta font and removing obsolete default
443         mapping scheme code.
444
445 2006-10-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
446
447         * scm/output-lib.scm (fingering::calc-text): use origin
448         event-property, not music-property.
449
450         * lily/lilypond.rc.in: spell my name correctly.
451
452 2006-10-10  Joe Neeman  <joeneeman@gmail.com>
453
454         * lily/grob.cc (pure_height): only add minimum-Y-extent if we
455         already have a non-empty extent. Fixes estimation for Hara-kiri
456         staves.
457
458 2006-10-09  Jürgen Reuter  <reuter@ipd.uka.de>
459
460         * ly/gregorian-init.ly: Simplify definition of \episemInitium and
461         \episemFinis.
462
463         * lily/ligature-engraver.cc: Remove unused #include.
464
465         * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
466         Bugfix: remove method check_for_prefix_loss(Item *) from global
467         namespace to avoid namespace pollution.
468
469 2006-10-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
470
471         * VERSION: release 2.9.22
472
473         * ly/generate-documentation.ly: update option name.
474
475         * lily/dynamic-text-spanner.cc (print): revert fix.
476
477         * scm/define-grob-interfaces.scm
478         (trill-pitch-accidental-interface):
479         add trill-pitch-accidental-interface
480
481         * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
482         dereference if it's really a duration.
483
484         * lily/figured-bass-engraver.cc (process_music): clear spanner if
485         useBassFigureExtenders is not set.
486         (listen_bass_figure): record as new event if
487         useBassFigureExtenders not set. Fixes #103.
488
489         * scm/stencil.scm (circle-stencil): don't center stencil argument,
490         instead: move circle. Fixes #107.
491
492         * scm/define-grobs.scm (all-grob-descriptions): set
493         allow-loose-spacing for PaperColumn and
494         NonMusicalPaperColumn. Kludge for #110.
495
496         * lily/spaceable-grob.cc: add allow-loose-spacing property.
497
498         * lily/spacing-determine-loose-columns.cc (is_loose_column):
499         allow-loose-spacing property.
500
501         * scm/define-markup-commands.scm (postscript): gsave & grestore
502         around embedded PS. Do setlinewidth too. Fixes  #109.
503
504 2006-10-08  Jürgen Reuter  <reuter@ipd.uka.de>
505
506         * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
507         code.  This patch fixes ligature brackets that were not at all
508         engraved any more.
509
510 2006-10-08  Graham Percival  <gpermus@gmail.com>
511
512         * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
513
514         * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
515
516         * scm/define-context-properties.scm: clarified docs (bug 91).
517
518         * Documentation/user/basic-notation.itely: document volta brackets
519         not aligning (bug 63).
520
521         * Documentation/user/ global.itely invoking.itely: ignore or
522         add warnings about texstr.
523
524 2006-10-08  John Mandereau  <john.mandereau@free.fr>
525
526         * po/fr.po: update translation.
527
528         * po/: update msgids.
529
530 2006-10-08  Jan Nieuwenhuizen  <janneke@gnu.org>
531
532         * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
533
534 2006-10-08  Nicolas Sceaux  <nicolas.sceaux@free.fr>
535
536         * Documentation/user/page.itely (Two-pass vertical spacing): add
537         documentation for two-pass spacing technique.
538
539 2006-10-06  Graham Percival  <gpermus@gmail.com>
540
541         * Documentation/user/convert-ly.txt: new file; new
542         storage place for this file (moved from bugs/ CVS).
543
544 2006-10-06  Jürgen Reuter  <reuter@ipd.uka.de>
545
546         * lily/note-head.cc: Fixed programming_error message.
547
548 2006-10-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
549
550         * scm/define-grobs.scm (pure-conversion): move pure-callback
551         further into body.
552
553         * scm/script.scm (default-script-alist): set avoid-slur for turn,
554         marcato, stopped, thumb.
555
556 2006-10-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
557
558         * lily/completion-note-heads-engraver.cc (process_music): don't
559         skimp on memory usage.
560
561         * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
562         stems too. Fixes #5
563
564         * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
565         parenthesis item. This fixes premature Y-extent triggering. Fixes
566         issue #95. 
567  
568         * VERSION (PATCH_LEVEL): bump version.
569
570 2006-10-04  Graham Percival  <gpermus@gmail.com>
571
572         * Documentation/user/advanced-notation.itely: added
573         info about instrument names for piano or other contexts,
574         thanks Marcus!
575
576 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
577
578         * mf/feta-bolletjes.mf (solfa_quarter_width): use
579         solfa_base_notewidth as unit for non-DO-notes too.
580
581         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
582
583         * VERSION: release 2.9.21
584
585         * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
586         override.
587
588 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
589
590         * python/lilylib.py (progress): Minor fix.
591
592 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
593
594         * lily/note-name-engraver.cc: doc engraver.
595
596         * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
597
598         * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
599
600         * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
601         by callback.
602
603         * lily/stem-engraver.cc (make_stem): don't set duration-log
604
605         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
606         write snippet-names binary.
607
608         * python/lilylib.py (system): use os.system for mingw32
609
610         * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
611         to $PATH.
612
613         * scm/backend-library.scm: update email address.
614
615         * Documentation/topdocs/NEWS.tely (Top): add duration-log override
616         example.
617
618         * scm/define-grobs.scm (all-grob-descriptions): use callback to
619         calc dot count.
620
621         * lily/dots-engraver.cc (class Dots_engraver): new engraver:
622         handle dot creation separately.
623
624         * lily/tab-note-heads-engraver.cc (process_music): idem.
625
626         * lily/drum-note-engraver.cc (process_music): idem.
627
628         * lily/note-heads-engraver.cc (process_music): idem.
629
630         * lily/rest-engraver.cc: don't set duration-log.
631
632         * scm/output-lib.scm (string-number::calc-text): new function.
633         (note-head::calc-duration-log): new function.
634
635         * lily/fingering-engraver.cc (make_script): remove 'text setting.
636
637         * scm/output-lib.scm (fingering::calc-text): new function.
638
639 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
640
641         * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
642          and include-eps-font -> include-eps-fonts
643
644 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
645
646         * lily/multi-measure-rest-engraver.cc: use internalBarNumber
647
648         * lily/timing-translator.cc: list properties.
649         (start_translation_timestep): update internalBarNumber too.
650
651         * scm/define-context-properties.scm
652         (all-user-translation-properties): add internalBarNumber.
653
654         * input/regression/spacing-no-note.ly: new file.
655
656         * buildscripts/output-distance.py (link_file): verbosity for OSError.
657
658         * lily/book.cc: #include cleanup.
659
660         * lily/include/lily-guile-macros.hh: add assert to
661         scm_or_str2symbol(SCM).
662
663         * VERSION (PATCH_LEVEL): bump version.
664
665         * lily/spacing-spanner.cc (musical_column_spacing): handle
666         musical->nonmusical spacing case, where there is no spacing
667         wish. Fixes issue #61.
668
669         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
670         (pango_item_string_stencil): use logical rect horizontally (to
671         preserve spaces), ink_rect vertically (for time signatures).
672
673         * lily/font-metric.cc (word_stencil): new interface function
674
675         * input/regression/utf-8-mixed-text.ly: new file.
676
677         * lily/percent-repeat-engraver.cc (listen_percent): remove
678         spurious warning.
679
680         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
681         non-dynamic scripts. Fixes #30.
682
683         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
684
685         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
686
687         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
688         SCM_UNDEFINED for non-existent data.
689
690         * lily/side-position-interface.cc (general_side_position): allow
691         optional current_offset argument for chaining, so combinations of side-position
692         and outside slur callback don't add up.  Fixes issue #92.
693
694         * lily/pango-font.cc (pango_item_string_stencil): use
695         logical_rect. This prevents spaces after words from disappearing,
696         issue #72.
697         
698         * VERSION: release 2.9.20
699
700 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
701
702         * scm/define-grob-properties.scm (all-user-grob-properties):
703         mention stencil as user settable.
704
705 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
706
707         * Documentation/user/page.itely (Page formatting): 
708         document auto-first-page-number
709
710         * lily/page-breaking.cc (find_chunks_and_breaks): 
711         * lily/paper-score.cc (calc_breaking): Follow changes to the
712         Constrained_breaking interface
713
714         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
715         here backwards, as an optimisation
716         (initialize): new function; move most of the code in resize () here
717         (combine_demerits): cache ragged_right_
718         (Constrained_breaking): constructor now takes the Paper_score
719
720 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
721         
722         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
723         avoid parser lookahead for 0-ary functions.
724
725         * lily/translator.cc: Extract event classes from
726         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
727
728 2006-10-02  Heikki Junes  <hjunes@gmail.com>
729
730         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
731         KBabel fix tool.
732
733 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
734
735         * scm/layout-page-layout.scm (page-breaking-wrapper): new
736         function. Call the page breaking function selected in the
737         `page-breaking' \paper variable, then the post processing function
738         chosen using the `page-post-process' \paper variable.
739         (line-height): new function. Return the height of a system.
740         (line-minimum-position-on-page): new function. Return the position
741         of a system on page (using the previous line position), only
742         considering between system padding.
743         (stretchable-line?): new function. Says whether a line can be
744         stretched (ie. is not a title nor a single staff system).
745         (page-maximum-space-left): new function. Computes space left on a
746         page, when all systems are separated by their padding.
747
748         * lily/page-breaking.cc (breaking::make_pages): Move page post
749         processing function call to page breaking wrapper (common to all
750         page breakers).
751
752         * lily/paper-book.cc (book::pages): call the page breaking
753         wrapper, instead of the page breaker directly
754
755         * ly/paper-defaults.ly: Add \paper variables for page breaking
756         wrapper and page post processing function. Make
757         `write-page-layout' value depend on the 'dump-tweaks option. Add a
758         `system-maximum-stretch-procedure' variable for holding a function
759         computing the maximum stretch a system allows.
760
761         * scm/layout-page-dump.scm (write-page-breaks): computes the
762         stretch to apply to systems on a page to minimize left
763         space. Dump this stretch length.
764
765         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
766         the system-stretch property of the tweak data to stretch the
767         system.
768         (includePageLayoutFile): Void function which includes the
769         generated page-layout file if it exists and if the page layout
770         dumping is not asked.
771         (scoreTweak): if the score tweak named by the argument exists,
772         return it.
773
774 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
775
776         * lily/page-spacing.cc (compress_lines, uncompress_solution):
777         handle correctly the case where there are multiple \noPageBreaks
778         in a row.
779
780 2006-09-30  Laura Conrad <lconrad@laymusic.org>
781
782         * abc2ly.py adds segno (S) and Coda (O) to articulations.
783         
784         * abc2ly.py fix so that entering " -- " will translate to a -- in
785         the lilypond instead of a " - - "
786         
787 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
788
789         * lily/align-interface.cc: fix typo
790
791         * lily/dynamic-text-spanner.cc (print): Add a special case for
792         trill spanner right sides. 
793
794         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
795
796         * lily/align-interface.cc (get_extents_aligned_translates): add
797         support for padding variable.
798
799         * lily/break-align-interface.cc (self_align_callback): oops: use
800         loop variable in guard.
801
802         * input/regression/repeat-percent-grace.ly: new file.
803
804         * lily/percent-repeat-engraver.cc (start_translation_timestep):
805         remember first currentCommandColumn of a grace run. Fixes issue 70.
806
807         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
808         move class definition to CC file.
809
810         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
811
812         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
813         measure-long  repeats.
814
815         * flower/include/international.hh: include stdarg.h
816
817 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
818
819         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
820         put_systems_on_pages to return an empty result, we need to assign
821         demerits properly in that case.
822         (put_systems_on_pages): Make the number of pages depend on the
823         evenness of page_number. Add auto-first-page-number.
824         (calc_subproblem): ensure that the page-number is even for the
825         left-hand page. Warn if the first page-turn doesn't fit onto the
826         first (right-hand) page.
827
828         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
829         (min_page_count): make this publicly accessible
830         (min_page_count): fix a bug when there are forced page breaks that
831         was introduced when I made this loop run backwards
832         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
833         replace space_systems_on_min_pages with these two. The logic in
834         space_systems_on_min_pages was getting too convoluted and is better
835         contained in page-turn-page-breaking.
836
837         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
838         conditional
839         (breakable_column): typo
840
841         * lily/source-file.cc (get_line): fix off-by-one error
842         and clean up some of the logic
843
844 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
845
846         * lily/page-breaking.cc (make_pages): honour the first-page-number
847         property
848
849 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
850
851         * VERSION (PACKAGE_NAME): bump version.
852
853 2006-09-26  Pal Benko  <benko.pal@gmail.com>
854
855         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
856         (the latter is the same as petrucci-f which is kept for compatibility)
857
858 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
859         
860         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
861
862 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
863
864         * lily/global-context.cc (run_iterator_on_me): break out of loop
865         if moment doesn't increase.
866
867         * scm/define-grob-properties.scm (all-user-grob-properties): add
868         forced property.
869
870         * lily/accidental.cc (after_line_breaking): read forced property.
871
872         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
873         property.
874
875         * input/regression/accidental-forced-tie.ly:  new file.
876
877 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
878
879         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
880
881         * lily/figured-bass-engraver.cc: only listen to rest events if
882         ignoreFiguredBassRest is not set.
883
884         * scm/define-context-properties.scm
885         (all-user-translation-properties): add ignoreFiguredBassRest property
886
887 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
888
889         * lily/paper-book.cc (get_system_specs):
890         (set_system_penalty): fix breakbefore.
891         We used to set a penalty on the system after the break, now we
892         set a permission on the system before the break
893
894         * lily/grob-property.cc: add scm debugging hooks into
895         property modification
896
897         * lily/context-property.cc:
898         * lily/engraver.cc:
899         rename make_foo_from_properties to internal_make_foo and
900         move it from context-property.cc to a member function of
901         Engraver.
902         
903         * lily/include/lily-guile-macros.hh:
904         overload ly_symbol2scm macro so that there is no more need
905         to use internal_foo
906
907         * lily/volta-repeat-iterator.cc:
908         * lily/tweak-engraver.cc:
909         * lily/tuplet-bracket.cc:
910         * lily/span-bar-engraver.cc:
911         * lily/script-engraver.cc:
912         * lily/prob-scheme.cc:
913         * lily/pointer-group-interface.cc:
914         * lily/parser.yy:
915         * lily/grob-scheme.cc:
916         * lily/grob-property.cc:
917         * lily/context.cc:
918         * lily/context-property.cc:
919         * lily/break-substitution.cc:
920         * lily/break-align-engraver.cc:
921         * lily/axis-group-interface.cc:
922         * lily/align-interface.cc:
923         remove calls to internal_FOO
924
925         * lily/system-start-delimiter-engraver.cc:
926         * lily/parenthesis-engraver.cc:
927         * lily/accidental-engraver.cc:
928         remove calls to make_foo_from_properties
929
930 2006-09-23  Graham Percival  <gpermus@gmail.com>
931
932         * Documentation/user/programming-iterfaces.itely: fix
933         def-music-function -> define-music... leftover.
934
935 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
936
937         * lily/page-spacing.cc (min_page_count): by running the loop
938         backwards, we can calculate ragged_last properly.
939
940 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
941
942         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
943         printfirst-page-number -> print-first-page-number
944
945         * python/convertrules.py: corresponding rule.
946
947         * Documentation/user/page.itely (Page formatting): Document the
948         default values of all page layout parameters. 
949
950 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
951
952         * lily/lexer.ll: remove limitation on music function arity. New
953         mode extratoken, which inserts extra EXPECT_* tokens after
954         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
955
956         * lily/parser.yy: Change grammar for music function accordingly.
957
958         * lily/include/lily-parser.hh: New method get_state, new member
959         hidden_state. Works around a problem when parser fetches
960         MUSIC_FUNCTION token but not the following EXPECT_* token.
961
962         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
963         remove try_music
964
965         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
966         references to Music; use ASSIGN_EVENT_ONCE everywhere
967
968         * lily/grob-info.cc: junk *music_cause
969
970         * lily/music.cc: copy eventified articulations to stream event
971
972         * lily/part-combine-iterator.cc: Cleanup using enums
973
974         * lily/translator-group.cc: Junk OldMusicEvent, and associated
975         methods
976
977         * lily/include/engraver.hh: Junk music.hh include
978
979         * lily/stream-event.cc: Changed constructors
980
981 2006-09-21  Graham Percival  <gpermus@gmail.com>
982
983         * Documentation/user/tweaks.itely (Fitting music onto fewer
984         pages): change settings to avoid warning messages.
985
986 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
987
988         * Documentation/user/tweaks.itely (Fitting music onto fewer
989         pages): Add between-system-space setting. 
990
991 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
992
993         * lily/accidental-placement.cc (calc_positioning_done): don't
994         trigger Y-extent calculation too early. Use pure_height instead.
995
996         * lily/scale.cc (LY_DEFINE): new file. 
997
998 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
999
1000         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1001         that happen at the start of a score: having a zero-length
1002         chunk was messing up min_system_count calculations.
1003
1004         * lily/source-file.cc (get_line): lower_bound, not
1005         binary_search. Fixes problem where point-and-click would
1006         always point to the first line.
1007
1008 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1009
1010         * lily/accidental-placement.cc (calc_positioning_done): also put
1011         stems into accidental support. 
1012
1013         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1014         event_ detected.
1015
1016         * scm/script.scm (default-script-alist): avoid-slur and
1017         slur-padding for portato script.
1018
1019         * lily/stem-tremolo.cc (translated_stencil): new function. 
1020         (height): use new function. Fixes tremolos on whole notes.
1021
1022         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1023         slur found.
1024
1025 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1026
1027         * scripts/abc2ly.py (try_parse_comment): idem.
1028
1029         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1030         bar_string iso. string.find()
1031
1032         * lily/*.cc: idem.
1033
1034         * lily/slur.cc (get_curve): always use scm_is_pair() looping
1035         scheme lists.  
1036
1037 2006-09-18  Graham Percival  <gpermus@gmail.com>
1038
1039         * Documentation/user/basic-notation.itely: add bug
1040         warning about ties and octavation/clef.
1041
1042 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1043
1044         * VERSION (PACKAGE_NAME): release 2.9.18
1045
1046 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
1047
1048         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1049         figure out midi file names right here.
1050         
1051 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1052
1053         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1054
1055         * scm/backend-library.scm: option naming:  gs-font-load*s*
1056
1057         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1058         include-eps-fonts
1059
1060 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
1061
1062         * scm/define-music-types.scm (music-descriptions): remove
1063         BreakEvent and fix {Page,Line}{Break,Turn}Event so
1064         Music::to_event doesn't complain.
1065
1066         * lily/accidental-placement.cc (ape_compare):
1067         * lily/semi-tie.cc (compare): 
1068         * lily/note-column.cc (shift_compare): replace by XXX_less
1069
1070         * lily/tie-formatting-problem.cc (set_chord_outline): 
1071         * lily/tie-column.cc (calc_positioning_done): 
1072         * lily/system.cc (post_processing)
1073         (get_paper_system): 
1074         * lily/stem.cc (note_head_positions)
1075         (calc_positioning_done): 
1076         * lily/spanner.cc (do_break_processing)
1077         (find_broken_piece): 
1078         * lily/span-bar.cc (print): 
1079         * lily/semi-tie-column.cc (calc_positioning_done): 
1080         * lily/rest-collision.cc (calc_positioning_done): 
1081         * lily/program-option.cc (get_help_string): 
1082         * lily/note-collision.cc (get_clash_groups):
1083         * lily/new-fingering-engraver.cc (position_scripts):
1084         * lily/keyword.cc (Keyword_table):
1085         * lily/hara-kiri-group-spanner.cc (request_suicide):
1086         * lily/grob-pq-engraver.cc (stop_translation_timestep):
1087         * lily/accidental-placement.cc (calc_positioning_done):
1088         (stagger_apes):
1089         * lily/beam.cc (get_beam_segments):
1090         * lily/grob-array.cc (remove_duplicates):
1091         use new vector_sort
1092         
1093         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1094         ragged-last-bottom = ##f (test the new page breaker)
1095
1096         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1097
1098         * scm/define-context-properties.scm
1099         (all-internal-translation-properties): remove properties that
1100         were used to communicate page-turn stuff to the paper-column
1101         engraver.
1102
1103         * lily/lily-guile.cc (robust_scm2string): new function
1104
1105         * lily/paper-column-engraver.cc: Clean up page turn stuff
1106
1107         * lily/page-turn-engraver.cc: Re-write the page turn logic here
1108         instead of cluttering up paper-column-engraver.cc
1109
1110 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1111
1112         * scm/layout-page-dump.scm (scm): export utility function names,
1113         to allow user writing cutsom dumping functions.
1114
1115         * scm/layout-page-layout.scm: export utility function names to
1116         enable custom page breaking function writing. Tabify.
1117         (line-next-space): use ?-suffix only for predicates
1118         (page-maximum-space-to-fill): new function. Return the space
1119         between first and bottom system of a page, to give to
1120         space-systems.
1121         (space-systems): use a space-to-fill argument (for instance as
1122         computed by page-maximum-space-to-fill) instead of computing
1123         internaly this space with the page height. That way, the caller
1124         can adjust the space to use.
1125         (make-page-from-systems, walk-paths): compute space to fill before
1126         calling space-systems.
1127
1128 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1129
1130         * scm/script.scm (default-script-alist): set paddings for every
1131         type here, increase for portato mark.
1132
1133         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
1134         -dinclude-eps-fonts
1135
1136 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1137
1138         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1139         use spanner::set-spacing-rods
1140
1141         * lily/note-column.cc: reformat.
1142
1143         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1144         step positioning for note/rest combinations.
1145
1146         * input/regression/rest-note-collision.ly: new file.
1147
1148         * scm/define-grobs.scm (all-grob-descriptions): add
1149         springs-and-rods
1150
1151         * flower/include/std-vector.hh: switch off again.
1152
1153         * VERSION (PATCH_LEVEL): bump to 2.9.18
1154
1155         * flower/include/std-string.hh: idem.
1156
1157         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1158
1159 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1160
1161         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1162         PianoStaff. 
1163
1164 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
1165
1166         * Documentation/user/page.itely: update page breaking documentation
1167
1168 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
1169
1170         * lily/note-collision.cc (calc_positioning_done): only access
1171         first head if available.
1172
1173         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1174
1175         * scm/framework-ps.scm (output-preview-framework): use new name.
1176
1177         * lily/program-option.cc (internal_set_option): use new names.
1178
1179         * Documentation/user/SConscript (lilypond_book_flags): update -d
1180         variable names.
1181
1182         * Documentation/user/lilypond-book.itely (Inserting LilyPond
1183         output into other programs): new variable names.
1184
1185         * scm/lily.scm (define-scheme-options): uniformize var names.
1186
1187         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1188         tuplets_ is non-empty before popping.
1189
1190 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
1191
1192         * lily/spanner.cc (find_broken_piece): 
1193         * lily/spacing-spanner.cc (get_columns): 
1194         * lily/source-file.cc (get_line): 
1195         * lily/simple-spacer.cc (get_column_description): 
1196         * lily/keyword.cc (lookup): 
1197         use the new binary search.
1198
1199         * flower/include/std-vector.hh: replace binary_search with
1200         a more STL-like version
1201
1202 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
1203
1204         * lily/tie-performer.cc: remove unused last_event_ property.
1205         (class Tie_performer): add now_tied_heads_ property for
1206         partially-tied heads.
1207         (acknowledge_audio_element): when adding an Audio_note, put the
1208         note in now_tied_heads_ if the audio note is partially tied.
1209         (stop_translation_timestep): always include entries in
1210         now_tied_heads_ in heads_to_tie_.
1211
1212         * lily/drum-note-performer.cc (process_music): look for tie-events
1213         in the articulations; pass to Audio_note constructor.
1214
1215         * lily/note-performer.cc (process_music): look for tie-events in
1216         the articulations; pass to Audio_note constructor.
1217
1218         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1219         constructor.
1220
1221         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1222         include initializer in constructor.
1223
1224 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
1225
1226         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1227         unless they are breakable. This fixes discrepancies between the forces
1228         calculated here and the forces calculated in get_line_configuration.
1229
1230         * lily/grob.cc (pure_relative_y_coordinate): fix some
1231         mis-estimation that was happening with piano staves.
1232
1233         * lily/constrained-breaking.cc (resize): don't choke if we get a
1234         measure that won't fit on a line.
1235         (combine_demerits): don't consider uniformity when ragged
1236
1237         * lily/page-spacing.cc (solve): why the f* were there two of these?
1238         (calc_subproblem): properly handle the case where a system is taller
1239         than the page.
1240
1241         * lily/system.cc (get_paper_system): ensure that all the permissions
1242         and penalties are passed to the paper systems.
1243
1244         * lily/page-breaking.cc (create_system_list): support system-count.
1245
1246         * scm/define-grobs.scm (pure-print-callbacks): add
1247         ly:script-interface::print
1248
1249         * lily/page-spacing.cc (min_page_count): fix calculation of min
1250         pages if we are ragged and there are non-zero springs.
1251
1252         * scm/layout-page-layout.scm: if the pure-height estimates are under
1253         the real height, allow space-systems to ignore padding if it is
1254         needed in order to fit the systems on one page
1255
1256         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1257         ragged properties
1258         (solve): fix performance problem. Make sure we always get at least
1259         one solution
1260
1261         * lily/page-breaking.cc (make_pages): include write-page-breaks
1262         and page-stencil
1263
1264         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1265
1266         * scm/define-grobs.scm: add the new slur-callback
1267         fix pure-relevant to not exclude grobs whose extent is already
1268         calculated
1269
1270         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1271         page breaker
1272
1273         * lily/slur.cc (pure_height): new callback to estimate the height
1274         of a slur
1275
1276 2006-09-02  Graham Percival  <gpermus@gmail.com>
1277
1278         * Documentation/user/invoking.itely: small update on
1279         MacOS X notes; thanks Trevor!
1280
1281 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1282
1283         * VERSION (MY_PATCH_LEVEL): release 2.9.17
1284
1285         * lily/lexer.ll: accept EOF in all states.
1286
1287         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1288
1289         * lily/source-file.cc (Source_file): always 0-terminate character
1290         array, to prevent Flex from barfing.
1291
1292         * lily/global-context.cc (get_output): robustness: don't crash if
1293         no Score context found.
1294
1295         * lily/include/book.hh (class Book): idem.
1296
1297         * lily/include/context-def.hh (struct Context_def): idem.
1298
1299         * lily/include/score.hh (class Score): don't derive from Input.
1300
1301         * lily/book.cc (Book): add a copy ctor. 
1302
1303         * buildscripts/output-distance.py (FileLink.calc_distance): count
1304         orphans in distance too.
1305
1306         * python/midi.c (midi_parse_track): robustness: don't read past
1307         end of string.
1308
1309         * ly/performer-init.ly: add Control_track_performer, move
1310         Tempo_performer and Time_signature_performer to Score.        
1311
1312         * lily/score-performer.cc (acknowledge_audio_elements): override
1313         from base class: add to audio-columns
1314
1315         * lily/control-track-performer.cc (add_text): new file: generate
1316         the control track.
1317
1318         * lily/performance.cc: move output_header_track to
1319         Control_track_performer ()
1320
1321         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1322
1323         * lily/include/midi-item.hh (class Midi_channel_item): insert
1324         class into hierarchy, for items that can have a channel setting. Dehungarify.
1325
1326         * lily/include/performer.hh (class Performer): remove
1327         play_element();  move functionality into announce/acknowledge.
1328
1329         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1330
1331         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1332         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
1333
1334 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
1335
1336         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1337         ambituses.
1338
1339         * lily/all-font-metrics.cc: remove TFM support.
1340
1341         * lily/include/tfm.hh: remove TFM support, TFM reader.
1342
1343         * lily/include/binary-source-file.hh: remove Binary_source_file.
1344
1345 2006-08-27  Graham Percival  <gpermus@gmail.com>
1346
1347         * Documentation/topdocs/NEWS.itely: add @c marker for
1348         stuff I've processed.
1349
1350         * Documentation/user/ various: info from NEWS.
1351
1352 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
1353
1354         * lily/paper-column-engraver.cc (finalize): Oops, this change
1355         should have gone in on 2006-08-23
1356
1357 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
1358
1359         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1360         quotes to quote arguments. Fixes Windows problem.
1361
1362         * python/lilylib.py (progress): idem
1363
1364 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1365
1366         * scripts/musicxml2ly.py: fix for importing
1367         minor key signatures from MusicXML.  (Phillip Kirlin)
1368
1369 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
1370
1371         * python/musicxml.py: 
1372         (Attributes.get_key_signature): now correctly retrieves mode from 
1373         MusicXML. 
1374
1375 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1376
1377         * lily/parser.yy (output_def_body): take ownership of identifier
1378         back to C++.
1379
1380         * Documentation/user/advanced-notation.itely (Metronome marks):
1381         update use of \tempo in \midi.
1382
1383         * VERSION: release 2.9.16
1384         
1385 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
1386
1387         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1388         web partially)
1389
1390 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1391
1392         * input/regression/tie-chord-partial.ly: clarify example.
1393
1394         * scm/define-music-properties.scm (all-music-properties): remove
1395         untied.
1396
1397         * ly/music-functions-init.ly: remove \untied.
1398
1399         * lily/tie-engraver.cc (struct Head_event_tuple): store both
1400         stream events and music events.
1401         (stop_translation_timestep): search acknowledged heads for
1402         tie-event.
1403
1404         * input/regression/tie-chord-partial.ly: new file.
1405
1406         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1407         for \char markup command.
1408
1409         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1410
1411         * scm/define-music-types.scm (music-descriptions): consistency:
1412         Use solo-{one,two}-event iso. solo-[12]-event.
1413
1414         * lily/part-combine-engraver.cc (process_music):
1415         Use solo-{one,two}-event iso. solo-[12]-event.
1416
1417         * ly/declarations-init.ly (partCombineListener): add Timing as
1418         alias
1419
1420         * flower/std-string.cc (string_copy): use copy ()
1421
1422         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1423
1424 2006-08-24  Graham Percival  <gpermus@gmail.com>
1425
1426         * Documentation/user/changing-defaults.itely, global.itely,
1427         lilypond-book.itely, page.itely: minor changes from mailist.
1428
1429 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1430
1431         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1432         snippet-map
1433
1434         * scm/define-context-properties.scm
1435         (translator-property-description): robustness: detect type errors
1436         in property definitions.
1437
1438         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1439         after getting it from SCM. 
1440
1441         * lily/smobs.cc (protect_smob): switch off fancy smob protection
1442         for now. 
1443
1444         * lily/include/performer.hh (class Performer): strip get_tempo()
1445         method.
1446
1447         * lily/midi-def.cc: strip file.
1448
1449         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1450
1451         * lily/include/context-def.hh (struct Context_def): use
1452         VIRTUAL_COPY_CONSTRUCTOR().
1453
1454         * lily/source-file.cc: smobification.
1455
1456         * lily/include/source-file.hh (class Source_file): smobify
1457         Source_file. Trim redundant members.
1458
1459         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1460         clones after creation. This plugs a huge memory leak.
1461
1462         * python/convertrules.py (FatalConversionError.sub_tempo):
1463         complete rule for \midi{ \tempo }
1464
1465         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1466
1467         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1468
1469 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
1470
1471         * input/regression/optimal-page-breaking-hstretch.ly: test for
1472         ragged-last-bottom also
1473
1474         * lily/paper-column-engraver.cc (finalize): make the end of a score
1475         breakable by default. This is to balance out a change in behaviour
1476         of the page-turn-breaker which no longer makes the end of a score
1477         breakable.
1478
1479         * lily/paper-book.cc (pages): set the systems_ once the pages are
1480         broken
1481
1482         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1483         Page_breaking interface.
1484
1485         * lily/page-breaking.cc (class Page_breaking): make the interface
1486         more consistent and provide abstractions for dealing with
1487         Line_divisions.
1488
1489         * lily/optimal-page-breaking.cc (solve): use a more straightforward
1490         algorithm. Use the new interface to Page_breaking.
1491
1492         * lily/page-spacing.cc: better support for ragged-bottom and
1493         ragged-last-bottom
1494
1495 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
1496
1497         * python/convertrules.py (conv): warning on \tempo{}
1498
1499         * ly/performer-init.ly: set tempoWholesPerMinute.
1500
1501         * ly/midi-init.ly: remove \midi
1502
1503         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1504         MIDI tempo.
1505
1506         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1507         tempoUnitDuration for determining what to print.
1508
1509         * lily/lyric-extender.cc: typo.
1510
1511         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1512
1513         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1514         function.
1515
1516         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1517
1518         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1519         eps-pad-boxes is set.
1520
1521         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1522
1523         * THANKS: update sponsors.
1524
1525         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1526
1527         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1528
1529         * input/regression/tie-chord-untied.ly: new file.
1530
1531         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1532
1533         * scm/define-music-properties.scm (all-music-properties): add
1534         'untied property.
1535
1536         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1537         than .ly.txt.
1538         (headertext_nopics): sanitize no-examples text.
1539
1540         * scm/page.scm (make-page-stencil): don't rely on extents of
1541         page-stencil. This fixes spurious space around .EPS files produced
1542         with the EPS backend.
1543
1544 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1545
1546         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1547
1548         * lily/hara-kiri-engraver.cc (process_music): remember
1549         keepAliveInterfaces after processing \set
1550
1551         * lily/lyric-extender.cc (print): support left/right-padding for
1552         extenders.
1553
1554         * scm/documentation-generate.scm (string-append): revert lilypond/
1555         path, doc why.
1556
1557 2006-08-20  Graham Percival  <gpermus@gmail.com>
1558
1559         * Documentation/user/lilypond.tely: clarification to
1560         license presentation (not to actual license).
1561
1562         * Documentation/user/basic-notation.itely,
1563         instrument-notation.itely: minor changes.
1564
1565         * input/ {regression, test}/+.ly: clarification to
1566         text (you can click on examples).  Thanks, Mats!
1567
1568         * input/manual/bar-lines.ly: adds ||: repeats.
1569
1570 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1571
1572         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
1573
1574         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1575
1576         * Documentation/user/lilypond.tely: strip lilypond/ from info
1577         links, rename to category LilyPond
1578
1579         * lily/pango-font.cc (description_string): new function.
1580
1581         * VERSION: release 2.9.15
1582
1583         * lily/spacing-engraver.cc (stop_translation_timestep): use
1584         Dscho's fix for spacing spanner. 
1585
1586         * scm/define-music-types.scm (music-descriptions): use
1587         apply-output-event for ApplyOutputEvent
1588
1589         * lily/output-property-engraver.cc (listen_apply_output): rename
1590         from listen_layout_instruction.
1591
1592         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1593         function protect()
1594
1595 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1596
1597         * scm/lily.scm (lilypond-all): option read-file-list: substitute
1598         commandline args with contains, split by \n.
1599
1600         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1601         write snippet-names file, call with -dread-file-list. Fixes
1602         command limitations on 64-bit systems.
1603
1604         * input/regression/stencil-color-rotation.ly: new file.
1605
1606         * lily/include/translator.hh (struct Acknowledge_information):
1607         revert: don't use Protected_scm in global objects, as GUILE can't
1608         handle gc_unprotect from automated destructors on MacOS X.
1609  
1610         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1611         color, not the original stencil. Fixes combinations of
1612         color/transparency/rotation. 
1613
1614         * scripts/lilypond-book.py (main): add --formats=eps for
1615         texinfo/latex.
1616
1617         * lily/spacing-engraver.cc (stop_translation_timestep): don't
1618         crash if spacing_ is nonexistent.
1619
1620 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
1621
1622         * scripts/lilypond-book.py (output): Remove obsolete(!?)
1623         \catcode`\@=12 in the LaTeX output.
1624
1625 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1626
1627         * scm/define-music-types.scm (music-descriptions):
1628         use sustain-event iso. sustain-pedal-event.
1629
1630 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
1631
1632         * scripts/convert-ly.py: honour the -n command-line switch
1633
1634 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1635
1636         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1637         break specification.
1638
1639 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
1640
1641         * Documentation/user: convert-ly the user manual
1642
1643 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1644
1645         * stepmake/aclocal.m4: version check patch (thanks MWD)
1646
1647         * ly/music-functions-init.ly: robustness. Don't crash if
1648         currentBarNumber is not a number.
1649
1650         * VERSION (PATCH_LEVEL): bump.
1651
1652 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1653
1654         * stepmake/aclocal.m4: better version check; handle fooX.Y
1655         binaries too.
1656
1657         * ly/performer-init.ly: instrument name fixup.
1658
1659         * input/manual/chord-names-jazz.ly (banterProperties):
1660         instrumentName update
1661
1662         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1663
1664         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1665
1666         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1667         function. Use hash tables to check membership.
1668
1669         * lily/general-scheme.cc (LY_DEFINE): new function.
1670
1671         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1672
1673         * lily/include/translator.hh (struct Acknowledge_information): add
1674         Protected_scm
1675
1676         * ly/music-functions-init.ly: change name to BreathingEvent
1677
1678         * input/regression/*.ly: apply it.
1679
1680         * python/convertrules.py (conv): better instrumentName conversion
1681         rule.
1682
1683         * scm/define-music-types.scm (music-descriptions): add
1684         line-break-event to LineBreakEvent music
1685
1686         * lily/music.cc (to_event): don't crash if music type not set.
1687
1688         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1689         spacing not set.
1690
1691         * lily/spacing-engraver.cc (stop_translation_timestep): set
1692         spacing for proportional notation too.
1693
1694         * scm/translation-functions.scm (format-bass-figure): inspect
1695         stream-event.
1696
1697         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1698
1699 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1700
1701         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1702
1703         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1704
1705         * scm/layout-page-layout.scm (make-page-from-systems): new function
1706         (optimal-page-breaks): use the new page-breaking calling convention
1707
1708         * scm/define-context-properties.scm (all-user-translation-properties):
1709         add revokePageTurns
1710
1711         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1712         revokePageTurns  functionality. If there is a special barline within
1713         the breakable region, break there instead of at the end of the region.
1714
1715         * lily/paper-book.cc (pages): use the new page-breaking calling
1716         convention
1717
1718 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1719
1720         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1721
1722         * scripts/lilypond-book.py: insert \sourcefileline command in
1723         output, so lilypond error messages refer to the spot in the
1724         original .lytex / .itely sourcefile.
1725
1726 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1727
1728         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1729         space to next column for distance to fixed col.
1730
1731         * VERSION (PACKAGE_NAME): release 2.9.14
1732
1733         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1734         if no accidental.
1735
1736         * lily/accidental-engraver.cc (process_acknowledged): don't create
1737         accidental for trill span event. This fixes spurious accidentals
1738         on trills.
1739
1740 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1741
1742         * scm/define-grob-properties.scm (all-user-grob-properties):
1743         Clarify documentation of side-axis and direction. Thanks to Paul
1744         for the inspiration.
1745
1746         * lily/bar-line.cc: Add documentation for "||:" also in the
1747         interface documentation.
1748
1749 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1750
1751         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1752
1753         * lily/paper-column.cc (set_system): new function.
1754
1755         * lily/spacing-engraver.cc (stop_translation_timestep): store
1756         SpacingSpanner refs in Paper_column.
1757
1758         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1759         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1760
1761 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1762
1763         * lily/beam-engraver.cc (listen_beam): add method for
1764         Grace_beam_engraver too.
1765
1766 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1767
1768         * python/convertrules.py: Fix indentation bug that broke
1769         conversion of files older than 1.3.117.
1770         Fix escape error in the description for 2.9.6.
1771
1772 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1773
1774         * lily/*-engraver.cc: convert all try_music functions to listen_*
1775         functions.
1776
1777         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1778         enums to represent pedal types, and calculate more data statically.
1779
1780         * scm/part-combiner.scm (recording-group-emulate): create a
1781         softcoded substitute for recording-group-engraver.cc.
1782
1783         * lily/music.cc: make a common transpose function for events and
1784         music
1785
1786         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1787         ManualMelismaEvent, and obsoletes Melisma_translator.
1788
1789 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1790
1791         * input/test/instrument-name-align.ly: update version.
1792
1793 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1794
1795         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1796         Doc the --pdf flag to lilypond-book.
1797
1798 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1799
1800         * Documentation/topdocs/NEWS.tely (Top): add description.
1801
1802         * input/regression/tuplet-full-length-note.ly: add file.
1803
1804         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1805         always store axis group.
1806
1807 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1808
1809         * input/regression/instrument-switch.ly: new file.
1810
1811         * lily/instrument-switch-engraver.cc (process_music): new file.
1812
1813         * ly/engraver-init.ly: add Instrument_switch_engraver
1814
1815         * ly/music-functions-init.ly: \instrumentSwitch
1816
1817         * scm/define-context-properties.scm
1818         (all-user-translation-properties): add instrumentCueName
1819
1820         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1821
1822 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1823
1824         * ly/music-functions-init.ly: music function \transposition.
1825
1826         * lily/parser.yy (command_element): softcode \transposition.
1827
1828         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1829         (process_music): oops.
1830
1831         * lily/instrument-name-engraver.cc (start_spanner): new
1832         function. Create spanner when property changes.
1833         (stop_spanner): new function.
1834
1835         * python/convertrules.py (conv): add rule.
1836
1837         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1838         shortInstrumentName iso. instr.
1839
1840         * scm/output-ps.scm (dashed-line): add phase argument to
1841         dashed-line.
1842
1843         * lily/bar-line.cc (dashed_bar_line): new function.
1844         (compound_barline): support \bar "dashed". 
1845
1846         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1847         --output=DIR to DIR/BASE if it is a dir. 
1848
1849         * flower/file-name.cc (file_part): new function
1850         (dir_part): new function
1851
1852         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1853
1854         * DEDICATION: update
1855
1856 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1857
1858         * lily/instrument-name-engraver.cc: formatting.
1859
1860         * python/convertrules.py (conv): bugfix for \epsfile.
1861
1862 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1863
1864         * lily/grob.cc:
1865         
1866         * lily/gourlay-breaking.cc: Oops, these should have been included
1867         in my last commit
1868
1869 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1870
1871         * scripts/*.py (program_name): cleanup relocation snippets.
1872
1873         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1874
1875 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1876
1877         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1878         page-breakable by default
1879
1880         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1881         correctly calculated for a single-system page
1882
1883         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1884         bigger than the second number
1885
1886         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1887         acknowledge that we aren't satisfying constraints)
1888
1889         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1890         non-Items
1891
1892         * lily/grob.cc (pure_height): add minimum-Y-extent
1893
1894         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1895         ragged
1896
1897         * lily/constrained-breaking.cc: convert code to use new Matrix class
1898         (get_best_solution): new function
1899
1900         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1901         is a page with no systems
1902
1903 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1904
1905         * VERSION (PACKAGE_NAME): release 2.9.13
1906
1907         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1908         assignment.
1909
1910 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1911
1912         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1913
1914         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1915         function.
1916
1917         * scm/define-grob-properties.scm (all-user-grob-properties):
1918         remove grace-space-factor.
1919
1920         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1921         grace-spacing-interface
1922         (spacing-options-interface): add.
1923
1924         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1925
1926         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1927
1928         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1929         GraceSpacing object.
1930
1931         * lily/note-spacing.cc: fix prop list formatting
1932
1933         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1934         beaming for grace notes too.
1935
1936         * input/regression/spacing-grace.ly: update.
1937
1938         * lily/grace-spacing-engraver.cc: new file.
1939
1940         * lily/spacing-spanner.cc: add strict-grace-spacing.
1941
1942 2006-07-20  Graham Percival  <gpermus@gmail.com>
1943
1944         * lily/parser.yy: compile fix.
1945
1946 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1947
1948         * scm/define-grobs.scm (all-grob-descriptions): typo.
1949
1950         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1951         .eps extension from includegraphics.
1952
1953         * scripts/lilypond-book.py (main): add support for --pdf. 
1954
1955         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1956         callback to compute common shortest duration.
1957         (set_springs): typo.
1958
1959         * scm/define-grob-properties.scm (all-user-grob-properties): add
1960         strict-grace-spacing.
1961
1962         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1963         support float_grace_columns_.
1964
1965         * lily/spacing-options.cc (init_from_grob): new file.
1966
1967         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1968
1969         * input/regression/spacing-loose-grace.ly: new file.
1970
1971         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1972
1973         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1974         tupletFullLengthNote too. Choose right bound depending on value.
1975
1976         * input/regression/tuplet-full-length-note.ly: new file.
1977
1978 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1979
1980         * lily/*-performer.cc: Converted try_music to listen_*
1981
1982         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1983         as a stream-event internally. Introduce event_cause (), deprecate
1984         music_cause ().
1985
1986         * scm/define-music-types.scm: Removed BusyPlayingEvent
1987         
1988 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1989
1990         * Documentation/user/advanced-notation.itely (Font selection):
1991         Document how to get a list of available fonts using 'lilypond
1992         -dshow-available-fonts blabla'.
1993
1994 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1995
1996         * GNUmakefile.in: filter lily-XXX.pdf files.
1997
1998         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1999
2000         * scm/define-grob-properties.scm (all-internal-grob-properties):
2001         remove delta-pitch. Use delta-position everywhere.
2002
2003         * scm/output-lib.scm (fall::print): use new order.
2004
2005         * scm/output-ps.scm (path): reorder arguments.
2006
2007         * scm/output-svg.scm (path): support for path primitive.
2008
2009         * input/regression/bend-after.ly: new file.
2010
2011         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2012         recipe for eps -> pdf conversion.
2013
2014 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
2015
2016         * lily/parser.yy, lily/lexer.ll: added some simplifications by
2017         Angelo Contardi.
2018
2019 2006-07-19  Graham Percival  <gpermus@gmail.com>
2020
2021         * input/manual/screech-boink.ly: moved to here.
2022
2023         * input/screech-boink.ly: deleted.
2024
2025         * scm/define-grob-properties.scm: clarify doc string.
2026
2027 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2028
2029         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2030
2031         * scm/output-ps.scm (path): define path.
2032
2033         * scm/define-stencil-commands.scm
2034         (ly:register-stencil-expression): add path.
2035
2036         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2037
2038         * ly/engraver-init.ly: add Fall_engraver
2039
2040         * lily/parser.yy (music_function_event): allow musicfunction
2041         without music arg as music_function_event.
2042
2043         * lily/grob-scheme.cc (LY_DEFINE):
2044         ly:grob-robust-relative-extent. New function.
2045
2046         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2047
2048         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2049
2050         * scm/output-lib.scm (fall::print): new function
2051
2052         * lily/fall-engraver.cc (stop_fall): new file.
2053
2054         * ly/music-functions-init.ly: alphabetise.
2055
2056         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2057         base.
2058
2059 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2060
2061         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2062
2063         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2064         doc pdftex usage.
2065
2066         * lily/translator-group.cc (connect_to_context): non const error message.
2067
2068         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2069
2070         * scm/paper.scm (internal-set-paper-size): define landscape to #f
2071         if unset.
2072
2073         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
2074
2075         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2076
2077         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2078         systems.pdftex too.
2079
2080         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2081
2082         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2083
2084         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2085
2086         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2087
2088         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2089
2090         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
2091
2092 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2093
2094         * scm/layout-page-layout.scm: Define module, tidy code, use more
2095         functions iso. a single big one.
2096
2097         * scm/layout-page-dump.scm: move page dump functions used in two
2098         pass spacing to this file. Define module.
2099
2100         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2101          (separate module)
2102
2103         * ly/paper-defaults.ly: use module layout-page-layout.
2104
2105 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
2106
2107         * lily/music.cc: Revised MusicEvent event class. It now contains
2108         event data directly instead of encapsulating it in music. The
2109         previously used class is renamed to OldMusicEvent.
2110
2111         * lily/stream-event.cc: Stream events are now probs.
2112         
2113         * lily/translator-group.cc, lily/translator.cc: Translators can
2114         now listen directly to stream events, by using macros
2115         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2116
2117         * lily/arpeggio-engraver.cc: Converted to use new event system
2118
2119         * THANKS: Corrected spelling mistake.
2120
2121 2006-07-12  Graham Percival  <gpermus@gmail.com>
2122
2123         * Documentation/user/SConscript, make/lilypond-vars.make,
2124         input/GNUmakefile: doc build looks in input/manual instead
2125         of input/test/
2126
2127         * input/manual/ GNUmakefile, SConscript: build files for
2128         input/manual/
2129
2130         * input/test/ various: some files moved to input/manual/ 
2131
2132         * Documentation/user/basic-notation.itely: small updates;
2133         thanks Kieren and Charles!
2134
2135 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2136
2137         * VERSION (PACKAGE_NAME): release 2.9.11
2138
2139         * Documentation/topdocs/NEWS.tely (Top): update prop value 
2140
2141         * Documentation/user/basic-notation.itely (Tuplets): new property
2142         value.
2143
2144 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2145
2146         * python/convertrules.py (conv): tweaks. 
2147
2148         * VERSION (PATCH_LEVEL): bump version.
2149
2150         * python/convertrules.py (conv): add rule for
2151         tupletNumberFormatFunction.
2152
2153         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2154         tupletNumberFormatFunction.
2155
2156         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2157         text through 'text callback.
2158
2159         * lily/time-scaled-music-iterator.cc (construct_children): copy
2160         tweaks generated events.
2161
2162         * scm/define-context-properties.scm
2163         (all-user-translation-properties): remove tupletNumberFormatFunction
2164
2165         * lily/tuplet-engraver.cc (process_music): don't read
2166         tupletNumberFormatFunction
2167
2168         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2169         function.
2170
2171 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
2172
2173         * lily/global-context-scheme.cc: Separated ly:run-translator into
2174         smaller pieces.
2175
2176         * lily/score-engraver.cc, lily/score-performer.cc,
2177         scm/define-context-properties.scm: Make paper/midi output
2178         accessable as a context property.
2179
2180         * lily/score-translator.cc, lily/score-context.cc: Removed.
2181
2182 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
2183
2184         * scm/ps-to-png.scm (Module): 
2185         * scm/framework-tex.scm (Module): 
2186         * scm/framework-ps.scm (Module): 
2187         * scm/backend-library.scm (Module): 
2188         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2189         "dDEVICEHEIGHTPOINTS".
2190
2191 2006-07-04  Graham Percival  <gpermus@gmail.com>
2192
2193         * Documentation/user/ various: general improvements to
2194         "working with lilypond files" section.
2195
2196 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
2197
2198         * lily/sequential-iterator.cc: Change the default get_music_list
2199         to read elements-callback music property
2200
2201         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2202         processing of multimeasure rests. Softcoded
2203         sequential-music-iterator.
2204
2205         * lily/sequential-music-iterator.cc: Removed.
2206
2207 2006-06-28  Graham Percival  <gpermus@gmail.com>
2208
2209         * Documentation/user/basic-notation.itely: clarify \repeatTie.
2210
2211 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
2212
2213         * lily/parser.yy: Wrap non-post-events in EventChords before
2214         assigning them to identifiers.
2215
2216 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
2217
2218         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2219         gives correct vertical placement of \bar ":" in all staff
2220         sizes. Thanks Martial!
2221
2222 2006-06-26  Graham Percival  <gpermus@gmail.com>
2223
2224         * Documentation/user/invoking.itely : minor update from mailist.
2225
2226 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
2227
2228         * lily/ various: Introduce stream events of types Prepare,
2229         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2230         ChangeContext, SetProperty, RevertProperty, Override and Revert.
2231
2232         * lily/global-context*.cc: Time is now -inf before iteration
2233         starts.
2234
2235         * lily/include/context.hh: Removed unique_, init_
2236
2237         * Documentation/topdocs/NEWS: Make the feathered beam example
2238         avoid triggering a bug.
2239
2240 2006-06-24  Graham Percival  <gpermus@gmail.com>
2241
2242         * Documentation/user/ various: small additions from mailist.
2243
2244 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
2245
2246         * ly/performer-init.ly: Add some missing links in the context
2247         hierarchy for MIDI output. There are probably some more missing!
2248
2249 2006-06-21  Graham Percival  <gpermus@gmail.com>
2250
2251         * Documentation/user/ various: minor spelling fixes;
2252         thanks Dave Luttinen!
2253
2254         * Documentation/user/ various: small clarifications;
2255         thanks Anthony Youngman!
2256
2257 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2258
2259         * po/fr.po: add \n appropriately.
2260
2261         * lily/lexer.ll: remove ? from version-seen?  
2262
2263 2006-06-19  John Mandereau  <john.mandereau@free.fr>
2264
2265         * po/fr.po; update translation, by Jean-Charles Malahieude and
2266         John Mandereau.
2267
2268 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2269
2270         * THANKS: add Markus Schneider.
2271
2272         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2273         Staff_symbol_engraver
2274
2275         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2276         replace staff_engraver
2277
2278         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2279         spanner.
2280
2281         * lily/staff-collecting-engraver.cc
2282         (acknowledge_end_staff_symbol): new function
2283
2284         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
2285
2286         * lily/staff-collecting-engraver.cc
2287         (acknowledge_end_staff_symbol): new function.
2288
2289         * lily/main.cc: switch on relocation by default.
2290
2291 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2292
2293         * lily/spacing-spanner.cc (musical_column_spacing): set
2294         compound_fixed_note_space to 0.0. Document why.
2295
2296         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2297         range of inverse_hooke_
2298         (Simple_spacer): init completely.
2299         (fits): const
2300         (get_line_configuration): don't use cols.resize(); it introduces
2301         initialized data.
2302
2303         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
2304
2305         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2306
2307         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2308         try. Divide by beatlength.
2309
2310         * input/regression/beaming-ternary-metrum.ly: update doc.
2311         add beatLength hack.
2312
2313         * scm/music-functions.scm (make-time-signature-set): add
2314         standard-beat-grouping. 
2315
2316 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2317
2318         * input/regression/tie-whole.ly: new file.
2319
2320         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2321         cross center of note head in case of invisible stem. 
2322
2323 2006-06-16  Graham Percival  <gpermus@gmail.com>
2324
2325         * Documentation/user/ various: small fixes from mailist.
2326
2327 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2328
2329         * lily/breathing-sign.cc (offset_callback): idem.
2330
2331         * lily/align-interface.cc (align_to_fixed_distance): remove
2332         hungarian suffix.
2333
2334         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2335         x%2==0.
2336
2337 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2338
2339         * VERSION (PACKAGE_NAME): release 2.9.9
2340
2341         * ly/lilypond-book-preamble.ly: add \version
2342
2343 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
2344
2345         * scripts/lilypond-book.py (PREAMBLE_LY): include
2346         lilypond-book-preamble.ly
2347
2348         * lily/stem.cc (get_beaming): return max of 0 and
2349         scm_ilength. Fixes slurring from/to beams.
2350
2351         * ly/lilypond-book-preamble.ly: new file.
2352
2353         * lily/slur.cc: add inspect-index feature.
2354
2355 2006-06-13  Graham Percival  <gpermus@gmail.com>
2356
2357         * Documentation/user/tutorial.itely: trivial fix.
2358
2359 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
2360
2361         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2362         all non-event music in the parser via MAKE_SYNTAX.
2363
2364         * lily/parser-scheme.cc: Add ly:parser-error function
2365
2366         * scm/paper.scm: fix typo
2367
2368 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
2369
2370         * THANKS: add RT.
2371
2372         * lily/font-config.cc (init_fontconfig): add warning if cache_file
2373         is null.
2374
2375         * buildscripts/output-distance.py (test_compare_signatures):
2376         timing routines.
2377         (read_signature_file): use new signature format.
2378
2379         * scm/stencil.scm (write-system-signature): simpler signature
2380         format.
2381
2382         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2383         for beamed case. 
2384
2385         * lily/note-spacing.cc (stem_dir_correction): don't inspect
2386         stem_end_position, but estimate instead. 
2387
2388         * lily/tuplet-bracket.cc (calc_positions): look at
2389         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2390         brackets narrower than beams. 
2391
2392         * lily/lexer.ll: set version-seen? even if version is
2393         INVALID. 
2394
2395         * lily/rest.cc (y_offset_callback): bugfix: decide position
2396         override based on scm_is_number(). Fixes \rest on center staff
2397         line. 
2398
2399         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2400         patterns for 16th triplets.
2401
2402 2006-06-10  Graham Percival  <gpermus@gmail.com>
2403
2404         * Documentation/user/ page.itely, global.itely: editing
2405         and reorg.
2406
2407         * Documentation/user/ various: findex -> funindex.
2408
2409 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
2410
2411         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2412         insert extra tuplet events.
2413
2414 2006-06-10  Graham Percival  <gpermus@gmail.com>
2415
2416         * Documentation/user/programming-interfaces.itely: add
2417         info from NEWS.
2418
2419         * python/convertrules.py: add annotatefoo -> annotate-foo
2420         rules.
2421
2422         * Documentation/user/global.itely: start editing.
2423
2424         * Documentation/user/page.itely: major editing, new spacing
2425         docs.
2426
2427 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
2428
2429         * scm/define-markup-commands.scm (wordwrap-markups): use
2430         output-def 'line-width if undefined.
2431
2432         * HACKING: trim outdated info.
2433
2434 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
2435
2436         * scm/define-grobs.scm (all-grob-descriptions): Add
2437         line-spanner-interface to all grobs that already have
2438         text-spanner-interface or dynamic-text-spanner-interface
2439
2440         * scm/page.scm: Rename annotate{headers,systems,page}->
2441         annotate-*
2442
2443         * input/regression/page-spacing.ly,
2444         input/regression/page-layout-manual-position.ly: idem
2445
2446 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2447
2448         * lily/line-spanner.cc: cleanup property list.
2449
2450         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2451         generator expressions (2.3 compat). 
2452
2453 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
2454
2455         * lily/vertical-align-engraver.cc: Make sure that the
2456         align{Above,Below}Context properties are included in the automatic
2457         documentation.
2458
2459 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
2460
2461         * scm/paper-system.scm (paper-system-annotate): also annotate the
2462         estimated pure-Y-extent
2463
2464         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2465
2466         * lily/system.cc (break_into_pieces): set the estimated height
2467         of each child system
2468
2469         * lily/stem.cc (pure_height): new pure-Y-extent callback
2470
2471         * lily/staff-symbol-referencer.cc (callback): don't destroy
2472         the staff-position property
2473
2474         * lily/hara-kiri-group-spanner.cc (request_suicide): split
2475         consider_suicide into two functions
2476
2477         * lily/constrained-breaking.cc (resize): use the new pure
2478         callbacks to estimate the height of a system
2479
2480         * lily/axis-group-interface.cc (pure_group_height): new
2481         side-effect-free VerticalAxisGroup height-callback
2482
2483         * lily/align-interface.cc (get_extents_aligned_translates):
2484         split align_elements_to_extents into two functions
2485         (get_pure_child_y_translation): new function
2486
2487         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2488
2489         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2490
2491         * lily/paper-score.cc: cache break_indices and columns
2492
2493         * lily/side-position-interface.cc: new pure-Y-extent callbacks
2494         
2495 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2496
2497         * lily/font-config.cc (init_fontconfig): do the init if
2498         cache_file, but don't look at cache_file.
2499
2500         * input/regression/quote-tie.ly: new file.
2501
2502         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2503         to Head_event_tuple, so we deal gracefully with ties on
2504         cue-endings.
2505
2506         * lily/pango-font.cc (pango_item_string_stencil): type correctness
2507         for FcChar8*
2508
2509 2006-06-08  Graham Percival  <gpermus@gmail.com>
2510
2511         * input/test/ smart-transpose.ly, reverse-music.ly:
2512         \applyMusic to music functions update, thanks Michael!
2513
2514 2006-06-07  Graham Percival  <gpermus@gmail.com>
2515
2516         * input/test/ add-staccato.ly, add-text-script.ly,
2517         unfold-all-repeats.ly, music-box.ly: \applyMusic to
2518         music functions update, thanks to Michael Meixner.
2519
2520         * Documentation/user/music-glossary.tely: small fix
2521         from Francisco.
2522
2523         * Documentation/user/ various: minor additions from mailist.
2524
2525         * Documentation/user/lilypond.tely, basic-notation.itely:
2526         small test of @funindex.  (works here)
2527
2528         * input/test/font-table.ly: reduce size to partially
2529         de-ugly version in manual.
2530
2531         * Documentation/user/page.itely: new file (split former
2532         "global issues" into "page settings" and "non-musical
2533         output".
2534
2535         * Documentation/user/ various: fix @ref{}s to match
2536         new chapter names (above).
2537
2538 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2539
2540         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2541
2542 2006-06-06  Graham Percival  <gpermus@gmail.com>
2543
2544         * Documentation/user/advanced-notation.itely: add example
2545         for segno/coda on barline.
2546
2547         * tex/texinfo.tex: merge from upstream.
2548
2549 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2550
2551         * scripts/lilypond-book.py (process_snippets): Argument fix.
2552
2553         * SConstruct:
2554         * buildscripts/builder.py:
2555         * lily/SConscript: 
2556         * mf/SConscript: 
2557         * Documentation/user/SConscript:  More SCons fixes.
2558
2559 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2560
2561         * lily/font-config.cc (init_fontconfig): Only initialize if
2562         global cache_file is found.
2563
2564 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
2565
2566         * ly/music-functions-init.ly: Updated \overrideProperty to use the
2567         new \applyOutput.
2568
2569 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2570
2571         * VERSION (PACKAGE_NAME): release 2.9.8
2572
2573         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2574         function. Delay ledger modifying ledgered grobs to
2575         stop_translation_timestep(), to ensure that we're ledgering
2576         according to the new spanner.
2577         (acknowledge_staff_symbol): don't check for non-NULL
2578         staff_sym->get_bound()
2579
2580         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2581         creation.
2582
2583         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2584         pictures too.
2585
2586         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2587         directly from srcdir/stepmake/aclocal.m4
2588         
2589         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2590         disting MISC files.
2591
2592         * lily/simple-spacer.cc (get_column_desc): desc -> description.
2593
2594 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2595
2596         * lily/simple-spacer.cc (get_line_configuration): add
2597         keep-inside-line rods
2598         (struct Column_desc): add constructor
2599         (struct Rod_desc): add constructor
2600         (get_line_forces): check for forced page breaks here too
2601
2602         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2603         support/elements cycles between InstrumentNames and AxisGroups
2604
2605 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2606
2607         * config.make.in (METAFONT): remove MAKEINFO_VERSION
2608
2609         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2610         make-txt-files target.
2611
2612         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2613         make-txt-files target.
2614
2615         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2616
2617         * stepmake/stepmake/generic-vars.make (distdir): create dist in
2618         top-build-dir.
2619
2620 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
2621
2622         * Documentation/user/instrument-notation.itely,
2623         input/regression/breathing-sign-ancient.ly,
2624         input/test/divisiones.ly: Removed redundant property settings for
2625         vaticana contexts.
2626
2627         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2628         fix lyrics alignment problems.  They are implemented now as scheme
2629         functions that add the appropriate unicode char to the first lyric
2630         event rather than adding a separate lyric event.  Minor edit of
2631         comments.
2632
2633 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2634
2635         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2636         pollute src dir with built .txt files, but install directly from
2637         Documentation/topdocs/out/
2638
2639         * buildscripts/output-distance.py
2640         (ComparisonData.create_html_result_page): put version/directories
2641         in table header.
2642
2643         * Documentation/topdocs/NEWS.tely (Top): document spacing section
2644         feature.
2645
2646         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2647         Patch by Karl Hammar
2648         
2649         * buildscripts/readlink.py: add  file.
2650         Patch by Karl Hammar
2651
2652 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2653
2654         * lily/tuplet-number.cc (print): prevent stencil from being
2655         garbage collected.
2656
2657 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2658
2659         * scm/stencil.scm (write-system-signature): explicitly 
2660         -well, superfluously- close output port.
2661
2662         * buildscripts/output-distance.py (main): oops. Add extra argument.
2663
2664 2006-06-05  Graham Percival  <gpermus@gmail.com>
2665
2666         * Documentation/user/music-glossary.tely: clarified example
2667         from Francisco Vila, thanks!
2668
2669 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2670
2671         * input/regression/spacing-section.ly: new file.
2672
2673         * lily/input.cc (programming_error): new function.
2674
2675         * lily/spacing-engraver.cc (try_music): new function. Accept
2676         spacing-section-event
2677
2678         * lily/spacing-spanner.cc (set_springs): take slices of all
2679         columns for spacing.
2680
2681         * lily/include/paper-column.hh (class Paper_column): add
2682         Paper_column::compare.
2683
2684         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2685
2686         * scm/define-music-types.scm (music-descriptions): add
2687         SpacingSectionEvent
2688
2689         * lily/music-iterator.cc (report_event): use programming_error for
2690         sending non-event error.
2691
2692         * lily/input.cc (programming_error): new function
2693
2694         * buildscripts/output-distance.py (main): use compare-XXX for
2695         compare files.
2696         (main): --threshold option, default at 0.30
2697
2698         * output-distance.py (main): add --threshold option.
2699
2700 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2701
2702         * scm/paper-system.scm (paper-system-annotate): fix problem when
2703         annotating an empty system
2704
2705 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2706
2707         * GNUmakefile.in: reinstate old web tar/copying.
2708
2709 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2710
2711         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2712         nothing changes. (Erik S) 
2713
2714         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2715         count. (Erik S)
2716
2717 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2718
2719         * scm/define-markup-commands.scm (whiteout): do not force
2720         foreground color of argument markup to black.
2721
2722         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2723         the left of the arrow, instead of below the arrow name, so that,
2724         when two little arrows are vertically stacked, their dimensions
2725         and name should not overlap. Add a color key parameter.
2726
2727         * scm/paper-system.scm (paper-system-annotate): Annotate
2728         next-space+next-padding instead of next-space. Annotate space
2729         between next-padding and next-space+padding, respectively, and
2730         following system extent and refpoint-Y-extent. Use colors.
2731
2732         * scm/page.scm (annotate-page): translate annotations slightly to
2733         the right.
2734
2735 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2736
2737         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2738         fix for x-staff slurs. Thanks Joe!
2739
2740         * buildscripts/output-distance.py
2741         (SystemLink.output_expression_change_count): keep track of changed
2742         details, and dump in details html page.
2743  
2744         * input/regression/figured-bass-staff.ly: add note about setting
2745         properties in Staff context.
2746
2747         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2748         add slurs and ties to support too.
2749
2750         * buildscripts/output-distance.py (main): set dest_dir
2751         argument. Add --max-count option.
2752
2753 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2754
2755         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2756         shortcuts for special unicode chars that are useful in chant
2757         notation.  Revised exisiting and added new comments.
2758
2759 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2760
2761         * make/mutopia-rules.make: remove duplicate recipe.
2762
2763 2006-06-02  Werner Lemberg  <wl@gnu.org>
2764
2765         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2766         Add support for U+0132 (IJ) and U+0133 (ij).
2767
2768 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2769
2770         * buildscripts/output-distance.py (FileLink): new class. collect
2771         info systems from one .ly file. 
2772         (FileLink.link_files_for_html): further tweaks.
2773
2774 2006-06-02  Graham Percival  <gpermus@gmail.com>
2775
2776         * tex/texinfo.tex: partial fix for @funindex.
2777
2778         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2779         break anything).
2780
2781 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2782
2783         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2784
2785         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2786         @example too. Backportme.
2787
2788 2006-06-02  Graham Percival  <gpermus@gmail.com>
2789
2790         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2791         from Werner Lemberg.
2792
2793 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2794
2795         * Documentation/user/music-glossary.tely: additional spanish
2796         updates and a lyrics fix in an example.
2797
2798 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2799
2800         * scm/define-grob-properties.scm: Previous patch contained
2801         spurious line from another patch not yet committed.  Fixed.
2802
2803         * scm/define-grob-properties.scm: Add missing doc strings for
2804         ancient notation.
2805
2806 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2807
2808         * buildscripts/output-distance.py
2809         (ComparisonData.write_text_result_page): separate the scores, sort
2810         by geo_score.
2811
2812         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2813         system signatures.
2814
2815         * buildscripts/output-distance.py (me_path): use argv[0] for
2816         sys.path extension
2817         (ComparisonData.img_cell): use colored borders.
2818
2819         * scm/stencil.scm (write-system-signature): escape newlines too.
2820         (write-system-signature): use (1,-1) interval for empty interval
2821
2822 2006-01-01  Graham Percival  <gpermus@gmail.com>
2823
2824         * Documentation/user/music-glossary.tely: Spanish updates
2825         from Francisco Vila.
2826
2827         * Documentation/user/lilypond-book.itely: addition from
2828         Vaclav Smilauer.
2829
2830         * Documentation/user/ various: edits, small additions
2831         from mailist, etc.
2832
2833 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2834
2835         * GNUmakefile.in (tree-lib-prefix-current):
2836         (tree-share-prefix-current): Use version number in tree, add
2837         `current' symlinks.
2838
2839 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2840
2841         * GNUmakefile.in: write VERSION, again.
2842
2843         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2844         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2845
2846         * stepmake/aclocal.m4: robuster version detection.
2847
2848         * buildscripts/output-distance.py
2849         (ComparisonData.create_html_result_page): copy only if file
2850         exists, fixup src paths.
2851
2852         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2853
2854 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2855
2856         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2857         Another datarootdir reto.
2858
2859         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2860         available.  This should be moved to postinstall-lilypond-doc.
2861
2862 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2863
2864         * GNUmakefile.in: simplify local-WWW-post. 
2865         remove -type l from find.
2866
2867         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2868         fixes. Don't follow symlinks.
2869         (ComparisonData.create_html_result_page): remove previous results.
2870         insert ../python in path.
2871
2872         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2873
2874 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2875
2876         * config.make.in (datadir): Add datarootdir to silence autoconf.
2877
2878         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2879
2880 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2881
2882         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2883
2884         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2885         slash beams too wide.
2886
2887 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2888
2889         * VERSION: release 2.9.7
2890         
2891 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2892
2893         * lily/relocate.cc (read_relocation_dir): Do not blindly
2894         dereference DIR.
2895
2896 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2897
2898         * lily/parser.yy: replace THIS by PARSER
2899
2900         * Documentation/index.html.in: add link to test-results.html page.
2901
2902         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2903
2904         * scm/translation-functions.scm (format-bass-figure): translate
2905         digits over 10 to the left
2906
2907         * scm/define-markup-commands.scm (translate-scaled): new markup.
2908
2909         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2910         7 glyph. 
2911
2912         * ly/engraver-init.ly: add Figured_bass_engraver
2913
2914         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2915
2916         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2917
2918         * lily/score-engraver.cc (announce_grob): only note START announces.
2919
2920         * lily/include/engraver-group.hh (Translator_group):
2921         acknowledge_hash_table_ is now drul.
2922
2923         * lily/engraver.cc (announce_end_grob): new method.
2924
2925         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2926
2927         * lily/translator-dispatch-list.cc (create): take start_end argument.
2928
2929         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2930         acknowledge_static_array_ to drul
2931
2932         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2933
2934         * scm/define-grob-interfaces.scm
2935         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2936
2937         * scm/define-grobs.scm (all-grob-descriptions): add
2938         BassFigureAlignmentPositioning
2939
2940         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2941         number stays up to date. Backportme.
2942
2943 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2944
2945         * Documentation/user/basic-notation.itely (Bar lines): Document
2946         the "||:" bar type. 
2947
2948 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2949
2950         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2951
2952         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2953         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2954         build.
2955
2956         * Resurrect `scons lily' build.
2957
2958         * SConstruct (symlink_tree): Bugfix: link
2959         music-drawing-routines.ps to file iso directory.
2960
2961         * lily/SConscript: Remove kpath-guile from LIBS.
2962
2963         * SConstruct (libdir_package_version): Typo.
2964         (configure): Comment-out fontforge for lack of fontforge.pc .
2965         Also add libdir* to environment.
2966
2967 2006-05-30  Graham Percival  <gpermus@gmail.com>
2968
2969         * Documentation/user/ various: minor additions from mailist and
2970         editing.
2971
2972 2006-05-30  Paco <fravd@ya.com>
2973
2974         * Documentation/user/music-glossary.tely: numerous corrections and
2975         some new translations.
2976
2977 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2978
2979         * BackportmeStart.
2980         
2981         * buildscripts/output-distance.py
2982         (ComparisonData.create_html_result_page): new routine: summarise
2983         results in HTML page with images. 
2984         (ComparisonData.create_text_result_page): create summary text files too.
2985
2986         * GNUmakefile.in (web-ext): package .signature files too. They
2987         compress well. 
2988
2989         * scm/stencil.scm (write-system-signature): typo.
2990
2991         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2992
2993         * scm/stencil.scm (write-system-signature): better escaping.
2994         only write signature for music systems, not for markup systems.
2995
2996         * scm/framework-ps.scm (output-framework): dump-signatures support
2997         for plain output.
2998
2999         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3000
3001         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3002         for -dno-point-and-click
3003
3004         * lily/grob.cc (get_print_stencil): don't read
3005         point_and_click_global to determine whether to set grob-cause.
3006
3007 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3008
3009         * buildscripts/output-distance.py (main): new function.
3010         (ComparisonData): new class.
3011
3012         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3013         careful with generating new LedgerLineSpanners.
3014
3015         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3016
3017         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3018         context. This fixes double ledger lines in output. 
3019
3020         * lily/system.cc (get_paper_system): remove 3 layer limit.
3021
3022         * buildscripts/output-distance.py (SystemLink.distance): new
3023         file. Compare signatures.
3024
3025         * python/safeeval.py (SafeEval.visitUnarySub): new file.
3026
3027         * lily/grob-array.cc (remove_duplicates): rename from
3028         uniq(). Sort before calling uniq() so it actually works.
3029
3030 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3031
3032         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3033         \version from lilypond file snippet.
3034         (Lilypond_file_snippet.ly): oops. typo.
3035         (find_toplevel_snippets): urgh. again.
3036
3037         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3038         prevent duplicated broken items in output.
3039
3040         * scm/framework-eps.scm (output-classic-framework): only dump if
3041         dump-signatures is set.
3042
3043         * scm/lily.scm (define-scheme-options): add dump-signatures option.
3044
3045         * scm/stencil.scm (write-system-signature): new routine: write
3046         python parseable signature of a separate paper system.
3047         BackportmeEnd.
3048         
3049 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
3050
3051         * lily/stanza-number-engraver.cc (process_music): use is_markup()
3052         iso is_string().
3053         include header.
3054
3055 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
3056
3057         * translator-group.cc: send music events to engravers in
3058         non-bottom contexts.
3059
3060         * tuplet-engraver.cc: process tuplet brackets in correct order.
3061
3062 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3063
3064         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3065         arg 2 might point us to a new binary (patch by Karl Hammar)
3066         
3067 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3068
3069         * VERSION (PACKAGE_NAME): release 2.9.6
3070
3071         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
3072
3073         * Documentation/user/*.itely: 2nd
3074         attempt: replace funindex -> findex globally.
3075
3076 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3077
3078         * input/no-notation/display-lily-tests.ly: fix \applyOutput
3079         test. Add \break, \pageBreak, \pageTurn, etc, tests.
3080
3081         * scm/define-music-display-methods.scm: display methods for
3082         breaks. Fix \applyOutput.
3083
3084 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3085
3086         * Documentation/user/macros.itexi: comment out funindex expansion. 
3087
3088         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3089         everywhere.
3090
3091         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3092         Karl Hammar. Backportme.
3093  
3094         * Documentation/user/advanced-notation.itely (Balloon help): idem.
3095
3096         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3097
3098         * Documentation/user/programming-interface.itely (Running a
3099         function on all layout objects): idem.
3100
3101         * Documentation/user/introduction.itely (Automated engraving):
3102         update \applyOutput syntax
3103
3104         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3105         remove debugging hook.
3106
3107         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3108         expansion. 
3109
3110         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3111
3112         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3113         TEXI2DVI_FLAGS to texi2dvi invocation. 
3114
3115 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
3116
3117         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3118         works. More work is done by iterator now, and engraver has been
3119         very much simplified.
3120
3121         * lily/translator-group.cc: try_music is now invoked through a
3122         listener
3123
3124         * lily/*-iterator.cc: Massive cleanups. Junked
3125         try_music_in_children globally. Renamed try_music to report_event,
3126         and made that method descend to a bottom context automatically.
3127
3128         * lily/event-iterator.cc: New file.
3129
3130         * lily/output-property-iterator.cc,
3131         lily/old-lyric-combine-music-iterator.cc: Removed.
3132
3133         * python/convert-rules.py: Modified the syntax for \applyOutput.
3134
3135 2006-05-23  Graham Percival  <gpermus@gmail.com>
3136
3137         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3138         creation.
3139
3140         * Documentation/user/ various: stuff that might have helped
3141         to fix the pdf creation, plus some minor doc additions.
3142
3143         * Documentation/user/changing-defaults.itely: remove @b from
3144         @b{ @internasref{foo}}; this breaks texi2dvi -E.
3145
3146 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3147
3148         * lily/beaming-pattern.cc (beamify): deal with negative start
3149         moments for beaming patterns.
3150
3151 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3152
3153         * lily/beaming-info.cc (beamify): new function: read beatLength
3154         and beatGrouping from context. 
3155
3156         * input/regression/beam-beat-grouping.ly (Module): new file.
3157
3158         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3159
3160         * lily/beam.cc (get_beam_segments): generate events for
3161         max_connect_ case too.
3162         (get_beam_segments): read Stem::max-beam-connect.
3163
3164         * input/regression/beam-single-stem.ly: new file.
3165
3166         * lily/stem.cc (set_beaming): use #f as signaling value for
3167         beamcount 0.
3168
3169         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3170
3171         * lily/beam.cc (set_beaming): read clip-edges property.
3172         (calc_direction): don't suicide for single stem.
3173
3174         * lily/beaming-info.cc (best_splitpoint_index): take bool*
3175         argument, remove 1<<15 hack. Remove clip_edges() 
3176
3177         * lily/hairpin.cc (print): only do padding for nonmusical bounds
3178
3179 2006-05-21  Graham Percival  <gpermus@gmail.com>
3180
3181         * Documentation/user/basic-notation.itely: reorg.
3182
3183         * Documentation/user/ various: minor fixes.
3184
3185 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
3186
3187         * lily/stencil-expression.cc (register_stencil_head): opps, append
3188         to cdr of static SCM object.
3189
3190 2006-05-19  Graham Percival  <gpermus@gmail.com>
3191
3192         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3193         update framework for command index.  DOC WRITERS: use @funindex
3194         instead of @cindex @code{}.
3195
3196         * Documentation/user/ various: replace @cindex @code{} => @funindex
3197
3198 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
3199
3200         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3201         case positions is set manually. 
3202
3203 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
3204         
3205         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3206         rules to Scheme.
3207
3208 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
3209
3210         * Documentation/user/changing-defaults.itely (Contexts explained):
3211         use absolute dimension for @image.
3212
3213         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3214         out image for illustration too.
3215         ($(outdir)/%.png): add more png <-> eps rules. 
3216
3217 2006-05-17  Graham Percival  <gpermus@gmail.com>
3218
3219         * Documentation/user/ various: remove trailing whitespace, cosmetic
3220         change to reduce changes produced by diff.
3221
3222 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
3223
3224         * lily/main.cc (do_chroot_jail): correctness tweak.
3225
3226         * python/lilylib.py (system): import subprocess in system () only.
3227
3228         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3229
3230         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3231         variable. Backportme.
3232
3233 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
3234         
3235         * lily/parser.yy: Change all syntax rules of type Music to SCM type
3236
3237 2006-05-17  Werner Lemberg  <wl@gnu.org>
3238
3239         * lily/lexer.ll (init_signature_has_table): Add
3240         `scm-scm-music-music'.
3241
3242         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3243         (Generic_prefix_music_scm): Add rule for it.
3244
3245         * lily/quote-iterator.cc (Quote_iterator::process): Handle
3246         `quoted-transposition' property.
3247
3248         * ly/music-functions-init.ly (transposedCueDuring): New function.
3249
3250         * scm/define-music-properties.scm (all-music-properties): Updated.
3251
3252         * Documenation/topdocs/NEWS.itely: Document it.
3253
3254 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
3255
3256         * python/lilylib.py (system): move import subprocess to system()
3257         definition. 
3258
3259         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3260
3261         * VERSION (PATCH_LEVEL): release 2.9.5
3262         
3263         * Documentation/topdocs/INSTALL.texi (Top): update versions and
3264         build instructions. 
3265
3266         * ly/engraver-init.ly: switch on hairpinToBarline by default.
3267
3268 2006-05-16  Graham Percival  <gpermus@gmail.com>
3269
3270         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3271
3272         * Documentation/user/ various: minor fixes.
3273
3274 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
3275
3276         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3277
3278 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
3279
3280         * Documentation/user/advanced-notation.itely (Instrument names):
3281         Modified obsolete instruction on how to move instrument names away
3282         from the staves. Hmm, at second thought the bug probably has been
3283         solved, so the full bug description should probably be removed.
3284
3285 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
3286
3287         * lily/dynamic-engraver.cc (typeset_all): hang ending on
3288         currentCommandColumn. 
3289
3290         * lily/hairpin.cc (print): also add padding for non-neighbor
3291         hairpin bounds.
3292
3293         * scm/define-context-properties.scm
3294         (all-user-translation-properties): add hairpinToBarline
3295
3296         * input/regression/hairpin-to-barline.ly: new file.
3297
3298         * lily/context.cc (internal_send_stream_event): thinko fix.
3299
3300         * lily/tie.cc (set_default_control_points): robustness fix.
3301
3302         * python/musicxml.py (Part.interpret): don't complain about
3303         incomplete measures.
3304
3305         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3306         new music if last_event_chord() returned None.
3307
3308         * python/musicxml.py (Part.interpret): skip back over chord notes.
3309
3310 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
3311         
3312         * lily/percent-repeat-engraver.cc, lily/parser.yy,
3313         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3314         lily/slash-repeat-engraver.cc,
3315         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3316         iterator sends PercentEvents
3317
3318         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3319         rework tuplets: send start/stop events to engraver
3320
3321         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3322         dispatchers event-source and events-below to Context
3323         
3324 2006-05-15  Graham Percival  <gpermus@gmail.com>
3325
3326         * Documentation/user/README.txt: update info for doc writers.
3327
3328         * Documentation/user/programming-interface.itely: integrate
3329         Nicolas' fixes for chapter rewrite.
3330
3331         * Documentation/user/ various: minor fixes.
3332
3333 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
3334
3335         * lily/clef-engraver.cc: cleanup.
3336
3337         * Documentation/user/GNUmakefile: dist context-example.eps too.
3338
3339         * lily/key-engraver.cc (create_key): use
3340         explicitKeySignatureVisibility for cancellation too. 
3341
3342         * lily/font-config.cc (init_fontconfig): don't close file if
3343         f==NULL. 
3344
3345 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
3346
3347         * Documentation/topdocs/NEWS.tely: niente and rotation news
3348
3349 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
3350
3351         * lily/include/stencil.hh
3352         * lily/stencil.cc (rotate): new function. Makes it possible
3353         to rotate a stencil around a given offset.
3354
3355         * lily/grob.cc (get_print_stencil): add rotation support
3356
3357         * lily/stencil-interpret.cc (interpret_stencil_expression):
3358         add rotation support
3359
3360         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3361
3362         * scm/define-grob-properties.scm: add 'rotation property
3363
3364         * scm/define-markup-commands.scm: add rotate markup command
3365         
3366         * scm/output-ps.scm: add rotation support in PostScript backend
3367
3368         * scm/output-svg.scm: add rotation support in SVG backend
3369
3370 2006-05-13  Graham Percival  <gpermus@gmail.com>
3371
3372         * Documentation/user/music-glossary.itely: French correction.
3373
3374         * Documentation/user/programming-interface.itely: major
3375         new docs, some reorg, some info from Nicolas.
3376
3377         * Documentation/user/ various: small fixes.
3378
3379 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
3380
3381         * Documentation/user/programming-interface.itely (Markup
3382         programmer interface): Remove duplicate text.
3383
3384 2006-05-12  Graham Percival  <gpermus@gmail.com>
3385
3386         * Documentation/user/context-example.eps: new file.
3387
3388         * Documentation/user/changing-defaults.itely: set up file to
3389         use eps image.
3390
3391         * Documentation/user/programming-interface.itely: changes
3392         from mailist.
3393
3394 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
3395
3396         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3397
3398 2006-05-11  Graham Percival  <gpermus@gmail.com>
3399
3400         * Documentation/user/programming-interface.itely: first round of
3401         editing and merging emails from Nicolas.
3402
3403         * Documentation/user/scheme-tutorial: minor edit.
3404
3405 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
3406
3407         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3408         XML attributes.
3409         (Xml_node.message): use it.
3410
3411         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
3412         oops. Add duration argument.
3413
3414 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
3415
3416         * lily/paper-column-engraver.cc (make_columns):
3417         * scm/define-grobs.scm: Revert my previous change and set the default
3418         in define-grobs.scm instead.
3419
3420 2006-05-09  Graham Percival  <gpermus@gmail.com>
3421         
3422         * Documentation/user/changing-defaults.itely: general editing,
3423         info about \set and \override.
3424
3425         * Documentation/user/tweaking.itely, advanced-notation.itely:
3426         fixes from Dave Luttinen, thanks!
3427
3428 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
3429
3430         * lily/paper-column-engraver.cc (make_columns): By default, a column
3431         needs to be breakable.
3432
3433 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
3434
3435         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3436         Attributes methods
3437         (musicxml_time_to_lily): idem
3438         (musicxml_key_to_lily): idem
3439         (instrument_drumtype_dict): dict for supported drumtypes.
3440         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3441         moments and pending mm rests
3442         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3443         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3444         (musicxml_voice_to_lily_voice): add mode change.
3445         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3446         speed and less memory usage (factor 5 to 10).
3447         (convert): write -defs.ly  and driver file separately so people
3448         can script their own part extraction.
3449
3450         * python/musicxml.py (minidom_demarshal_node): new function:
3451         separate minidom handling.
3452         (lxml_demarshal_node): new function: support lxml.etree too.
3453         (Xml_node.message): new function: verbose error message, with XML
3454         path to offending node.
3455         (Attributes.get_measure_length): sane interface to MusicXML attributes.
3456         (Part_list.generate_id_instrument_dict): new method: collect
3457         instrument names, to be able to set drum_type.
3458         (Part.interpret): handle underfull measures
3459         (Part.interpret): assign instrument names.
3460
3461         * python/musicexp.py (Output_printer.close): new method
3462         (MusicWrapper.print_ly): new class: support other modes,
3463         eg. \drummode
3464         (BarCheck.print_ly): new class. Support bar checks, with comments
3465         and fancy barchecks. 
3466         (NoteEvent.__init__): also set drum_type for drum notes.
3467         (MultiMeasureRest.lisp_expression): dump mm rests.
3468
3469         * lily/paper-column-engraver.cc (stop_translation_timestep): set
3470         line-break-permission if forbidBreak is not set.
3471
3472 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
3473
3474         * scm/define-context-properties.scm:
3475         * scm/define-grob-properties.scm:
3476         * scm/define-grobs.scm:
3477         * scm/define-music-display-methods.scm:
3478         * scm/define-music-properties.scm:
3479         * scm/define-music-types.scm:
3480         * scm/music-functions.scm:
3481         * ly/declarations-init.ly:
3482         * lily/include/constrained-breaking.hh:
3483         * lily/system.cc:
3484         * lily/spaceable-grob.cc:
3485         * lily/simple-spacer.cc:
3486         * lily/paper-score.cc:
3487         * lily/paper-column.cc:
3488         * lily/paper-column-engraver.cc:
3489         * lily/item.cc:
3490         * lily/gourlay-breaking.cc:
3491         * lily/constrained-breaking.cc:
3492         * python/convertrules.py:
3493         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3494         "page-break-penalty" and "line-break-permission".
3495         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3496         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3497
3498         * lily/bar-engraver.cc:
3499         * lily/beam-engraver.cc:
3500         * lily/forbid-break-engraver.cc:
3501         * lily/ligature-engraver.cc:
3502         * lily/paper-column-engraver.cc:
3503         * lily/percent-repeat-engraver.cc:
3504         * lily/score-engraver.cc:
3505         * lily/score-engraver.hh:
3506         * lily/paper-column-engraver.hh:
3507         Inter-engraver communication regarding line breaks is done through context
3508         properties (Score.forbidBreak) instead of function calls.
3509
3510 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
3511
3512         * VERSION (PACKAGE_NAME): release 2.9.4
3513
3514 2006-05-08  Graham Percival  <gpermus@gmail.com>
3515
3516         * Documentation/user/working.itely: proofreading from Dave
3517         Luttinen, thanks.
3518
3519         * Doucmentation/user/README.txt: updated with manual style info.
3520
3521         * Documentation/user/ various: trim linewidth to 78 chars.
3522
3523 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3524
3525         * scm/define-grob-properties.scm (all-internal-grob-properties):
3526         remove chord-tremolo property.
3527
3528         * lily/beam.cc (get_beam_segments): don't use stem position as
3529         base for broken ends.
3530
3531 2006-05-06  Graham Percival  <gpermus@gmail.com>
3532
3533         * Documentation/user/putting.itely: proofreading from Dave
3534         Luttinen, thanks!
3535
3536         * Documentation/user/ various: more reorg and clarifications.
3537
3538 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3539
3540         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3541
3542         * ly/music-functions-init.ly: new function featherDurations
3543
3544         * lily/beam.cc: read grow-direction for feathered beaming.
3545
3546         * Documentation/topdocs/NEWS.tely (Top): typo.
3547
3548 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3549
3550         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3551         tremolo beams.
3552
3553 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
3554         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3555         used by music streams.
3556
3557         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3558         lily/stream-event.cc, lily/stream-event-scheme.cc,
3559         lily/listener.cc, lily/scheme-listener.cc,
3560         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3561         lily/include/stream-event.hh, lily/include/listener.hh,
3562         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3563         Created data structures for music streams.
3564         
3565 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3566
3567         * lily/beam.cc (get_beam_segments): new function. Reorganise the
3568         construction of a beam. 
3569         (print): rewrite. 
3570
3571         * flower/include/std-vector.hh (default_compare): use only one comparison.
3572
3573         * scm/define-markup-commands.scm (note-by-number): remove debug display.
3574         (note-by-number): further attachment fixes.
3575
3576         * scm/lily-library.scm (ordered-cons): new function.
3577         (interval-index): new function
3578
3579         * lily/note-head-scheme.cc (LY_DEFINE): new file.
3580
3581         * lily/note-head.cc (get_stem_attachment): new function.
3582
3583         * scm/define-markup-commands.scm (note-by-number): read 'style
3584         property. 
3585
3586         * input/regression/markup-note.ly: show note-head style option.
3587
3588         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3589         triangle head.
3590
3591 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
3592
3593         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3594
3595         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3596
3597         * lily/include/constrained-breaking.hh: GCC 4 fix.
3598
3599 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
3600
3601         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3602         Replace it with functions get_line_forces and get_line_configuration.
3603         (class Simple_spacer): Make data private.
3604         Rewrite compression algorithm to be faster and simpler.
3605
3606         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3607         * lily/gourlay-breaking.cc (solve):
3608         * lily/constrained_breaking.cc (space_line):
3609         Change it to the new simple-spacer code.
3610
3611         * lily/paper-score.cc (get_paper_systems):
3612         (Paper_score):
3613         (process):
3614         Delay breaking the systems until they are requested.
3615         (find_break_indices):
3616         Use vsize for indices.
3617         (calc_breaking):
3618         Move the "Calculating line breaks" message here.
3619
3620         * lily/system.cc (pre_processing):
3621         Move the "Calculating line breaks" message away from here.
3622         (break_into_pieces):
3623         Allow multiple calls to this function in sequence (with touching-but-
3624         not-overlapping breakpoints).
3625
3626         * lily/constrained-breaking.cc:
3627         Replace most of the get_XXXX functions with get_line_details.
3628         Only calculate the force for each line. Calculate configurations only
3629         for the lines we will actually use.
3630         Replace cols_ with lines_.
3631
3632 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3633
3634         * mf/GNUmakefile (depth): remove FC_FIND.
3635
3636         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3637
3638         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3639
3640         * scm/framework-ps.scm (write-preamble): new function.
3641         (write-preamble): load mac fonts via fondu, even if gs-font-load
3642         is set.
3643
3644 2006-05-03  Werner Lemberg  <wl@gnu.org>
3645
3646         * mf/GNUmakefile (FC_FIND): Fix typo.
3647
3648 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
3649
3650         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3651
3652 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3653
3654         * stepmake/aclocal.m4: run python-config for crosscompiling
3655         flags. 
3656
3657         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3658         -f png for HTML, TEXINFO formats. 
3659
3660         * input/tutorial/lbook-html-test.html: new file.
3661
3662         * lily/include/tie-formatting-problem.hh (class
3663         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3664         [column, direction]. This fixes laissez vibrer ties.
3665  
3666         * flower/include/tuple.hh (struct Tuple2): new file.
3667
3668         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3669         $(FCMATCH), only if $(NCSB_DIR) not set. 
3670
3671         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3672
3673         * config.make.in (DOCUMENTATION): set FCMATCH.  
3674
3675         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3676
3677 2006-05-03  Graham Percival  <gpermus@gmail.com>
3678
3679         * Documentation/user/ various: final round of reorg.
3680
3681         * Documentation/user/instrument-notation.itely: some more
3682         fixes from Eduardo, thanks!
3683
3684 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3685
3686         * VERSION (PACKAGE_NAME): release 2.9.3
3687
3688         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3689
3690         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3691
3692 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3693
3694         * scm/define-grob-properties.scm (all-user-grob-properties):
3695         Correct typo, thanks to Eduardo.
3696
3697 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3698
3699         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3700
3701         * buildscripts/lilypond-words.py (F): indent fix.
3702
3703         * input/regression/tie-arpeggio-collision.ly: new file.
3704
3705         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3706         function: store outlines per column rank.
3707
3708         * lily/include/tie-configuration.hh (class Tie_configuration): add
3709         column_ranks_ to specification and configuration, to distinguish
3710         between ties for different heads in arpegiated chords.
3711
3712         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3713
3714         * *.py: more 4 space indents.
3715
3716         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3717
3718 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3719
3720         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3721
3722 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3723
3724         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3725
3726         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3727
3728         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3729
3730 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3731
3732         * python/convertrules.py (conv): indent 4 for python files.
3733
3734 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3735
3736         * Documentation/user/changing-defaults.itely (Creating contexts):
3737         Clarify \new semantics.
3738
3739 2006-04-28  Graham Percival  <gpermus@gmail.com>
3740
3741         * Documentation/user/ various: major new sections in the
3742         Learning manual, slight reorg elsewhere.
3743
3744 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3745
3746         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3747
3748         * scm/framework-ps.scm (output-framework): remove PageMedia
3749
3750 2006-04-27  Graham Percival  <gpermus@gmail.com>
3751
3752         * Documentation/user/ tweaks.itely, working.itely: new
3753         files, being more advanced "learning manual" chapters.
3754
3755         * Documentation/user/ tutorial, putting, lilypond: reorg.
3756
3757 2006-04-26  Graham Percival  <gpermus@gmail.com>
3758
3759         * input/regression/lyric-combine-polyphonic.ly: fixed test
3760         (no more "can't find context `one'" error).
3761
3762 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3763
3764         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3765
3766         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3767         
3768 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3769
3770         * lily/relocate.cc (read_relocation_dir): new function.
3771
3772 2006-04-26  Graham Percival  <gpermus@gmail.com>
3773
3774         * Documentation/user/instrument-notation.itely: a few more fixes
3775         from Eduardo, thanks!
3776
3777         * Documentation/user/README.txt: new file; contains info on
3778         style that used to be in lilypond.tely.
3779
3780         * Documentation/user/ various: first round of doc reorg.
3781
3782         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3783         graphic; this probably causes problems on some pdf
3784         viewers, notably Adobe Acrobat.
3785
3786 2006-04-24  Graham Percival  <gpermus@gmail.com>
3787
3788         * Documentation/user/instrument-notation.itely: many alterations
3789         to Vocal music, from Eduardo Viera.
3790
3791 2006-04-23  Graham Percival  <gpermus@gmail.com>
3792
3793         * Documentation/user/instrument-notation.itely: fix \new
3794         instead of \context problem.
3795
3796 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3797
3798         * lily/relocate.cc (expand_environment_variables): new function.
3799         (read_line): id.
3800         (read_relocation_file): id.
3801
3802         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3803
3804 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3805
3806         * ly/engraver-init.ly: remove old comments from TabVoice
3807
3808 2006-04-20  Graham Percival  <gpermus@gmail.com>
3809
3810         * Documentation/user/instrument-notation.itely: added Erlend's
3811         latest doc patch, thanks!
3812
3813 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3814
3815         * lily/include/slur.hh:
3816         * lily/slur.cc:
3817         * lily/phrasing-slur-engraver.cc:
3818         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3819         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3820         Slur_engraver:: and putting it in
3821         Slur::auxiliary_acknowledge_extra_object ().
3822
3823         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3824
3825         * lily/note-collision.cc: fix a comment
3826
3827 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3828
3829         * stepmake/bin/add-html-footer.py: fix footer position in
3830         generated html files: before </body> and </html> tags.
3831
3832 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3833
3834         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3835         Earlier successive `make' commands finally compiled ok.
3836
3837         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3838
3839 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3840
3841         * lily/include/stem-tremolo.hh:
3842         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3843         callers.
3844
3845         * lily/lookup.cc:
3846         * lily/include/lookup.hh: add rotated_box ()
3847
3848 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3849
3850         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3851         been generated. Fixes "can't get `--help'" bug after make clean.
3852
3853         * THANKS: alphabetize contributors.
3854
3855 2006-04-17  Graham Percival  <gpermus@gmail.com>
3856
3857         * Documentation/user/instrument-notation.itely: added Erlend's
3858         tabs and banjo doc patch.  Thanks!
3859
3860 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3861
3862         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3863
3864         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3865
3866         * scm/output-lib.scm: add some more predefined string tunings.
3867
3868         * Documentation/user/instrument-notation.itely: and doc them.
3869
3870 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3871
3872         * ly/engraver.ly: Remove obsolete comments.
3873
3874         * ly/gregorian-init.ly: Define default layout block.
3875
3876         * input/puer-fragment.ly: Updated and extended.
3877
3878 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3879
3880         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3881         pdf conversion behaviour.
3882
3883         * flower/file-name.cc (dir_name)
3884         (get_working_directory): Move from relocate.cc.
3885
3886         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3887         
3888         * lily/relocate.cc: Encapsulate sys/stat.h in
3889         HAVE_STAT_H.
3890
3891 2006-04-14  Graham Percival  <gpermus@gmail.com>
3892
3893         * Documentation/user/ various: small updates from Cameron
3894         and Juergen, thanks!
3895
3896         * Documentation/user/ various: small updates of my own.
3897
3898         * THANKS: 2.7 -> 2.8.
3899
3900 2006-04-11  Graham Percival  <gpermus@gmail.com>
3901
3902         * scm/define-context-properties.scm: typo.
3903
3904         * Documentation/user/ : many more small updates.
3905
3906 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3907
3908         * scm/define-music-types.scm: disposed "docme".
3909
3910 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3911
3912         * lily/hairpin.cc: make niente circles a bit smaller.
3913
3914 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3915
3916         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3917         get-pfa and get-*-fonts targets.
3918
3919 2006-04-10  Graham Percival  <gpermus@gmail.com>
3920
3921         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3922         music-glossary, programming-interface: more minor fixes
3923         from mailist.
3924
3925         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3926
3927         * scm/define-context-properties.scm: another old \property update.
3928         This time tested for compiling!
3929
3930 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3931
3932         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3933
3934 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3935
3936         * scm/define-context-properties.scm (all-user-translation-properties): 
3937         * Documentation/user/global.itely (Page formatting): Compile fix.
3938
3939 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3940
3941         * Documentation/user/advanced-notation.itely (Polymetric
3942         notation): Update the example to use the "+" symbol and add link
3943         to input/test/compound-time.ly.
3944
3945 2006-04-08  Graham Percival  <gpermus@gmail.com>
3946
3947         * scm/define-grob-properties.scm: clarify docs for #'direction.
3948
3949         * scm/define-context-properties.scm: update old \property override.
3950
3951         * Documentation/user/ advanced-notation, global, lilypond-book:
3952         more minor doc updates.
3953
3954 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3955
3956         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3957
3958         * scm/backend-library.scm (search-gs): oops.
3959
3960 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3961
3962         * scripts/lilypond-book.py (output): use base, not filename for href.
3963
3964         * scm/backend-library.scm: only look for gs.
3965
3966         * scripts/lilypond-book.py (output): fix printfilename.
3967
3968         * lily/parser.yy (music_function_musicless_prefix): fold together
3969         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3970
3971         * lily/slur.cc (print): only set font-size if not set yet.
3972
3973         * lily/slur-configuration.cc (add_score): improved layout of debug
3974         scoring output.
3975
3976 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3977
3978         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3979         (draw_circle): Hopefully fixed regression.
3980         Improved documentation for several procedures.
3981         
3982 2006-03-04  Werner Lemberg  <wl@gnu.org>
3983
3984         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3985
3986 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3987
3988         * scripts/musicxml2ly.py (bindir): add dynamic
3989         relocation. 
3990
3991 2006-04-04  Graham Percival  <gpermus@gmail.com>
3992
3993         * Documentation/user/ basic-notation, advanced-notation, putting,
3994         instrument-notation, invoking, lilypond, THANKS: another ream of small
3995         fixes from the Doc Helpers.
3996
3997 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3998
3999         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4000
4001         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4002
4003         * Cleaned up interfaces between PostScript and Scheme, and moved
4004         computations from PostScript to Scheme:
4005
4006         * music-drawing-routines.ps
4007         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
4008         with stroke_and_fill throughout.
4009         (euclidean_length, print_letter, draw_box): Deleted unused
4010         procedures.  If someone needs draw_box, implement it using
4011         draw_round_box; don't duplicate code.
4012         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4013         Refactored/cleaned up interfaces.
4014         (mark_URI): Moved.
4015
4016         * output-ps.scm: reordered arguments to PostScript functions to
4017         match new interfaces
4018         (glyph-string): Rewrote glyph-string.
4019         (grob-cause): Replaced string-append with format.
4020         (repeat-slash): Rewrote to do computation here.
4021         (round-filled-box): Rewrote to do computation here.
4022
4023 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
4024
4025         * stepmake/stepmake/generic-targets.make: add cvs-clean target
4026
4027         * stepmake/stepmake/toplevel- targets.make: print help info about
4028         cvs-clean
4029
4030 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
4031
4032         * input/regression/hairpin-circled.ly: new file
4033
4034 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
4035
4036         * lily/hairpin.cc (print): add support for circled tip
4037
4038         * scm/define-grob-properties.scm: add circled-tip parameter
4039
4040         * scm/define-grobs.scm: init circled-tip to false
4041         
4042 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
4043
4044         * scm/music-functions.scm (quote-substitute): set
4045         iterators-ctor. 
4046
4047 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
4048
4049         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4050         BSTINPUTS. 
4051
4052         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4053
4054         * scm/output-ps.scm (glyph-string): revert cid selectfont.
4055
4056 2006-03-31  David Feuer  <david.feuer@gmail.com>
4057         
4058         * scm/framework-ps.scm:
4059         
4060         * scm/output-ps.scm: glyph-string now produces smaller, more
4061         readable, and probably faster PostScript.  Several findfont
4062         scalefont setfont instances changed to selectfont
4063         Hacked-up string-appends changed to formats.
4064
4065         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4066         
4067 2006-03-30  Graham Percival  <gpermus@gmail.com>
4068
4069         * scm/lily-library.scm: make "no version" warning message more polite.
4070
4071         * lily/music.cc: add double quotes to failed octave check.
4072
4073         * Documentation/user/ advanced-notation, changing-defaults,
4074         instrument-notation, invoking, music-glossary: whole bunch of minor
4075         fixes from mailist.
4076
4077 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
4078
4079         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4080         $(buildscriptdir) iso. depth.
4081
4082         * VERSION (PACKAGE_NAME): release 2.9.1
4083
4084 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4085
4086         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4087
4088         * VERSION (PATCH_LEVEL): bump version number.
4089
4090         * flower/include/guile-compatibility.hh (scm_from_uint32): add
4091         scm_from_uint32 ()
4092
4093         * lily/pango-font.cc (pango_item_string_stencil): use
4094         scm_from_uint32 ()
4095
4096         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4097         $(outdir)/emmentaler-%.svg): remove canary.
4098
4099         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4100         glyphnames if we have a ttf font.
4101
4102 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
4103
4104         * Documentation/user/advanced-notation.itely (Font selection):
4105         Corrected reference to the font-family-override.ly example.
4106
4107 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
4108         
4109         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4110         stem-tremolo object in the stem (or else the stem might not be
4111         long enough).
4112
4113 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4114
4115         * lily/ttf.cc (print_trailer): only print existing glyphs.
4116
4117 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
4118
4119         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4120         position the tremolo based on the position of the notehead.
4121
4122         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4123         notes and update the texidoc line with the new positioning rules.
4124         
4125 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4126
4127         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4128
4129         * scripts/lilypond-book.py (Module): set default for linewidth if
4130         preamble not found.
4131
4132 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4133
4134         * VERSION (PACKAGE_NAME): release 2.9.0.
4135
4136         * input/regression/stem-tremolo-position.ly: new file.
4137
4138         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4139
4140 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
4141
4142         * lily/stem-tremolo.cc (print): position
4143         the tremolo depending only on the end of the stem
4144         and not on the notehead
4145         (raw_stencil): center, on the middle staff line, the
4146         flag that is closest to the end of the stem (previously
4147         the bottom flag)
4148         (calc_width): add this callback to shorten a tremolo when
4149         it is beamed or it is stemup with a flag
4150         (style): add this callback to make a tremolo rectangular when
4151         it is beamed or it is stemup with a flag
4152         (rotated_box): this is like Lookup::beam but makes a rotated
4153         rectangle instead of a parallelogram
4154
4155         * lily/stem.cc (calc_stem_info): make sure the stem
4156         is long enough to fit the tremolo
4157         (calc-length): reduce the length of tremolo stems since the
4158         tremolo code is now capable of better positioning
4159
4160         * scm/define-grobs.scm: make calc_width the default beam-width
4161         callback for stem-tremolo and add the style callback
4162                 
4163 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4164
4165         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4166         case. 
4167
4168 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4169
4170         * lily/ttf.cc (make_index_to_charcode_map): restore old
4171         cmap. 
4172
4173 2006-03-28  Werner Lemberg  <wl@gnu.org>
4174
4175         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4176
4177 2006-03-28  Graham Percival  <gpermus@gmail.com>
4178
4179         * THANKS: update for 2.9, add section for Documentation helpers.
4180
4181         * Documentation/topdocs/NEWS.tely: compile fix.
4182
4183         * Documentation/user/ basic-notation, global, advanced-notation,
4184         examples.itely: minor fixes from mailist.
4185
4186 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
4187
4188         * mf/feta-bolletjes.mf: match width of solfa notes with normal
4189         note heads. 
4190
4191         * lily/ttf.cc (print_trailer): use it.
4192
4193         * lily/pango-font.cc (get_unicode_name): new function.
4194
4195         * lily/ttf.cc (make_index_to_charcode_map): move function from
4196         open-type-font.cc
4197         (print_trailer): substitute uniXXXX name if applicable. 
4198
4199         * lily/pango-font.cc (get_index_to_charcode_map): new function.
4200         (pango_item_string_stencil): use it to generate uniXXXX names.
4201
4202         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4203         note heads, for uniform widths in shape note output.
4204         (overdone_heads): hmm. remove them again.
4205
4206         * scripts/lilypond-book.py (output): add links to filenames.
4207
4208         * Documentation/topdocs/INSTALL.texi (Top): update versions.
4209
4210         * lily/note-collision.cc (get_clash_groups): only consider when
4211         Note_column::dir <> CENTER. 
4212
4213         * scripts/lilypond-book.py (get_option_parser): init output_name
4214         to ''. 
4215
4216 2006-03-24  Graham Percival  <gpermus@gmail.com>
4217
4218         * Documentation/topdocs/NEWS.tely: add @end itemize
4219
4220         * Documentation/user/ global, advanced-notation: minor
4221         stuff from mailist.
4222
4223 2006-03-23  Graham Percival  <gpermus@gmail.com>
4224
4225         * Documentation/user/ lilypond.tely, music-glossary,
4226         preface: housekeeping; 2005->2006, remove "notes for 2.6"
4227
4228 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
4229
4230         * mf/GNUmakefile: don't install .enc files.
4231
4232         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4233
4234         * VERSION (PATCH_LEVEL): bump to 2.9.0
4235
4236 2006-03-22  Graham Percival  <gpermus@gmail.com>
4237
4238         * Documentation/user/advanced-notation.itely: minor fixes
4239         from mailist.
4240
4241 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
4242
4243         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4244
4245         * branch lilypond_2_8
4246
4247 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
4248
4249         * scripts/lilypond-book.py (samefile): new function, for windoze
4250         compatibility.
4251
4252 2006-03-21  Graham Percival  <gpermus@gmail.com>
4253
4254         * ly/engraver-init.ly: add info about StaffGroup.
4255
4256 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
4257
4258         * input/regression/stem-direction-context.ly: idem.
4259
4260         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4261
4262         * THANKS: add Mats.
4263
4264         * input/regression/page-layout-twopass.ly: comment out \markup so
4265         tweak-file is left.
4266
4267         * lily/instrument-name-engraver.cc (finalize): add to instrument
4268         name global System. This also fixes chopped instrument names, but
4269         doesn't crash when there are slurs/beams.
4270
4271         * lily/slur-configuration.cc (add_score): disallow negative slur
4272         scores.
4273         
4274 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4275
4276         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4277
4278         * lily/instrument-name-engraver.cc (process_music): kludge: add
4279         InstrumentName spanner to axis group of left bound. Fixes chopped
4280         off instrument names in EPS images.
4281
4282         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4283
4284         * scripts/abc2ly.py (option_parser): update to 2.7.40
4285
4286 2006-03-20  Graham Percival  <gpermus@gmail.com>
4287
4288         * THANKS: move small doc contributors to SUGGESTIONS.
4289
4290         * Documentation/user/ basic-notation, advanced-notation,
4291         global: small changes from mailist.
4292
4293 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4294
4295         * Documentation/user/advanced-notation.itely (Text marks): update
4296         for new rehearsalMarkAlignSymbol convention.
4297
4298         * VERSION (PATCH_LEVEL): bump version.
4299
4300         * input/test/instrument-name-align.ly: new file.
4301
4302         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4303
4304         * input/test/instrument-name-align.ly: new file. Document how to
4305         align instrument names.
4306
4307         * lily/mark-engraver.cc: remove properties.
4308
4309         * scm/define-context-properties.scm
4310         (all-user-translation-properties): remove align symbol properties
4311         for barnumber/reh. mark.
4312
4313         * lily/break-align-interface.cc (self_align_callback): new
4314         interface, new function. Look at complete alignment. This handles
4315         tunable break alignments in case break-align-symbols are missing.
4316
4317         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4318
4319         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4320
4321         * python/convertrules.py (conv): mark/bar number alignment rule.
4322
4323         * lily/break-align-interface.cc (calc_positioning_done): also
4324         store offset from last visible break-alignment to its
4325         neighbor. This makes alignment on non-visible objects more reliable.
4326
4327         * po/lilypond.pot (Module): ran po-replace.
4328
4329         * input/regression/tie-single-manual.ly (Module): new file.
4330
4331         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4332         look at has_manual_position_.
4333         (from_ties): set has_manual_position_ if tie has staff-position set.
4334
4335         * lily/tuplet-bracket.cc (calc_positions): idem.
4336
4337         * lily/tuplet-number.cc (print): don't print tupletnumber if it
4338         doesn't span time.
4339
4340 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4341
4342         * scm/define-markup-commands.scm (smallCaps): new markup command
4343         for turning a text to small caps using smaller font size and upper
4344         casing.
4345
4346 2006-03-17  Graham Percival  <gpermus@gmail.com>
4347
4348         * Documentation/user/ examples, instrument-notation,
4349         advnaced-notation: minor fixes from mailist.
4350
4351 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4352
4353         * Documentation/user/tutorial.itely (First steps): change example
4354         to verbatim.  
4355
4356 2006-03-17  Graham Percival  <gpermus@gmail.com>
4357
4358         * Documentation/user/ examples, advanced: minor changes from mailist.
4359
4360         * THANKS: add Geoff Horton, for documentation stuff.
4361
4362 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4363
4364         * python/lilylib.py (system): revert have_select kludge.
4365
4366         * Documentation/user/tutorial.itely (Commenting input files):
4367         update version numbers in doc. 
4368
4369         * scm/define-grob-interfaces.scm (multi-measure-interface): add
4370         bound-padding to multi-measure-interface
4371
4372 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4373
4374         * input/test/engraver-example.ily: update version number.
4375
4376         * VERSION (PACKAGE_NAME): release 2.7.39
4377
4378         * lily/note-spacing.cc (get_spacing): heighten threshold where
4379         accidentals/arpeggios influence previous spacing fully.
4380
4381         * lily/rest.cc (y_offset_callback): only use direction if
4382         staff-position wasn't set before.
4383
4384         * lily/bar-number-engraver.cc: add support for
4385         barNumberAlignSymbol. 
4386         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4387
4388         * lily/pointer-group-interface.cc (set_ordered): new function. 
4389         (add_unordered_grob): new function.
4390
4391         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4392         to ordered, unless the opposite has been proved.  This fixes
4393         random reordering of large object groups across linebreaks,
4394         eg. beams.
4395
4396         * lily/main.cc (do_chroot_jail): printf format fix.
4397
4398         * lily/tie-formatting-problem.cc (generate_configuration):
4399         multiply y-shift for dot with direction.
4400  
4401         * scm/define-markup-commands.scm (note-by-number): put (magstep
4402         size) in y-attach too.
4403
4404         * Documentation/topdocs/NEWS.tely (Top): show override.
4405
4406         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4407         direction for stems.
4408         
4409 2006-03-15  Graham Percival  <gpermus@gmail.com>
4410
4411         * Documentation/user/ changing-defaults, global: minor
4412         fixes from mailist.
4413
4414 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4415
4416         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4417
4418         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4419         breakable items after uniformly stretched notes.
4420
4421         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4422         outline with outer edge of note heads. This prevents infinity
4423         problems with tied whole notes.
4424
4425         * scripts/lilypond-book.py (do_file): use os.popen
4426
4427         * python/convertrules.py (conv): add rule for Stem #'beamed-*
4428
4429 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
4430
4431         * Documentation/user/invoking.itely: Add ragged-right to bug report
4432         guidelines.
4433
4434 2006-03-14  Graham Percival  <gpermus@gmail.com>
4435
4436         * Documentation/user/global.itely: small fix from mailist.
4437
4438 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
4439
4440         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4441         file descriptor returned by tempfile.mkstemp() when writing
4442         to tmpfile and closing it. Solves problem with unlink(tmpfile)
4443         on mingw.
4444
4445 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4446
4447         * po/fi.po: newline bugfix.
4448
4449 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4450
4451         * scm/paper.scm (paper-alist): Rounding fixes.
4452
4453 2006-03-13  Graham Percival  <gpermus@gmail.com>
4454
4455         * Documentation/user/ changing-defaults, instrument-notation,
4456         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
4457
4458 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
4459
4460         * po/fi.po: update.
4461
4462 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4463
4464         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4465         mailto: to http:// 
4466
4467         * python/lilylib.py (print_environment): move ps_page_count to
4468         lilypond-book.py
4469
4470 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4471
4472         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4473
4474         * scm/framework-ps.scm (embed-document): new function. Use to
4475         embed PFA files.
4476
4477         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4478
4479 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
4480
4481         * Documentation/user/instrument-notation.itely (Setting simple
4482         songs): Added \book{...} around the full example, so the separate
4483         markups are included in the printed example. 
4484
4485 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4486
4487         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4488         tmphandle.
4489
4490         * python/lilylib.py (system): rewrite system() using
4491         subprocess. Remove >& redirection trickery.
4492
4493 2006-03-11  Graham Percival  <gpermus@gmail.com>
4494
4495         * Documentation/user/ changing-defaults, global, scheme-tutorial,
4496         notation-appendices.itely: minor fixes from mailist.
4497
4498 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4499
4500         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4501         unsplit man also needs images.
4502
4503         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4504
4505         * VERSION (PACKAGE_NAME): 2.7.38 released.
4506
4507 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4508
4509         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4510         log in output dir.
4511
4512 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
4513
4514         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4515         respects the Score.skipTypesetting property.
4516         
4517 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4518
4519         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4520         Prolog. No %%EOF after CFF file.
4521
4522 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
4523         
4524         * lily/constrained-breaking.cc (get_max_systems): used to return a
4525         much too big value
4526         (combine_demerits): use pointers to reduce copying data
4527         (calc_subproblem): idem
4528         (get_page_penalty): add page turn penalties
4529         
4530 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4531
4532         * Documentation/user/invoking.itely (Invoking lilypond): better
4533         explanation of -e usage.
4534
4535         * lily/main.cc (main_with_guile): don't append to
4536         init_scheme_code_string
4537
4538         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4539
4540         * Documentation/user/invoking.itely: add note about MacOS X scripts.
4541
4542         * scripts/convert-ly.py (do_options): don't print help for
4543         --show-rules rule.
4544
4545         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4546         @code and @example. Update from texinfo.tex from CVS.
4547
4548 2006-03-08  Graham Percival  <gpermus@gmail.com>
4549
4550         * Documentation/user/scheme-tutorial.itely: clarifies distances
4551         measured in staff-spaces.
4552
4553 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4554
4555         * lily/slur.cc (outside_slur_callback): only calculate offsets if
4556         consider[k] is true.
4557
4558         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4559
4560         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4561         consider columns that have originals.  Unifies spacing for mm
4562         rests around line breaks.
4563
4564         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4565         (set_text_rods): idem.
4566         (calculate_spacing_rods): new function: share code between
4567         set_text_rods and set_spacing_rods.
4568         (set_text_rods): take extents of bounds into account.  
4569
4570 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4571
4572         * Documentation/user/basic-notation.itely (Writing music in
4573         parallel): don't use relative.
4574
4575 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4576
4577         * ly/music-functions-init.ly (Module): add shiftDurations
4578
4579         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4580
4581         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
4582
4583         * ly/engraver-init.ly: init vocalName to nil.
4584
4585 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
4586
4587         * scm/music-functions.scm (music->make-music): bugfix,
4588         KeyChangeEvents are now handled correctly.
4589
4590         * scripts/lilypond-book.py: Add --debug option.
4591
4592 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4593
4594         * python/lilylib.py: add tempfile.
4595
4596 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4597
4598         * VERSION (PACKAGE_NAME): release 2.7.37
4599
4600         * python/lilylib.py (ps_page_count): remove make_ps_images().
4601         (ps_page_count): remove mkdir_p
4602         (system): remove cleanup_temp.
4603         (exit): remove lilypond_version_(check)
4604         (error_log): remove pseudo_filter_p
4605         remove read_pipe
4606         remove cp_to_dir
4607         remove identify
4608
4609         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4610         use __main__
4611
4612         * lily/accidental-engraver.cc (make_standard_accidental): only add
4613         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4614
4615         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4616         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4617         Make incompatibilities.
4618
4619         * scm/output-ps.scm (grob-cause): replace backslashes by /
4620         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4621
4622 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4623
4624         * cygwin/GNUmakefile: Install fixes.
4625
4626         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4627
4628         * lily/note-head.cc (head::get_balltype): Compile fix.
4629
4630         * flower/file-name.cc (dos_to_posix): Flower string fix.
4631
4632 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4633
4634         * python/lilylib.py: pychecker cleanups.
4635
4636         * scripts/lilypond-book.py
4637         (Lilypond_snippet.output_print_filename): pychecker cleanups
4638
4639         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4640
4641         * python/lilylib.py (underscore): remove identify() , warranty()
4642
4643         * ps/music-drawing-routines.ps: change Border routine for GSView
4644         compatibility.
4645
4646         * lily/stem.cc (height): use quantize-positions.  This triggers
4647         set_stem_lengths, so scripts on beamed stems are handled correctly.
4648
4649         * lily/side-position-interface.cc (aligned_side): check if edges
4650         of script are inside staff. Fixes accent of edge of the staff.
4651
4652         * input/regression/staccato-pos.ly: more examples.
4653
4654         * stepmake/aclocal.m4 (depth): fix bashism.
4655
4656         * lily/lyric-combine-music-iterator.cc: move from
4657         new-lyric-combine-iterator.cc
4658         (process): add pending_grace_lyric_ member to delay lyrics on
4659         grace notes.
4660
4661         * lily/system-start-text.cc (print): suicide if we don't have any
4662         elements. Fixes hara kiri'd instrument names.
4663
4664         * scripts/mup2ly.py (Module): remove.
4665
4666 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4667
4668         * Documentation/user/global.itely (A single music expression):
4669         close @lilypond properly
4670
4671         * lily/volta-bracket.cc (modify_edge_height): change from
4672         after_line_breaking_callback. Suicide last bracket if appropriate.
4673  
4674         * python/lilylib.py: strip getopt support
4675
4676         * scripts/etf2ly.py (do_options): use optparse
4677
4678         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4679
4680         * scripts/abc2ly.py (voices): use optparse.
4681
4682         * stepmake/stepmake/generic-vars.make: new function absdir.
4683
4684         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4685
4686         * scripts/lilypond-book.py (find_file): use global_options for
4687         include path
4688
4689         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4690         entering C code.
4691
4692 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4693
4694         * python/lilylib.py (get_global_option): ughness for extracting
4695         global options from lilylib.
4696         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4697
4698         * scripts/lilypond-book.py (get_option_parser): use optparse for
4699         option handling.  Put options in global_options variable.
4700
4701 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4702
4703         * Documentation/index.html.in: clarify.
4704
4705 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4706
4707         * scm/layout-page-layout.scm (write-page-breaks): add a
4708         music-system-heights property to the page layout output.
4709
4710         * scm/page.scm (make-page-stencil): take footer into account when
4711         computing the 'space-left page property
4712         (annotate-space-left): take footer into account when annonating
4713         space left.
4714
4715 2006-02-28  Graham Percival  <gpermus@gmail.com>
4716
4717         * Documentation/user/ advanced-notation, global: more (final)
4718         docs for music expressions, removed special fermatas.
4719
4720 2006-02-27  Graham Percival  <gpermus@gmail.com>
4721
4722         * Documentation/user/ basic-notation, global: minor changes
4723         from mailist.
4724
4725 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4726
4727         * scm/framework-ps.scm:         
4728         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4729         layer for inf? and nan? from framework-ps to lily-library.
4730
4731 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4732
4733         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4734         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4735
4736         * buildscripts/substitute-encoding.py (Module): remove file.
4737
4738         * mf/GNUmakefile: more PFA strippage.
4739
4740         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4741
4742         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4743         generation
4744
4745         * scm/framework-ps.scm: remove font name munging.
4746
4747         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4748
4749 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4750
4751         * scm/markup.scm (define-markup-command): change
4752         def-markup-command to define-markup-command
4753
4754         * scm/music-functions.scm (define-music-function): change
4755         def-music-function to define-music-function.
4756
4757         * python/convertrules.py (conv): rules for def-music-function
4758         and def-markup-commands
4759
4760         * Documentation/user/programming-interface.itely,
4761         input/no-notation/display-lily-tests.ly,
4762         input/regression/lily-in-scheme.ly,
4763         input/regression/markup-user.ly,
4764         input/regression/music-function.ly, input/regression/tie-chord.ly,
4765         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4766         ly/gregorian-init.ly: use new macro names (define-music-function,
4767         define-markup-command).
4768
4769 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4770
4771         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4772         (output): add comments to lp-book latex output.
4773
4774         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4775         address.
4776
4777 2006-02-23  Graham Percival  <gpermus@gmail.com>
4778
4779         * Documentation/user/ tutorial, global: minor changes.
4780
4781 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4782
4783         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4784         blocks (for make 3.80)
4785
4786         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4787         \notemode so that user should not have to explicitely type it.
4788
4789         * scm/define-music-display-methods.scm: various
4790         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4791         constructs)
4792
4793         * input/no-notation/display-lily-tests.ly: new tests for
4794         \applyOutput and \applyContext
4795
4796 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4797
4798         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4799         changed it slightly so that the number of systems returned by
4800         solve () will be the same as the last value passed to resize
4801         (). I've also added more documentation, removed casts, fixed style
4802         problems and put in some recovery if constraints aren't satisfied."
4803
4804 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4805
4806         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4807         for emacs < 22 compatibility.
4808         (count-rexp): Use it.
4809         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4810         substring juggling (Milan Zamazal).
4811
4812 2006-02-23  Graham Percival  <gpermus@gmail.com>
4813
4814         * Documentation/user/ basic-notation, advanced-notation,
4815         global.itely, invoking.itely, tutorial,itely:
4816         minor fixes from mailist.
4817
4818         * scm/define-markup-commands.scm: improve docs of \filled-box.
4819
4820 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4821
4822         * Documentation/index.html.in: changes concern the previous release.
4823
4824         * input/regression/+.ly: cultivate typographical terminology.
4825
4826 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4827
4828         * scm/define-grob-interfaces.scm (parentheses-interface): add
4829         padding to parentheses-interface.
4830
4831         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4832         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4833
4834         * VERSION (PATCH_LEVEL): release 2.7.36
4835
4836         * lily/slur.cc: add avoid-slur (ugh.)
4837         
4838         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4839         intersection gets smaller. This fixes slurs over extreme points.
4840
4841         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4842         stems with neutral-direction set.
4843
4844         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4845
4846         * lily/open-type-font.cc (load_table): format error.
4847
4848         * lily/change-iterator.cc (process): format fix.
4849
4850         * flower/include/international.hh (_f): idem.
4851
4852         * flower/include/std-string.hh: add format printf attribute.
4853
4854         * scm/define-grobs.scm (all-grob-descriptions): height of all
4855         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4856
4857         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4858         ambitus lines.
4859
4860         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4861
4862 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4863
4864         * input/regression/: upgraded syntax for some files.
4865
4866         * THANKS: Add bughunters.
4867
4868 2006-02-22  Graham Percival  <gpermus@gmail.com>
4869
4870         * Documentation/user/ invoking.itely, advanced-notation.itely,
4871         global.itely: long-awaited "let's make chapter 10 not suck"
4872         update.  Rearrange chapter 10; now called "global issues",
4873         addresses file structure, etc.  Some info from other files
4874         moved into global.itely.
4875
4876 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4877
4878         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4879         catch trill-span-event notes.
4880
4881         * Documentation/user/examples.itely (Ancient notation templates): typo.
4882         (Jazz combo): typo.
4883
4884         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4885
4886         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4887
4888         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4889
4890         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4891
4892         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4893         froum Laissez_vibrer_engraver.
4894
4895         * ly/declarations-init.ly (repeatTie): add \repeatTie
4896
4897         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4898
4899         * scm/define-grob-properties.scm (all-user-grob-properties): add
4900         head-direction property.
4901
4902         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4903         from_lv_ties. Take head direction argument.
4904
4905         * lily/semi-tie-column.cc: rename from
4906         laissez-vibrer-tie-column.cc. Rename class too.
4907
4908         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4909         class too.
4910
4911         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4912
4913         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4914         0 case.
4915         (find_breaks): idem.
4916
4917 2006-02-21  Graham Percival  <gpermus@gmail.com>
4918
4919         * Documentation/user/advanced-notation.itely: fixed make-moment]
4920         example.
4921
4922         * Documentation/user/basic-notation.itely: more clarification to
4923         transpose.
4924
4925 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4926
4927         * lily/include/constrained-breaking.hh (class
4928         Constrained_breaking): new file.
4929
4930         * lily/constrained-breaking.cc (resize): new file.
4931
4932         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4933
4934         * Documentation/user/advanced-notation.itely (Clusters): insert
4935         end ignore too.
4936
4937         * lily/tie-column.cc (calc_positioning_done): support for
4938         tie-score debugging
4939
4940         * lily/tie-formatting-problem.cc
4941         (generate_extremal_tie_variations): factor out.
4942         (score_ties_configuration): annotate all tie 
4943         (print_ties_configuration): new routine.
4944         (generate_configuration): nudge extremal ties outside of the head
4945         Y extents.
4946         (score_ties_configuration): oops. convert to staff-space before
4947         determining position symmetry.
4948
4949 2006-02-20  Graham Percival  <gpermus@gmail.com>
4950
4951         * Documentation/user/*-notation.itely: misc minor editing,
4952         shifting doc sections around.
4953
4954         * Documentation/user/*-notation-itely, global.itely,
4955         changing-defaults.itely: added new stuff from NEWS.
4956
4957 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4958
4959         * po/fi.po: update.
4960
4961 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4962
4963         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4964         lilypond --verbose for lp-book.
4965
4966         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4967         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4968
4969         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4970         $(buildscript-dir) iso. absolute depth.
4971
4972         * buildscripts/genicon.py (dir): thinko.
4973
4974         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4975
4976 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4977
4978         * scm/output-lib.scm: swap darkcyan/darkyellow
4979
4980         * THANKS: Add bughunters.
4981
4982 2006-02-19  Graham Percival  <gpermus@gmail.com>
4983
4984         * Documentation/user/programming-interfaces.itely: fixed example.
4985
4986         * Documentation/user/instrument-notation.itely: fix @{ @}.
4987
4988         * scm/script.scm: add avoid-slur for \open.
4989
4990 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4991
4992         * lily/tie-formatting-problem.cc (score_configuration): use
4993         sliding score for min-length. 
4994
4995         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4996         spaghetti for icons.
4997
4998         * buildscripts/genicon.py (program_name): new file.
4999
5000         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5001         in outline too.  
5002         (generate_configuration): for small ties, also look for collisions
5003         at Y + DIR*h + DELTA_Y.
5004         (get_variations): consider variation for dot positions too.
5005
5006         * lily/side-position-interface.cc (aligned_side): take abs for
5007         quantized rounded position. Fixes tenuto below staff.
5008
5009         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5010         markers when necessary.
5011
5012         * lily/program-option.cc (internal_set_option): add
5013         strict_infinity_checking option.
5014
5015         * scm/output-lib.scm (cyan): swap yellow and cyan.
5016
5017 2006-02-19  Graham Percival  <gpermus@gmail.com>
5018
5019         * darwin.patch: trivial linenumber update.
5020
5021         * Documentation/user/ {various}: `\context foo = named' changed
5022         to `\new foo = "name"' in docs.
5023
5024 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5025
5026         * scm/stencil.scm (annotate-y-interval): use it.
5027
5028         * scm/lily-library.scm (interval-sane?): new function.
5029
5030         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5031         tfm_checksum stuff.
5032
5033         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5034         common refpoint.
5035
5036         * flower/include/std-vector.hh (iterof): add iterof macro.
5037
5038         * lily/enclosing-bracket.cc (width): new function.
5039
5040         * lily/align-interface.cc (align_elements_to_extents): reinstate
5041         warning.
5042
5043 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
5044
5045         * Documentation/index.html.in: fix spelling: thankyous.
5046
5047 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5048
5049         * lily/lyric-hyphen.cc: typo.
5050
5051 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5052
5053         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5054         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5055         builds don't work. 
5056
5057         * VERSION: release 2.7.35
5058
5059         * lily/beam.cc (get_default_dir): oops. Take abs () for
5060         extremes[DOWN].
5061         (get_default_dir): use extreme position criterion only in absence
5062         of forced stem directions.
5063
5064         * VERSION (PATCH_LEVEL): bump VERSION.
5065
5066         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5067         dependencies. Necessary for -jX builds.  
5068
5069 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5070
5071         * lily/relocate.cc (setup_paths): Yet another const fix.
5072
5073 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5074
5075         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5076
5077         * lily/relocate.cc (setup_paths): oops.
5078
5079 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
5080
5081         * Documentation/index.html.in: order links: html before PDF.
5082
5083 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5084
5085         * lily/tie-column-format.cc (Module): remove.
5086
5087         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5088
5089         * lily/text-spanner.cc (print): idem.
5090
5091         * lily/dynamic-text-spanner.cc (print): only print line if longer
5092         than dash-period.
5093
5094         * lily/auto-change-iterator.cc (change_to): formatting.
5095
5096         * lily/beam.cc (get_default_dir): take extreme note head as input
5097         for stem direction.
5098
5099         * lily/tie.cc (get_default_dir): only look directions for visible
5100         stems. 
5101
5102         * lily/side-position-interface.cc (aligned_side): oops. Don't
5103         mutiply with direction. This fixes quantized (staccato, tenuto)
5104         scripts below notes.
5105
5106         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5107         direction. Fixes c-lyrics-center-align.ly
5108
5109 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5110
5111         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5112         constructor.
5113
5114         * lily/std-string.cc:
5115         * lily/include/std-vector.hh (split_string): Move and rename from
5116         lily/include/misc.hh, lily/misc.cc.  Update callers.
5117
5118 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5119
5120         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5121
5122 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5123
5124         * flower/test-file.cc: New file.
5125
5126         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5127         libraries.
5128
5129         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5130
5131 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5132
5133         * flower/include/file-storage.hh: remove file.
5134
5135         * lily/include/midi-item.hh (class Midi_track): idem.
5136
5137         * lily/include/source.hh (class Sources): idem.
5138
5139         * lily/include/performance.hh (class Performance): use vector
5140         iso. Cons<>
5141
5142         * flower/include/cons.hh (class Cons): remove file.
5143
5144         * flower/include/flower-proto.hh: remove template cruft.
5145
5146         * lily/include/font-metric.hh: use size_t not vsize for indices.
5147
5148         * flower/include/flower-proto.hh (Module): remove std-vector.hh
5149         from proto.
5150
5151         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5152
5153         * lily/include/paper-book.hh (class Paper_book):
5154         make get_system_specs() public.
5155
5156         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5157         the force=10000 case if we don't have a current-best. 
5158
5159         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5160         vsize 
5161
5162         * flower/include/flower-proto.hh: remove outdated templates.
5163
5164         * scm/page.scm: use annotate-spacing
5165
5166 2006-02-15  Graham Percival  <gpermus@gmail.com>
5167
5168         * scm/translation-functions.scm: circle patch from Erlend, thanks!
5169
5170         * THANKS: moved Erlend Aasland to contributors.
5171
5172 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5173
5174         * config.hh.in: remove HAVE_PANGO_16
5175
5176         * lily/tuplet-bracket.cc (calc_positions): multiply with
5177         staff-space for beam case. This fixes tuplets+beams on scaled
5178         staves.
5179
5180         * config.hh.in: remove all Kpathsea related defines.
5181
5182         * lily/dot-column.cc (side_position): reach stem via dots->
5183         head->stem. Inspect all stems for dot collisions. 
5184
5185         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5186         stem handling.
5187
5188         * lily/bar-number-engraver.cc (process_music): document function
5189         of whichBar.
5190
5191         * lily/score.cc (default_rendering): add pscore, not systems
5192         themselves.
5193
5194         * lily/paper-book.cc (get_system_specs): separate generation of
5195         titles and systems.
5196
5197         * flower/include/std-vector.hh: don't include config.hh
5198
5199 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5200
5201         * flower/include/std-vector.hh: Better wrapper compatibility with
5202         std::vector.
5203
5204         * flower/include/flower-proto.hh: Remove cheap forward declaration
5205         attempts.
5206
5207         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5208
5209 2006-02-14  Graham Percival  <gpermus@gmail.com>
5210
5211         * Documentation/user/invoking.itely: add warning about command line.
5212
5213 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5214
5215         * lily/include/lily-proto.hh: add Prob, rm Page.
5216
5217         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5218
5219         * VERSION: release 2.7.34
5220
5221         * lily/relocate.cc (framework_relocation): show canary if
5222         GHOSTSCRIPT_VERSION undefined.
5223
5224         * GNUmakefile.in: remove $(VERSION) symlink.
5225
5226         * lily/relocate.cc (setup_paths): add + 
5227
5228 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
5229
5230         * Documentation/index.html.in: specify sizes for all big HTML pages.
5231
5232 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5233
5234         * config.hh.in: remove @FRAMEWORKDIR@
5235
5236         * lily/system-start-text.cc (get_stencil): new file: separate out
5237         system-start-delimiter text support.
5238
5239         * input/**ly: replace \context with \new where appropriate.
5240         
5241         * THANKS: add Don.
5242
5243         * lily/slur-scoring.cc (get_base_attachments): use
5244         robust_relative_extent. This fixes problems with empty paper-columns. 
5245
5246 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5247
5248         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5249
5250         * scm/define-music-properties.scm (all-music-properties):
5251         create-new property.
5252
5253         * lily/context-specced-music-iterator.cc (construct_children):
5254         inspect 'create-new property iso. magical $uniqueContextId context
5255         id.
5256
5257         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5258
5259         * lily/context-key-manager.cc (Module): new file. Encapsulate
5260         object key generation.
5261
5262         * lily/include/context-key-manager.hh (Module): new file.
5263
5264 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5265
5266         * scm/define-grobs.scm (all-grob-descriptions): center instrument
5267         names vertically
5268
5269         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5270         options.
5271         (reloc_b): excise --enable-framework-dir
5272
5273         * lily/relocate.cc (framework_relocation): use getenv
5274         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5275
5276 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5277
5278         * flower/include/std-string.hh: 
5279         * flower/include/std-vector.hh: Finish std:: conversion; move
5280         flower extensions from std:: namespace.  Update users.
5281
5282         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5283         their expansion to vector<*>.  Update users.
5284
5285 2006-02-10  Graham Percival  <gpermus@gmail.com>
5286
5287         * Documentation/user/invoking.itely: add example to File structure.
5288
5289         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5290         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5291
5292 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5293
5294         * ly/paper-defaults.ly: typo.
5295
5296         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5297         set_parent() for parentheses. This will make it show up in bbox
5298         calculations.
5299
5300         * scm/output-lib.scm (parentheses-item::print): rewrite, using
5301         ly:grob-common* functions.
5302
5303         * lily/grob-scheme.cc (LY_DEFINE):
5304         ly:grob-common-refpoint-of-array: new function 
5305         ly:grob-common-refpoint: new function 
5306         ly:grob-relative-coordinate: new function 
5307
5308         * lily/instrument-name-engraver.cc (process_music): use
5309         Text_interface::is_markup(). This fixes \markup on instrument names.  
5310
5311         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5312         for ties and slurs.
5313
5314         * lily/slur.cc (print): idem.
5315
5316         * lily/tie.cc: add line-thickness for ties. 
5317
5318 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5319
5320         * scm/output-svg.scm: Document diversion from GNU coding standards
5321         as a workaround for a bug in Microsoft Internet Explorer.
5322
5323 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5324
5325         * lily/instrument-name-engraver.cc (process_music): use
5326         is_markup() iso. is_string()
5327
5328         * Documentation/user/changing-defaults.itely (Module): add menu entry.
5329
5330         * lily/percent-repeat-engraver.cc (process_music): only look at
5331         main_part_ for % repeats.
5332
5333         * lily/stem-tremolo.cc (get_beam_translation): new function.
5334         (calc_slope): new function.
5335         (height): don't use real slope.
5336
5337 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
5338
5339         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5340         new connect-to-neighbor, control-points and staff-padding
5341         properties to make ligature brackets showing up again.
5342
5343 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5344
5345         * VERSION: release 2.7.33
5346
5347         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5348         too many.
5349
5350         * Documentation/user/changing-defaults.itely (Difficult tweaks):
5351         remove applyOutput example.
5352         (Objects connected to the input): document \tweak, \parenthesize
5353
5354         * lily/relocate.cc (prefix_relocation): allow "current"
5355         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5356         changing VERSION in a lily tree less painful.
5357
5358         * input/regression/parenthesize.ly: new file. 
5359
5360         * scm/output-lib.scm (parenthesize-element): new function.
5361
5362         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5363
5364         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5365
5366         * lily/accidental-engraver.cc (make_standard_accidental): reroute
5367         cause: accidentals are caused by note heads, not note events. 
5368
5369 2006-02-08  Graham Percival  <gpermus@gmail.com>
5370
5371         * darwin.patch: small patch from Erlend, thanks!
5372
5373         * Documentation/user/basic-notation.itely: add stem-neutral example.
5374
5375         * Documentation/user/putting.itely: clarifications.
5376
5377 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5378
5379         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5380         note, add more guidelines to what should go into NEWS.
5381
5382         * input/sakura-sakura.ly: document how to override font.
5383
5384         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
5385
5386 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5387
5388         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5389
5390 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5391
5392         * scripts/convert-ly.py (lilypond_version_re_str): Move from
5393         convertrules.  Add explicit grouping, needed for python2.2.
5394
5395 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5396
5397         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5398
5399 2006-02-07  Graham Percival  <gpermus@gmail.com>
5400
5401         * Documentation/user/global.itely: fix line-width in (text) docs.
5402
5403         * Documentation/user/lilypond-book.itely: same.
5404
5405 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5406
5407         * VERSION (PACKAGE_NAME): release 2.7.32
5408
5409         * Documentation/topdocs/NEWS.tely (Top): document new variable
5410         naming.
5411
5412         * flower/include/array.icc (Message): remove file.
5413
5414         * flower/include/std-vector.hh: make sure vsize and VPOS are
5415         defined for binary_search_bounds().
5416
5417         * flower/std-string.cc (std): add to_string(long unsigned).
5418
5419         * configure.in (gui_b): excise std_string option.
5420         (gui_b): excise std_vector option.
5421
5422         * flower/string.cc (Module): excise flower array & string
5423
5424         * flower/include/std-string.hh: excise flower string.
5425
5426         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5427
5428         * python/convertrules.py (lilypond_version_re_str): require
5429         only numbers and dots in \version string.
5430
5431 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5432
5433         * lily/system-start-delimiter.cc (print): allow style = text too.
5434
5435         * lily/system-start-delimiter-engraver.cc
5436         (acknowledge_system_start_text): new function, also add add to
5437         support of system-start-text (instrument names). This fixes
5438         instrument names on piano staves.
5439
5440         * lily/instrument-name-engraver.cc: rewrite. Use
5441         system-start-delimiter approach. This save memory and cpu.
5442
5443         * scm/define-grobs.scm (all-grob-descriptions): remove
5444         instrument-name from break-alignment.
5445
5446         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5447
5448 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
5449
5450         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5451         jobserver going.
5452
5453         * configure.in (std_vector): On by default.
5454
5455         * lily/include/font-metric.hh:
5456         * lily/include/tfm-reader.hh: 
5457         * lily/include/spanner.hh: Use unsigned for indices and sizes.
5458         Update users.
5459
5460         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5461
5462 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5463
5464         * VERSION (PACKAGE_NAME): 2.7.31
5465
5466         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5467         EPS edge at 0, but take minimum with left-overshoot. This fixes
5468         cut off system start delims. 
5469
5470         * lily/instrument-name-engraver.cc (stop_translation_timestep):
5471         hack: add to axis group if not added yet. This fixes hara kiri'd
5472         piano staves.
5473
5474         * lily/hara-kiri-group-spanner.cc
5475         (force_hara_kiri_in_y_parent_callback): fix signatures.
5476
5477         * lily/hairpin.cc (print): check next hairpin to see whether or
5478         not to be continuing.
5479
5480 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5481
5482         * Remove trailing whitespace from makefiles.
5483         
5484         * flower/include/std-vector.hh: Add binary_search_bounds workaround
5485         for earlier gcc.
5486
5487         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
5488
5489         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5490
5491         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5492
5493         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5494
5495         * configure.in: Use it.
5496
5497 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5498
5499         * scm/music-functions.scm (pitch-of-note): new function.
5500
5501         * ly/music-functions-init.ly: add \octave and \addquote
5502
5503         * lily/parser.yy (music_function_chord_body): softcode \octave.
5504         (lilypond_header): softcode \addquote
5505
5506 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5507
5508         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5509         array.hh, parray.hh at all.  Getting ready to flip the
5510         configure default.
5511
5512         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5513
5514         * lily/source-file.cc (file::get_line): Help binary_search_bounds
5515         a bit.
5516
5517         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5518
5519 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5520
5521         * flower/include/array.hh: typo. 
5522
5523 2006-02-02  Graham Percival  <gpermus@gmail.com>
5524
5525         * Documentation/user/advanced-notation.itely: doc "\#" in text.
5526
5527 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5528
5529         * flower/include/pqueue.hh: Derive from std::vector.
5530
5531         * flower/include/parray.hh: Conform to std::vector interface.
5532         Update users.
5533
5534 2006-02-02  Graham Percival  <gpermus@gmail.com>
5535
5536         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5537
5538 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5539
5540         * flower/file-path.cc (is_file): remove if 0 section.
5541
5542         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5543         selecting afii61352.
5544
5545 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5546
5547         * flower/include/std-vector.hh (boundary): Oops, reverse.
5548
5549         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5550         remove superfluous `d'.
5551
5552         * flower/include/std-vector.hh (boundary, top): Detach from class.
5553         Remove empty vector shell.
5554
5555         * flower/include/array.hh (reverse, swap): Detach from class.
5556         Update users.
5557         
5558         * flower/include/std-vector.hh
5559         * flower/include/array.hh (concat): Globally change to insert ().
5560
5561         
5562         * flower/include/std-vector.hh
5563         * flower/include/parray.hh
5564         * flower/include/array.hh (elem, elem_ref): Globally replace by
5565         at ().
5566
5567 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5568
5569         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5570
5571         * python/convertrules.py (FatalConversionError.sub_cxx_id):
5572         anticipate on identifier substitutions.
5573
5574 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5575
5576         * flower/include/std-vector.hh (insert): Remove, replace by
5577         std::vector interface.  Update callers.
5578
5579         * flower/include/array.icc (insert): Change signature to
5580         match std::vector interface.
5581         
5582         * flower/include/array.icc (vector_sort): Bugfix.
5583
5584 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5585
5586         * lily/parser.yy (output_def_head_with_mode_switch): new
5587         production. Result: dashes and underscores may be used in the
5588         \paper block.
5589
5590         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
5591
5592         * python/convertrules.py (conv): oops. One slash too much.
5593
5594 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5595
5596         * flower/include/std-vector.hh (sort): Remove, replace by
5597         ::vector_sort.  Update callers.
5598
5599         * flower/include/std-vector.hh (slice): Remove.  Update callers.
5600         (sort): Bugfix.
5601
5602         * flower/test-std.cc (vector_sort): New test.
5603
5604 2006-02-01  Graham Percival  <gpermus@gmail.com>
5605
5606         * Documentation/user/putting.itely: fixes from Erik.
5607
5608 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5609
5610         * flower/test-std.cc: Add simple unit test for vector migration.
5611
5612         * stepmake/stepmake/test*: Unit test support.
5613
5614         * flower/include/std-vector.hh (del): Remove.  Use erase (),
5615         update callers.
5616
5617         * flower/include/array.hh (begin, end): Add.
5618         (del, get): Remove.
5619
5620 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5621
5622         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5623         std::string not String. 
5624
5625         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5626         iso UINT_MAX.
5627
5628         * lily/prob.cc (Prob): copy type_ too.
5629
5630         * lily/lily-guile.cc (mangle_cxx_identifier): new
5631         function. Class_bla::foo_bar_[px] ->
5632         ly:class-bla::foo-bar[?!]. Changes throughout
5633
5634 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5635
5636         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5637
5638         * lily/beam.cc (calc_direction): take dir from visible stem in
5639         degenerate case.
5640
5641 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5642
5643         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5644         Fix -1, >=0 boundary checks for unsigned vsize.
5645
5646         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5647         loop for unsigned vsize.
5648
5649         * configure.in (--enable-std-vector): New option.
5650         (--enable-std-string): On by default.
5651
5652         * flower/include/std-vector.hh: New file.  Enable switch to
5653         std::vector, update client code.
5654
5655 2006-01-30  Graham Percival  <gpermus@gmail.com>
5656
5657         * scm/document-translation.scm: clarify "this context is also
5658         known as".  Thanks, Werner!
5659
5660         * Documentation/user/putting.itely: small fixes from Don Blaheta.
5661
5662         * Documentation/user/invoking.itely: small fix from Don.
5663
5664 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5665
5666         * scm/lily.scm (define-scheme-options): rename option
5667         preview-include-book-title to book-title-preview
5668         (define-scheme-options): move force-eps-font-include (from paper
5669         block) to eps-font-include -d option.
5670
5671         * VERSION (PATCH_LEVEL): release 2.7.30
5672
5673         * input/bach-schenker.ly (staffPiano): new file.
5674
5675         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5676
5677         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5678         credits to Nicolas.
5679
5680         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5681
5682         * ps/lilyponddefs.ps: remove start-system, stop-system,
5683         start-page fluff. This saves putting { } code on the stack, fixing
5684         stack overflows when including EPS files.
5685
5686 2006-01-29  Graham Percival  <gpermus@gmail.com>
5687
5688         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5689
5690 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5691
5692         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5693
5694 2006-01-28  Graham Percival  <gpermus@gmail.com>
5695
5696         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5697
5698 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5699
5700         * input/mutopia/claop.py: Update.
5701
5702 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5703
5704         * input/regression/completion-heads.ly (texidoc): fix.
5705
5706         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5707
5708         * lily/tie-formatting-problem.cc
5709         (set_ties_config_standard_directions): use abs iso fabs for ints.
5710
5711         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5712
5713         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5714         little less than noteheight, to prevent overlaps in chords.
5715
5716         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5717         head, and fudge stem-attachment.
5718
5719         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5720
5721         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5722
5723 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5724
5725         * lily/main.cc (main): Debugging aid: catch exceptions.
5726
5727         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5728         output with std::string.
5729
5730 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5731
5732         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5733
5734 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5735
5736         * Fix -DSTRING_UTILS_INLINED.
5737
5738 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5739
5740         * VERSION (PATCH_LEVEL): release 2.7.29
5741
5742         * lily/relocate.cc (setup_paths): mingw uses std string too.
5743
5744         * lily/*.cc: various fixes for substr(ARG).
5745
5746         * lily/sustain-pedal.cc (print): 
5747
5748         * flower/file-name.cc (slashify): use std strings.
5749
5750         * flower/string-convert.cc: remove publib.h
5751
5752         * scm/define-markup-commands.scm (verbatim-file): new markup
5753         command \verbatim-file
5754
5755         * Documentation/topdocs/NEWS.tely: fixup URLs
5756
5757         * input/regression/alignment-vertical-manual-setting.ly (Module):
5758         new file.
5759
5760         * lily/align-interface.cc (align_elements_to_extents): overwrite
5761         translations with numbers in alignment-offsets from left bound
5762
5763         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5764         (page-translate-systems): new function: take into account Y-offset.
5765
5766         * Documentation/topdocs/NEWS.tely (Top): document new features.
5767
5768         * input/regression/page-layout-manual-position.ly (Module): new
5769         file.
5770
5771 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5772
5773         * flower/file-path.cc (path::parse_path): Oops.
5774
5775         * Finish std::string interface.  For now, use std:: marker
5776         throughout for easy s/r.
5777
5778 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5779
5780         * Documentation/user/putting.itely (Score is a single musical
5781         expression): typo.
5782         (Score is a single musical expression): more typos.
5783
5784         * scm/page.scm (annotate-space-left): thinko.
5785         (annotate-page): more thinkos.
5786
5787 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5788
5789         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5790         for different \score blocks separately.
5791         (post-process-pages): put write-page-layout into paper block.
5792
5793         * lily/output-def.cc (get_parser): new file.
5794
5795         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5796         file.
5797
5798         * lily/include/output-def.hh (class Output_def): add parser_ member.
5799
5800         * input/regression/page-layout-twopass.ly (Module): new file.
5801
5802         * scm/lily.scm: remove cpp hack.
5803
5804         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5805
5806 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5807
5808         * GNUmakefile.in (c-clean): New target.
5809
5810         * flower/include/std-string.hh: String/std::string compatibility:
5811         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5812         type.
5813
5814         * flower/rational.cc: 
5815         * flower/include/rational.hh: 
5816
5817         * flower/offset.cc: 
5818         * flower/include/offset.hh: 
5819
5820         * flower/interval.cc: 
5821         * flower/include/interval.hh: 
5822
5823         * flower/string-convert.cc: 
5824         * flower/include/string-convert.hh: Use std::string [interface].
5825         Update callers.
5826
5827 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5828
5829         * Documentation/index.html.in: clean up.
5830
5831 2006-01-25  Graham Percival  <gpermus@gmail.com>
5832
5833         * Documentation/user/putting.itely: another new untested doc section.
5834
5835 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5836
5837         * scm/layout-page-layout.scm (write-page-breaks): write
5838         \spacingTweaks #ALIST. Handle grace timing.
5839
5840         * scm/: more imports.
5841
5842         * scm/page.scm (make-page): add footer/header.
5843         (annotate-space-left): revise: only take page argument.
5844         (layout->page-init): new function.
5845
5846         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5847         version of the system/spacing/linebreak hack writing to the output
5848
5849         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5850         ly:make-prob.
5851
5852         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5853         ly:spanner-bound
5854
5855 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5856
5857         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5858
5859         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5860
5861         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5862         handling to page.scm
5863
5864         * lily/prob-scheme.cc (LY_DEFINE): new file.
5865         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5866
5867         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5868         prob functions.
5869
5870         * lily/music.cc (derived_mark): derive Music from Prob.
5871
5872         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5873
5874         * lily/prob.cc (Module): Implement Prob (Property Object), object
5875         with shared and r/w property alists.  
5876
5877         * lily/include/prob.hh (Module): new file. Declare Prob.
5878
5879         * flower/string.cc: remove is_empty().
5880
5881         * flower/include/string.hh (class String): remove String:: qualifier.
5882
5883         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5884         substitute appropriate functions.
5885
5886         * flower/include/string.hh (class String): remove to_str0 and
5887         is_empty(). S&R everywhere.
5888
5889 2006-01-23  Graham Percival  <gpermus@gmail.com>
5890
5891         * Documentation/user/basic-notation.itely: add hairpin
5892         after-linebreak tweak to commonprop.
5893
5894         * Documentation/user/putting.itely: added two new sections.
5895
5896 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5897
5898         * flower/international.cc: 
5899         * flower/include/international.hh: 
5900
5901         * flower/getopt-long.cc: 
5902         * flower/include/getopt-long.hh: Use std::string [interface].
5903         Update callers.
5904
5905         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5906
5907         * stepmake/stepmake/executable-rules.make: Add dependency on
5908         module libraries.
5909
5910 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5911
5912         * flower/file-path.cc: 
5913         * flower/include/file-path.hh: Use std::string [interface].
5914         Update callers.
5915
5916         * flower/direction.cc: 
5917         * flower/axis.cc: Unused.  Remove.
5918
5919         * configure.in (--enable-std-string): New option.
5920
5921         * flower/std-string.cc: 
5922         * flower/include/std-string.hh: New file.
5923
5924         * flower/file-name.cc[STD_STRING]:
5925         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5926
5927 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5928
5929         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5930
5931         * scm/define-markup-commands.scm (with-dimensions):
5932         with-dimensions markup command.
5933
5934         * input/test/font-table.ly: use it.
5935
5936         * lily/open-type-font.cc (glyph_list): new function.
5937
5938         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5939
5940         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5941
5942 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5943
5944         * ly/music-functions-init.ly (parallelMusic): new music function
5945         for parallel music entry.
5946
5947         * scm/define-music-properties.scm (all-music-properties): new
5948         'void music property
5949
5950         * scm/music-functions.scm (ly:music-message): make public, to be
5951         used in music function definitions
5952
5953         * scm/lily-library.scm (collect-music-for-book): discard music
5954         when the 'void property is set.
5955
5956 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5957
5958         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5959
5960         * mf/GNUmakefile: idem.
5961
5962         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5963
5964         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5965
5966         * Documentation/user/notation-appendices.itely (The Feta font):
5967         use it.
5968
5969         * input/test/font-table.ly: new file. Generate font table within lily.
5970
5971         * Documentation/user/notation-appendices.itely (The Feta font):
5972         use new font-table.ly file. 
5973
5974         * stepmake/stepmake/install-out-targets.make
5975         (local-install-outfiles): only create directory if
5976         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5977
5978 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5979
5980         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5981
5982         * VERSION (PACKAGE_NAME): release 2.7.28
5983
5984         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5985         the right font from a Mac dfont.
5986         (write-preamble): don't forget directory, only look at files.
5987
5988         This fixes problems with TTF files in dfonts that don't match
5989         their PostScript names.
5990          
5991         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5992         PS name from TTF font.
5993
5994         * input/regression/tie-manual.ly: document new feature.
5995
5996         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5997
5998         * VERSION (MY_PATCH_LEVEL): bump to .28
5999
6000         * Documentation/user/basic-notation.itely (Ties): add tie examples
6001         refs.
6002
6003         * lily/tie-formatting-problem.cc (score_ties_configuration):
6004         symmetry penalties for outer ties.
6005
6006 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6007
6008         * lily/tie-formatting-problem.cc (generate_configuration) 
6009         (set_manual_tie_configuration): skip non-pair manual
6010         tie-configuration, so you can set individual ties as
6011
6012           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6013
6014         * input/regression/tie-chord.ly: use generateTiePattern to
6015         simplify file.
6016
6017         * lily/tie-formatting-problem.cc (peak_around): new function.
6018         (score_configuration): use sliding criterion for staff line collisions. 
6019         (score_configuration): idem for dot collisions.
6020         (generate_configuration): use separate stem_gap for gap to stem.
6021
6022         * lily/include/tie-formatting-problem.hh (struct Tie_details):
6023         separate penalty factors for x and y distance.
6024         (struct Tie_details): separate penalties for tip and center line collisions.
6025
6026 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
6027
6028         * lily/tie-formatting-problem.cc (generate_configuration): make
6029         large ties avoid stafflines in the horizontal section.
6030         (score_configuration): use softcoded penalties
6031         (score_aptitude): idem.
6032
6033         * lily/tie-helper.cc (from_grob): softcode tie details
6034
6035         * lily/staff-symbol-referencer.cc (on_staff_line): new function
6036
6037         * lily/staff-symbol-referencer.cc (on_line): rename from
6038         on_staffline 
6039
6040 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6041
6042         * ly/music-functions-init.ly: remove duplicate tag.
6043
6044         * lily/include/*.hh: GCC 4.1 fixes.
6045
6046 006-01-16  Erlend Aasland  <erlenda@gmail.com>
6047
6048         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6049
6050         * scm/define-music-types.scm: fix bug in desc. string
6051         for OverrideProperty
6052
6053 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
6054
6055         * scripts/lilypond-book.py: bugfix
6056
6057         * scm/define-music-types.scm: fix typos.
6058
6059 2006-01-14  Graham Percival  <gpermus@gmail.com>
6060
6061         * Documentation/user/ basic-notation.itely, global.itely,
6062         advanced-notation.itely, instrument-notation.itely: small
6063         additions (bugs and commonly tweaked properties).
6064
6065 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6066
6067         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6068         detection of mingw build.
6069         (MINGW_BUILD): opps.
6070
6071 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
6072
6073         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6074         i686-mingw32.
6075
6076 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6077
6078         * scm/music-functions.scm (skip->rest): add skip->rest
6079
6080 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6081
6082         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6083         explicitly.
6084
6085         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6086         config dirs. Aids debugging. 
6087         (display_config): also display config files.
6088
6089 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6090
6091         * VERSION: release 2.7.27
6092
6093         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6094         for determining bar size.
6095
6096         * lily/staff-symbol.cc (print): place lines at distance line-positions
6097
6098         * scm/define-grob-properties.scm (all-user-grob-properties): add
6099         line-positions.
6100
6101         * lily/staff-symbol.cc (height): new function.
6102
6103         * input/regression/staff-line-positions.ly:  new file.
6104
6105 2006-01-06  Graham Percival  <gpermus@gmail.com>
6106
6107         * input/test/add-staccato.ly: remove reference to old file.
6108
6109 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6110
6111         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6112         lilypond binary too.
6113
6114 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6115
6116         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6117
6118 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6119
6120         * scripts/midi2ly.py: Bugfix: Declare datadir.
6121
6122         * make/ly-rules.make:
6123         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6124         that seems to be gone). Fixes make web.
6125
6126         * The grand 2005-2006 replace.
6127
6128         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6129
6130 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6131
6132         * make/lilypond-vars.make: set LILYPOND_BINARY variable
6133         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6134         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6135         like -dgs-font-load.
6136
6137         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6138         remove absolute path to lilypond binary.
6139         
6140 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
6141
6142         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6143
6144 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6145
6146         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6147
6148         * mf/GNUmakefile: remove broken dvips map symlink.
6149
6150 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
6151
6152         * lily/main.cc: 
6153         * configure.in: Cosmetic fixes.
6154
6155 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
6156
6157         * Documentation/user/music-glossary.tely (Pitch names): Added
6158         Spanish pitch names and durations, thanks to Ernesto Gancedo
6159
6160 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6161
6162         * scm/lily.scm (define-scheme-options): use quasi-quote for option
6163         init. Fixes verbose printing of .scm files.
6164
6165         * stepmake/aclocal.m4: add spaces before - options.
6166         
6167 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6168
6169         * lily/relocate.cc (setup_paths): Bugfix: do not store result
6170         of path search in local block variable.
6171
6172 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6173
6174         * configure.in (NCSB_DIR): --enable-ncsb-dir
6175         (LINK_GXX_STATICALLY): denko.
6176
6177         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
6178
6179         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
6180         use locate to find c059033l.pfb. 
6181         
6182 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6183
6184         * lily/tie-formatting-problem.cc
6185         (problem::generate_base_chord_configuration): Use my_round (was
6186         round).
6187
6188         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6189         do not invoke mbrtowc.
6190
6191         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6192
6193 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6194
6195         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6196
6197 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
6198
6199         * Documentation/user/invoking.itely (svg): revise.
6200
6201 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6202
6203         * lily/lexer.ll: use sourcefilename iso. renameinput.
6204
6205 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6206
6207         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6208         <PostScriptName>.ttf instead of c059XXXttf.
6209
6210         * lily/program-option.cc (LY_DEFINE): special support for
6211         --verbose, so it works before option init too.
6212  
6213         * mf/GNUmakefile (local-install): oops.
6214
6215         * lily/lyric-hyphen.cc (print): oops.
6216
6217         * buildscripts/pfx2ttf.fontforge: new file.
6218         
6219         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6220         ($(outdir)/%.ttf): new rule. 
6221
6222         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6223         to LyricHyphen.
6224
6225         * lily/lyric-hyphen.cc (print): multiply hyphen height by
6226         font-size
6227
6228 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6229
6230         * VERSION: release 2.7.26
6231         
6232         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6233
6234 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6235
6236         * lily/font-config.cc (init_fontconfig): verbosity.
6237
6238         * THANKS: add Muziekacademie Lede. 
6239
6240         * scripts/musicxml2ly.py (print_voice_definitions): new function 
6241         (print_score_setup): new function
6242         (convert): read part definition to output staves properly.
6243
6244         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6245         Music_xml notes.
6246
6247         * python/musicexp.py (Output_printer.__init__): use _ in data
6248         members.
6249         (Output_printer.unformatted_output): new function: no formatting,
6250         but count braces.
6251         (Duration.get_length): remove isinstance() checks for
6252         Output_printer everywhere.
6253
6254         * input/regression/lyrics-bar.ly (texidoc): add
6255         Separating_line_group_engraver.
6256
6257 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
6258
6259         * lily/relocate.cc (framework_relocation): New function,
6260         factored from set_relocation ().
6261         (prefix_relocation): Rename from set_relocation ().
6262         (setup_paths): Use it.
6263
6264 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6265
6266         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6267         numbers. Patch by Erlend Aasland.
6268
6269 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6270
6271         * lily/font-config.cc (init_fontconfig): print warning if cache
6272         file is not existant.
6273
6274         * lily/main.cc: don't use #ifdef but #if
6275
6276 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6277
6278         * lily/grob-property.cc (internal_set_property): don't abort on
6279         calculation-in-progress.
6280
6281         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6282
6283         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6284         connect-to-neighbor property not connect-to-other
6285
6286         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6287         (LY_DEFINE): oops. don't forget protection.
6288
6289         * flower/parse-afm.cc (Module): strip AFM handling completely.
6290
6291         * lily/stencil-expression.cc: idem.
6292
6293         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6294
6295         * lily/function-documentation.cc (ly_add_function_documentation):
6296         use static member iso. Protected_scm
6297
6298         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6299
6300         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6301
6302 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6303
6304         * lily/relocate.cc (set_env_dir): New function.
6305         (set_relocation): Use it to fix setting PANGO_PREFIX.
6306
6307 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6308
6309         * input/regression/stem-direction-context.ly: remove rest.
6310
6311         * lily/melody-engraver.cc (process_music): restart for bar lines.
6312         (acknowledge_slur): restart for slurs.
6313
6314 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
6315
6316         * Documentation/user/invoking.itely: describe how to view SVG 
6317         output using Inkscape which replace embedded fonts with OTF fonts.
6318
6319 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6320
6321         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6322
6323 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6324
6325         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6326         comment.
6327
6328 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6329
6330         * VERSION (PACKAGE_NAME): release 2.7.25
6331
6332         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6333
6334         * input/regression/stem-direction-context.ly: new file.
6335
6336         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6337
6338         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6339         on rest.
6340
6341         * ly/engraver-init.ly: add Melody_engraver
6342
6343         * lily/beam.cc (calc_direction): use default-direction
6344         iso. get_default_direction()
6345
6346         * scm/define-grob-properties.scm (all-user-grob-properties): add
6347         default-direction property.
6348
6349         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6350
6351         * lily/stem.cc (calc_default_direction): remove
6352         Stem::get_default_direction, use default-direction with callback
6353         instead.
6354
6355         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
6356
6357         * lily/melody-engraver.cc: new file. Acknowledge stems for
6358         interpolated stem directions. 
6359
6360         * lily/melody-spanner.cc: new file. Interpolate stem directions.
6361
6362         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6363
6364         * lily/slur-configuration.cc (fit_factor): more robust check for
6365         point in curve X-extent.
6366
6367         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6368         (outside_slur_callback): check for 'outside avoidance.
6369
6370         * lily/slur-configuration.cc (score_extra_encompass): don't use
6371         bound->column() == avoid->column() for checking extents, as this
6372         doesn't work for accidentals. 
6373
6374         * lily/slur-engraver.cc (acknowledge_extra_object): remove
6375         DynamicText hardcoding.
6376
6377         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6378         crash if bound stem is NULL
6379
6380         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6381         pedals.
6382
6383 2005-12-22  Graham Percival  <gpermus@gmail.com>
6384
6385         * scm/define-markup-commands.scm: typo.  @code{\raise}
6386         => @code{\\raise}.
6387
6388         * darwin.patch: now used again, includes a
6389         required patch from fink.
6390
6391 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
6392
6393         * po/TODO: mention gtranslator along with kbabel.
6394         * po/fi.po: update translations.
6395
6396 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6397
6398         * lily/relocate.cc (setup_paths): Bugfix.
6399
6400 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6401
6402         * lily/slur-configuration.cc (score_extra_encompass): don't use
6403         "avoid" choice for avoid-slur.
6404
6405         * stepmake/bin/install.py (dest): don't create existing dir.
6406
6407 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6408
6409         * stepmake/bin/install.py: Remove file before copying.
6410
6411         * config.make.in: 
6412         * stepmake/aclocal.m4: Do not substitute INSTALL.
6413
6414 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6415
6416         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6417         depend on link-tree.
6418
6419         * lily/relocate.cc (setup_paths): only check path for non-absolute
6420         dir without directory part.
6421
6422         * flower/file-name.cc (is_absolute):  new method.
6423         (is_absolute): check root_ too.
6424
6425 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6426
6427         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6428         relocation code.  Oops, don't comment out too much.
6429
6430         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6431         iso itself.
6432
6433         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
6434         compile.
6435
6436 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6437
6438         * .cvsignore: Add install-sh.
6439
6440         * autogen.sh (srcdir): Typo.
6441
6442 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6443
6444         * autogen.sh (srcdir): urg. Touch install-sh.
6445
6446         * stepmake/bin/install-sh (Module): remove.
6447
6448         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6449
6450         * lily/include/relocate.hh: new file.
6451
6452         * lily/relocate.cc: new file. Contain relocation logic.
6453
6454         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6455         (main): read LILYPOND_VERBOSE as the first thing.
6456
6457         * stepmake/aclocal.m4: remove INSTALL variable.
6458
6459         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6460         separate target for making font symlinks.
6461         (documentation-dir): use $(if $(findstring )) for switching off
6462         Documentation.
6463
6464         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6465         something if DOCUMENTATION is no.
6466
6467 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6468
6469         * VERSION: release 2.7.24
6470
6471         * lily/script-column-engraver.cc (stop_translation_timestep):
6472         delay adding to script-column.
6473
6474         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
6475
6476         * python/convertrules.py (conv): rule for number-visibility
6477
6478         * lily/slur-configuration.cc (score_extra_encompass): different
6479         distance measure for avoid and inside avoidance.
6480         (score_extra_encompass): use 1/(distance+eps) as penalty.
6481
6482         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6483         encompass objects for generating slur curves.
6484
6485         * lily/slur.cc: use details iso. slur-details property.
6486
6487         * input/regression/slur-tuplet.ly: new file.
6488
6489         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
6490
6491         * flower/include/offset.hh (class Offset): new operator /=
6492
6493         * lily/tuplet-number.cc (print): new file, new interface.
6494
6495         * scm/define-grob-properties.scm (all-user-grob-properties):
6496         remove number-visibility property.
6497
6498         * lily/tuplet-bracket.cc (calc_control_points): new function
6499         (calc_connect_to_neighbors): new function.
6500         (print): remove text handling for tuplet numberdef.
6501
6502         * lily/tuplet-engraver.cc (struct Tuplet_description): create
6503         TupletNumbers too. 
6504
6505         * lily/lily-guile.cc (robust_scm2booldrul): new function
6506
6507         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6508
6509         * lily/tuplet-bracket.cc (calc_position_and_height): use
6510         staff-padding to control whether tuplet brackets are over staves.
6511
6512         * lily/grob.cc (suicide): clear dim_caches_.
6513
6514         * lily/dimension-cache.cc (clear): new function.
6515
6516         * lily/grob.cc (extent): swap order of min-extent and extent
6517         calculations. This fixes hara kiri staves. 
6518
6519 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6520
6521         * lily/main.cc: Nitpick: relocation is not based on path, but on
6522         directory (location).
6523
6524 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6525
6526         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6527
6528         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6529
6530         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6531
6532         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6533
6534         * stepmake/stepmake/generic-vars.make (Module): idem.
6535
6536         * stepmake/stepmake/executable-targets.make (default): use it.
6537
6538         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6539
6540         * make/GNUmakefile: don't install make rules.
6541
6542         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6543         slashes.
6544         (prepend_env_path): more verbosity.
6545
6546 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6547
6548         * GNUmakefile.in: add dir argument for find command.
6549
6550         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6551         fixes weird line numbers for point & click.
6552
6553         * lily/source-file.cc (get_counts): init line/column/char counts.
6554
6555 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6556
6557         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6558
6559 2005-12-16  Graham Percival  <gpermus@gmail.com>
6560
6561         * Documentation/user/basic-notation.itely, advanced-notation.itely:
6562         minor fixes from Fredric.  Thanks!
6563
6564 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6565
6566         * ly/music-functions-init.ly: add \bar and \clef music function 
6567
6568         * lily/lily-lexer.cc: idem.
6569
6570         * lily/parser.yy (FIXME): remove BAR and CLEF.
6571
6572 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6573
6574         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6575
6576         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6577         function arguments too
6578
6579         * lily/main.cc (set_relocation): new function.
6580
6581         * scripts/musicxml2ly.py (convert): add \version
6582
6583         * lily/tie.cc: remove get_default_attachments()
6584
6585         * VERSION (PACKAGE_NAME): release 2.7.23
6586         
6587         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6588         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6589
6590         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6591
6592         * lily/tie-formatting-problem.cc (score_ties): new function
6593         (get_variations): new function. Try flipping dirs for collisions.
6594         (generate_optimal_chord_configuration): new function. 1-opt search
6595         for better configuration.
6596
6597         * lily/tie-configuration.cc: new file.
6598
6599         * lily/tie.cc: junk Tie::get_configuration()
6600
6601         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6602         (score_ties_configuration): new function.
6603         (generate_ties_configuration): new function.
6604         (generate_base_chord_configuration): new function.
6605         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
6606         (set_manual_tie_configuration): Move body from tie-column-format.cc 
6607
6608         * input/regression/tie-dot.ly: new file.
6609
6610         * lily/tie-formatting-problem.cc (score_configuration): score
6611         tie/dot collisions.
6612
6613         * lily/tie-helper.cc (get_transformed_bezier): new function
6614
6615         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6616
6617         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6618         -undefined suppress iso. -framework Python 
6619
6620         * scm/define-grobs.scm (all-grob-descriptions): set
6621         springs-and-rods (thanks Joe Neeman!)
6622
6623 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6624
6625         * input/no-notation/display-lily-tests.ly (test): 
6626         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6627         changed from \tag #'(a b) to \tag #'a \tag #'b
6628
6629 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6630
6631         * Documentation/topdocs/NEWS.tely: strip out-www.
6632
6633         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6634
6635         * config.make.in (AR): add AR and RANLIB
6636
6637         * flower/libc-extension.cc: include cassert
6638
6639         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6640         darwin check.
6641
6642 2005-12-11  Graham Percival  <gpermus@gmail.com>
6643
6644         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6645
6646         * stepmake/stepmake/python-modules-vars.make: define
6647         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
6648
6649         * THANKS: added Johannes Schindelin.
6650
6651 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6652
6653         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6654
6655         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6656         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
6657
6658         * lily/parser.yy: reorganize file layout.
6659
6660         * ly/music-functions-init.ly: add tweak music function.
6661
6662         * lily/grob-info.cc (ultimate_music_cause): new function:
6663         recursively lookup causes. 
6664
6665         * lily/parser.yy (chord_body_element): allow music functions for
6666         post-events, allow music functions for chord elements. 
6667  
6668         * lily/font-config-scheme.cc (display_fontset): add cast.
6669
6670         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6671         #'(a b) -> \tag #'a \tag #'b rule.
6672
6673         * python/musicexp.py (Output_printer.dump_version): new function
6674
6675 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6676
6677         * lily/parser.yy (FIXME): remove \tag
6678         (FIXME): remove tag_music() function.
6679
6680         * lily/lily-lexer.cc: remove \tag
6681
6682         * ly/music-functions-init.ly: define music-function "tag"
6683
6684         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6685
6686 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6687
6688         * VERSION (PATCH_LEVEL): release 2.7.22
6689
6690         * input/regression/lyric-hyphen-retain.ly: renew.
6691
6692         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6693         grob
6694
6695         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6696         iso. minimum-length property for rods.
6697
6698         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6699         LyricSpace item to keep lyrics spaced apart.
6700
6701         * ly/engraver-init.ly: remove Separating_line_group_engraver
6702
6703         * Documentation/user/music-glossary.tely: do setfilename before
6704         music-glossary.
6705
6706 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6707
6708         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6709         See xref documentation, for example.
6710
6711 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6712
6713         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6714         pending_skip iso. ly_voice[-1]
6715         (main): add if __main__ for debugging.
6716
6717         * python/musicxml.py (Accidental.__init__): new class.
6718
6719         * scripts/musicxml2ly.py (progress): new function
6720         (musicxml_key_to_lily): don't barf on modeless keys.
6721         (create_skip_music): new function.
6722         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6723         (musicxml_note_to_lily_main_event): new function.
6724
6725         * python/musicexp.py (Music.__init__): add comment field.
6726         (NestedMusic.append): new routine.
6727         (SequentialMusic.print_ly): print comment.
6728         (ArpeggioEvent.ly_expression): new class
6729         (BeamEvent.ly_expression): new class
6730         (NoteEvent.__init__): support for cautionary/forced accs.
6731
6732         * lily/lookup.cc (slur): normal order for array loop.
6733
6734         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6735         to 0.0.
6736
6737         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6738         collapsed.
6739
6740 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6741
6742         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6743
6744         * scripts/lilypond-book.py: Introduce option
6745             --preserve-line-breaks, for usage with srcltx
6746
6747 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6748
6749         * scm/output-lib.scm (print-circled-text-callback): draw circle
6750         around text using make-circle-markup.
6751
6752         * Documentation/user/*: strip out-www from file names.
6753
6754 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6755
6756         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6757         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6758
6759 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6760
6761         * Documentation/user/GNUmakefile: idem.
6762
6763         * Documentation/user/macros.itexi: strip out-www
6764
6765         * python/rational.py: python 2.3 compat.
6766
6767         * VERSION (PATCH_LEVEL): release 2.7.21
6768
6769         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6770         option formatting, lilypond style.
6771
6772         * python/musicexp.py: grab from Ikebana: a library for composing
6773         ly music expressions. 
6774         (Output_printer): class for advanced .ly printing.
6775         (eg. tupletting) 
6776
6777         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6778         convert to pythonesque structure.
6779
6780         * python/rational.py: PD rational number class.
6781
6782         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6783
6784 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6785
6786         * lily/part-combine-iterator.cc: Minor bugfix
6787         
6788         * THANKS: Update bughunters
6789
6790 2005-12-02  Werner Lemberg  <wl@gnu.org>
6791
6792         * mf/README: Document process for proper mf2pt1 conversion.
6793
6794         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6795         overlapping.
6796
6797         * mf/feta-harmonica.mf: Removed.  Unused.
6798
6799 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6800
6801         * scripts/lilypond-book.py (do_file): fix thinkos.
6802
6803 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6804
6805         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6806         ($(outdir)/parser.cc): 
6807         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6808
6809 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6810
6811         * ly/titling-init.ly (tagline): it should be a space between
6812         "Music engraving by LilyPond" and the version number.
6813
6814 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6815
6816         * VERSION (PACKAGE_NAME): release 2.7.20
6817
6818 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6819
6820         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6821
6822         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6823         1.0.
6824         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6825
6826 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6827
6828         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6829
6830         * kpath-guile/: remove directory
6831
6832         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6833         file. Encapsulate kpathsea using commandline tools.
6834
6835         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6836         kpathsea) module.
6837
6838 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6839
6840         * Documentation/user/advanced-notation.itely (Setting automatic
6841         beam behavior): Correct a few typos. Thanks to David Bobroff.
6842
6843         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6844         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6845
6846 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6847
6848         * scripts/*.py: gmane address for bugs.
6849
6850 2005-11-28 Pal Benko <benkop@freestart.hu>
6851         
6852         * make/ly-rules.make: add -f switch to mv
6853
6854         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6855
6856         * lily/bar-line.cc: interpret it
6857
6858 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6859
6860         * configure.in (--disable-documentation): New switch.
6861
6862         * GNUmakefile.in: Use it.
6863
6864         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6865
6866 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6867
6868         * scripts/lilypond-book.py (do_file): search chunks for
6869         \\begin{document}
6870
6871         * GNUmakefile.in: add copy step in between so we can lose the
6872         out-www directories.
6873
6874 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6875
6876         * lily/pango-font.cc (pango_item_string_stencil): put
6877         geometry.width into glyph-string too.
6878
6879 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6880
6881         * scm/define-music-display-methods.scm (RevertProperty):
6882         (OverrideProperty): Use grob-property-path property, a list of
6883         symbols, instead of grob-property, which used to be a single
6884         symbol.
6885         (BassFigureEvent): a figure can be a plain number, not necessarily a
6886         markup.
6887
6888 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6889
6890         * VERSION: release 2.7.19
6891         
6892         * lily/figured-bass-engraver.cc (process_music): check
6893         figuredBassCenterContinuations first.
6894
6895         * scm/translation-functions.scm (format-bass-figure): make double
6896         sharp larger. 
6897
6898         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6899         determine X-parent.
6900
6901         * lily/system-start-delimiter-engraver.cc: move from
6902         Nested_system_start_delimiter_engraver, rename
6903         Nested_system_start_delimiter_engraver ->
6904         System_start_delimiter_engraver.
6905
6906         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6907         bracket type from hierarchy.
6908
6909 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6910
6911         * lily/rest.cc (y_offset_callback): read staff-position.
6912
6913         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6914         mark after-line-breaking-callback as internal.
6915
6916         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6917
6918 2005-11-25  Werner Lemberg  <wl@gnu.org>
6919
6920         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6921
6922 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6923
6924         * stepmake/bin/add-html-footer.py (do_file): add google
6925
6926         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6927         staff if first_start_ is true.
6928
6929 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6930
6931         * scripts/midi2ly.py (split_track): add __repr__ members.
6932         (track_first_item): only return Item if not None. This fixes a
6933         problem when dumping a track that starts with an empty channel.
6934
6935         * python/midi.c: doc module.
6936
6937 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6938
6939         * Documentation/user/global.itely (Creating MIDI files): Fix
6940         compilation problem.
6941
6942 2005-11-22  Graham Percival  <gpermus@gmail.com>
6943
6944         * Documentation/user/basic-notation.itely: clarify dynamic
6945         padding text.
6946
6947         * Documentation/user/advanced-notation.itely: add unicode
6948         escape control example, whatever that is.  :)
6949
6950         * Documentation/user/global.itely: added "removing dynamics
6951         from MIDI" code.
6952
6953 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6954
6955         * VERSION (PATCH_LEVEL): release 2.7.18
6956
6957         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6958         System_start_delimiter_engraver by
6959         Nested_system_start_delimiter_engraver.
6960
6961         * lily/nested-system-start-delimiter-engraver.cc (struct
6962         Bracket_nesting_node): new class.
6963         (struct Bracket_nesting_group): new class
6964         (struct Bracket_nesting_staff): new class.
6965         (process_music): create hierarchy of grobs. This allows separate
6966         tuning of different SSDs. 
6967
6968         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6969         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6970
6971 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6972
6973         * lily/side-position-interface.cc (aligned_side): multiply
6974         staff_radius by 2.
6975
6976         * lily/script-engraver.cc (make_script_from_event): allow setting
6977         values to '()
6978
6979 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6980
6981         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6982
6983         * scm/define-grobs.scm (all-grob-descriptions): new grob
6984         NestedSystemStartDelimiter.
6985
6986         * input/regression/system-start-heavy-bar.ly: new file.
6987
6988         * lily/nested-system-start-delimiter-engraver.cc: new file.
6989
6990         * lily/nested-system-start-delimiter.cc: new file.
6991
6992         * input/regression/system-start-nesting.ly: new file.
6993
6994         * scm/define-grobs.scm (all-grob-descriptions): use X side
6995         positioning for positioning braces for nested contexts.
6996
6997         * lily/system-start-delimiter.cc (print): don't divide extent by
6998         staff_space.
6999         (print): use style iso. glyph.
7000         (staff_bracket): translate glyph inside routine already.
7001
7002 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
7003
7004         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7005         names.
7006
7007 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7008
7009         * scm/define-context-properties.scm
7010         (all-user-translation-properties): rename figuredBassFormatter
7011         from newFiguredBassFormatter.
7012
7013         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7014
7015         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7016
7017         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7018
7019         * lily/beam.cc (calc_beaming): new function.
7020         (calc_shorten): new function.
7021
7022         * THANKS: add Edward Neeman.
7023
7024         * input/regression/accidental-clef-change.ly: new file.
7025
7026         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7027
7028         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7029
7030         * lily/clef-engraver.cc (inspect_clef_properties): reset
7031         localKeySignature for clef changes.
7032
7033 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
7034
7035         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
7036         add dummy definition that works in Linux and add information in
7037         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7038
7039         * Documentation/user/changing-defaults.itely (Modifying context
7040         plug-ins): Add index for \with.
7041
7042         * Documentation/user/music-glossary.tely (dal segno): Updated
7043         example to version >=2.6.
7044
7045 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
7046
7047         * Documentation/user/instrument-notation.itely (Printing chord
7048         names): Reorder \chordmode and \repeat in one example.
7049
7050 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7051
7052         * VERSION: release 2.7.17
7053         
7054         * Documentation/topdocs/NEWS.tely (Top): add note about
7055         refactoring.
7056
7057         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7058         new function. Search region of 3 positions for best tie.
7059         (score_configuration): new function.
7060         (score_aptitude): new function.
7061         (generate_configuration): new function.
7062         (get_configuration): new function.
7063         (Tie_formatting_problem): new function
7064
7065         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
7066
7067         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7068
7069         * THANKS: add Eduardo Vieira & Ralph Little
7070
7071         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7072         narrower.
7073
7074         * lily/include/tie-formatting-problem.hh (class
7075         Tie_formatting_problem): add Tie_details to
7076         Tie_formatting_problem. Update calling conventions.
7077
7078         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7079         config.make.
7080
7081         * Documentation/user/lilypond.tely: remove musedata2ly entry.
7082
7083 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
7084
7085         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7086         scm/define-context-properties.scm: Maintenance bugfix: make
7087         ligature brackets work again by removing obsolete ligature
7088         primitive callback push/pop.
7089
7090         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7091         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
7092         value.
7093
7094 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
7095
7096         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7097         used and do not call it a path.
7098         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7099
7100 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7101
7102         * lily/include/tie-formatting-problem.hh (class
7103         Tie_formatting_problem): new file.
7104
7105         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7106
7107         * Documentation/misc/ChangeLog-2.3:  new file.
7108
7109         * lily/audio-staff.cc (output): degarianize.
7110
7111 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7112
7113         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7114         Unset PYTHONOPTIMIZE.  Fixes install if set.
7115
7116 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7117
7118         * python/convertrules.py (conv): add warning about drums. 
7119
7120         * make/stepmake.make: include toplevel-version.make after config.make.
7121
7122         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7123         also allow python2.4
7124
7125         * config.make.in (configure-srcdir): remove GXX GCC vars.
7126
7127         * stepmake/aclocal.m4: don't do non-srcdir build with
7128         symlinks. Use inclusion, so the src directory name can be changed.
7129
7130 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7131
7132         * make/mutopia-vars.make:
7133         * make/ly-vars.make: Use src-wildcard iso wildcard for source
7134         files.
7135
7136 2005-11-13  Werner Lemberg  <wl@gnu.org>
7137
7138         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7139         but the affected path.  This ensures that the (overlapping) outlines
7140         have the same direction, which is a necessary prerequisite for
7141         FontForge's algorithm to remove overlaps.
7142         Formatting.
7143
7144         * mf/feta-haak.mf: Formatting.
7145         (draw_bracket): Slightly modify outline to avoid an unnecessary
7146         corner.
7147         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7148         them from the affected paths.
7149
7150 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7151
7152         * mf/README: remove xpm / accordion notes.
7153
7154         * lily/tie-column-format.cc (set_chord_outline): add dots into
7155         skyline extents. This fixes tie formatting if the left head has dots.
7156
7157         * lily/tie.cc (get_configuration): only shift tie by a whole staff
7158         space inside the staff.
7159         (get_configuration): shift another position if necessary in case
7160         of left head tie  
7161
7162 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7163
7164         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7165         buildscript-dir iso. $(depth)/buildscripts.
7166
7167         * tex/GNUmakefile (local-uninstall): remove
7168         music-drawing-routines.ps juggling.
7169
7170         * stepmake/stepmake/install-targets.make (local-install-files):
7171         prepend src-dir to install targets.
7172
7173         * lily/system-start-delimiter-engraver.cc
7174         (acknowledge_system_start_delimiter): use
7175         add_offset_callback(). This fixes translation of nested
7176         staffgroups.
7177
7178         * lily/grob-closure.cc (add_offset_callback): only encaps in
7179         simple_closure if it's a procedure.
7180         
7181         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7182         from bar-line.
7183
7184         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7185         remove-empty where pertinent.
7186
7187 2005-11-12  Graham Percival  <gpermus@gmail.com>
7188
7189         * Documentation/user/instrument-notation.itely: added
7190         Cameron Horsburgh's multiple stanzas docs.  Thanks!
7191
7192 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7193
7194         * lily/GNUmakefile
7195         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7196         make picture in builddir, not srcdir.
7197
7198 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7199
7200         * VERSION: release 2.7.16
7201         
7202         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7203         shell arguments. 
7204
7205 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
7206
7207         * Documentation/user/examples.itely (Piano templates): Minor
7208         modification to the Piano centered lyrics example.
7209
7210 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7211
7212         * scripts/lilypond-invoke-editor.scm (run-browser): look at
7213         $BROWSER.
7214
7215         * Documentation/user/point-and-click.itely: simplify p&c
7216         instruction: don't configure firefox. Put lilypond-invoke-editor
7217         in front of the browser.
7218
7219         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7220         (run-browser): new function.
7221
7222         * lily/parser.yy (Lily_lexer): recognize Book
7223
7224         * lily/book.cc (clone): new function
7225
7226         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7227
7228 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
7229
7230         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7231         Maintenance bugfix: reduce number of font related warnings by
7232         updating naming conventions for glyph-name.
7233
7234 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7235
7236         * scm/define-grobs.scm (all-grob-descriptions): add
7237         rhythmic-grob-interface to TabNoteHead.
7238
7239         * scm/layout-beam.scm (check-quant-callbacks): remove
7240         set_stem_lengths()
7241
7242 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
7243
7244         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7245         alignment of centered divisiones.
7246
7247         * scm/scripts.scm (articulations): Maintenance bugfix:
7248         follow-into-staff -> quantize-position.
7249
7250         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7251         plica head in porrectus deminutus.
7252
7253 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7254
7255         * make/lilypond.fedora.spec.in (Group): add %clean section.
7256
7257         * lily/tuplet-bracket.cc (print): change check: remove bracket if
7258         less then 1/5th of total length.  
7259         (print): use gap too.  Fixes tupletUp-single-bracket.ly
7260
7261         * scm/music-functions.scm (glue-mm-rest-texts): also put other
7262         events into EventChord. This fixes textspanners on mm rests. Fixes
7263         spanner-rest.ly
7264
7265         * lily/side-position-interface.cc (get_axis): read side-axis
7266         (set_axis): set side-axis.
7267
7268         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7269         properties everywhere.
7270
7271         * lily/spacing-spanner.cc (breakable_column_spacing): add
7272         average-spacing-wishes. Take maximum if not set.
7273         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7274
7275         * scm/define-grobs.scm (all-grob-descriptions): add
7276         average-spacing-wishes.
7277
7278         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7279         offset callbacks. This fixes alignment for Fingering objects.
7280
7281         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7282         space for key - timesig combination. 
7283
7284         * input/regression/script-stem-tremolo.ly (Module): new file.
7285
7286         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7287         to key sig.
7288
7289         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7290         Fixes: c-tremolo-script.ly.
7291         
7292         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7293
7294         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7295         
7296         * scm/define-grobs.scm (all-grob-descriptions): remove
7297         self-X-offset. Fixes alignment of octavate-8.
7298
7299         * scripts/lilypond-book.py (datadir): look in
7300         LILYPONDPREFIX/share/lilypond/current/
7301
7302         * GNUmakefile.in: symlink current to <VERSION>. 
7303
7304 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
7305
7306         * lily/main.cc: eps listed as a backend.
7307
7308 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7309
7310         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7311
7312 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7313
7314         * lily/include/score.hh (class Score): remove texts_ member.
7315
7316         * lily/beam.cc (set_stem_lengths): force direction callback.
7317         (print): read quantized-positions, so we can force
7318         Beam::set_stem_lengths to occur.
7319         (rest_collision_callback): use common X parent. 
7320
7321 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7322
7323         * flower/file-path.cc (find): Bugfix: Return name of file found.
7324
7325         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7326         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7327         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7328
7329 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7330
7331         * flower/offset.cc: idem.
7332
7333         * mf/*.mf: update email address.
7334
7335         * lily/font-config-scheme.cc:  new file.
7336
7337         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7338
7339         * lily/*:  cs.uu.nl -> xs4all.nl
7340
7341         * VERSION (PATCH_LEVEL): release 2.7.15
7342
7343         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7344         spec files.
7345
7346         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7347
7348 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7349
7350         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
7351
7352         * lily/staff-performer.cc (process_music): add audio
7353         elements. This makes MIDI instrument changes work once again.
7354
7355         * lily/main.cc (LY_DEFINE): add gmane address.
7356
7357         * lily/beam.cc: remove calc_positions()
7358
7359         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7360         original_ in private scope.
7361         (class Grob): drop pscore_ pointer, change to output_def pointer.
7362         (class Grob): cleanup class definition.
7363
7364         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7365
7366 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7367
7368         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7369         absolute.  Better diagnostics.
7370
7371         * GNUmakefile.in: Add bin/ to tree and populate with some links.
7372         This makes lilypond run from the build directory using argv0
7373         relocation (without any --prefix or LILYPONDPREFIX setting).
7374
7375 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7376
7377         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7378
7379         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7380         with simple-closure.
7381
7382         * lily/self-aligment-interface.cc (set_align_self): new function
7383         (set_center_parent): new function.
7384
7385         * lily/side-position-interface.cc (set_axis): new function.
7386
7387         * lily/new-fingering-engraver.cc (position_scripts): use drul for
7388         generic code. 
7389
7390         * scm/define-grob-properties.scm (all-user-grob-properties):
7391         remove [XY]-offset-callbacks add [YX]-offset
7392         
7393 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
7394
7395         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7396         entry for time signatures after breathing signs. Bug report by
7397         Scott Russell.
7398
7399 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7400
7401         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7402         not absolute, make it absolute using PATH.
7403
7404 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7405
7406         * python/midi.c (initmidi): Fix type for mingw.
7407
7408 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
7409
7410         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7411
7412         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7413         cross compiling.
7414
7415         * stepmake/aclocal.m4: Support python cross compiling.
7416
7417         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7418         Add mingw section.
7419
7420 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7421
7422         * scm/output-lib.scm (chain-grob-member-functions): replace
7423         chained-callback.cc
7424
7425         * lily/chained-callback.cc (Module): remove file.
7426
7427         * lily/rest-collision.cc (force_shift_callback_rest): change to
7428         chained callback.
7429
7430         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
7431
7432         * lily/grob.cc (y_parent_positioning): remove axis argument from
7433         parent_positioning callbacks.
7434         (Grob): junk init code
7435         (get_offset): use generic property callbacks for
7436         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7437         (axis_parent_positioning): new function
7438         (axis_offset_symbol): new function
7439         (chain_offset_callback): new function
7440         (add_offset_callback): new function
7441
7442         * lily/beam.cc (rest_collision_callback): change signature; this
7443         is now a chained callback.
7444
7445         * lily/include/dimension-cache.hh (class Dimension_cache): remove
7446         callback administration.
7447
7448         * lily/simple-closure.cc: new file. Smob type that allows "grob
7449         member functions",
7450
7451             (ly:make-simple-closure FUNC A B)
7452
7453         is evaluated as (FUNC grob A B). This allows chaining of callbacks
7454         in various ways.
7455
7456         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7457         callbacks.
7458
7459         * lily/slur.cc (outside_slur_callback): take 2 arguments.
7460
7461         * lily/rest.cc (polyphonic_offset_callback): remove.
7462
7463         * lily/script-engraver.cc (try_music): remove bool* argument.
7464
7465         * scm/script.scm (default-script-alist): set quantize-position
7466         appropriately.
7467
7468         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
7469
7470         * lily/side-position-interface.cc (aligned_side): move staff
7471         position quantization from
7472         Side_position_interface::quantised_position().
7473         (quantised_position): remove
7474         
7475 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7476
7477         * input/regression/beam-quant-standard.ly: reindent, set
7478         debug-beam-quanting to #t.
7479
7480         * lily/beam-concave.cc (calc_concaveness): set concaveness to
7481         10000 if this is a "hard" concave beam.
7482
7483         * lily/beam.cc (calc_least_squares_positions): change from
7484         calc_least_squares_dy
7485         (set_stem_lengths): this is now a chained callback.
7486
7487         * lily/context-property.cc (execute_general_pushpop_property):
7488         bugfix override with procedure should have effect.
7489
7490         * scm/define-grob-properties.scm (all-internal-grob-properties):
7491         remove position-callbacks.
7492
7493         * scm/define-grobs.scm (all-grob-descriptions): use
7494         ly:make-callback-chain for positions property.
7495
7496         * scm/layout-beam.scm (check-quant-callbacks): return list of
7497         chained callbacks.
7498
7499         * scm/lily.scm (type-p-name-alist): add callback-chain
7500
7501         * lily/lily-guile.cc (type_check_assignment): type check failure
7502         is warning not message.
7503
7504         * lily/grob-property.cc (try_callback): walk callback chain if
7505         appropriate.
7506
7507         * lily/chained-callback.cc: new file. new smob type.
7508
7509         * lily/lily-guile.cc (procedure_arity): new function.
7510
7511 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7512
7513         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7514
7515 2005-10-25  John Mandereau  <john.mandereau@free.fr>
7516  
7517         * Documentation/user/instrument-notation.itely (Figured bass):
7518         describe new features
7519
7520 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7521
7522         * lily/beam.cc (calc_least_squares_dy): use property callback.
7523
7524         * lily/beam-concave.cc (calc_concaveness): use property callback.
7525
7526         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
7527
7528 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
7529
7530         * HACKING: Update.
7531
7532 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7533
7534         * scm/layout-page-layout.scm (page-headfoot): annotate
7535         pagetopspace too.
7536
7537         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
7538
7539         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7540         doesn't take y-space.
7541
7542         * scm/paper.scm (paper-alist): fix A7 dimensions. 
7543
7544 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
7545
7546         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7547         src-wildcard, remove $(wildcard).
7548
7549         * po/GNUmakefile (PO_FILES): 
7550         * ps/GNUmakefile (PS_FILES): 
7551         * tex/GNUmakefile (TEX_FILES): 
7552         * cygwin/GNUmakefile (POSTINSTALLS):
7553         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7554         some wildcard calls.
7555
7556 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7557
7558         * THANKS: add Thomas Bushnell.
7559
7560 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
7561
7562         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7563         (lilypond-main): Redirect to gui-main if 'gui is set.
7564
7565         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7566         for alternative installations kludging s/share/lib/g
7567         LILYPONDPREFIX. 
7568
7569         * SConstruct (libdir_package_version): Define.
7570
7571         * python/SConscript: 
7572         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7573         module in libdir.  
7574
7575 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7576
7577         * lily/main.cc: clarify --safe.
7578
7579 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7580
7581         * VERSION: release 2.7.14
7582         
7583         * Documentation/user/*.itely: remove minimumVerticalExtent.
7584
7585         * scm/define-grobs.scm (all-grob-descriptions): remove
7586         RemoveEmptyVerticalGroup
7587
7588         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7589
7590         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7591         compile on MOSX
7592
7593         * python/convertrules.py (conv): add rules.
7594
7595         * lily/grob.cc: remove is_empty()
7596
7597         * lily/grob-property.cc: remove add_to_list_property().
7598
7599         * scripts/convert-ly.py (datadir): add prefix switching hack to
7600         .py too.
7601
7602         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7603         space-function tweak.
7604
7605         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7606
7607         * scm/define-grob-properties.scm (all-user-grob-properties):
7608         remove callback property.
7609
7610         * lily/include/grob.hh (class Grob): remove property_callbacks_
7611         member. Properties of procedure type are assumed to be callbacks.
7612
7613         * lily/ligature-engraver.cc (override_stencil_callback):
7614         rewrite. Use noteHeadLigaturePrimitive as source.
7615
7616         * scm/define-grob-properties.scm (all-internal-grob-properties):
7617         remove ligature-primitive-callback
7618
7619         * lily/include/dimension-cache.hh (class Dimension_cache): make
7620         class, with Grob as friend.
7621
7622         * lily/grob.cc: remove set_extent_callback(), set_extent() and
7623         has_extent_callback()
7624
7625         * scm/translation-functions.scm (format-new-bass-figure): read
7626         figuredBassPlusDirection
7627
7628         * scm/define-context-properties.scm
7629         (all-user-translation-properties): add figuredBassPlusDirection.
7630
7631         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7632
7633         * lily/align-interface.cc (set_ordered): new function.
7634
7635         * lily/grob.cc (flush_extent_cache): rewrite.
7636
7637         * lily/dimension-cache.cc (Dimension_cache): cache extent as
7638         Interval pointer directly.
7639
7640         * lily/main.cc (setup_paths): insert extra / .
7641         (setup_paths): junk cff entry.
7642
7643         * lily/font-config.cc (init_fontconfig): only add type1 / otf
7644         directories.
7645
7646         * lily/axis-group-engraver.cc (finalize): remove
7647         extraVerticalExtent, minimumVerticalExtent verticalExtent.
7648
7649         * lily/grob.cc (Grob): don't set extent from ctor.
7650         (extent): use property callbacks. 
7651
7652         * lily/axis-group-interface.cc: remove set_axes() function.
7653
7654         * lily/grob-property.cc (del_property): new function.
7655
7656 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7657
7658         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7659         
7660 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7661
7662         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7663
7664 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7665
7666         * mf/SConscript: Updates.
7667
7668         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7669
7670         * stepmake/stepmake/*:
7671         * */GNUmakefile:
7672         * config.make.in:
7673         * GNUmakefile.in:
7674         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7675         from any directory in build-dir.  Cleanups.
7676
7677         * make/srcdir.make.in: Remove.
7678
7679         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7680
7681         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7682         main).
7683
7684         * lily/SConscript: Remove ttftools.
7685
7686         * SConstruct: Resurrect.
7687
7688 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7689
7690         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7691         Y coordinate. 
7692
7693         * lily/paper-book.cc (add_score_title): put Paper_score title into
7694         systems_ list.
7695
7696         * scm/translation-functions.scm (format-new-bass-figure): also
7697         allow plus in combination with _
7698
7699 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7700
7701         * VERSION: 2.7.13 released.
7702
7703         * lily/note-collision.cc (check_meshing_chords): don't wipe
7704         stencil, merely set transparent.
7705
7706         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7707         (Top): document #'callbacks.
7708         (Top): document nested \override.
7709
7710         * input/regression/figured-bass.ly: update for slash and pluses.
7711
7712         * input/regression/figured-bass-continuation-forbid.ly (Module):
7713         new file.
7714
7715         * scm/translation-functions.scm (format-new-bass-figure): use
7716         slashed-digit if diminished is set.
7717         (format-new-bass-figure): add + if 'augmented is set.
7718
7719         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7720
7721         * input/test/piano-staff-distance.ly: remove file.
7722
7723         * Documentation/user/advanced-notation.itely (Formatting cue
7724         notes): use length-fraction for making stems/beams smaller.
7725
7726         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7727         modifications.
7728
7729         * lily/new-figured-bass-engraver.cc: new property
7730         centerFiguredBassContinuations
7731
7732         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7733         use callbacks.
7734
7735         * lily/context-property.cc (execute_general_pushpop_property):
7736         robustness checks.
7737
7738         * input/regression/override-nest.ly: new file.
7739
7740         * python/convertrules.py (FatalConversionError.subber): conversion
7741         rule for #'callbacks
7742
7743         * input/regression/override-nest.ly: new function.
7744
7745         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7746         #c too. 
7747
7748         * lily/context-property.cc (lookup_nested_property): new function.
7749         (evict_from_alist): new function.
7750         (general_pushpop_property): new function.
7751         (execute_general_pushpop_property): rewrite. Support nested
7752         properties too.
7753
7754 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7755
7756         * lily/beam.cc: use length-fraction too.
7757
7758         * scm/define-grob-properties.scm (all-user-grob-properties):
7759         remove property flag-width-function
7760         (all-user-grob-properties): remove space-function.
7761
7762         * scm/layout-beam.scm: remove flag-width-function.
7763
7764         * lily/beam.cc: remove flag-width-function
7765
7766         * scm/layout-beam.scm: remove beam dir functions.
7767
7768         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7769
7770         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7771         for easier grace tweaks.
7772
7773         * lily/beam.cc: remove dir-function.
7774
7775         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7776
7777         * lily/grob.cc: remove spacing-procedure.
7778
7779         * lily/note-head.cc (calc_stem_attachment): new function.
7780         (internal_print): use callback to get glyph-name.
7781
7782         * lily/grob-property.cc (get_interfaces): new function.
7783
7784         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7785
7786         * lily/stem.cc (calc_stem_end_position): new function.
7787         (calc_length): new function.
7788         document details for stem.
7789         remove Stem::get_direction()
7790
7791         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7792
7793         * lily/grob-property.cc (set_callback): new function.
7794
7795         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7796
7797         * lily/item-scheme.cc: new file.
7798
7799         * lily/bar-line.cc (before_line_breaking): remove function.
7800         remove bar-size-procedure, break-glyph-function
7801
7802         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7803
7804         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7805
7806         * lily/system-start-delimiter.cc (print): suicide from
7807         here. Remove after_line_breaking_callback.
7808
7809         * lily/script-interface.cc (calc_direction): use callback for direction.
7810
7811         * lily/side-position-interface.cc (aligned_side): don't use
7812         Side_position_interface::get_direction directly. Use callback. 
7813
7814         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7815         calculate stencil.
7816         (get_print_stencil): rename from get_stencil: create stencil with
7817         transparency, color and cause. 
7818
7819         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7820
7821         * python/convertrules.py (conv): insert temporary warning rule.
7822
7823         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7824
7825         * lily/grob-property.cc (try_callback): remove marker if applicable.
7826
7827         * lily/grob.cc: elucidate doc about after/before-line-breaking
7828
7829         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7830
7831         * lily/stem.cc (height): idem.
7832
7833         * lily/stem-tremolo.cc: idem.
7834
7835         * lily/slur.cc (height): don't use get_uncached_stencil()
7836
7837         * lily/rest.cc (y_offset_callback): use offset callback
7838         iso. after-line-breaking callback.
7839
7840         * lily/grob.cc: change after/before-line-breaking-callback to
7841         after/before-line-breaking dummy properties.
7842
7843         * lily/include/grob.hh: remove Grob_status.
7844
7845         * scm/define-context-properties.scm
7846         (all-user-translation-properties): remove verticalAlignmentChildCallback
7847
7848         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7849         (calc_direction): use callback
7850         (calc_positions): use callback.
7851
7852         * lily/tie.cc (calc_direction): use callback. Only call parent
7853         positioning for more than one tie.
7854
7855         * lily/tie-column.cc (calc_positioning_done): use callback
7856
7857         * lily/slur-scoring.cc (calc_control_points): use callback
7858
7859         * lily/slur.cc (calc_direction): use callback.
7860
7861         * lily/note-collision.cc (force_shift_callback): remove.
7862
7863         * lily/dot-column.cc (force_shift_callback): remove. Use
7864         other_axis_parent_positioning.
7865
7866         * lily/grob.cc (other_axis_parent_positioning): new function.
7867         (same_axis_parent_positioning): new function
7868
7869         * lily/align-interface.cc (alignment_callback): remove function.
7870
7871         * lily/note-collision.cc (calc_positioning_done): use callback.
7872
7873         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7874         (calc_direction): idem.
7875         remove print function.
7876
7877         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7878
7879         * lily/dot-column.cc (calc_positioning_done): use callback.
7880
7881         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7882
7883         * lily/beam.cc (calc_direction): use pseudo-property for beam
7884         direction callback.
7885         (calc_positions): use callback 
7886
7887         * lily/align-interface.cc (calc_positioning_done): use
7888         callback. Fold fixed  distance and normal alignment in one function.
7889
7890         * lily/stem.cc (calc_stem_end_position): use callback.
7891         (calc_positioning_done): idem.
7892         (calc_direction): idem.
7893         (calc_stem_end_position): idem
7894         (calc_stem_info): idem.
7895
7896         * lily/grob-property.cc (get_property_data): new function: 
7897         (try_callback): new function.
7898
7899         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7900         callbacks property.
7901
7902         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7903
7904 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7905
7906         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7907         tie
7908         has no heads.
7909         
7910         * lily/include/*.hh (Module): compile fixes.
7911
7912 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7913
7914         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7915         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7916         instead of (char-syntax nil), thanks to Milan Zamazal.
7917
7918 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7919
7920         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7921         dist.
7922
7923         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7924         themselves.
7925
7926 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7927
7928         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7929         add class_name() method.
7930
7931         * lily/music-scheme.cc: remove ly:music-name.
7932
7933 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7934
7935         * cygwin/postinstall-lilypond.sh: Remove cruft.
7936
7937         * cygwin/postremove-lilypond.sh: Remove.
7938
7939         * cygwin/GNUmakefile (default): Remove postremove rules.
7940
7941 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7942
7943         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7944         even header too.
7945         
7946         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7947         MacOS 9 users.
7948
7949         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7950         consider break index for broken spanner.
7951
7952         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7953         characters from string before splitting.
7954
7955 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7956
7957         * scm/framework-ps.scm (output-preview-framework): use
7958         is-book-title to determine whether to chop off the booktitle.
7959
7960         * lily/paper-book.cc (systems): init from book-title-properties
7961         (add_score_title): init score-title-properties.
7962
7963         * ly/paper-defaults.ly: add {score,book}-title-properties.
7964
7965         * scm/document-backend.scm (lookup-interface): error message if
7966         using unknown interface.
7967
7968         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7969         edge-height.
7970
7971         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7972         make_bracket.
7973         (make_bracket): new function.
7974
7975         * scm/lily.scm (define-scheme-options): add paper-size option.
7976
7977         * ly/declarations-init.ly (laissezVibrer): get paper size from
7978         -dpaper-size
7979
7980         * scm/translation-functions.scm: use \fontsize for changing the
7981         fontsize.
7982
7983         * scm/define-grobs.scm (all-grob-descriptions): set
7984         between-length-limit to 1.0
7985
7986         * lily/tie-helper.cc: add between_length_limit_ detail property.
7987
7988         * mf/feta-bolletjes.mf: typos.
7989
7990         * lily/note-head.cc (internal_print): don't shadow idx
7991         parameter. This fixes wrong attachment for do shape heads.
7992
7993 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7994
7995         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7996
7997         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7998
7999         * scm/layout-slur.scm: rename from slur.scm
8000
8001         * scm/layout-page-layout.scm: rename from page-layout.scm
8002
8003         * scm/layout-beam.scm: rename from beam.scm
8004
8005         * scm/define-grob-interfaces.scm (bass-figure-interface): add
8006         bass-figure-interface
8007
8008         * lily/new-figured-bass-engraver.cc (process_music): add
8009         implicitBassFigures property.
8010         
8011         * scm/define-markup-commands.scm (pad-x): new markup.
8012
8013         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8014         minimumVerticalExtent on FiguredBass context.
8015
8016         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8017         case the continuation crosses a line break.
8018
8019 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8020
8021         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8022         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
8023         absolute file name bug.  
8024
8025 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8026
8027         * VERSION (PACKAGE_NAME): release 2.7.12
8028
8029         * input/regression/figured-bass-continuation-center.ly: new file.
8030
8031         * input/regression/beam-outside-beamlets.ly: new file.
8032
8033         * lily/beam.cc (set_beaming): don't clip edges.
8034         (connect_beams): don't clip edges.
8035
8036         * lily/beaming-info.cc (clip_edges): new function.
8037
8038         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8039
8040         * Documentation/user/instrument-notation.itely (Figured bass):
8041         demonstrate extenders, update seealso links.
8042
8043         * scm/titling.scm (marked-up-headfoot): change tagline
8044         handling. tagline = ##f will blank the tagline as well.
8045
8046 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8047
8048         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8049
8050         * lily/new-figured-bass-engraver.cc (struct
8051         New_figured_bass_engraver): add new_music_found_ member.
8052
8053         * lily/lilypond-version.cc (Lilypond_version): deal with
8054         incorrectly formatted version strings. 
8055
8056         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8057         New_figured_bass_engraver by default.
8058
8059         * lily/ttf.cc (print_trailer): only define glyph names when
8060         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8061
8062 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8063
8064         * lily/horizontal-bracket.cc (make_bracket): new function.
8065
8066         * scm/define-grobs.scm (all-grob-descriptions): new grobs
8067         NewBassFigure, BassFigureBracket, BassFigureContinuation,
8068         BassFigureLine, BassFigureAlignment
8069
8070         * lily/new-figured-bass-engraver.cc (process_music): new file.
8071
8072         * lily/figured-bass-continuation.cc: new file.
8073
8074         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8075         new file.
8076
8077 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
8078
8079         * scripts/lilypond-book.py: Bug fix, put the quote around the
8080         actual score for LaTeX documents.
8081
8082         * scm/define-grobs.scm (all-grob-descriptions): Change
8083         collapse-height of the SystemStartBracket grob to 5.0, 
8084         so the bracket disappears for single stave score lines (similarly
8085         to SystemStartBraces). 
8086
8087         * Documentation/user/advanced-notation.itely (Polymetric
8088         notation): Clarify the use of compressMusic.
8089
8090         * Documentation/user/basic-notation.itely (Grace notes): Clarify
8091         that the grace spacer note in other staves need the same duration
8092         and document the stroke-style property.
8093
8094 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8095
8096         * Documentation/user/global.itely (Vertical spacing): document
8097         alignment-extra-space and fixed-alignment-extra-space.
8098
8099         * Documentation/topdocs/NEWS.tely (Top): add entry.
8100
8101         * input/regression/alignment-vertical-spacing.ly: new file.
8102
8103         * python/convertrules.py (conv): add rule.
8104
8105         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8106
8107         * lily/align-interface.cc (stretch_after_break): new
8108         function. Read fixed-alignment-extra-space property.
8109         (align_elements_to_extents): read alignment-extra-space property.
8110
8111         * lily/lily-guile.cc (robust_scm2dir): new function.
8112
8113         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8114         (annotate-space-left): new function. Annotate space left on page. 
8115         (annotate-y-interval): new function.
8116         (paper-system-annotate-last): new function. Annotate bottom-space.
8117
8118         * mf/feta-beugel.mf (y): 
8119
8120 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8121
8122         * VERSION (PACKAGE_NAME):  release 2.7.11
8123
8124         * scm/lily-library.scm (interval-translate): new function
8125         (interval-center): new function. 
8126
8127         * scm/page-layout.scm (paper-system-annotate): new function. Add
8128         arrows for dimensions.
8129  
8130         * scm/stencil.scm (dimension-arrows): new function.
8131
8132         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8133
8134         * input/regression/page-spacing.ly: add annotatespacing
8135
8136         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8137         (LY_DEFINE): new function ly:paper-system-set-property!
8138
8139         * Documentation/user/global.itely (Paper size): explain how to add
8140         sizes.
8141
8142         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8143         correspond to GS's definition.
8144
8145         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8146         tuplet bracket.
8147         (print): only connect to next bracket if the next one is alive.
8148         (print): set padding to 0.0 if the bound is a breakable
8149         column. This makes tupletFullLength brackets reach up to the staff
8150         line if it doesn't connect to the next line.
8151
8152 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8153
8154         * lily/bar-number-engraver.cc: correct docs.
8155
8156         * scm/output-lib.scm (first-bar-number-invisible): rename from
8157         default-bar-number-visibility
8158
8159 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8160
8161         * scm/define-music-properties.scm (all-music-properties): remove
8162         predicate property.
8163
8164 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
8165
8166         * po/fi.po: refresh.
8167
8168 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8169
8170         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8171         superfluous s1.
8172         (disappear): bugfix.
8173
8174         * lily/stem-tremolo.cc (raw_stencil): read slope property.
8175
8176         * lily/include/paper-system.hh (class Paper_system): remove
8177         staff_extents_ member.
8178
8179         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8180
8181         * lily/include/paper-system.hh (class Paper_system): remove
8182         number_ variable. Remove is_title_. Remove break_before_penalty_
8183
8184         * lily/paper-book.cc (systems): use 'number property iso. number_
8185         member.
8186
8187         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8188         remove ly:paper-system-number.
8189
8190         * scm/lily-library.scm (paper-system-title?): new function.
8191
8192         * lily/book.cc (process): bugfix: flip ?: cases. 
8193
8194         * Documentation/user/changing-defaults.itely (Difficult tweaks):
8195         add outputProperty.
8196
8197         * ly/music-functions-init.ly: add outputProperty music function.
8198
8199         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8200
8201         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8202         and next-padding.
8203         (optimal-page-breaks): rename from ly:optimal-page-breaks.
8204
8205         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8206
8207         * lily/paper-system.cc (internal_get_property): new function.
8208
8209         * Documentation/user/global.itely (Vertical spacing): refer to
8210         page-spacing.ly
8211
8212         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8213         pagetopspace
8214
8215         * input/regression/page-spacing.ly: new file.
8216
8217         * input/regression/page-top-space.ly: new file.
8218
8219         * lily/spacing-spanner.cc: cmath -> math.h
8220
8221         * lily/paper-system.cc (read_left_bound): new function. Read
8222         line-break-system-details from left bound to determine extents.
8223  
8224         * Documentation/user/programming-interface.itely (Using LilyPond
8225         syntax inside Scheme): change applyxxx -> applyXxx.
8226
8227         * ly/music-functions-init.ly: add outputProperty music function.
8228
8229         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8230
8231         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8232
8233         * python/convertrules.py (conv): rule
8234
8235         * ly/music-functions-init.ly: applyxxx -> applyXxx
8236
8237         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8238         TabVoice to Voice.
8239
8240 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8241
8242         * flower/include/real.hh: include <math.h> iso. <cmath>
8243
8244         * flower/include/offset.hh: include real.hh
8245
8246 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8247
8248         * Documentation/user/changing-defaults.itely (Difficult tweaks):
8249         fix example, now that 'interfaces is no longer directly available.
8250
8251         * lily/book.cc (process): don't crash if paper == NULL.
8252
8253         * po/fr.po: update.
8254
8255 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8256
8257         * scm/define-music-types.scm (music-descriptions): set length and
8258         start-callback for QuoteMusic
8259
8260 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
8261
8262         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8263         arguments. Fixes compilation error with gcc 3.3.
8264
8265 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8266
8267         * VERSION: release 2.7.10
8268
8269         * stepmake/stepmake/python-module-rules.make
8270         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
8271
8272         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8273         real.hh
8274
8275 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8276
8277         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8278         -Werror. Otherwise GCC barfs over various optimizations.
8279
8280         * scm/define-grob-properties.scm (all-internal-grob-properties):
8281         add note-head property
8282
8283         * Documentation/user/instrument-notation.itely (Laissez vibrer
8284         ties): new node.
8285
8286         * input/regression/laissez-vibrer-ties.ly: new file.
8287
8288         * lily/laissez-vibrer-engraver.cc: new file.    
8289
8290         * lily/include/tie-column-format.hh: new file.
8291
8292         * lily/tie-column-format.cc: new file. 
8293
8294         * lily/tie-column.cc (set_manual_tie_configuration): new function.
8295
8296         * lily/laissez-vibrer-tie.cc: new file.
8297
8298         * lily/include/laissez-vibrer-tie.hh: new file.
8299
8300         * ly/engraver-init.ly: add Laissez_vibrer_engraver
8301
8302         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8303
8304         * scm/define-grobs.scm (all-grob-descriptions): add
8305         LaissezVibrerTie, LaissezVibrerTieColumn
8306
8307         * lily/tie-column.cc (set_tie_config_directions): new function
8308         (final_shape_adjustment): new function.
8309         (shift_small_ties): new function.
8310
8311         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8312
8313         * lily/include/tie.hh (struct Tie_details): add x_gap_
8314         (struct Tie_configuration): add head_position_
8315
8316         * lily/tie-column.cc (set_chord_outline): new function.
8317
8318         * mf/cmr.enc.in:  remove file.
8319
8320 2005-09-11  Graham Percival  <gpermus@gmail.com>
8321
8322         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
8323
8324 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8325
8326         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8327         reduce aliasing effects.
8328
8329         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8330         box in skyline.
8331
8332 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8333
8334         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8335
8336         * flower/include/real.hh: std::fabs too.
8337
8338 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8339
8340         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
8341
8342         * lily, flower: Include C++ iso C headers.  Import namespace std
8343         throughout.
8344
8345         * lily/side-position-interface.cc: 
8346         * lily/scm-hash.cc: 
8347         * lily/note-head.cc: 
8348         * lily/include/includable-lexer.hh: 
8349         * flower/include/string-data.icc: Remove using std::*.
8350
8351         * lily, flower: Include C++ iso C headers.  Import namespace std
8352         throughout.
8353
8354         * lily/side-position-interface.cc: 
8355         * lily/scm-hash.cc: 
8356         * lily/note-head.cc: 
8357         * lily/include/includable-lexer.hh: 
8358         * flower/include/string-data.icc: Remove using std::*.
8359
8360         * Documentation/user/instrument-notation.itely (Entering lyrics):
8361         Multiple latin-1->utf-8 conversion fix.
8362
8363         * Documentation/user/*tely: Update Emacs cookie to utf-8.
8364
8365 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8366
8367         * lily/tie.cc (get_configuration): also avoid dots for non-space
8368         situations.
8369
8370 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8371
8372         * Documentation/user/instrument-notation.itely: Bugfix.
8373
8374 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8375
8376         * tex/GNUmakefile: don't install texinfo.tex
8377
8378         * tex/ : cleanup: remove unused files.
8379
8380         * lily/general-scheme.cc: remove my_{isinf,isnan}.
8381
8382         * flower/include/real.hh: using std::{isnan,isinf}
8383         
8384         * VERSION (PATCH_LEVEL): release 2.7.9
8385
8386 2005-09-05  Graham Percival  <gpermus@gmail.com>
8387
8388         * Documentation/user/ instrument-notation.itely,
8389         advanced-notation.itely: minor tweaks.
8390
8391         * input/test/script-chart.ly: add item padding.
8392
8393 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8394
8395         * flower/offset.cc: use math.h iso. <cmath>
8396
8397         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8398         of IE users.
8399
8400         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8401         (widen-left-stencil-edges): new function. Fix alignment problems
8402         with LaTeX includegraphics.
8403
8404         * lily/text-interface.cc (interpret_markup): use abort().
8405
8406 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8407
8408         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8409
8410         * lily/tie.cc (get_configuration): update bezier shape as we
8411         change Y positions.
8412         (get_configuration): don't move large ties if we're outside of the
8413         staff.
8414
8415 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8416
8417         * scm/define-markup-commands.scm (strut): swap X and Y dims.
8418         
8419 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
8420
8421         * .cvsignore: Add auto-generated configure files and then some.
8422
8423 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8424
8425         * scm/define-grobs.scm (DynamicLineSpanner): Add
8426         X-extent-callback.  Fixes hairpin-slur collision.
8427
8428 2005-08-31  Graham Percival  <gpermus@gmail.com>
8429
8430         * Documentation/user/advanced-notation.itely,
8431         basic-notation.itely: minor changes.
8432
8433 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
8434
8435         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8436         \linebreak between each .eps file if \betweenLilyPondSystem is
8437         undefined. 
8438
8439         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8440         music): Document the \linebreak
8441
8442         * Documentation/user/lilypond-book.itely,
8443         input/tutorial/lbook-latex-test.tex,
8444         Documentation/user/examples.itely: Remove \usepackage{graphics}
8445
8446 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8447
8448         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8449
8450         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8451         compat bugfix.
8452
8453         * scripts/lilypond-book.py (PREAMBLE_LY): define
8454         inside-lilypond-book
8455         (modify_preamble): new function. Insert \RequirePackage{graphics}
8456         when no {graphics found in preamble.  
8457
8458 2005-08030  Graham Percival  <gpermus@gmail.com>
8459
8460         * Documentation/user/basic-notation.itely, global.itely,
8461         tutorial.itely: misc small changes.
8462
8463 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8464
8465         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8466         VERSION.
8467
8468 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8469
8470         * lily/tie-column.cc (new_directions): put Tie down on center
8471         staff line. 
8472
8473         * lily/script-interface.cc (before_line_breaking): use
8474         Grob::programming_error
8475
8476         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8477
8478         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8479         of splitext.
8480
8481 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8482
8483         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8484
8485 2005-08-29  Werner Lemberg  <wl@gnu.org>
8486
8487         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8488         the `*.scale.pfa' files to avoid warnings.
8489
8490 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8491
8492         * lily/tempo-performer.cc (process_music): idem.
8493
8494         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8495
8496 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8497
8498         * Documentation/user/advanced-notation.itely (Text markup): not a
8499         fragment.
8500
8501         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8502
8503         * lily/staff-performer.cc (initialize): add tempo/name to
8504         audio_staff_
8505
8506
8507 2005-08-26  Graham Percival  <gpermus@gmail.com>
8508
8509         * Documentation/user/advanced.itely: add text-only example.
8510
8511         * Documentation/user/invoking.itely: add index entries for
8512         convert-ly.
8513
8514         * Documentation/user/ tutorial.itely, basic-notation.itely:
8515         small fixes suggested by Steve D.  Thanks!
8516
8517 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8518
8519         * input/regression/markup-bidi-pango.ly: new file.
8520
8521         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8522         standard. Remove #ifdef. Remove memleak.
8523         (text_stencil): use text_dir to decide how to composite items.
8524         (text_stencil): determine uniform text direction for the entire
8525         string.
8526
8527         * scripts/lilypond-book.py (output_name): remove
8528         latex_filter_cmd. Non-portable to non-Unix systems. 
8529         (get_latex_textwidth): use File.write and os.unlink() instead.
8530
8531         * THANKS: add Vicente & Trevor.
8532
8533         * lily/grob.cc (discretionary_processing): look up origin for
8534         programming_error too. 
8535
8536         * input/regression/tie-broken.ly: new file.
8537
8538         * lily/tie-column.cc (set_chord_outlines): set outline for line
8539         break case too.
8540         
8541 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8542
8543         * lily/pango-font.cc (text_stencil): don't translate glyphs in
8544         unscaled transform, just translate stencils.
8545
8546         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
8547         MIDI.
8548
8549         * scm/define-markup-commands.scm (wordwrap-string): use
8550         text-direction
8551         (wordwrap-stencils): idem.
8552         (line): idem.
8553         (fill-line): idem.
8554         (wordwrap-stencils): translate last line to right for
8555         text-direction = LEFT.
8556
8557         * scm/define-grob-properties.scm (all-user-grob-properties): add
8558         text-direction.
8559
8560 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8561
8562         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8563         when copying a Lily_parser object.
8564
8565 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8566
8567         * scm/define-markup-commands.scm (null): add null markup.
8568
8569 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
8570
8571         * lily/item.cc: Add documentation of center-invisible
8572
8573 2005-08-24  Graham Percival  <gpermus@gmail.com>
8574
8575         * Documentation/user/advanced-notation.itely: add info about
8576         raising text.
8577
8578         * Documentation/user/programming-interface.itely: fix example
8579         involving raised text.
8580
8581 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8582
8583         * lily/beam.cc (print): fix X start/end points of isolated
8584         beamlets.
8585
8586         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8587
8588         * lily/multi-measure-rest.cc (set_text_rods): new function.
8589
8590         * lily/vertical-align-engraver.cc (process_music): call
8591         Align_interface::set_axis(). This forces #'elements to be ordered,
8592         preventing random vertical reordering of staves.
8593
8594         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8595         add avoid-slur property. 
8596
8597         * Documentation/user/basic-notation.itely (Measure repeats): add
8598         countPercentRepeats example.
8599
8600         * Documentation/user/advanced-notation.itely (Other text markup
8601         issues): remove remark about normal-font.  We have \normal-text
8602
8603         * input/regression/tie-chord.ly: add note about remaining bugs.
8604
8605         * lily/tie.cc (print): try Tie_column::set_directions () if
8606         control-points not yet defined.
8607
8608 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8609
8610         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8611         extent. This fixes braces falling out of the EPS bbox.
8612
8613         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8614         exactly to bbox.
8615
8616 2005-08-23  Graham Percival  <gpermus@gmail.com>
8617
8618         * {various} : change #up->#UP and #down->#DOWN.
8619
8620         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8621
8622         * Documentation/user/advanced-notation.itely: clarify
8623         what objects handles text on a multimeasure rest.
8624
8625 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8626
8627         * VERSION (PATCH_LEVEL): release 2.7.7
8628
8629 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8630
8631         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
8632
8633         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8634
8635         * input/regression/*.ly: formatting clean-up. Default layout
8636         before music expression.
8637
8638         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8639         romanze28-2 example.
8640
8641         * scm/ps-to-png.scm: remove dir-re function.
8642         (make-ps-images): generate page names, instead of globbing them.
8643         This brings down LilyPond memory usage for make web by a factor
8644         10. 
8645
8646         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8647         don't use glob. With 3000 files, globbing
8648         Documentation/user/out-www/ can take too much time. 
8649         
8650         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8651
8652         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8653
8654         * input/regression/tie-manual.ly: new file
8655
8656         * input/regression/tie-chord.ly: update.
8657
8658         * flower/include/interval.hh (struct Interval_t): 
8659
8660         * lily/tie.cc (distance): new function 
8661         (height): new function.
8662         (init): new function
8663         (Tie_details): new struct.
8664
8665         * lily/skyline.cc (skyline_height): new function.
8666
8667         * lily/tie-column.cc (set_chord_outlines): new function.
8668         (new_directions): read tie-configuration
8669
8670         * lily/skyline.cc: fix ASCII art.
8671         
8672 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8673
8674         * python/convertrules.py (string_or_scheme): Fix spelling error
8675
8676 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8677         
8678         * lily/tie-column.cc (set_directions): set directions only once.
8679         (add_configuration): new function.
8680
8681         * lily/tie.cc (set_control_points): new function
8682
8683         * lily/tie-column.cc (new_directions): new function.
8684
8685         * ly/music-functions-init.ly: set 'pitch property
8686         iso. trill-pitch. This makes \relative work with \pitchedTrill
8687
8688         * lily/tie.cc (get_configuration): new function. Don't generate
8689         control points, rather, generate configuration.
8690         remove head-pair property.
8691
8692         * lily/include/tie.hh (struct Tie_configuration): new struct.
8693
8694 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8695
8696         * Documentation/topdocs/NEWS.tely: clarify.
8697
8698 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8699
8700         * lily/tie.cc: remove minimum-length
8701
8702         * scm/define-grob-properties.scm (all-user-grob-properties):
8703         remove staffline-clearance, y-offset 
8704
8705         * input/regression/tie-dots.ly (Module): remove.
8706
8707         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8708         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8709
8710         * input/regression/tie-single.ly: new file.
8711
8712 2005-08-21  Graham Percival  <gpermus@gmail.com>
8713
8714         * ly/bagpipe.ly: fix compile problem.
8715
8716 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8717
8718         * lily/midi-item.cc (name): new method.
8719
8720         * lily/staff-performer.cc (acknowledge_audio_element): use
8721         signature of baseclass.
8722
8723         * lily/engraver-group.cc (do_announces): move recursion call out
8724         of while loop. 
8725
8726         * lily/drum-note-performer.cc (class Drum_note_performer): use
8727         process_music everywhere.
8728
8729         * ly/performer-init.ly: add default children everywhere.
8730
8731         * lily/paper-book.cc (output): call paper-book-write-midis
8732         directly: always write MIDI, even if no \layout {} block. 
8733
8734 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8735
8736         * VERSION (PACKAGE_NAME): release 2.7.6
8737
8738         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8739         about not being able to handle repeat.
8740
8741 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8742
8743         * Documentation/user/examples.itely (Piano templates):
8744         * lily/include/performer-group.hh: Remove last traces of
8745         Performer_group_performer.  Fixes make web.
8746
8747 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8748
8749         * Documentation/user/examples.itely (Piano templates): change
8750         Engraver_group_engraver -> Engraver_group
8751
8752         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8753         scm_stand_in_procs is not weak_any.
8754
8755         * lily/volta-bracket.cc (print): don't use strcmp().
8756
8757         * lily/volta-engraver.cc (process_music): use
8758         Text_interface::is_markup() for setting the 'text property of the
8759         volta bracket.
8760
8761         * input/mutopia/claop.py (accents): update syntax to 2.6
8762
8763         * scm/define-context-properties.scm
8764         (all-user-translation-properties): add countPercentRepeats.
8765
8766         * Documentation/user/basic-notation.itely (Measure repeats): add
8767         isolated percent example.
8768
8769 2005-08-18  Graham Percival  <gpermus@gmail.com>
8770
8771         * input/ {various}: change direction #1, #-1 to
8772         #up/#down or \fooUp, \fooDown.
8773
8774         * Documentation/user/music-glossary.tely: #-1 to #down.
8775
8776         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8777         to #up, #-1 to #down.
8778
8779 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8780
8781         * lily/include/engraver-group.hh: rename.
8782
8783         * lily/include/performer-group.hh: rename.
8784
8785 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8786
8787         * input/test/script-abbreviations.ly: Removed some old LaTeX
8788         left overs.
8789
8790 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8791
8792         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8793         Remove functions.  Remove if 1: constructs, reindent.
8794
8795         * scripts/convert-ly.py (add_version): Add functions from
8796         convertrules.py
8797
8798         * scm/script.scm (default-script-alist):
8799         s/priority/script-priority.  Fixes script stacking.  Backportme.
8800         (Fermata): Very low priority.
8801
8802 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8803
8804         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8805
8806         * input/regression/slur-script.ly: remove padding tweaks. Add
8807         comment strings.
8808
8809         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8810         time sigs and related stuff.
8811
8812         * scm/define-grob-properties.scm (all-user-grob-properties): add
8813         @code{} tags to property description.
8814
8815         * lily/include/line-group-group-engraver.hh (Module): remove file.
8816
8817         * python/convertrules.py (conv): add rule for
8818         Engraver_group_engraver -> Engraver_group.
8819
8820         * lily/include/performer-group-performer.hh: analogous.
8821
8822         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8823
8824         * lily/context-def.cc (instantiate): check for
8825         Engraver_group_engraver and Performer_group_performer not
8826         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8827  
8828 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8829
8830         * input/les-nereides.ly: Remove three fingering tweaks, update
8831         remaining one.
8832
8833         * input/regression/slur-script-inside.ly: Update, fix doc.
8834
8835         * scm/script.scm: Update to avoid-slur.
8836
8837         * scm/define-grob-properties.scm (avoid-slur): New property.
8838
8839         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8840         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8841         outside_slur_callback if avoid-slur != #'inside.
8842
8843         * scm/define-grobs.scm (Fingering, Textscript): No
8844         inside-slur/outside-slur preference.
8845         (DynamicLineSpanner): Always outside slur.
8846
8847         * input/regression/slur-script.ly: More tests.
8848
8849 2005-08-17  Graham Percival  <gpermus@gmail.com>
8850
8851         * Documentation/user/lilypond-book: fix notime entry.
8852
8853         * Documentation/user/advanced-notation.itely: add info on
8854         getting an I rehearsal mark.
8855
8856         * Documentation/user/putting.itely: reinstate "I", re-enforce
8857         the fact that \override numbers are the result of
8858         experimentation and personal taste.
8859
8860         * Documentation/user/invoking.itely: update convert-ly bugs.
8861
8862 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8863
8864         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8865         to #t.
8866
8867         * lily/timing-translator.cc (initialize): don't initialize timing.
8868
8869         * input/regression/stem-spacing.ly (Module): remove file.
8870
8871         * input/regression/spacing-stick-out.ly: specify Score context for
8872         \override
8873
8874         * input/regression/clefs.ly: remove spurious {}s 
8875
8876 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8877
8878         * Documentation/topdocs/NEWS.tely,
8879         input/regression/repeat-percent-count.ly: clarify a bit.
8880
8881 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8882
8883         * input/no-notation/display-lily-tests.ly: delete
8884         display-lily-init call.
8885
8886         * ly/music-functions-init.ly (displayLilyMusic): move
8887         display-lily-init call at top level, so that the user should not
8888         have to call it.
8889
8890         * scm/define-music-display-methods.scm (note-name->lily-string):
8891         retrieve note names directly from pitchnames using new function `rassoc'.
8892         (display-lily-init): note names list construction removed.
8893
8894 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8895
8896         * THANKS: spello.
8897
8898         * lily/lily-parser.cc (get_header): copy module, instead of
8899         returning it.
8900
8901         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8902         counters.
8903
8904         * Documentation/user/basic-notation.itely (Measure repeats): add
8905         links to Counter grobs.
8906
8907         * scm/define-grobs.scm (all-grob-descriptions): add
8908         DoublePercentRepeatCounter
8909         (all-grob-descriptions): add PercentRepeatCounter
8910
8911         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8912         also create counter grobs.
8913
8914         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8915         return grob without space-alist.
8916
8917         * input/proportional.ly: tune staff-padding.
8918
8919         * input/regression/repeat-percent-count.ly: new file. 
8920
8921 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8922
8923         * input/no-notation/display-lily-tests.ly: moved from
8924         input/regression/ to input/no-notation. Be sure to call
8925         `display-lily-init' before trying to use the display function.
8926
8927 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8928
8929         * scripts/lilypond-book.py (option_definitions): Don't localize
8930         the empty string. Fixes bug when --psfonts was used with
8931         non-English locale.
8932
8933 2005-08-15  Graham Percival  <gpermus@gmail.com>
8934
8935         * lily/tuplet-bracket.cc: simple build fix.
8936
8937         * Documentation/user/putting.itely: use "we" instead of "I".
8938
8939         * Documentation/user/basic-notation.itely: cautionary accidentals
8940         work with naturals, too.
8941
8942 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8943
8944         * lily/tuplet-bracket.cc (calc_position_and_height): add
8945         staff-padding support.
8946
8947         * input/proportional.ly: set staff-padding.
8948         
8949         * VERSION (PATCH_LEVEL): release 2.7.5
8950
8951         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8952         fixes. Remove tweaks.
8953
8954         * input/regression/tuplet-slope.ly: add a test case.
8955
8956         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8957         erroneous fix. Add spanner bounds to offset array with relative X
8958         positions.
8959
8960         * ly/engraver-init.ly: add Rest_engraver only once.
8961
8962         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8963         (*parser*) lookup if (*parser*) != #f.
8964
8965 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8966
8967         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8968         Cut-and paste update.
8969
8970         * input/regression/slur-script.ly: Add example of reverting
8971         inside-slur for fingering.
8972
8973         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8974         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8975
8976         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8977         outside_slur_callback if inside-slur == #f (as opposed to unset).
8978
8979 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8980
8981         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8982         encoding files are already removed.
8983
8984 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8985
8986         * Documentation/user/advanced-notation.itely (Instrument names):
8987         Document a workaround for instrument names that collide with
8988         system start braces/brackets.
8989
8990 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8991
8992         * lily/rest-collision.cc (do_shift): spello.
8993
8994         * input/proportional.ly: use #'used property. Set break-overshoot
8995         property.
8996
8997         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8998
8999         * lily/paper-column.cc: add #'used property
9000
9001         * lily/mark-engraver.cc (stop_translation_timestep): set grob
9002         array for staves found.
9003
9004         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
9005         array for stavesFound.
9006
9007         * lily/staff-spacing.cc (next_note_correction): add fixed and
9008         space to calling convention. This fixes spacing of accidentals
9009         after barlines.
9010
9011         * input/regression/spacing-accidental-stretch.ly: add barline -
9012         accidental case.
9013
9014         * scm/framework-ps.scm (page-header): add version number to
9015         creator
9016         (eps-header): idem.
9017
9018         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
9019         
9020 2005-08-13  Graham Percival  <gpermus@gmail.com>
9021
9022         * Documentation/user/global.itely: add "fit as much as
9023         possible onto this page" example (Vertical spacing).
9024
9025 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
9026
9027         * *: Nitpick run.
9028
9029         * buildscripts/fixcc.py: Fixes.
9030
9031 2005-08-12  Graham Percival  <gpermus@gmail.com>
9032
9033         * Documentation/user/advanced-notation.itely: add markup
9034         example to Text spanners.
9035
9036 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
9037
9038         * Documentation/user/basic-notation.itely (Ties): Add example of
9039         tying a tremolo to a chord. Thanks to Steve Doonan. 
9040
9041         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
9042         properties and move tieMelismaBusy to the list of written
9043         properties. 
9044
9045 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
9046
9047         * po/TODO: suggest to use a dedicated tool like kbabel.
9048
9049         * po/fi.po: update using kbabel.
9050
9051 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9052
9053         * *: Remove obsolete files.  Nitpick run.
9054
9055         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
9056
9057 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
9058
9059         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
9060         too.
9061
9062         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
9063
9064         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
9065         whitespace as symbol separator.
9066
9067         * lily/side-position-interface.cc: Add slur-padding.
9068
9069         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
9070         quite a large fix, and it never worked in a stable release; so not
9071         really a regression.
9072
9073         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
9074         Update cut and paste code from Slur_engraver.
9075
9076         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9077         Add.
9078
9079         * scm/define-grobs.scm (DynamicLineSpanner): Add
9080         dynamic-line-spanner-interface.
9081         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
9082
9083 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9084
9085         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
9086         to_boolean () so that non-set 'inside-slur means false.
9087
9088         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
9089         slur has control-points.  Skip script without direction.  Always
9090         do_shift if script inside slur, even if slur not contained in
9091         script y-extent.  Increment k in loop.
9092
9093 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
9094
9095         * scm/define-markup-commands.scm: Improved regexp to search for
9096         EPS bounding boxes and corrected call to ly:warning.
9097
9098 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9099
9100         * Documentation/user/programming-interface.itely (Displaying music
9101         expressions): doc for \displayLilyMusic. Also some precisions in
9102         "Markup construction in Scheme"
9103
9104 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
9105
9106         * scm/define-markup-commands.scm (normal-text): Added 2 new
9107         markup commands, \normal-text and \medium (the latter thanks to
9108         Bruce Fairchild). 
9109
9110 2005-08-08  Graham Percival  <gpermus@gmail.com>
9111
9112         * Documentation/user/programming-interface.itely: fix @{ @}.
9113
9114         * scm/define-markup-commands.scm: add linewidth info to
9115         \justify and \wordwrap, add "upright is the opposite of italic".
9116
9117         * Documentation/user/advanced-notation.itely: shaped->shape,
9118         add (cons (markup "foo")) type of example to text markup,
9119         reword multi-measure rests section.
9120
9121         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
9122         comment.  No actual code was touched.
9123
9124         * Documentation/user/invoking.itely: add more info about
9125         \include.  Thanks, Bruce!
9126
9127         * THANKS: add Bruce Fairchild, alphabetise.
9128
9129         * Documentation/user/global.itely: document \score{\header{}}
9130         behavior.
9131
9132         * Documentation/user/basic-notation.itely: reword multi-measure
9133         rest discussion in Rests.
9134
9135 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
9136
9137         * Documentation/user/programming-interface.itely (Markup
9138         construction in Scheme): Corrected example and tried to clarify
9139         the implicit \line in the table.
9140
9141 2005-08-07  Graham Percival  <gpermus@gmail.com>
9142
9143         * Documentation/user/instrument-notation.itely: moved
9144         some bagpipe info back into the bagpipe section.  Somehow
9145         it ended up in the "other vocal issues" section?!  :o_O
9146
9147 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9148
9149         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
9150         directories, not paths).
9151
9152 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9153
9154         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
9155         plain emmentaler/aybabtu.  Backportme.
9156
9157         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
9158         missing dir correction.
9159
9160 2005-08-05  Graham Percival  <gperlist@shaw.ca>
9161
9162         * scm/define-markup-commands: fix reversed justify/wordwrap
9163         doc strings.
9164
9165 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
9166
9167         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
9168         lily/gregorian-ligature-engaver.cc,
9169         lily/include/ligature-engraver.hh,
9170         lily/include/coherent-ligature-engraver.hh,
9171         lily/include/gregorian-ligature-engraver.hh: make these classes
9172         truely abstract.  This should fix some internal oddities such as
9173         duplicate as well as dead translator/property declarations, and
9174         also some dead code.
9175
9176         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
9177         bugfix: avoid message "junking empty ligature" on ligature
9178         brackets by collecting dummy grobs.
9179
9180 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9181
9182         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
9183
9184         * input/proportional.ly (staffKind): bugfix.
9185         (staffKind): updates by Trevor Baca.
9186
9187         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
9188         default layout. 
9189
9190         * lily/tuplet-bracket.cc (print): check whether edge-text is a
9191         pair.
9192
9193         * lily/beam.cc (rest_collision_callback): call position_beam() if
9194         necessary.
9195
9196         * VERSION: release 2.7.4
9197
9198         * input/regression/spacing-uniform-stretching.ly: new file.
9199
9200         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
9201
9202         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
9203         contributor.
9204
9205         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
9206
9207         * input/proportional.ly: new file.
9208
9209         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
9210         columns is empty
9211
9212         * lily/tuplet-engraver.cc (finalize): new function. Reset right
9213         bounds to currentCommandColumn for the last step.
9214         (start_translation_timestep): if tupletFullLength is set, set
9215         bound to Paper Column
9216
9217         * input/regression/tuplet-full-length.ly (indent): new file.
9218
9219         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
9220         clique of loose columns, eg. a set of grace notes in strict
9221         notespacing.
9222
9223         * input/regression/spacing-strict-spacing-grace.ly: new file.
9224
9225         * lily/key-signature-interface.cc: change property name to
9226         alteration-alist
9227
9228         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
9229         keyAccidentalOrder
9230
9231         * python/convertrules.py (conv): keyAccidentalOrder ->
9232         keyAlterationOrder
9233
9234         * lily/key-engraver.cc (create_key): always print a cancellation
9235         for going to C-major/A-minor, regardless of printKeyCancellation.
9236         (create_key): remove typecheck for visibility. This fixes key
9237         signature not being printed.
9238
9239         * lily/spacing-determine-loose-columns.cc: new file.
9240
9241         * input/regression/spacing-strict-notespacing.ly: new file.
9242
9243         * lily/spacing-spanner.cc (generate_springs): rename from
9244         do_measure. 
9245         (generate_pair_spacing): new function.
9246         (init, generate_pair_spacing): set between-cols for floating
9247         nonmusical columns.
9248
9249         * lily/spaceable-grob.cc (get_spring): new function. 
9250
9251         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
9252         relative to the right edge of the prefatory matter.
9253
9254         * lily/beam.cc (print): read break-overshoot to determine where to
9255         stop/start broken beams.
9256
9257         * input/regression/spanner-break-overshoot.ly: new file.
9258
9259 2005-08-04  Graham Percival  <gperlist@shaw.ca>
9260
9261         * ly/bagpipe.ly: updated.
9262
9263         * Documentat/user/instrument.itely: un-comment out bagpipe example.
9264
9265 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9266
9267         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
9268         support: now (de)crescs avoid slurs as well.
9269
9270         * Documentation/user/instrument-notation.itely (Bagpipe example):
9271         comment out non-functioning bagpipe example.
9272         (Bagpipe definitions): idem.
9273
9274         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
9275         (Top): add proportionalNotationDuration example.
9276
9277         * input/regression/spacing-proportional.ly: new file.
9278
9279         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
9280         synched to a beam.
9281
9282         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
9283         fixes beams with a single stem (eg. beams across linebreaks.)
9284
9285         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
9286
9287         * flower/rational.cc (operator +): prevent overflow. This fixes
9288         heavily nested tuplets.
9289
9290         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
9291         have to protect even those unlikely to be corrupted data members.  
9292
9293 2005-08-04  Graham Percival  <gperlist@shaw.ca>
9294
9295         * ly/bagpipe.ly: new file.
9296
9297         * THANKS: added Sven Axelsson.
9298
9299 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9300
9301         * lily/spacing-engraver.cc (stop_translation_timestep): directly
9302         copy proportionalNotationDuration into currentMusicalColumn if
9303         set.
9304
9305         * lily/spacing-spanner.cc (musical_column_spacing): if
9306         uniform-stretching set, fixed space is 0.0
9307
9308         * input/regression/spacing-multi-tuplet.ly: show
9309         uniform-stretching property.
9310
9311         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
9312
9313         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
9314         (struct Spacing_options): new struct.
9315
9316         * lily/spacing-basic.cc: new file.
9317
9318         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
9319         delta_t doesn't have to be smaller than shortest_playing_len
9320
9321 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9322
9323         * input/regression/markup-arrows.ly:  new file.
9324
9325         * lily/tuplet-bracket.cc: document new behavior.
9326
9327         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
9328         with line breaks.
9329
9330         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
9331
9332         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
9333         default 
9334
9335         * lily/tuplet-bracket.cc: add edge-text property.
9336         add break-overshoot.
9337         (print): read break-overshoot.
9338         (print): read edge-text, add stencils.
9339
9340         * mf/feta-arrow.mf: new file.
9341
9342         * mf/feta-generic.mf: add feta-arrow.
9343
9344 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
9345
9346         * Documentation/user/lilypond-book.itely (An example of a
9347         musicological document): Added flag -o to dvips for people who use
9348         the default setting in teTeX where output is sent to the printer. 
9349
9350         * Documentation/user/global.itely (Vertical spacing): Added
9351         reference to the Axis_group_engraver which documents the *Extent
9352         properties.
9353
9354 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9355
9356         * Documentation/user/basic-notation.itely (Tuplets): add note
9357         about nested tuplets. Remove BUG. 
9358
9359         * input/regression/tuplet-nest.ly: update: remove manual hack. 
9360
9361         * lily/tuplet-bracket.cc (print): use robust_scm2drul
9362         (print): manually call print() for subtuplets.
9363         (calc_position_and_height): add subtuplets to the
9364         support. Vertically shift outer tuplet 
9365
9366         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
9367         remove-first for Lyrics, ChordNames and FiguredBass
9368
9369         * scm/define-grob-properties.scm (all-internal-grob-properties):
9370         use ly:grob-array? iso. grob-list?
9371         (all-internal-grob-properties): add tuplets grob-array.
9372
9373         * lily/tuplet-bracket.cc (add_tuplet_bracket):
9374         new function
9375
9376 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9377
9378         * input/test/time-signature-staff.ly: new file.
9379
9380         * ly/declarations-init.ly (center): escape to Scheme. Fixes
9381         spurious #<Music FingerEvent> errors. Backportme.
9382
9383 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
9384
9385         * Documentation/user/programming-interface.itely (Markup
9386         construction in Scheme): Corrected markup syntax in the
9387         translation table.
9388
9389 2005-08-03  Graham Percival  <gperlist@shaw.ca>
9390
9391         * Documentation/user/instrument-notation.itely: small update
9392         to bagpipe notation docs; thanks Sven!
9393
9394         * Documentation/user/basic-notation.itely: add link about trills.
9395
9396 2005-08-02  Graham Percival  <gperlist@shaw.ca>
9397
9398         * Documentation/user/music-glossary: remove accidentally committed
9399         fink patch.
9400
9401 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9402
9403         * lily/lily-parser.cc (get_header): new function. Enable multiple
9404         \header definitions.
9405
9406         * lily/parser.yy (lilypond_header_body): use get_header.
9407
9408         * ly/init.ly:
9409         * scm/lily-library.scm (print-score-with-defaults): renamed
9410         $globalheader to $defaultheader
9411             
9412         * Documentation/user/global.itely (Creating titles): added short
9413         explanation that multiple headers are useable.
9414
9415
9416 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9417
9418         * lily/module-scheme.cc (LY_DEFINE): new file. 
9419
9420         * Documentation/user/advanced-notation.itely (Font selection): add
9421         doco for make-pango-font-tree.
9422
9423 2005-07-31  Graham Percival  <gperlist@shaw.ca>
9424
9425         * Documentation/user/music-glossary: more languages
9426         for tenuto.
9427
9428         * Docuemntation/user/instrument-notation.itely: minor
9429         update for bagpipe example.
9430
9431 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9432
9433         * input/regression/+.ly (TODO): add some text.
9434
9435 2005-07-28  Graham Percival  <gperlist@shaw.ca>
9436
9437         * Documentation/user/invoking.itely: \score begins with music.
9438
9439         * Documentation/user/ basic-notation.itely,
9440         instrument-notation.itely: minor changes.
9441
9442         * Documentation/user/music-glossary.itely: began tenuto entry.
9443
9444 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9445
9446         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
9447
9448         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
9449
9450 2005-07-27  Graham Percival  <gperlist@shaw.ca>
9451
9452         * Documentation/user/examples.itely: remove bagpipe template.
9453
9454         * Documentation/user/instrument-notation.itely: add bagpipe
9455         section, maybe fix quotes in lyrics.  I hate text encoding.
9456         Clarify chord durations, more bagpipe stuff.
9457
9458 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9459  
9460         * lily/accidental-engraver.cc: formatting fixes.
9461
9462         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
9463         grob-array.
9464
9465         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
9466
9467         * lily/note-column.cc (arpeggio): new function.
9468
9469         * lily/note-spacing.cc (get_spacing): also take arpeggio into
9470         account for spacing.
9471
9472 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
9473
9474         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
9475         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
9476         mingw build.
9477         
9478 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9479
9480         * scm/lily.scm (lilypond-all): clear anonymous modules after
9481         processing files.
9482
9483 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9484
9485         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
9486         SCM_I_CONSP
9487
9488         * VERSION: 2.7.3 released
9489
9490         * Documentation/user/invoking.itely (Invoking lilypond): add
9491         LILYPOND_GC_YIELD documentation.
9492
9493         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
9494         scm_from_real / scm_make_real.
9495
9496         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
9497         higher. This increases memory footprint, but provides overall
9498         speedup of 15 to 20%. 
9499
9500         * lily/include/translator.hh (class Translator): remove
9501         PRECOMPUTED_VIRTUAL everywhere.
9502
9503         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
9504
9505         * lily/context.cc (now_mom): non-recursive now_mom() 
9506
9507         * lily/include/profile.hh: new file.
9508
9509         * lily/profile.cc: new file.
9510
9511         * lily/grob.cc (Grob::Grob): look properties up directly.
9512
9513         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
9514         lookups.
9515
9516         * lily/include/box.hh (class Box): smob Box type.
9517
9518         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
9519
9520         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
9521         protect() and unprotect(). Use throughout.
9522
9523 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9524
9525         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
9526
9527         * scm/define-music-display-methods.scm (markup->lily-string):
9528         markup elements can also be strings (without simple-markup
9529         appended)
9530
9531 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9532
9533         * lily/context.cc (where_defined): also assign value in
9534         where_defined().
9535
9536         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
9537         (curve_coordinate): new function
9538
9539         * lily/simple-spacer.cc (add_columns): only add rods between
9540         column i and begin/end if keep-inside-line is set (this repleces
9541         allow-outside-line as default)
9542
9543 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9544
9545         * lily/tuplet-engraver.cc (start_translation_timestep): only read
9546         tupletSpannerDuration if applicable.
9547
9548         * lily/font-size-engraver.cc (process_music): read fontSize only
9549         once per timestep.
9550
9551         * lily/engraver*cc: use throughout.
9552         
9553         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
9554
9555         * lily/translator.cc (add_acknowledger): new file. Directly jump
9556         into an Engraver::acknowledge_xxx () method based on a grobs
9557         interface-list.
9558
9559         * lily/include/translator-dispatch-list.hh (class
9560         Engraver_dispatch_list): new struct, new file.
9561
9562         * scm/define-context-properties.scm
9563         (all-internal-translation-properties): remove acceptHashTable,
9564         acknowledgeHashTable
9565
9566         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
9567
9568         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
9569         change acknowledgeHashTable to C++ member. 
9570
9571         * lily/rest-collision.cc (do_shift): use extract_grob_set().
9572
9573 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9574
9575         * scm/display-lily.scm: new file. Define a `display-lily-music'
9576         function, that displays the music expression given as an argument,
9577         using LilyPond notation.
9578
9579         * scm/define-music-display-methods.scm: new file. Implementation
9580         of display methods for each music type.
9581
9582         * ly/music-functions-init.ly (displayLilyMusic): new function for
9583         displaying music with LilyPond notation.
9584
9585         * input/regression/display-lily-tests.ly: new regression test file
9586         for `display-lily-music'.
9587
9588         * scm/markup.scm: remove obsolete debugging code (for printing
9589         markups with LilyPond notation).
9590
9591         * scm/define-music-types.scm (music-name-to-property-table):
9592         * scm/clef.scm (supported-clefs): export, in order to be accessible
9593         from the (scm display-lily) module.
9594
9595 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9596
9597         * Documentation/topdocs/NEWS.tely (Top): Typo.
9598
9599 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
9600
9601         * Documentation/index.html.in, Documentation/texinfo.css,
9602           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9603           Documentation/bibliography/index.html.in,
9604           Documentation/bibliography/html-long.bst: revert css-width patch,
9605           it does not work with IE6.
9606
9607 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9608
9609         * Documentation/texinfo.css: revert 760px hack. 
9610
9611         * VERSION: release 2.7.2
9612
9613         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
9614
9615         * Documentation/user/basic-notation.itely (Barnumber check): add
9616         section.
9617
9618         * scm/music-functions.scm (skip-to-last): new function. Show only
9619         last showLastLength part of the \score.
9620
9621         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
9622
9623         * python/convertrules.py (conv): add ly:x-moment rule
9624
9625         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
9626
9627         * Documentation/topdocs/NEWS.tely (Top): add new feature.
9628
9629         * Documentation/user/instrument-notation.itely (Flexibility in
9630         alignment): options in subsections.
9631
9632         * lily/lyric-engraver.cc (process_music): don't typeset text for _
9633         syllable text. Instead, assume that the previous lyric text is a
9634         melismated text.
9635
9636         * Documentation/index.html.in: revert 800x600 change.
9637
9638 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9639
9640         * lily/main.cc (main): Remove invalid handle kludge.
9641
9642         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
9643         (lambda): add gui define.
9644
9645 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9646
9647         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
9648
9649         * Documentation/user/instrument-notation.itely (Musica ficta
9650         accidentals): add section Musica ficta accidentals
9651
9652         * lily/accidental-engraver.cc (make_suggested_accidental): new
9653         function.
9654         (make_standard_accidental): move into new function.
9655         (create_accidental): new function.
9656
9657         * scm/define-grobs.scm (all-grob-descriptions): new Grob
9658         AccidentalSuggestion
9659
9660         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
9661
9662         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9663         undefined.
9664
9665         * Documentation/user/global.itely (Page formatting): document
9666         horizontalshift.
9667
9668         * scm/page-layout.scm (default-page-music-height):
9669         horizontalshift: new variable, shift all systems by
9670         horizontalshift to the right, to make space for instrument names.
9671
9672         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9673
9674         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9675
9676 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9677
9678         * lily/note-column.cc (dir): idem.
9679
9680         * lily/spacing-spanner.cc (Module): idem.
9681
9682         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9683
9684         * lily/include/paper-column.hh (class Paper_column): add
9685         non-static get_rank() member.
9686
9687         * VERSION: release 2.7.1
9688         
9689         * scm/framework-null.scm: new file, used for benchmarking.
9690
9691 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9692
9693         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9694         version dependencies for fontforge and gs.
9695
9696         * Documentation/index.html.in, Documentation/texinfo.css,
9697         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9698         Documentation/bibliography/index.html.in, 
9699         Documentation/bibliography/html-long.bst: optimize width of
9700         html for a 800x600 screen (width:760), increases printability
9701         when 'fit to page' is not set and readability in wide screens.
9702
9703         * stepmake/bin/add-html-footer.py: add missing </p>.
9704
9705 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9706
9707         * scm/define-markup-commands.scm (beam): use polygon in beam
9708         command.
9709
9710         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9711         all acknowledged grobs, and do potentially expensive merge and
9712         write in one go.
9713
9714         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9715
9716         * configure.in (reloc_b): add --enable-static-gxx to statically
9717         link to libstdc++
9718
9719         * lily/GNUmakefile (static-gxx-libs): new target
9720         static-gxx-libs. Create symlink to libstdc++.a
9721
9722         * lily/new-lyric-combine-music-iterator.cc: rename to
9723         Lyric_combine_music_iterator
9724
9725         * lily/lyric-combine-music-iterator.cc
9726         (Old_lyric_combine_music_iterator): rename to
9727         Old_lyric_combine_music_iterator
9728
9729         * lily/*-engraver.cc (various): remove double use of
9730         PRECOMPUTED_VIRTUAL function: only use
9731         start_translation_timestep() and stop_translation_timestep(), not
9732         both.
9733
9734         * lily/break-substitution.cc (fast_substitute_grob_array): do
9735         fast_substitute_grob_array for all unordered grob_arrays.
9736         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9737         (substitute_grob_array): optimize.
9738
9739         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9740
9741         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9742
9743         * lily/parser.yy: revert $globalheader patch.
9744         
9745         * lily/include/translator.icc
9746         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9747         Translator methods, without _static helper.
9748  
9749         * lily/grob-smob.cc (derived_mark): rename from
9750         do_derived_mark(). Return void.
9751
9752         * scm/define-context-properties.scm
9753         (all-internal-translation-properties): remove tweakCount/tweakRank.
9754
9755         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9756         predefined break-visibilities.
9757
9758         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9759         booleans for break-visibility.
9760
9761         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9762
9763         * python/convertrules.py (conv): rule for Timing_translator. 
9764
9765         * lily/include/translator.icc: new file. 
9766
9767         * lily/paper-column-engraver.cc (process_music): new
9768         file. Separate Paper_column factory from Score_engraver.
9769
9770         * lily/vertically-spaced-context-engraver.cc: administer
9771         spaceable-staves property of System.
9772
9773         * lily/translator-group-ctors.cc: new file.
9774
9775         * lily/context-property.cc (make_grob_from_properties): construct
9776         the right Grob class programmatically, looking at the class entry
9777         for the meta property.
9778
9779         * lily/break-align-engraver.cc (stop_translation_timestep): call
9780         Break_align_interface::add_element() directly.
9781
9782         * lily/context.cc (measure_position): measure_position() is now a
9783         normal function.
9784
9785         * lily/include/translator.hh (class Translator): rename
9786         process_acknowledged_grobs() to process_acknowledged() and move to
9787         Translator.
9788
9789         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9790         field for each grob description.
9791
9792         * lily/include/translator-group.hh (class Translator_group):
9793         change to base class. Separate class from Translator. This gets
9794         rid of virtual inheritance for Engravers/Performers.
9795
9796         * lily/staff-performer.cc (class Staff_performer): derive
9797         Staff_performer from Performer, not Performer_group_performer 
9798
9799         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9800         new function.
9801         (precompute_method_bindings): new function. Precompute lists of
9802         Translators, so we only call methods (process_music,
9803         start_translation_timestep, etc.) for Translators needing
9804         it. Also: dispose of pointer-to-member-function calls.
9805
9806         * lily/engraver-group-engraver.cc: remove engraver_each,
9807         recurse_down_engravers ()
9808
9809         * lily/note-head.cc (internal_print): only call
9810         glyph-name-procedure if style != default. 
9811
9812 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9813
9814         * ly/titling-init.ly: add printallheaders option.
9815
9816         * Documentation/user/global.itely: document printallheaders.
9817
9818 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9819
9820         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9821         anymore, but do it centrally.  
9822
9823         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9824         hammer hack.
9825
9826         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9827
9828         * scm/output-lib.scm: remove hammer-print-function.
9829
9830         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9831         macro. Declare a Link_array<Grob> and fill it from a grob.
9832         (extract_item_set): idem for item.
9833
9834         * lily/break-substitution.cc: add header.
9835         (fast_substitute_grob_array): rewrite for Grob_arrays.
9836         (substitute_grob_array): idem.
9837
9838         * lily/group-interface.cc (add_thing): remove file.
9839
9840         * flower/include/parray.hh (class Link_array): slice() is const.
9841
9842         * lily/include/grob-array.hh: new file.
9843
9844         * lily/grob-array.cc (spanner): new file.
9845
9846         * lily/beam-quanting.cc (fill): read details property from beam.
9847
9848         * lily/beam.cc: support details property.
9849
9850         * total speedups below: approx 10%.
9851
9852         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9853
9854         * lily/include/grob.hh (class Grob): add interfaces_ member.
9855
9856         * lily/bezier.cc (init_polynomial_cache): new function: cache
9857         binom(3,j) t^j (1-t)^{3-j}
9858         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9859
9860         * lily/*.cc: substitution throughout.
9861
9862         * lily/grob-property.cc (internal_get_object): new routine.
9863         (internal_set_object): idem. Store grob refrences in separate
9864         alist. This saves processing time, since properties aren't
9865         break-substituted, and the per grob namespace is smaller, both for
9866         grobs and non-grob properties.
9867
9868         * scm/define-grob-properties.scm (all-internal-grob-properties):
9869         remove center-element.
9870
9871         * lily/grob.cc: remove tweak-count, tweak-rank.
9872
9873 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9874
9875         * Documentation/user/lilypond-book.itely: fixes example.
9876
9877 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9878
9879         * Documentation/user/global.itely (Creating titles):    
9880         * Documentation/user/examples.itely (All headers): change the
9881         place of \header in \score blocks (after music block) to make
9882         examples compile (cf. changes on parser.yy on 2005-07-10)
9883
9884 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9885
9886         * python/convertrules.py: add exc -> ecc rule.
9887
9888         * scripts/convert-ly.py: add location of convertrules.py
9889         in a comment.
9890
9891         * Documentation/user/changing-defaults.itely: fix language.
9892
9893 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9894
9895         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9896
9897 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9898
9899         * scm/output-socket.scm (grob-bbox): don't use inf? 
9900
9901         * flower/include/rational.hh: add operator bool() 
9902
9903         * scm/define-music-types.scm (music-descriptions): remove
9904         internal-class-name properties.
9905
9906         * lily/include/event.hh: remove file.
9907
9908         * lily/include/music-constructor.hh: remove file.
9909
9910         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9911         in 'types property.
9912
9913         * lily/music.cc (duration_length_callback): new function.
9914
9915         * lily/event.cc: remove file.
9916
9917         * lily/music-constructor.cc: remove file.
9918
9919         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9920
9921         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9922         (get_context_key): idem.
9923
9924         * scm/lily.scm (lambda): new option object-keys (default to #f)
9925
9926         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9927
9928         * scm/output-gnome.scm: remove beam routine.
9929
9930         * scm/output-ps.scm (scm): idem.
9931
9932         * scm/output-svg.scm: remove beam.
9933
9934         * ps/music-drawing-routines.ps: remove draw_beam.
9935
9936         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9937
9938         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9939         add scm_from_locale_string compatibility glue. 
9940
9941 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9942
9943         * scripts/lilypond-book.py: Prevent occuring error when
9944         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9945         times and target file shoud be overwritten.  (Error message said
9946         'input file and output file is same'.)
9947
9948 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9949
9950         * input/regression/slur-extreme.ly,
9951         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9952         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9953         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9954         "excentricity" to "eccentricity".
9955
9956         * Documentation/user/converters.itely: fix URL for Noteedit and
9957         Rosegarden.
9958
9959         * THANKS: added Yoshinobu Ishizaki.
9960
9961 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9962
9963         * scm/define-markup-commands.scm (justify-field): add. 
9964
9965         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9966
9967 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9968
9969         * lily/lookup.cc (filled_box): express filled_box with
9970         round_filled_box
9971
9972         * scm/midi.scm (paper-book-write-midis): new function. Write all
9973         performances in numbered MIDI files.
9974
9975         * lily/performance-scheme.cc (LY_DEFINE): new file.
9976         (LY_DEFINE): new function ly:performance-write.
9977
9978         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9979         new function.
9980         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9981
9982         * scm/framework-*.scm: use port arguments throughout.
9983
9984         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9985
9986         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9987
9988         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9989
9990         * scm/framework-texstr.scm (output-framework): 
9991
9992         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9993
9994         * scm/output-lib.scm (tablature-stem-attachment-function):
9995         tablature stem attachment fix. 
9996
9997 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9998
9999         * lily/bezier.cc: hardcode binomial coefficients of order 3.
10000
10001         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
10002
10003         * scm/define-music-types.scm (music-descriptions): don't use
10004         Music_wrapper type.
10005
10006         * lily/paper-column.cc (print): print moment too.
10007
10008         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
10009         remove compatibility cruft.
10010
10011         * lily/parser.yy (score_body): \score can only begin with Music. 
10012
10013         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
10014         make-score. Take music argument only. Move parser interaction to
10015         Scheme.
10016
10017         * scm/lily-library.scm (scorify-music): new function.
10018
10019         * python/lilylib.py (datadir): remove 2.1 compat kludge.
10020         (datadir): remove resource import.
10021         (print_environment): remove get_bbox()
10022         (cp_to_dir): remove pre 1.5.2 compat glue.
10023
10024 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10025
10026         * lily/include/simple-spacer.hh (Module): idem.
10027
10028         * lily/include/spring.hh (struct Spring): store inverse
10029         strength. This prevents division by zero.
10030
10031         * VERSION: release 2.7.0
10032         
10033         * lily/include/music.hh (class Music): remove Music::duration_log()
10034
10035         * lily/stem-engraver.cc (make_stem): take duration log from event.
10036
10037         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
10038
10039 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10040
10041         * scm/lily.scm (ly:load): load autochange.scm
10042
10043         * Documentation/user/tutorial.itely (Running LilyPond for the
10044         first time): remove reference to DVI/TeX
10045
10046         * scm/define-markup-commands.scm (text): add \text markup command.
10047
10048         * configure.in (reloc_b): bump requirement to Python 2.2.
10049
10050         * lily/include/dots.hh (class Dots): make has_interface() static.
10051
10052         * python/convertrules.py (conv): add rule for ly:grob-default-font
10053
10054         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
10055         alphabetical order.
10056
10057         * input/regression/trill-spanner-pitched.ly: new file.
10058
10059         * lily/font-interface-scheme.cc (LY_DEFINE): function
10060         ly:grob-default-font (changed from get-default-font).
10061
10062         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
10063
10064         * lily/note-head.cc (internal_print): if style is not a symbol,
10065         set style to 'default. 
10066         (internal_print): no style suffix if glyph-name-procedure not
10067         set. Default to quarter head.
10068
10069         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
10070
10071         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
10072
10073         * ly/music-functions-init.ly: \pitchedTrill
10074
10075         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
10076
10077         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
10078
10079         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
10080
10081         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
10082
10083         * po/fr.po: update
10084
10085         * po/de.po: update.
10086
10087 2005-07-06  Graham Percival  <gperlist@shaw.ca>
10088
10089         * Documentation/user/changing-defaults.itely: add link
10090         to grob-iterface.
10091
10092         * Documentation/user/advanced-notation.itely: add material
10093         to Setting automatic beam behaviour.  Thanks, Joe!
10094
10095         * Documentation/user/lilypond.itely: change encoding to utf-8.
10096
10097 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
10098
10099         * Documentation/user/advanced-notation.itely (Setting automatic
10100         beam behavior): Correct the documentation of
10101         revert-auto-beam-setting (backportme)
10102
10103 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10104
10105         * lily/ly-module.cc (ly_make_anonymous_module): define
10106         %module-public-interface of module. 
10107
10108         * lily/lily-parser.cc (print_smob): allow printing of parser smob
10109         without lexer.
10110
10111 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10112
10113         * input/regression/fret-diagrams.ly: stretch example.
10114
10115 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10116
10117         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
10118         Fodor).
10119
10120 2005-06-30  Graham Percival  <gperlist@shaw.ca>
10121
10122         * Documentation/topdocs/AUTHORS.texi: update personal web address.
10123
10124         * Documentation/user/examples.itely, lilypond-book.itely:
10125         change \RequirePackage to \usepackage.
10126
10127         * Documentation/user/global.itely: document copyright and tagline.
10128
10129 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10130
10131         * Documentation/user/basic-notation.itely (Transpose): remove link
10132         to nonexistent UntransposableMusic.
10133
10134         * scm/output-svg.scm: remove old definitions.
10135
10136         * scripts/lilypond-book.py (do_file): search for kpsewhich before
10137         invoking.
10138
10139         * python/lilylib.py (search_exe_path): new function.
10140
10141 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10142
10143         * python/lilylib.py (mkdir_p): remove setup_environment()
10144         (backportme)
10145
10146         * buildscripts/mutopia-index.py (headertext): trim text.
10147
10148         * Documentation/topdocs/NEWS.tely (Top): refresh.
10149
10150         * scm/define-markup-commands.scm (wordwrap-string): new function:
10151         split string in paras and words.
10152         (wordwrap-markups): new function.
10153         (wordwrap-stencils): new function. 
10154         (justify): use it.
10155         (wordwrap): use it.
10156         (wordwrap-string): use it
10157         (justify-string): use it.
10158
10159         * scm/lily-library.scm (regexp-split): new function.
10160
10161         * scm/define-markup-commands.scm: remove encoded-simple. 
10162         remove font-markup.
10163         (fontsize): remove old version  of fontsize.
10164         (wordwrap): new markup function. Wrap into paragraphs.
10165
10166         * VERSION: Branch lilypond_2_6
10167         (MINOR_VERSION): go to 2.7.0
10168
10169 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10170
10171         * po/zh_TW.po: update from translation project.
10172
10173 2005-06-28  Graham Percival  <gperlist@shaw.ca>
10174
10175         * scm/midi.scm: compile fix.
10176
10177 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
10178
10179         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
10180         patch. Now, the tempfile module is loaded too, not only used.
10181
10182 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
10183
10184         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
10185         0.05 - 1.00 to 0.25 - 1.00
10186
10187         * scm/midi.scm: moved the default-instrument-equalizer procedure
10188         to just under the insturment-equalizer-alist it takes as an
10189         argument.
10190
10191 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10192
10193         * Documentation/user/advanced-notation.itely (Font selection):
10194         remove CMR note.
10195
10196         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
10197
10198 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10199
10200         * THANKS: Add UTF-8 marker.
10201
10202         * Documentation/user/point-and-click.itely (http): Update: use
10203         lilypond-invoke-editor.  Fix: instruct to use user.js.
10204
10205 2005-06-27  Graham Percival  <gperlist@shaw.ca>
10206
10207         * ly/titling-init.ly: implements printpagenumber, increases
10208         space between dedication and title (to avoid collisions with
10209         "g" and "q" in dedication), and nicer logic about copyright
10210         and instrument fields being printed on the first page.
10211         Thanks Vincent!
10212
10213         * Documentation/user/global.itely: document printpagenumber.
10214
10215 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10216
10217         * Documentation/topdocs/NEWS.tely: Update to 2.6.
10218
10219 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10220
10221         * THANKS: update to 2.6
10222
10223         * VERSION: 2.6.0 released.
10224
10225 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10226
10227         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
10228         rule, errorneously removed probably because of misleading comment.
10229
10230 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10231
10232         * python/lilylib.py (datadir): py2exe comments.
10233
10234         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
10235
10236         * configure.in (reloc_b): make fontconfig REQUIRED.
10237
10238 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
10239
10240         * po/fi.po: add latest translations.
10241
10242 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10243
10244         * ChangeLog: recode utf-8
10245
10246         * Documentation/pictures/lilypond.xpm (Module): edited photo as
10247         logo.
10248
10249         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
10250
10251         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
10252
10253         * python/convertrules.py (do_conversion): don't print program_name
10254         from within a module
10255
10256         * configure.in (reloc_b): bump fontforge requirement to 20050624.
10257
10258         * python/convertrules.py (conv): add 2.6.0 dummy rule.
10259
10260 2005-06-23  Graham Percival  <gperlist@shaw.ca>
10261
10262         * Documentation/user/lilypond-book.itely,
10263         Documentation/user/examples.itely: add \RequirePackage{graphics}.
10264
10265         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
10266         fixes baseline-skip.  Thanks Vincent!
10267
10268         * Documentation/user/advanced-notation.itely, global.itely:
10269         moved "Selecting font sizes" to global, since it deals with
10270         notation font size, not text fonts.
10271
10272 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10273
10274         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
10275         to fonts.
10276
10277 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
10278
10279         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
10280         workaround since /dev/stdin doesn't work on Cygwin. Using a
10281         temporary file in the current directory since latex doesn't
10282         understand the path name to the default TMP in Cygwin (at least on
10283         win XP).
10284         
10285         * Documentation/user/global.itely (Creating titles): Correct
10286         misprint in example. Thanks to Rob Vlasaty.
10287
10288 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10289
10290         * VERSION (PATCH_LEVEL): release 2.5.32
10291
10292         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
10293         variable in lily module
10294
10295         * scm/framework-ps.scm (output-classic-framework): error message
10296         regarding the classic framework.
10297
10298         * Documentation/user/henle-flat-gray.png (Module): new file.
10299
10300         * Documentation/user/baer-flat-gray.png (Module): new file.
10301
10302         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
10303         whiteout for markups.
10304
10305         * buildscripts/substitute-encoding.py (note_glyph): include _ in
10306         regex too. This fixes change clef appearance in PDF. 
10307
10308         * ttftool/include/*: remove.
10309
10310         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
10311
10312         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
10313
10314         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
10315
10316         * ttftool/*: remove ttftool subdirectory.
10317
10318         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
10319
10320         * lily/ttf.cc (print_header): new file. Convert to type42, using
10321         FreeType to parse the TTF. 
10322
10323         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
10324         and post table may differ. Pass around post_nglyphs as well.
10325
10326 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10327
10328         * ly/music-functions-init.ly (musicMap): new music function
10329         musicMap. 
10330         
10331 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10332
10333         * make/mutopia-rules.make: anti-alias-factor = 2
10334
10335         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
10336         page switch.
10337
10338         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
10339         anti-alias-factor for lilypond-book runs.
10340
10341         * scm/ps-to-png.scm (scale-down-image): new function.
10342         (my-system): new function.
10343         (make-ps-images): blow up GS resolution by anti-alias-factor,
10344         scale down image by anti-alias-factor.  This improves appearance
10345         of bitmaps
10346         (make-ps-images): remove showpage. Fixes spurious empty png at
10347         end.
10348
10349         * scm/framework-ps.scm (write-preamble): downcase filename before
10350         string-matching. Should fix .TTF files (as opposed to ttf files)  
10351
10352         * Documentation/user/tutorial.itely (Running LilyPond for the
10353         first time): separate subsections for windows, macos and unix.  
10354
10355         * Documentation/user/invoking.itely (Updating files with
10356         convert-ly): add MacOS X note.
10357
10358 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10359
10360         * Documentation/user/introduction.itely (Engraving): don't include
10361         file optical-spacing, add directly.
10362
10363         * lily/paper-outputter.cc (file): open file in binary mode. This
10364         fixes OTF embedding on windows.
10365
10366 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10367
10368         * scm/framework-ps.scm (write-preamble): remove debugging output.
10369
10370         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
10371
10372         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
10373         outdir.
10374         (install-fc-cache): install font cache in installation directories.
10375
10376 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10377
10378         * scm/editor.scm (editor-command-template-alist): Use char iso
10379         column, except for Emacs.
10380         (get-editor-command): Substitute char too (Bertalan Fodor).
10381
10382 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10383
10384         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
10385         quoted ~s.  This should fix PNG output on Windows; single quotes
10386         are regular characters on Windows.
10387
10388 2005-06-16  Graham Percival  <gperlist@shaw.ca>
10389
10390         * Documentation/user/basic-notation.itely: include ChoirStaff
10391         in System start delimiters.
10392
10393         * Documentation/user/putting.itely: new doc section on
10394         fixing overlapping notation.
10395
10396 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10397
10398         * Documentation/user/global.itely (Paper size): \paper is in
10399         \book, not \score.
10400
10401         * make/mutopia-rules.make: -ddelete-intermediate-files
10402
10403         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
10404
10405 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10406
10407         * ChangeLog: Recode utf-8.
10408
10409         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
10410         datadir with .py modules.
10411
10412 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
10413
10414         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
10415
10416 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10417
10418         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
10419         
10420         * scm/framework-ps.scm (write-preamble): remove status check.
10421
10422         * Documentation/user/invoking.itely (Updating files with
10423         convert-ly): remove -o option.
10424
10425         * VERSION (PACKAGE_NAME): release 2.5.31
10426
10427         * scm/framework-ps.scm (write-preamble): use ly:system.
10428         (write-preamble): verbosity.
10429
10430         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
10431
10432         * python/convertrules.py: new file. Store conversion rules
10433         separately.
10434
10435 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10436
10437         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
10438
10439 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
10440
10441         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
10442         \musicDisplay 
10443
10444         * Documentation/user/instrument-notation.itely (More stanzas): Add
10445         reference to StanzaNumber.
10446
10447 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10448
10449         * THANKS: separate section for website translators.
10450
10451 2005-06-14  Graham Percival  <gperlist@shaw.ca>
10452
10453         * Documentation/topdocs/INSTALL.texi: update vim info;
10454         thanks Simon Bailey!
10455
10456         * Documentation/user/advanced-notation.itely: included
10457         color names.
10458
10459         * Documentation/user/advanced-notation.itely,
10460         Documentation/usr/notation-appendices.itely: moved
10461         color names into an appendix.
10462
10463 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10464         
10465         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
10466
10467         * scm/lily.scm (lambda): initialize program options from here.
10468
10469         * scm/framework-*.scm: add header info.
10470
10471         * lily/main.cc (parse_argv): only set output format to pdf if no
10472         other format specified.
10473
10474         * scm/backend-library.scm (postprocess-output): process
10475         'delete-intermediate-files after running convert-to-*. This fixes
10476         PNG generation when 'delete-intermediate-files is set.
10477         
10478 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10479
10480         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
10481         links on website. 
10482
10483 2005-06-13  Graham Percival  <gperlist@shaw.ca>
10484
10485         * Documentation/topdocs/INSTALL.texi,
10486         Documentation/user/lilypond-book.itely: typos.
10487
10488 2005-06-12  Pal Benko  <benkop@freestart.hu>
10489
10490         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
10491         added between program name and switch; -b changed to -f not
10492         to generate pdf
10493
10494 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10495
10496         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
10497         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
10498
10499         * input/sakura-sakura.ly: add \midi.
10500
10501         * buildscripts/mutopia-index.py (find): use /usr/bin/find
10502         iso. python find. 
10503
10504         * ttftool/test.c (main): cosmetics.
10505
10506         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
10507
10508         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
10509         create a ttf2ps binary.
10510
10511         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
10512
10513         * scm/backend-library.scm (postscript->png): set rename-page-1 to
10514         true.
10515
10516 2005-06-11  Graham Percival <gperlist@shaw.ca>
10517
10518         * Documentation/user/lilypond-book.itely: add warning about
10519         the font warnings in dvips.
10520
10521 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10522
10523         * THANKS: typo
10524
10525         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
10526
10527         * GNUmakefile.in: remove links for .map, .enc
10528         don't fail if out/ doesn't exist yet.
10529
10530 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10531
10532         * ttftool/util.c (surely_read): return nbytes
10533
10534         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
10535
10536         * VERSION (PACKAGE_NAME): release 2.5.30
10537
10538         * flower/string-convert.cc (precision_string): >? fix.
10539
10540         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
10541         (make-ps-images): add verbose -q too.
10542
10543         * lily/default-actions.cc (Module): new file. default
10544         {book,score}-print functions.
10545
10546         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
10547         pass results via parseStringResult, lookup via ly:parser-lookup.  
10548
10549         * lily/lily-parser.cc (Lily_parser): only clone lexer in
10550         constructors.
10551         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
10552         (parse_string): idem.
10553
10554         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
10555
10556         * lily/main.cc (main_with_guile): copy be_verbose_global into
10557         ly_set_option()
10558
10559 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10560
10561         * scm/backend-library.scm (postscript->pdf):
10562         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
10563         verbose mode.  Search for several names of gs executable.
10564
10565 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10566
10567         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
10568         directly. This fixes a massive memory leak, provided you use CVS
10569         GUILE.
10570
10571 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
10572
10573         * ly/property-init.ly: Added tieDashed.
10574
10575         * THANKS: Added some bughunters for 2.5.
10576
10577 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10578
10579         * lily/program-option.cc: add debug-gc option.
10580
10581         * lily/include/lily-guile-macros.hh: don't protect exported module
10582         objects.
10583
10584         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
10585
10586         * scm/backend-library.scm (postscript->pdf): use
10587         delete-intermediate-files iso. running-from-gui? 
10588
10589         * ttftool/util.c (surely_read): robustness. Allow read() to return
10590         less bytes than requested, as per posix standards.
10591
10592         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
10593         program option.
10594
10595         * ttftool/include/ttftool.h ("C"): rename verbosity to
10596         ttf_verbosity. Add to public interface.
10597
10598         * scm/music-functions.scm (unfold-repeats): remove debugging display.
10599
10600         * lily/program-option.cc: rename from scm-option.cc
10601
10602         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
10603         (get_help_string): Print pretty help string.
10604
10605         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
10606         to snippet preamble.
10607
10608         * lily/scm-option.cc: remove command-line-settings option. Fold
10609         all command-line options plus default settings in a generic
10610         interface. 
10611
10612         * flower/getopt-long.cc (table_string): indent 2nd lines of help
10613         texts too.
10614
10615 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10616
10617         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
10618         or EXT_ components non-empty.
10619
10620 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10621
10622         * scm/lily.scm (running-from-gui?): Export.
10623
10624         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
10625         output in .ly source directory.
10626
10627 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10628
10629         * ttftool/util.c (surely_lseek): more verbosity.
10630
10631         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
10632         compile.
10633
10634         * lily/parser.yy (Repeated_music): remove >? 
10635
10636         * scm/backend-library.scm (postscript->pdf): Support for
10637         -dgs-font-load=1
10638
10639         * scm/framework-ps.scm (write-preamble): make font loading
10640         switchable to GS via --define-default gs-font-load=1
10641
10642 2005-06-09  Graham Percival  <gperlist@shaw.ca>
10643
10644         * Documentation/user/global.itely: added \layout docs.
10645
10646 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10647
10648         * lily/lily-parser-scheme.cc: add unistd.h
10649
10650 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10651
10652         * scm/editor.scm: add char argument.
10653
10654         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
10655
10656         * ttftool/util.c (syserror): use errno for better error reporting.
10657
10658         * lily/source-file.cc (get_counts): new function. Calc column,
10659         line and char count in one go.
10660
10661         * lily/binary-source-file.cc (quote_input): rename to quote_input
10662
10663         * lily/input.cc (set): new function.
10664
10665 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10666
10667         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10668         directory part of file name to search directory.
10669
10670         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10671         search path and chdir to DIR if --outname=DIR used.
10672
10673         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10674         existence before appending original path.
10675
10676 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10677
10678         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10679         file" massage.
10680
10681         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10682         texinfo.tex is always used.
10683         
10684 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10685
10686         * flower/include/axis.hh: rename from axes.hh
10687
10688         * lily/include/text-interface.hh (Module): rename from text-item.hh
10689
10690         * VERSION (PATCH_LEVEL): release 2.5.29
10691
10692         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10693
10694         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10695         (handle-macfont): new function. Call fondu for Native mac fonts.
10696
10697         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10698         '() case.
10699
10700 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10701
10702         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10703         multi-page.  Fix .eps regular expression.
10704
10705 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10706
10707         * Documentation/user/putting.itely: add info on modifying templates.
10708
10709         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10710         misc small changes.
10711
10712 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10713
10714         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10715
10716         * scripts/lilypond-ps2png.scm
10717
10718         * VERSION (PACKAGE_NAME): release 2.5.28
10719
10720 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10721
10722         * lily/main.cc (prepend_env_path): Do not append /, that does not
10723         work.  Localedir lives in datadir, not in prefix.
10724
10725         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10726         hack for windows.
10727
10728         * flower/include/file-cookie.hh: Compile fix.
10729
10730 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10731
10732         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10733
10734         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10735         system primitives.
10736         (gulp-port): using read-string!/partial. We don't want to read an
10737         entire PS file  (GUILE 1.6 limits strings to 16M) 
10738
10739         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10740         properties. Add font-interface. 
10741
10742         * scm/define-grob-properties.scm (all-user-grob-properties):
10743         remove old bracket properties.
10744
10745         * scm/x11-color.scm: reformat. 
10746
10747         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10748         LedgerLineSpanner if new StaffSymbol is found. 
10749
10750         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10751         staff-symbol for finishing staff. 
10752
10753         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10754
10755         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10756         change black to currentColor everywhere. This fixes color support
10757         in SVG.
10758
10759 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10760
10761         * input/regression/fret-diagrams.ly: new file to test fret diagram
10762         capability
10763
10764         * scm/output-tex.scm: remove white-dot and white-text
10765
10766         * scm/output-ps.scm: remove white-dot and white-text
10767
10768         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10769         using ly:stencil-in-color instead
10770         (draw-dots) : remove call to white-dot
10771
10772 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10773
10774         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10775         support.
10776
10777         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10778
10779         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10780
10781         * flower/file-cookie.cc: new file. lily_cookie extension.
10782         
10783 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10784
10785         * scm/editor.scm (editor-command-template-alist): Add syn
10786         editor (Jaap [de Vos]).
10787
10788 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10789
10790         * scripts/lilypond-ps2png.scm:
10791         * scm/ps-to-png.scm: New file.
10792
10793         * scm/backend-library.scm (postscript->png): Use it.
10794
10795         * scripts/lilypond-ps-to-png.py: Remove file.
10796
10797         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10798
10799 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10800
10801         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10802
10803         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10804         start on grace moment. Fixes autobeam-grace.ly.
10805
10806         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10807         process anything unless we're at the end of a pending beam. Fixes
10808         syncopated 8ths beamed across a beat.
10809
10810 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10811
10812         * scm/editor.scm (editor-command-template-alist): Start emacs if
10813         emacslient fails.
10814
10815         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10816
10817         * flower/file-path.cc (is_file, is_dir): Export.
10818
10819         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10820
10821 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10822
10823         * lily/easy-notation.cc: Added include cctype to correct
10824         compilation error.
10825
10826 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10827
10828         * scm/backend-library.scm (postscript->pdf): set resolution to
10829         1200, so bitmap fonts aren't that ugly. 
10830
10831         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10832
10833         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10834         parent if we have a notehead. Fixes incorrect offsets when
10835         Paper_column is very wide in the X direction.
10836
10837         * input/regression/font-family-override.ly (Module): new file.
10838
10839         * scm/font.scm (make-pango-font-tree): new function.
10840
10841         * lily/beam.cc (before_line_breaking): remove warning about less
10842         than 2 visible stems. We still get a warning when there is only
10843         one stem.
10844
10845 2005-06-01  Werner Lemberg  <wl@gnu.org>
10846
10847         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10848         correctly.
10849
10850 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10851
10852         * lily/slur-scoring.cc (generate_avoid_offsets): new
10853         function. Generate avoid offsets once per slur.
10854
10855         * lily/slur.cc (add_extra_encompass): add dependency to
10856         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10857
10858         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10859         too. Fixes inf error with added bass notes.
10860
10861         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10862         argument anymore.
10863
10864         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10865
10866         * input/tutorial/lbook-latex-test.tex: add line length test.
10867
10868         * scripts/lilypond-book.py (set_default_options): new
10869         function. Call this before dissecting snippets, so linewidth
10870         settings reach the snippets.
10871
10872 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10873
10874         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10875
10876 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10877
10878         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10879
10880 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10881
10882         * stepmake/aclocal.m4: More autopackage friendliness.
10883
10884 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10885
10886         * Documentation/index.html.in: remove link to LSR.
10887
10888         * Documentation/user/global.itely: remove duplicate
10889         "dedication" \header{} section.
10890
10891 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10892
10893         * VERSION (PACKAGE_NAME): release 2.5.27.
10894
10895         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10896         too. Plugs memory leak.
10897
10898         * make/lilypond.fedora.spec.in (Group): remove
10899         lilypond-pdfpc-helper.
10900
10901         * scripts/GNUmakefile (SEXECUTABLES): remove
10902         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10903
10904         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10905         'typewriter family.
10906
10907         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10908         memory leak.
10909
10910         * lily/parser.yy (score_body): don't clone Score, that's done in
10911         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10912
10913         * lily/score-engraver.cc (derived_mark): new function.
10914         (initialize): unprotect Paper_score. This fixes a memory leak.
10915
10916         * lily/score-performer.cc (derived_mark): new function.
10917
10918         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10919
10920         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10921         spurious warning.
10922
10923         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10924         serif.
10925
10926 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10927
10928         * configure.in (reloc_b): Add --enable-relocation.
10929
10930 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10931
10932         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10933
10934         * input/regression/alignment-order.ly: add Staff example.
10935
10936 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10937
10938         * po/fr.po: update.
10939
10940 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10941
10942         * Documentation/index.html.in: add link to LSR.
10943
10944 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10945
10946         * scm/define-stencil-commands.scm (Module): new file. Register all
10947         allowed stencil expression heads in a central place.
10948
10949         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10950         ly:make-stencil
10951
10952         * lily/stencil-expression.cc (all_stencil_heads): registering
10953         stencil expressions.
10954
10955         * lily/stencil-interpret.cc: new file. Stencil expression
10956         interpreting.
10957
10958         * input/xiao-haizi-guai-guai.ly: move file back.
10959
10960 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10961
10962         * Documentation/user/advanced.itely, converters.itely,
10963         instrument-notation.itely, lilypond-book.itely: misc small
10964         changes.
10965
10966 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10967
10968         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10969
10970         * make/lilypond.fedora.spec.in: Fix source url.
10971
10972         * cygwin: Update from mingw patches.
10973
10974         * scm/editor.scm (editor-command-template-alist): Use jedit
10975         -reuseview (Bertalan), add uedit (Patrick Huberts).
10976
10977         * input/xiao-hai-zi-guai-guai.ly: Rename from
10978         xiao-haizi-guai-guai.ly.
10979
10980         * input/*: Reindent, do not use TAB.
10981
10982         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10983         white background.
10984
10985 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10986
10987         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10988         numerical overflow error.
10989
10990 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10991         
10992         * abc2ly.py: fix to syntax error in multi-part output.
10993
10994 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10995
10996         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10997         with disappearing span bars when alignAboveContext is active
10998
10999         * lily/property-iterator.cc (check_grob): use is-grob?
11000         object-property. Fixes crash-key-sig-font-size.ly. 
11001
11002 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11003
11004         * lily/bar-line.cc (print): don't round barlines; this produces
11005         odd aliasing effects in Acroread.
11006
11007         * lily/timing-engraver.cc (process_music): robustness fix.
11008
11009         * lily/context-def.cc (filter_engravers): bugfix.
11010
11011 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11012
11013         * lily/lilypond.rc.in: Add ly-icon.
11014
11015         * lily/GNUmakefile: 
11016         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
11017         rules.
11018
11019 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11020
11021         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
11022
11023         * ps/music-drawing-routines.ps: 
11024
11025         * scm/output-ps.scm: remove draw ez_ball.
11026
11027         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
11028         EasyNotation context definition.
11029
11030         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
11031         Text_interface and color for making easy note heads.
11032
11033         * lily/stencil.cc (with_color): new function.
11034
11035         * ps/music-drawing-routines.ps: remove draw_zigzag_line
11036
11037         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
11038         output routine. Zigzag now works in SVG too.
11039
11040         * scm/output-tex.scm (filledbox): idem.
11041
11042         * scm/output-svg.scm (filledbox): idem.
11043
11044         * scm/output-ps.scm (lily-def): remove horizontal-line. 
11045
11046         * lily/lookup.cc (horizontal_line): use draw-line. 
11047
11048         * lily/system-start-delimiter.cc: remove old staff bracket code.
11049
11050         * mf/feta-haak.mf: further tweaks.
11051
11052         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
11053
11054         * mf/feta-generic.mf: include feta-haak.
11055
11056         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
11057
11058         * scm/framework-ps.scm (write-preamble): only load fonts if their
11059         filename is a string. 
11060
11061 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11062
11063         * scm/output-svg.scm (circle): support circle.
11064         (bracket): stub for bracket.
11065
11066         * scripts/lilypond-book.py (main): make sure --psfonts warning is
11067         correct.
11068
11069 2005-05-26  Graham Percival  <gperlist@shaw.ca>
11070
11071         * Documentation/user/lilypond.tely, advanced-notation.itely,
11072         basic-notation.itely, instrument-notation.itely, global.itely,
11073         introduction.itely, tutorial.itely: rearranging, editing,
11074         clean-up.
11075
11076         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
11077         for compiling on FreeBSD.
11078
11079 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11080
11081         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
11082         otf files.
11083
11084         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
11085         bugfixes.
11086
11087         * VERSION: 2.5.26 released.
11088
11089         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
11090
11091 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
11092
11093         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
11094         if printpagenumber is false.
11095
11096 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11097
11098         * lily/font-config.cc (init_fontconfig): comment out FontConfig
11099         cache warning.
11100
11101         * lily/tie.cc (print): support dotted ties.
11102         
11103 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11104
11105         * scm/define-grobs.scm (all-grob-descriptions): switch off
11106         debugging
11107         (all-grob-descriptions): Arpeggio has Y-extent.
11108
11109         * scm/define-music-properties.scm (all-music-properties): document
11110         length-callback and start-callback as "read-only".
11111
11112         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
11113         length-callback after creation. 
11114
11115         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
11116         compressmusic -> compressMusic.
11117
11118         * ly/music-functions-init.ly (oldaddlyrics): idem.
11119
11120         * lily/parser.yy: NewLyricCombineMusic ->
11121         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
11122
11123 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
11124
11125         * ly/Welcome_to_LilyPond.ly: typo.
11126
11127 2005-05-24  Graham Percival  <gperlist@shaw.ca>
11128
11129         * Documentation/user/lilypond.tely: move changing-defaults to be
11130         before global issues.
11131
11132         * Documentation/user/basic-notation.itely: move Transpose section
11133         here from advanced/Other.
11134
11135         * Documentation/user/changing-defaults.itely,
11136         advanced-notation.itely: move Fonts to advanced, edit.
11137
11138 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11139
11140         * lily/parser.yy (bare_int): remove rule.  From now on, we require
11141         # before negative integers.
11142
11143 2005-05-23  Graham Percival  <gperlist@shaw.ca>
11144
11145         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
11146
11147         * Documentation/user/lilypond.tely: change Unified index to
11148         LilyPond index.
11149
11150         * Documentation/user/advanced-notation.itely,
11151         instrument-notation.itely: editing.
11152
11153 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
11154
11155         * scm/lily.scm (lilypond-all): Bugfix: return failed.
11156
11157         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
11158
11159 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11160
11161         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
11162         ly:port-move.  Needs to be stderr-specific on mingw.
11163         Run fixcc.
11164
11165 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11166
11167         * lily/general-scheme.cc (ly:port-move): Remove.
11168
11169         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
11170         windows.
11171
11172         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
11173         variables.  This eliminates the need for a gs.bat wrapper, which
11174         opens a console.
11175
11176         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
11177         * scm/lily.scm (running-from-gui?): 
11178         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
11179         artifact of not compiling with -mwindows.
11180
11181         * scm/editor.scm: Define PLATFORM.
11182
11183 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11184
11185         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
11186         can start to cut & paste lilypond-book fragments.  
11187
11188         * scm/define-music-types.scm (music-descriptions): remove
11189         UntransposableMusic
11190
11191 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11192
11193         * scm/output-ps.scm (glyph-string): remove / before CIDs.
11194
11195 2005-05-20  Graham Percival  <gperlist@shaw.ca>
11196
11197         * Documentation/user/instrument-notation.itely: remove *Engraver.
11198
11199         * Documentation/user/advanced-notation.itely: edit, rearrange.
11200
11201 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11202
11203         * scm/output-ps.scm (glyph-string): take cid? argument. Use
11204         findresource iso. findfont for CID CFF fonts.
11205
11206         * VERSION (PACKAGE_NAME): release 2.5.25
11207
11208         * ly/Welcome_to_LilyPond.ly: add  \version
11209
11210 2005-05-20  Graham Percival  <gperlist@shaw.ca>
11211
11212         * Documentation/user/programming-interface.itely: move
11213         \displayMusic into its own section.
11214
11215         * Documentation/user/basic-notation.itely: finish editing.
11216
11217 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11218
11219         * flower/file-path.cc (find): don't throw away file_name.dir, but
11220         append to it. Fixes \include with directories.
11221
11222         * flower/include/file-path.hh (class File_path): don't derive from
11223         Array<String>.
11224
11225         * flower/include/file-name.hh (class File_name): remove to_str0()
11226
11227         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
11228         Hara_kiri_engraver in separate file.
11229
11230         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
11231         translation went wrong. Fixes vertically translated slurs.
11232
11233 2005-05-19  Graham Percival  <gperlist@shaw.ca>
11234
11235         * Documentation/user/basic-notaton.itely: editing.
11236
11237 2005-05-18  Graham Percival  <gperlist@shaw.ca>
11238
11239         * Documentation/user/macros.itexi, basic-notation.itely:
11240         add @commonprop (commonly used properties) macro.
11241
11242 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11243
11244         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
11245
11246         * scripts/lilypond-book.py (invokes_lilypond): new function
11247         (main): only run fontextract if invokes_lilypond() is true.
11248
11249         * lily/function-documentation.cc (ly_add_function_documentation):
11250         duh, use !=
11251
11252         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
11253
11254         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
11255
11256         * scm/lily.scm (running-from-gui?): lowercase Darwin.
11257
11258         * lily/function-documentation.cc (ly_add_function_documentation):
11259         use scm_hash_table_p() for checking.
11260
11261 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11262
11263         * Documentation/user/advanced-notation.itely (Text scripts):
11264         Change nonexisting @internalsref{Text markup} to @ref{Text
11265         markup}.  Change @internalsref{Text script} to
11266         @internalsref{TextScript}.
11267
11268         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
11269
11270 2005-05-17  Graham Percival  <gperlist@shaw.ca>
11271
11272         * Documentation/user/tutorial.itely, basic-notation.itely,
11273         changing-defaults.itely: remove duplicate cindex entries
11274         that appear on the same page.
11275
11276         * scm/define-grobs.scm: change default padding for TextSpanner.
11277
11278         * Documentation/topdocs/AUTHORS.texi: update email address.
11279
11280         * Documentation/user/global.itely: add info about \include.
11281
11282 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11283
11284         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
11285         when running-from-gui.
11286
11287         * scm/editor.scm (get-editor): Add platform defaults.
11288
11289         * scm/backend-library.scm (postscript->pdf): Typo.
11290
11291 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11292
11293         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
11294
11295         * lily/font-config.cc (init_fontconfig): add warning about cache.
11296
11297 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11298
11299         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
11300
11301 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
11302
11303         * lily/horizontal-bracket.cc (print): Take care of the direction
11304         property so brackets above the stave point downwards. 
11305
11306         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
11307         for HorizontalBracket so it doesn't end up within the stave.
11308
11309 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11310
11311         * lily/GNUmakefile (default): Typo.
11312
11313         * scm/lily.scm (PLATFORM): Export.
11314
11315         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
11316         load-font-via-GS, ttftool or fopencookie is broken on windows.
11317         
11318         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
11319         -dSAFER, that is broken on windows.
11320
11321 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11322
11323         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
11324         for FlexLexer.h
11325
11326         * scripts/lilypond-invoke-editor.scm: remove stray -
11327
11328 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
11329
11330         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
11331         Fixes deprecation warning.
11332
11333         * flower/include/string.icc (to_string): Only inline if
11334         -DSTRING_UTILS_INLINED.
11335
11336         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
11337         name.  Remove windows comment.
11338
11339         * scm/editor.scm (slashify): New function.
11340         (get-editor-command): Use it.
11341         (get-command-template): Do not alter editor command if
11342         environment value includes `%(file)s' magic.
11343
11344         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
11345         (dissect-uri): Use it.
11346         (unquote-uri): Bugfix.
11347
11348 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11349
11350         * scm/framework-ps.scm (write-preamble): add TTF rule.
11351
11352         * Documentation/topdocs/README.texi (Top): remove note about
11353         xdelta.
11354
11355         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
11356         requirement.
11357
11358         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
11359         function. Figure out where FlexLexer.h lives
11360
11361         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
11362         
11363 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11364
11365         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
11366         with Windows root in file name.
11367
11368         * scm/backend-library.scm (ly:system): Only redirect output (using
11369         system and shell, ugh) if /dev/null is writable.
11370
11371         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
11372         windows icon.
11373
11374         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
11375         on Mingw.
11376
11377         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
11378         click.
11379
11380         * flower/file-path.cc (is_dir, is_file): New function.  Actually
11381         use result of stat when available.
11382
11383         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
11384         absolute file name and root.
11385
11386         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
11387
11388         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
11389
11390         * flower/file-name.cc (slashify): Bugfix, do substitute if no
11391         slashes in file name.
11392
11393 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11394
11395         * Documentation/user/preface.itely (Preface): Run
11396         texinfo-all-menus-update.
11397
11398         * scm/editor.scm (get-editor-command): Bugfix: allow full
11399         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
11400
11401         * Documentation/pictures/lilypond-48.xpm: New file.
11402
11403         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
11404
11405         * ly/Welcome_to_LilyPond.ly: New file.
11406
11407         * lily/main.cc (main): Only identify if we have a terminal.
11408
11409         * scm/backend-library.scm (postscript->png)
11410         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
11411         non-/bin/sh).
11412
11413 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
11414
11415         * Documentation/topdocs/AUTHORS.texi: polish, update.
11416
11417 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11418
11419         * Documentation/user/preface.itely (Notes for version 2.6): new
11420         notes for 2.6
11421
11422         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
11423         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
11424         is not fully contained" warnings.
11425
11426         * lily/slur-scoring.cc (get_bound_info): remove warning.
11427
11428         * lily/staff-symbol-engraver.cc (process_music): start initial
11429         spanner in process_music(). This fixes overrides of StaffSymbol
11430         properties.
11431
11432         * scm/framework-pdf.scm (Module): remove.
11433
11434         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
11435
11436         * lily/ambitus-engraver.cc: formatting cleanups.
11437
11438         * mf/feta-solfa.mf (Module): remove.
11439
11440         * ChangeLog: more details about contributions.
11441
11442 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11443
11444         * lily/align-interface.cc (align_elements_to_extents): warn if
11445         called too early. Fixes: disappearing-staff-lines.ly
11446
11447         * VERSION (PACKAGE_NAME): release 2.5.24
11448
11449 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11450
11451         * stepmake/aclocal.m4: Typo.
11452
11453         * flower/string.cc (substitute): Take two strings or two
11454         characters.  Update callers.
11455
11456 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11457
11458         * flower/file-name.cc (File_name): Slashify.
11459
11460         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
11461
11462         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
11463
11464         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
11465
11466         * configure.in (gui_b): Use it.
11467
11468         * lily/lilypond.rc.in: New file.
11469
11470         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
11471
11472 2005-05-12  Graham Percival  <gperlist@shaw.ca>
11473
11474         * Documentation/user/advanced-notation.itely: edit of Text
11475         section; clarify text scripts vs. text markup.
11476
11477 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11478
11479         * lily/multi-measure-rest-engraver.cc
11480         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
11481         separation items on start. Fixes mm rests in start of score.
11482
11483         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
11484         don't access StaffSymbol if not there.
11485         Fixes: crash-staff-symbol-engraver.ly.
11486
11487         * lily/instrument-name-engraver.cc (class
11488         Instrument_name_engraver): data member first_. Create
11489         InstrumentName on start. 
11490
11491 2005-05-12  Graham Percival  <gperlist@shaw.ca>
11492
11493         * Documentation/user/instrument-notation.itely: add guitar
11494         position.
11495
11496         * Documentation/user/introduction.itely,
11497         Documentation/user/lilypond.tely,
11498         Documentation/user/tutorial.itely: begin pruning
11499         unused (duplicated) cindex entries and misc cleanup.
11500
11501 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
11502
11503         * input/test/volta-chord-names.ly: Bring the explanation up to
11504         date.
11505
11506 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
11507
11508         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
11509         Specify `@documentencoding utf-8' for html, ignore warnings.
11510
11511 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
11512
11513         * THANKS: Added bughunters.
11514
11515 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
11516
11517         * lily/main.cc: update help string for `lilypond -H'.
11518
11519         * po/fi.po: update.
11520         
11521 2005-05-10  Graham Percival  <gperlist@shaw.ca>
11522
11523         * Documentation/user/advanced-notation.itely: minor fixes.
11524
11525 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11526
11527         * scm/editor.scm: New module.
11528
11529         * scm/lily.scm (gui-main): Use it.
11530
11531         * scm/framework-gnome.scm (spawn-editor): Use it.
11532
11533         * scripts/lilypond-invoke-editor.scm: Use it in new script.
11534
11535 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11536
11537         * scm/framework-ps.scm (load-font-via-GS):  new function.
11538
11539         * lily/pango-font.cc (pango_item_string_stencil): add support for
11540         CID keyed font.
11541
11542         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
11543
11544 2005-05-10  Graham Percival  <gperlist@shaw.ca>
11545
11546         * Documentation/user/basic-notation.itely: add @ref.
11547
11548         * Documentation/user/advanced-notation.itely: add example
11549         of 5/8 beaming.
11550
11551 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11552
11553         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
11554
11555         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
11556         going through ps2pdf wrappers.
11557
11558 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
11559
11560         * Documentation/user/instrument-notation.itely: petrucci note
11561         heads: updated docu
11562
11563         * input/regression/note-head-style.ly: updated regression test;
11564         indentation fixes
11565
11566         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
11567         heads as default
11568
11569         * mf/parmesan-heads.mf: minor editing; use musicological names
11570         (rather than optical description) as note head names
11571
11572         * scm/output-lib.scm: complete petrucci heads
11573
11574 2005-05-09  Pal Benko  <benkop@freestart.hu>
11575
11576         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
11577         heads, but bigger)
11578
11579 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11580
11581         * lily/main.cc (main_with_guile): Remove no files check.
11582
11583         * lily/main.cc (ly:usage): Export to Scheme.
11584
11585         * scm/lily.scm (no-files-handler): New function.
11586
11587         * scm/lily.scm (lilypond-main): Use it.
11588
11589         * configure.in (gui_b): Add mbrtowc checking.
11590         Resurrect [utf8/]wchar.h checking.
11591
11592 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11593
11594         * Documentation/user/advanced-notation.itely (Metronome marks):
11595         Add link to the program reference for MetronomeMark
11596
11597         * Documentation/user/lilypond-book.itely (An example of a
11598         musicological document): Correct the example using psfonts 
11599
11600 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
11601
11602         * po/fi.po: update after a lesson how to update entries against
11603         source.
11604         
11605         * po/TODO: document the lesson.
11606
11607 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11608
11609         * configure.in (gui_b): remove wcrtomb checking.
11610
11611         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
11612         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
11613
11614 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11615
11616         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
11617         keep Scheme expressions and strings unmodified when doing the
11618         conversion to postfix notation for slurs and beams. Should
11619         hopefully solve most related conversion problems. 
11620
11621         * Documentation/user/lilypond-book.itely : Clarify and correct how
11622         to call dvips with -h psfonts.
11623
11624 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11625
11626         * Documentation/user/instrument-notation.itely (Entering lyrics):
11627         Typo.  Fixes build.
11628
11629 2005-05-09  Graham Percival  <gperlist@shaw.ca>
11630
11631         * Documentation/user/lilypond-book.itely: document PSFONTS file.
11632
11633         * Documentation/user/lilypond.tely, lilypond-book.itely,
11634         tutorial.itely: change references to 2.5.x to 2.6.x.
11635
11636         * Documentation/user/instrument-notation.itely: clarified \addlyrics
11637         vs \lyricmode.
11638
11639         * Documentation/user/invoking.itely: remove old info about
11640         lilypond-profile.
11641
11642         * Documentation/topdocs/INSTALL.texi: remove old info about
11643         lilypond-profile, add warning about needing international fonts
11644         to build docs.
11645
11646 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11647
11648         * lily/include/grob-info.hh (class Grob_info): make data member
11649         private. Changes throughout.
11650
11651         * input/regression/alignment-order.ly: new file. 
11652
11653         * lily/vertical-align-engraver.cc (acknowledge_grob): read
11654         alignAboveContext and alignBelowContext
11655
11656 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11657
11658         * lily/pfb.cc (LY_DEFINE): add cast.
11659
11660         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11661         matches .otf
11662         (write-preamble): warn about unknown fonts.
11663
11664         * lily/pfb.cc (Module): new function ly:otf->cff
11665
11666         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11667         (get_otf_table): new function.
11668
11669 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11670
11671         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11672         iso. ps2png.
11673
11674 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11675
11676         * po/fi.po: apply second round of update.
11677
11678 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11679
11680         * scm/x11-color.scm (make-x11-color-handler): don't use
11681         #\sp. Apparently doesn't work on all platforms. 
11682
11683 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11684
11685         * Documentation/user/advanced-notation.itely, putting.itely,
11686         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11687
11688 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11689
11690         * VERSION (PACKAGE_NAME): release 2.5.23
11691
11692 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11693
11694         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11695         convert to utf-8.
11696
11697         * THANKS: Add translators for this release, convert to utf-8.
11698
11699         * mf/GNUmakefile (MFTRACE_FLAGS):
11700         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11701         outdir as option (WAS: hardcoded).
11702
11703 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11704
11705         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11706         finished_span_
11707
11708         * THANKS: add Hans Forbrich.
11709
11710         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11711
11712         * Documentation/user/basic-notation.itely (Staff symbol): document
11713         start/stop staff. Reference to ossia.ly
11714
11715         * input/test/ossia.ly: new example using stop and startStaff.
11716
11717         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11718         in other words, don't create "|" barline at start of the score.
11719         (start_translation_timestep): don't set whichBar for start of score.
11720
11721         * input/regression/staff-halfway.ly: use new functionality.
11722
11723         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11724         start and stop staff based on events.
11725
11726         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11727
11728         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11729
11730 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11731
11732         * Documentation/user/programming-interface.itely (How markups work
11733         internally ): remove \encoding reference.
11734
11735 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11736
11737         * scripts/convert-ly.py: Attempt to do a smarter update of 
11738         text markups from versions < 1.9.0 with arbitrary nesting.
11739
11740 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11741
11742         * po/fi.po: convert to utf-8, and update.
11743
11744 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11745
11746         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11747
11748         * lily/*.cc: more <? >? to min/max changes
11749
11750         * lily/include/interpretation-context-handle.hh: rename
11751         Interpretation_context_handle to Context_handle.
11752
11753 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11754
11755         * input/regression/GNUmakefile (local_delete): use `find` together 
11756         with `xargs` to avoid too long argument-lists in cmd line.
11757
11758 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11759
11760         * Documentation/user/introduction.itely: updates "About this manual".
11761
11762         * Documentation/user/advanced-notation.itely,
11763         invoking.itely: minor fixes.
11764
11765 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11766
11767         * COPYING: add font exception. Update FSF address. 
11768
11769         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11770         should be taken without child context.
11771
11772         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11773
11774         * scm/define-markup-commands.scm (triangle): new command, as
11775         robust replacement for unicode Delta/Triangle.
11776
11777 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11778
11779         * ps/music-drawing-routines.ps: add fillp argument.
11780
11781         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11782
11783         * lily/font-config.cc (init_fontconfig): don't add cff/
11784
11785         * VERSION (PACKAGE_NAME): release 2.5.22
11786
11787         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11788
11789         * lily/grace-engraver.cc (consider_change_grace_settings): use
11790         is_alias(). Fixes problem with CueVoice grace notes. 
11791
11792         * lily/simultaneous-music-iterator.cc (construct_children): call
11793         Music_iterator::quit() for iterators that start out invalid. This
11794         fixes indefinitely continuing contexts.
11795
11796         * buildscripts/substitute-encoding.py: new file
11797
11798         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11799         missing @end 
11800
11801         * scripts/lilypond-book.py (write_if_updated): print file name.
11802
11803         * Documentation/user/basic-notation.itely (Explicitly
11804         instantiating voices): idem.
11805
11806         * Documentation/user/advanced-notation.itely (Text spanners):
11807         remove stray { } 
11808
11809         * lily/context.cc (default_child_context_name): the default child
11810         is now first in accepts_list_.
11811
11812         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11813         \defaultchild to all relevant contexts.  This fixes:
11814         drums-pitch.ly.
11815
11816         (Probably also fixes similar problems with ancient
11817         transcriptions getting CueVoices instead of the desired voices.)
11818  
11819         * lily/context-def.cc (get_default_child): new function.
11820         (get_accepted): place default child in front of list.
11821
11822         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11823
11824         * lily/include/context-def.hh (struct Context_def): add
11825         default_accept_
11826
11827 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11828
11829         * scm/define-grobs.scm: remove "remove-first" line, since
11830         the absent property is set to #f anyway.
11831
11832         * Documentation/user/basic-notation.itely,
11833         advanced-notation.itely, instrument-notation.itely: minor
11834         fixes.
11835
11836         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11837
11838         * Documentation/user/advanced-notation.itely,
11839         changing-defaults.itely: consolidate Text stuff in
11840         advanced notation.
11841
11842         * Documentation/user/global.itely: better docs for \header.
11843
11844         * Documentation/user/putting.itely: new chapter; placeholder
11845         for future expansion.
11846
11847         * Documentation/user/examples.itely: moved "suggestions for
11848         writing LP files" section into putting.itely.
11849
11850         * Documentation/user/lilypond.itely: added new chapter,
11851         fixed the short table of contents.
11852
11853 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11854
11855         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11856         infinity for unfeasible beams.
11857
11858         * make/lilypond.fedora.spec.in (Group): idem.
11859
11860         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11861
11862         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11863
11864         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11865         fonts directly.
11866
11867         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11868
11869         * mf/GNUmakefile: remove all CFF rules.
11870
11871         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11872
11873         * lily/open-type-font-scheme.cc (LY_DEFINE):
11874         new function ly:otf-font-table-data.
11875         (LY_DEFINE): new function otf-font?
11876
11877 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11878
11879         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11880         ($(outdir)/Fontmap.lily): idem.
11881
11882         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11883         for PFAEmmentaler-XXX.pfa. 
11884
11885         * Documentation/user/music-glossary.tely (accidental): NL
11886         translation of accidental.
11887
11888 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11889
11890         * flower/include/international.hh: Bugfix: include "string.hh".
11891
11892         * lily/include/mingw-compatibility.hh: New file.
11893
11894         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11895
11896         * configure.in: Search for mingw wcrtomb library.
11897
11898 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11899
11900         * scripts/convert-ly.py: Bug fix
11901
11902         * Documentation/user/changing-defaults.itely (Common tweaks):
11903         Added example where the context has to be specified explicitly
11904         (MetronomeMark). 
11905
11906 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11907
11908         * scripts/lilypond-book.py (ly_options): set timing to #f for
11909         notime option.
11910
11911         * scripts/convert-ly.py (conv): typo.
11912
11913         * flower/*.cc: remove <? and >?
11914         
11915         * lily/*.cc: remove <? and >?
11916
11917         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11918         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11919         editor.
11920
11921 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11922
11923         * lily/part-combine-engraver.cc: add space to variable list.
11924
11925 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11926
11927         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11928         remove-first to false (matches docs)
11929
11930         * Documentation/user/advanced-notation.itely: corrected docs
11931         concerning remove-first.
11932
11933 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11934
11935         * lily/part-combine-engraver.cc: make sure that the relevant
11936         properties are included in the documentation.
11937
11938 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11939
11940         * Documentation/user/lilypond-book.itely: Bernard's docs
11941         for \betweenLilyPondSystem.
11942
11943 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11944
11945         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11946         remarks.
11947
11948 2005-04-28  Pal Benko  <benkop@freestart.hu>
11949
11950         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11951         only on vertical lines of flexa shape, and use a constant
11952         thickness value for horizontal lines (patch slightly modified by
11953         Jürgen Reuter)
11954
11955         * lily/include/mensural-ligature.hh: make 2 comments clearer
11956
11957 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11958
11959         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11960         to need_extra_horizontal_space; bugfix: use class scope to avoid
11961         global namespace pollution
11962
11963         * Documentation/user/instrument-notation.itely (ligatures): added
11964         comment on possible future syntax change and how to work around
11965
11966         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11967         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11968         intervals (fixes agnus dei example)
11969
11970         * Documentation/user/instrument-notation.itely (white mensural
11971         ligatures): selected a more illustrative example
11972
11973 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11974
11975         * Documentation/index.html.in: specify utf-8 charset in meta content.
11976
11977 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11978
11979         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11980         empty 2nd page for single page.
11981
11982         * scm/lily.scm: remove p&c definitions.
11983
11984         * po/zh_TW.po (Module): new translation.
11985
11986         * lily/lily-guile.cc (ly_chain_assoc): remove.
11987
11988         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11989         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11990
11991 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11992
11993         * lily/beaming-info.cc: remove infinity_i
11994
11995         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11996
11997 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11998
11999         * Documentation/user/basic-notation.itely,
12000         instrument-notation.itely, advanced-notation.itely,
12001         changing-defaults.itely: minor fixes.  Added docs
12002         for colors to advanced-notation.itely.
12003
12004         * Documentation/user/advanced-notation.itely: fixed compile
12005         problem and added Bernard's x11-color doc patch.
12006
12007 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
12008
12009         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
12010         alright this time round.
12011
12012 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12013
12014         * Documentation/topdocs/INSTALL.texi (Top): idem.
12015
12016         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
12017
12018         * VERSION (MAJOR_VERSION): release 2.5.21
12019
12020         * scm/output-ps.scm (grob-cause): bugfix.
12021
12022 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
12023
12024         * cygwin/*: Update.
12025
12026         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
12027         stuff.
12028
12029         * scm/output-ps.scm (grob-cause): Bugfix.
12030
12031         * scm/lily.scm (ly:load): Remove x11-color.
12032
12033         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
12034         quote executable, fixes getting version from program --with
12035         --options.
12036         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
12037         $ac_exeect.
12038
12039         * Documentation/user/GNUmakefile: Only build music-glossary with
12040         rendered lilypond snippets during web.
12041
12042 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12043
12044         * po/de.po: update.
12045
12046         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
12047
12048 2005-04-22  Laura Conrad <lconrad@laymusic.org>
12049  
12050         * scripts/abc2ly:
12051         second title line append with punctuation dash character;
12052         encode abc2ly python strings in utf-8
12053        
12054 2005-04-21  Laura Conrad <lconrad@laymusic.org>
12055
12056         * scripts/abc2ly fix chords (again)
12057  
12058 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
12059
12060         * scm/x11-color.scm: new file
12061         All x11 color names can be accessed with:
12062         #(x11-color 'ColorName),
12063         #(x11-color "ColorName") or:
12064         #(x11-color "color name")
12065         If the x11 color name is not recognised then it defaults
12066         to black
12067
12068         * scm/lily.scm: amended to call scm/x11-color.scm
12069
12070 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12071
12072         * Documentation/user/invoking.itely (Reporting bugs): comment out
12073         reference to online PNG bug repository.
12074
12075 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
12076
12077         * lily/translator-scheme.cc (ly:translator-property): Remove.
12078         Update callers.
12079
12080         * lily/context-scheme.cc (ly:context-now): Move from translator.
12081         Update callers.
12082
12083 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12084
12085         * input/regression/grid-lines.ly (skips): refine example.
12086
12087         * scm/define-context-properties.scm
12088         (all-user-translation-properties): doc autoBeamCheck
12089
12090         * input/regression/grid-lines.ly (Module): new file.
12091
12092         * lily/grid-point-engraver.cc (Module): new file.
12093
12094         * lily/grid-line.cc (Module): new file.
12095
12096         * lily/grid-line-span-engraver.cc (Module): new file.
12097
12098         * lily/grid-line-interface.cc (Module): new file.
12099
12100 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
12101
12102         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
12103         missing parameter, actualy cdr through list.  Actually return a
12104         list with ENTRY removed (was '()).
12105
12106         * scripts/convert-ly.py: Update.  Print warning if file cannot be
12107         opened.
12108         (do_conversion): Fix printing of continuation comma.
12109
12110         * Documentation/user/advanced-notation.itely (Beam formatting):
12111         Remove refbugs about compound time and mixed duration.
12112
12113         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
12114         modulo moments explicitely.
12115
12116         * lily/moment.cc (operator %): New function.
12117
12118         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
12119
12120         * lily/translator-scheme.cc (ly:translator-now,
12121         ly:translator-property): New function.
12122
12123         * scm/auto-beam.scm (default-auto-beam-check): New function.
12124
12125         * lily/auto-beam-engraver.cc (test_moment): Use it.
12126
12127         * flower/rational.cc (operator %): Bugfix.
12128
12129 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
12130
12131         * scripts/abc2ly: Bugfix
12132
12133 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12134
12135         * python/fontextract.py (write_extracted_fonts): bugfix, too many
12136         %'s on EndFont comment.
12137
12138         * lily/ledger-line-spanner.cc: some more words of explanation.
12139
12140 2005-04-20  John Williams <williams@tni.com>  
12141         
12142         * scripts/lilypond-book.py: htmlquote bugfix.
12143         Allow snippets to be given distinct filenames.
12144         Allow the default alt text to be overridden.
12145
12146 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
12147
12148         * ly/performer-init.ly: Bugfix
12149
12150         * THANKS: Added bughunters.
12151
12152 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
12153
12154         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
12155
12156         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
12157         position (was: use modulo measure length).
12158
12159         * configure.in (no gui_b): Remove optional gtk+ requirement.
12160
12161 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12162
12163         * Documentation/user/basic-notation.itely (Pitches): add
12164         LedgerLineSpanner.
12165
12166         * lily/dynamic-engraver.cc (process_music): set right bound to
12167         script if present. Else, do not set.
12168         (acknowledge_grob): only set right bound of finished spanner to
12169         note column if no other bound is set.
12170
12171         * python/lilylib.py (make_ps_images): switch back to png16m.
12172         
12173 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
12174
12175         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
12176         writing up to date file.  Add dvips usage suggestion.
12177
12178         * scripts/convert-ly.py: Fix error message.
12179         Print usage if no files on command line.
12180         (usage): Add example usage.
12181
12182         * input/test/compound-time.ly: New file.
12183
12184         * input/test/circle.ly: New file.
12185
12186         * Documentation/topdocs/NEWS.tely: Use them.
12187
12188         * input/test/boxed-stencil.ly: Remove \score.
12189
12190         * buildscripts/mf-to-table.py (base): Add .log dependency.
12191
12192         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
12193         pfa's.  Add .log dependency
12194
12195         * scm/define-markup-commands.scm (lower): New command.
12196
12197         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
12198         make it default.
12199
12200 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12201
12202         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
12203         also to finished cresc as right bound. This fixes:
12204         skip-string-decresc.ly
12205
12206         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
12207         relative_coordinate if extent is empty.
12208
12209         * lily/stem.cc (width_callback): determine correct extent if flag
12210         is not there. This fixes slur-no-flag.ly
12211
12212         * lily/grace-engraver.cc (consider_change_grace_settings): new
12213         function.
12214         (initialize): also consider_change_grace_settings() on
12215         initialization. Fixes large grace notes at start of score.
12216
12217         * lily/break-align-interface.cc (do_alignment): don't translate if
12218         total_extent is empty.
12219
12220         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
12221
12222 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12223
12224         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
12225         with slash.
12226
12227 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12228
12229         * stepmake/aclocal.m4: Remove tfm_path.
12230
12231 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12232
12233         * scm/music-functions.scm (markup-expression->make-markup): fix
12234         bug with cons arguments of markup commands.
12235         (music->make-music): fix music expression property list building
12236
12237 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12238
12239         * aclocal.m4: Massage package names.
12240
12241         * SCons updates.
12242
12243 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12244
12245         * VERSION (PACKAGE_NAME): release 2.5.20
12246
12247         * lily/stem.cc (calc_stem_info): add minimum Y extent of
12248         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
12249
12250         * lily/percent-repeat-engraver.cc (try_music): add measure before
12251         next_moment to future processing moment. Fixes:
12252         percent-repeat-mm-rest.ly
12253         (process_music): don't add moment for 2nd time.
12254
12255         * input/regression/repeat-percent.ly: add mmrests as extra test.
12256
12257         * lily/axis-group-engraver.cc (acknowledge_grob): read
12258         keepAliveInterfaces to decide what to kill.
12259
12260         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
12261         percent-repeat-interface to keepAliveInterfaces. This fixes
12262         percent-repeat-harakiri.
12263
12264 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12265
12266         * SCons updates.
12267
12268 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12269
12270         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
12271
12272         * aclocal.m4: remove --enable-tfm-path configure option
12273
12274         * input/test/ancient-font.ly (lowerStaff): clef name errors.
12275
12276         * scm/backend-library.scm (postscript->png): newline after
12277         finishing command.
12278
12279         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
12280         (LY_DEFINE): ly:paper-score-paper-systems: new function 
12281
12282         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
12283
12284         * lily/score.cc (default_rendering): use Music_output too.
12285
12286         * input/test/chord-names-languages.ly (Module): rename file.
12287
12288         * lily/text-spanner.cc: add bound-padding.
12289
12290         * lily/paper-book.cc (systems): accept Paper_score
12291         iso. Paper_system vector. 
12292
12293         * input/regression/line-arrows.ly: new file.
12294
12295         * lily/paper-score.cc (process): run get_paper_systems() only once.
12296
12297         * lily/line-spanner.cc (line_stencil): add arrows.
12298
12299 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
12300
12301         * lily/line-interface.cc (make_arrow): new function. 
12302         (arrows): idem.
12303
12304 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
12305
12306         * input/test/chord-names-german.ly: update for italian/french
12307         chords.
12308         
12309         * Documentation/user/instrument-notation.itely (Printing chord
12310         names): update.
12311
12312 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12313
12314         * lily/include/paper-score.hh (class Paper_score): remove unused
12315         prototypes.
12316
12317         * lily/book.cc (process): add -COUNT to midi output.
12318
12319         * lily/score.cc (book_rendering): remove outname argument
12320         (book_rendering): return list of Music_outputs. 
12321
12322         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
12323
12324         * lily/book.cc (process): loop over Music_outputs returned from
12325         Score::book_rendering().
12326
12327         * lily/*.cc (width_callback): remove spurious "unused" warnings
12328         for assert (axis==[XY]_AXIS); 
12329
12330         * lily/include/music-output.hh (class Music_output): smobify class.
12331
12332         * lily/include/paper-score.hh (class Paper_score): make members
12333         private.
12334
12335         * lily/performance.cc (process): return #f iso. #<undefined>. This
12336         prevents #<undefined> leaking into GUILE-userspace.
12337
12338 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12339
12340         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
12341
12342 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
12343
12344         * scm/chord-name.scm : support for italian and french
12345         chords names.
12346
12347         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
12348         a space defined by chordPrefixSpacer when the root name is
12349         direclty followed by a prefix.
12350
12351         * ly/engraver-init.ly : chordPrefixSpacer       
12352         * scm/define-context-properties.scm : chordPrefixSpacer
12353         * ly/property-init.ly : italianChords, frenchChords 
12354
12355 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12356
12357         * mf/feta-din.mf: Remove.
12358
12359         * mf/GNUmakefile (fontdir): Bugfix.
12360
12361         * mf/SConstruct: Some updates.
12362
12363         * SConstruct: Require pkg-config.
12364         (test_program): Bugfix for double digit version compares, use
12365         integer (not string-) compare.
12366         Optionally require gs 8.14.
12367
12368         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
12369
12370         * lily/*: s/ifdef HAVE_*/if have/.
12371
12372         * SConstruct (test_lib): New function.  Update pkg-config and some
12373         other requirements.
12374
12375         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
12376         freetype, pangof2t.
12377
12378 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12379
12380         * po/lilypond.pot, ...: Update using bison-CVS.
12381
12382         * python/lilylib.py (make_ps_images): Fixo.
12383
12384 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12385
12386         * python/lilylib.py (make_ps_images): typo.
12387
12388         * configure.in (gui_b): make bison optional.
12389
12390         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
12391
12392 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
12393
12394         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
12395         with one parameter can be defined in a LaTeX file when processed
12396         by lilypond-book this will be evaluated between the systems of
12397         a multi-system score. The parameter is the number of systems processed.
12398
12399 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12400
12401         * python/lilylib.py (make_ps_images): Escape newline.
12402
12403         * Documentation/user/music-glossary.tely: Run
12404         texinfo-all-menus-update.
12405
12406 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12407
12408         * scm/lily-library.scm (old-relative-not-used-message)
12409         (version-not-seen-message): Add input-file-name-location to message.
12410
12411         * lily/parser.yy (lilypond): Add token aliases.
12412
12413         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
12414         not confuse with alteration.
12415         (alteration): Add.
12416
12417 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12418
12419         * python/lilylib.py (make_ps_images): use -dEPSCrop
12420
12421         * VERSION (PACKAGE_NAME): release 2.5.19 
12422
12423         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
12424         only put xrefs in info documentation.
12425
12426         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
12427         .pdf rule to tex-rules.make.
12428
12429         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
12430         from -systems.* output.
12431
12432         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
12433         directly, remove -$(PAGESIZE) target.
12434
12435         * input/test/embedded-postscript.ly: update.
12436
12437 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12438
12439         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
12440
12441         * Documentation/user/changing-defaults.itely (Font selection):
12442         document font-name.
12443
12444         * input/regression/font-name.ly: show Pango fonts for
12445         font-name. Update example. 
12446
12447         * lily/pango-select.cc (properties_to_pango_description): don't
12448         convert symbol font-size to number, but use to lookup.
12449
12450         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
12451
12452         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
12453         (NAME . FILE-NAME) tuples for font descriptions. 
12454         (write-preamble): display BeginFont DSC comments.
12455
12456         * python/fontextract.py (write_extracted_fonts): new file. Extract
12457         font resources from a PS file.
12458
12459         * scripts/lilypond-book.py (option_definitions): --psfonts option.
12460         (Compile_error.process_include): do_file returns chunks.
12461
12462         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
12463
12464         * make/lysdoc-targets.make: .texi is .PRECIOUS
12465
12466         * scripts/lilypond-book.py (write_if_updated): new function.
12467
12468 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12469
12470         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
12471
12472 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12473
12474         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
12475
12476         * input/regression/markup-syntax.ly: remove \score.
12477
12478         * scm/define-markup-commands.scm (draw-circle): add fill argument
12479
12480         * scm/stencil.scm (make-circle-stencil): add fill argument
12481
12482         * ps/music-drawing-routines.ps: add fill argument.
12483
12484         * ly/performer-init.ly: add CueVoice to MIDI too.
12485
12486         * ps/music-drawing-routines.ps: new routine BeginEPSF /
12487         EndEPSF.
12488
12489         * input/regression/markup-eps.ly: new file.
12490
12491         * scm/framework-ps.scm (write-preamble): change order: vars should
12492         be inited before procedures.
12493
12494         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
12495         for EPS files.
12496
12497         * scm/define-markup-commands.scm (epsfile): add epsfile command.
12498
12499 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12500
12501         * configure.in (gui_b): add check for ghostscript 8.15
12502
12503 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12504
12505         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
12506         start of line. Fixes cresc-after-newline.ly
12507
12508         * lily/source-file.cc (file_line_column_string): use get_column().
12509
12510 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12511
12512         * lily/source-file.cc (get_column): utf-8 support for column numbers.
12513
12514 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12515
12516         * lily/*: use message () iso progress_indication () for messages.
12517         Revise/uniformise user messages.
12518
12519         * flower/warn.cc (progress_indication): New function.
12520         (message): Use it.  Fixes newline problems.
12521
12522         * config.make.in (webdir): Sort out install dirs.
12523
12524         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
12525
12526         * python/lilylib.py (command_name): Bugfix.
12527         (make_ps_images):
12528
12529 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
12530
12531         * lily/main.cc: --help says what types of backends are availabe
12532
12533 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12534
12535         Fix ./VERSION dependency, and without need to reconfigure.
12536
12537         * lily/main.cc (setup_paths): Update.
12538
12539         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
12540
12541         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
12542
12543         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
12544         Add \line for some simplistic cases.
12545
12546         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
12547
12548 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12549
12550         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
12551         to compile LY files (useful for adding eg. "-I" args)
12552         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
12553         2Gnome command for gnome backend.
12554         (LilyPond-command-formatgnome): call the 2Gnome command. key
12555         binding: C-c C-g
12556
12557 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12558
12559         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
12560         depend on all PNG images.
12561
12562 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12563
12564         * GNUmakefile.in: Bugfix: also link .map files.
12565
12566 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12567
12568         * scm/music-functions.scm (music->make-music): generate 
12569         a (make-music ...) sexpr from a music expression.
12570         (display-scheme-music): use guile pretty printer to display the
12571         make-music sexpr.
12572
12573 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12574
12575         * ly/engraver-init.ly: reindent.
12576         Add CueVoice.
12577
12578         * scm/music-functions.scm (music-pretty-string): handle moments
12579         too.
12580         (music-pretty-string): only print non-empty lists.
12581         (cue-substitute): create CueVoice context, which has smaller type.
12582
12583         * lily/moment-scheme.cc (LY_DEFINE): new methods
12584         ly:moment-grace-{numerator,denominator}
12585
12586         * lily/context-handle.cc: remove quit() method. 
12587
12588         * lily/font-config.cc (init_fontconfig): be verbose about font path.
12589         (init_fontconfig): success is 0, not !0
12590
12591 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12592
12593         * mf/feta-nummer-code.mf (code): add plus glyph.
12594
12595         * lily/tie.cc (print): idem.
12596
12597         * lily/slur.cc (print): don't use thickness property for
12598         slur shape-thickness.
12599
12600         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
12601         while adding stencils.
12602
12603         * scm/define-markup-commands.scm (with-color): with-color markup
12604         command.
12605         (whiteout): new markup command 
12606         (filled-box): new markup command
12607
12608 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12609
12610         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
12611         test for PDF docs.
12612
12613         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
12614         PFAAybabtu-Regular.  Fixes feta font in PDFs.
12615         
12616         Notes for tetex-3.0 make web:
12617            psclean.map: s/uhv8a/uhvr8a/
12618            config.ps add:
12619                 p +psfonts_t1.map
12620                 p +psclean.map
12621                 p +typeface.map
12622
12623 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12624
12625         * scm/music-functions.scm (music-pretty-string): fix bug with
12626         string argument.
12627
12628 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12629
12630         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
12631
12632 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12633
12634         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
12635         only process options if they're there.
12636         (write_file_map): add version-seen? to snippet-map.ly
12637
12638 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12639
12640         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
12641         formatting cleanups.
12642
12643         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
12644         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
12645
12646 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12647
12648         * scm/framework-ps.scm (ps-font-command): don't hash, just use
12649         name directly.
12650
12651         * lily/main.cc (setup_paths): either add mf/out to search path or 
12652         fonts/{otf,type1,etc}
12653         
12654         * lily/font-config.cc (init_fontconfig): either add mf/out to
12655         FontConfig or fonts/{otf,type1,etc}
12656
12657         * GNUmakefile.in: don't put mf/ link in share/ dir.
12658
12659         * lily/staff-spacing.cc: move same-direction-correction to
12660         note-spacing-interface
12661
12662         * scm/lily.scm (lilypond-main): use variable argument count for
12663         exception handler.
12664
12665         * lily/font-config.cc (init_fontconfig): add operator pacification
12666         message.
12667
12668         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12669
12670         * buildscripts/gen-emmentaler-scripts.py (i): generate
12671         PFAEmmentaler as well.
12672
12673         * scm/framework-ps.scm (munge-lily-font-name): new function
12674         (write-preamble): hack: insert PFA equivalent of CFF into
12675         .PS. This makes LilyPond output printable on normal PS printers
12676         again.
12677
12678         * buildscripts/gen-emmentaler-scripts.py (i): generate
12679         PFAEmmentaler.pfa aswell.
12680
12681 2005-04-06  John Williams <williams@tni.com>  
12682         
12683         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12684         
12685 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12686
12687         * scm/page-layout.scm (default-page-make-stencil): always combine
12688         the header stencil, even if empty. This prevents the body text to
12689         reach up to the margins.
12690
12691         * po/rw.po (Module): new file, for Kinyarwanda.
12692
12693         * input/test/spacing-optical.ly (Module): new file.
12694
12695         * lily/staff-spacing.cc: add same-direction-correction
12696
12697 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12698
12699         * Documentation/user/introduction.itely (Engraving): Comment-out
12700         non-existent file.
12701
12702 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12703
12704         * scm/define-grob-properties.scm (all-user-grob-properties): add
12705         same-direction-correction
12706
12707         * VERSION: release 2.5.18
12708
12709 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12710
12711         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12712         dereferencing.  Fixes make web.
12713
12714         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12715         errno.h.
12716
12717         * Documentation/user/: Fix links.
12718
12719 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12720
12721         * lily/text-interface.cc (Module): rename from text-item.cc
12722
12723         * input/regression/apply-output.ly (texidoc): function naming fix.
12724
12725         * lily/time-signature-performer.cc (derived_mark): new function.
12726
12727         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12728
12729         * scripts/lilypond-book.py (find_linestarts): new function.
12730         (find_toplevel_snippets): keep track of line numbers.
12731
12732         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12733         all key changes.
12734
12735         * ly/declarations-init.ly (partCombineListener): use
12736         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12737
12738         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12739
12740 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12741
12742         * lily/text-item.cc: Fix link.
12743
12744         * Documentation/user/changing-defaults.itely (Changing defaults):
12745         Fix programs reference links.
12746
12747         * Documentation/user/music-glossary.tely: Convert to utf-8.
12748
12749 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12750
12751         * make/lilypond-vars.make: remove TEXMF from variables.
12752         remove DEB_BUILD pk font variables.
12753         remove GUILE_LOAD_PATH
12754         remove TeX memory vars.
12755
12756 2005-04-04  Werner Lemberg  <wl@gnu.org>
12757
12758         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12759
12760 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12761
12762         * ps/lilyponddefs.ps: remove reencode-font
12763
12764         * lily/simple-spacer.cc (add_columns): also compare
12765         directly. Column rank doesn't distinguish between broken and
12766         unbroken columns. This fixes large spaces before time sig changes.
12767
12768         * Documentation/user/point-and-click.itely: document ly:set-option.
12769
12770         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12771         point_and_click_global is set.
12772
12773         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12774         ly:set-option argument.
12775
12776 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12777
12778         * GNUmakefile.in: Include symlinks in webball.
12779
12780         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12781         source dir for split and non-split manuals.
12782
12783         * Documentation/user/*y: Fix @uref/@inputfile links for
12784         split/non-split HTML documents.
12785
12786         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12787         .ps.gz.
12788         
12789 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12790
12791         * GNUmakefile.in: Add newline.
12792
12793 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12794
12795         * tex/lilyponddefs.tex: use color instead of xcolor
12796         * scm/output-tex.scm: minor editing
12797
12798 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12799
12800         * scm/music-functions.scm (display-scheme-music): pretty printer
12801         for music expressions.
12802
12803 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12804
12805         * buildscripts/install-info-html.sh (index_file): Fix link.
12806
12807 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12808
12809         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12810
12811         * Documentation/index.html.in: Add size estimates with some big pages.
12812
12813         * Documentation/user/tutorial.itely (Running LilyPond for the
12814         first time): Add/replace some @rglos links.  TODO: add more
12815         @rglos links in tutorial, test non-intrusiveness (.css).
12816
12817         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12818         annoying's indication of referencing external document.
12819
12820         * Documentation/user/GNUmakefile: Split version of glossary too.
12821         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12822         links, not only for html.
12823
12824         * Documentation/user/introduction.itely: Fix some links for other
12825         than html, do not use `here' as link name.
12826
12827 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12828
12829         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12830         @glossaryref.
12831
12832 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12833
12834         * scm/page-layout.scm (default-page-make-stencil): only add header
12835         if existing and not empty. Fixes spurious programming error.
12836
12837         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12838
12839 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12840
12841         * scm/output-tex.scm: implement {re,}setcolor
12842         * tex/lilyponddefs.tex: use color package
12843
12844 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12845
12846         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12847         additions to website.
12848
12849         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12850
12851         * Documentation/user/macros.itexi: Fix @usermanref html links in
12852         split documents: use @inforef.
12853
12854 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12855
12856         * Documentation/user/programming-interface.itely: minor fix.
12857
12858         * Documentation/user/advanced-notation.itely: added info to
12859         Metronome markings.
12860
12861 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12862
12863         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12864         use box-stencil.  Remove y-padding argument.
12865         (make-stencil-circler): New function.
12866
12867         * buildscripts/lilypond-words.py (F): 
12868         * elisp/SConscript (a): 
12869         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12870         * vim/SConscript (a): 
12871         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12872
12873         * lily/general-scheme.cc: Build fix.
12874
12875         * scm/markup.scm:
12876         * input/regression/markup-scheme.ly: 
12877         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12878
12879         * scm/stencil.scm (make-circle-stencil): New function.
12880
12881         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12882         name (was cicle).  Update callers.
12883         (circle): New markup command, similar to box.
12884
12885         * scm/stencil.scm (circle-stencil): New function.
12886
12887 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12888
12889         * configure.in: Detect libutf8/wchar.h variant.
12890
12891         * stepmake/aclocal.m4: Modify shared size test.
12892
12893 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12894
12895         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12896
12897 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12898
12899         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12900         
12901         * VERSION (PACKAGE_NAME):  release 2.5.17
12902
12903 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12904
12905         * scm/backend-library.scm (postscript->png): Fix comment and png
12906         message.
12907
12908         * GNUmakefile.in (link-tree): Fix locales.
12909
12910 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12911
12912         * lily/stencil-scheme.cc (LY_DEFINE): change to
12913         ly:stencil-aligned-to, non mutating.
12914
12915         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12916
12917         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12918
12919         * lily/quote-iterator.cc (derived_mark): call
12920         Music_wrapper_iterator::derived_mark() too.
12921
12922         * lily/grace-engraver.cc (derived_mark): change signature, add
12923         const.
12924
12925 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12926
12927         * SConstruct (symlink): 
12928         * GNUmakefile.in (link-tree): Add scripts to prefix.
12929
12930         * lily/general-scheme.cc (ly:effective-prefix): New function.
12931
12932         * scm/backend-library.scm (postscript->png): Use it.
12933
12934 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12935
12936         * lily/paper-score.cc (process): don't delete grobs after
12937         producing stencils. 
12938
12939         * scm/part-combiner.scm (determine-split-list): switch off
12940         debugging info.
12941
12942         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12943         if available.
12944
12945         * scm/define-context-properties.scm
12946         (all-user-translation-properties): add stringNumberOrientations.
12947
12948         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12949         so fingering and string-numbers are separately controlled.
12950
12951 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12952
12953         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12954         not use debugging.
12955
12956 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12957
12958         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12959
12960         * config.hh.in: add HAVE_FONTCONFIG.
12961
12962         * Documentation/user/instrument-notation.itely (String number
12963         indications): new node.
12964
12965         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12966
12967         * lily/new-fingering-engraver.cc (add_string): new function. 
12968         (acknowledge_grob): accept string-number-event as well.
12969
12970         * scm/define-markup-commands.scm (circle): new markup command.
12971
12972         * scm/output-lib.scm (print-circled-text-callback): new function.
12973
12974         * lily/GNUmakefile: move ifeq after include stepmake.make.
12975
12976 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12977
12978         * config.make.in (HAVE_LIBKPATHSEA_SO):
12979         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12980
12981         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12982         add KPATHSEA_LIBS.
12983
12984         * debian/watch: 
12985         * debian/control: Update.
12986
12987 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12988
12989         * input/test/title-markup.ly (spaceTest): remove.
12990
12991         * input/test/embedded-tex.ly (Module): remove.
12992
12993         * input/test/music-box.ly: use 'name property, not ly:music-name.
12994
12995         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12996
12997         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12998
12999 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13000
13001         * Documentation/topdocs/INSTALL.texi (Top): Remove information
13002         about xdeltas.  Add information about CVS.
13003
13004         * scm/lily.scm (lilypond-main): Fix invocation of handler,
13005         gracefully handle failed files.
13006
13007         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
13008
13009         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
13010         small fixes.
13011
13012         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
13013         No unnecessarily specific i18n messages.  Remove stray `1'.
13014
13015 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13016
13017         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
13018         documentencoding
13019
13020         * scm/documentation-lib.scm (texi-file-head): set utf-8
13021         documentencoding.
13022
13023         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
13024         Delta, not the Symbol one. 
13025
13026         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
13027         for the .map file.
13028
13029         * Documentation/topdocs/INSTALL.texi (Top): add running
13030         requirement as compilation requirement.
13031
13032 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13033
13034         * buildscripts/mutopia-index.py (headertext): add h1 header and
13035         utf-8 charset meta field.
13036
13037         * input/GNUmakefile: prune example list.
13038
13039         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
13040         options.
13041
13042         * lily/slur-scoring.cc (get_base_attachments): only look at stem
13043         extent for visible stems.
13044
13045         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
13046
13047 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13048
13049         * Documentation/topdocs/INSTALL.texi (Top): Updates.
13050
13051         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
13052
13053 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13054
13055         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
13056         pass inf/nan into slur scoring.
13057
13058         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
13059         page.
13060
13061         * scripts/abc2ly.py (dump_voices): use alphabet().
13062
13063 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
13064         
13065         * mf/GNUmakefile (depth): use $(FONTFORGE). 
13066
13067 2005-03-27 Matthias Neeracher <neeracher@mac.com>
13068         
13069         * flower/include/virtual-methods.hh: simplify. Patch by
13070
13071 2005-03-25  John Williams <williams@tni.com>  
13072
13073         * scripts/lilypond-book.py (main): add png for HTML too, guess
13074         only if necessary. 
13075
13076 2005-03-25  Graham Percival  <gperlist@shaw.ca>
13077
13078         * Documentation/topdocs/INSTALL.texi: now recommends
13079         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
13080
13081         * Documentation/user/basic-notation.itely,
13082         Documentation/user/tutoria.itely: warn about
13083         only one (phrasing) slur at once.
13084
13085 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
13086
13087         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
13088
13089 2005-03-23  Graham Percival  <gperlist@shaw.ca>
13090
13091         * Documentation/user/basic-notation.itely: fixed info about
13092         ending a (de)cresc.
13093
13094         * Documentation/user/lilypond-book.itely: fixed
13095         lilypond-book filter example and warned about not doing
13096         --filter and --process at the same time.
13097
13098 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
13099
13100         * lily/parser.yy (bass_number),
13101         Documentation/user/instrument-notation.itely (Figured bass): 
13102         Add the possibility to use text markup in figured bass. 
13103
13104 2005-03-19  Graham Percival  <gperlist@shaw.ca>
13105
13106         * Documentation/user/global.itely: added info about naming
13107         identifiers and breakbefore.
13108
13109         * Documentation/user/invoking.itely: added info about batch
13110         processing files with convert-ly, removed references to TeX
13111         in the jail section.
13112
13113         * Documentation/user/examples.itely: possibly fixed piano
13114         dynamics.
13115
13116         * Documentation/user/advanced-notation.itely: added info
13117         about removing other types of Staff.
13118
13119         * Documentation/user/instrument-notation.itely: possibly
13120         fixed piano staff line switch.
13121
13122         * Documentation/user/changing-defaults.itely: added info
13123         about using normal font in titles.
13124
13125 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13126
13127         * VERSION (PATCH_LEVEL): release 2.5.16
13128
13129         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
13130         explicitly.
13131
13132 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
13133
13134         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
13135         whitespace.
13136
13137         * python/lilylib.py (make_ps_images):
13138         * scm/backend-library.scm (postscript->pdf, postscript->png):
13139         Quote file name.  Use format rather than string-append juggling.
13140
13141 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13142
13143         * python/lilylib.py (make_ps_images): add x to -g argument. 
13144
13145         * lily/key-performer.cc (create_audio_elements): don't use
13146         scm_eval_string. Check for minor 3rd directly.
13147   
13148         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
13149         (sarabandeCelloGlobal): key is D minor, not F major.
13150
13151 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
13152
13153         Fix truncated --png output (Peter Danenberg).
13154         
13155         * python/lilylib.py (make_ps_images):
13156         * scripts/ps2png.py (copyright): Grok --papersize option.
13157
13158         * scm/backend-library.scm (postscript->png): Add parameter
13159         PAPERSIZE.  Update callers.
13160
13161         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
13162         Fixes symbol placement.
13163
13164         * lily/spanner.cc: 
13165         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
13166         <libc-extension.hh>).
13167
13168 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
13169
13170         * Nitpick run.
13171
13172         * buildscripts/fixcc.py: Update.
13173
13174         Builddir run fixes.
13175
13176         * HACKING (datadir): Add VERSION.
13177
13178         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
13179         higher up.
13180
13181 2005-03-15  Werner Lemberg  <wl@gnu.org>
13182
13183         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
13184         diagonal stem doesn't become thinner.
13185
13186 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
13187
13188         * buildscripts/fixcc.py: Fixes (Werner).
13189
13190 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13191
13192         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
13193         Emmentaler/Aybabtu.
13194
13195         * GNUmakefile.in: fix lilypond-words path.
13196
13197         * po/tr.po: update to 2.3.21
13198
13199         * lily/new-fingering-engraver.cc (position_scripts): take priority
13200         from head position.
13201
13202         * input/regression/finger-chords-order.ly (texidoc): new file.
13203
13204 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13205
13206         * make/ly-rules.make: 
13207         * stepmake/aclocal.m4: 
13208         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
13209
13210         * buildscripts/fixcc.py (rules): Leave space after operator.
13211
13212 2005-03-14  Werner Lemberg  <wl@gnu.org>
13213
13214         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
13215         top of the glyph with smooth curve.
13216
13217 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13218
13219         * Documentation/user/global.itely (Page layout): remove
13220         printpagenumber.
13221
13222 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
13223
13224         * input/regression/mensural-ligatures.ly: new file (with examples
13225         compiled by Pal Benko).
13226
13227         * Documentation/user/instrument-notation.itely: Bugfix: yet some
13228         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
13229         musicglyph access.  Many small beautifications in ancient
13230         examples.
13231
13232         * input/test/divisiones.ly: fixed indentation; small
13233         beautifications
13234
13235         * ly/engraver-init.ly: added FIXME comment
13236
13237         * scripts/lilypond-book.py,
13238         Documentation/user/lilypond-book.itely: added music fragment
13239         option "packed" to lilypond-book
13240
13241         * Documentation/user/instrument-notation.itely: Bugfix: added
13242         missing LedgerLineSpanner color setting in several places.  Added
13243         music fragment option "packed" to VaticanaContext example.
13244
13245 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13246
13247         * scm/define-grobs.scm (all-grob-descriptions): switch off
13248         Hyphen_spanner::set_spacing_rods 
13249
13250         * lily/lyric-hyphen.cc (print): add padding between syllable and
13251         hyphen.
13252         (print): shorten hyphen in tight situations (determine using
13253         minimum-length)
13254
13255         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
13256         0.4pt.
13257
13258 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
13259
13260         * ly/titling-init.ly (bookTitleMarkup): Refinements.
13261
13262         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
13263         header/footer markings for regression-test.
13264
13265         * scm/backend-library.scm (output-scopes, header-to-file): Move
13266         from framework-tex.scm.
13267
13268         * scm/framework-ps.scm (output-framework)
13269         (output-preview-framework):
13270         * scm/framework-eps.scm (output-classic-framework)
13271         (output-framework): Use it.  Fixes collated files.
13272
13273 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
13274
13275         * input/sakura-sakura.ly: 
13276         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
13277
13278         * buildscripts/guile-gnome.sh: Update.
13279
13280         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
13281
13282         * mf/aybabtu.pe.in: Capitalize Aybabtu.
13283
13284 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13285
13286         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
13287         culprit: always exit the loop if we find a rod, even if it has
13288         distance < 0. 
13289
13290         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
13291         algorithm.
13292
13293         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13294         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
13295
13296         * scm/output-svg.scm (dashed-line): new  function body.
13297         
13298         * GNUmakefile.in: create .htaccess.
13299
13300 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
13301
13302         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
13303
13304 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13305
13306         * VERSION (PACKAGE_NAME): release 2.5.15
13307
13308         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
13309
13310         * scm/framework-svg.scm (output-framework): put scaling in
13311         document header. Apply scaling only once.
13312         (output-framework): dump page size in px, not mm. 
13313
13314         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
13315         from font-size.
13316
13317         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13318         ly:outputter-output-scheme, new function.
13319
13320         * scm/output-svg.scm (pango-description-to-svg-font): new function
13321
13322 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13323
13324         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
13325         target.
13326
13327         * input/typography-demo.ly: new file.
13328
13329 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13330
13331         * Documentation/user/global.itely (File structure): Add markup blocks
13332         to toplevel expressions.
13333         (Multiple movements, Creating titles): Add markup blocks.
13334
13335         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
13336         <libc-extension.hh>).
13337
13338         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
13339
13340         * flower
13341         * lily
13342         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
13343
13344 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13345
13346         * lily/accidental.cc: special bboxes for natural. 
13347
13348         * mf/feta-toevallig.mf: make stems heavier.
13349
13350         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
13351         texts as well.
13352
13353         * mf/feta-klef.mf: revise. 
13354
13355         * mf/feta-schrift.mf: make thinning of accent less pronounced.
13356
13357         * mf/feta-klef.mf: add rounded curve at top. 
13358         make thinnib a little heavier.
13359
13360 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13361
13362         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
13363
13364         * buildscripts/fixcc.py: New file.
13365
13366         * input/regression/utf8.ly: Update Debian font description.
13367
13368 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13369
13370         * stepmake/aclocal.m4: Fix test.
13371
13372 2005-03-09  Graham Percival  <gperlist@shaw.ca>
13373
13374         * Documentation/user/invoking.itely: added Sebastino Vigna's
13375         docs for the --jail option.
13376
13377 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13378
13379         * lily/stem.cc (print): only produce stemlets if there are no
13380         noteheads on this stem.
13381
13382         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
13383         don't crash on stemlet (visible stem without heads).
13384
13385         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
13386         unbroken situations. 
13387
13388         * scm/output-lib.scm (center-invisible): new function.
13389
13390         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
13391         wishes to determine loose column space.
13392
13393         * lily/font-config.cc (init_fontconfig): add
13394         fonts/{otf,type1,cff}  to path.
13395
13396         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
13397
13398         * mf/GNUmakefile (Module): install all fonts under otf/
13399
13400         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
13401         replace /fonts/otf/ by /ps/ 
13402
13403         
13404 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13405
13406         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
13407
13408         * lily/book.cc (process): Oops, add score_.header_.
13409
13410         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
13411
13412         * lily/parser.yy: Handle toplevel and book texts as score.
13413
13414         * scm/page-layout.scm (default-page-make-stencil):
13415         Bugfix: (page-properties rename.
13416
13417         * scm/backend-library.scm (ly:system): Typo.
13418
13419 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13420
13421         * stepmake/stepmake/executable-targets.make (installexe): don't
13422         strip installed executables
13423
13424         * lily/font-select.cc (get_font_by_design_size): revert
13425         pango_description_string as well.
13426
13427         * lily/system.cc (set_loose_columns): put loose column just left
13428         of next column.
13429
13430         * lily/include/group-interface.hh (extract_grob_array): rename
13431         from Pointer_group_interface__extract_grobs
13432
13433         * input/regression/ledger-line-minimum.ly (texidoc): new file.
13434
13435         * lily/ledger-line-spanner.cc (set_spacing_rods): new
13436         function. Keep ledgered note heads at a minimum distance.
13437         Introduce minimum-length-fraction
13438         (print): introduce length-fraction property.
13439
13440 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13441
13442         * tex/GNUmakefile: remove latin1.enc rules.
13443
13444 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13445
13446         * scm/titling.scm: Typo.
13447
13448         * input/regression/score-text.ly: Really add.
13449
13450         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
13451
13452 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13453
13454         * lily/open-type-font-scheme.cc:  new file.
13455
13456 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13457
13458         * scm/titling.scm (layout-extract-page-properties): Rename from
13459         page-properties.  Update callers.
13460
13461         * lily/lexer.ll (Lily_lexer):
13462         * lily/parser.yy: Junk lyric_markup state.
13463
13464         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
13465
13466         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
13467         Add texts parameter.
13468
13469 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13470
13471         * lily/lexer.ll (lyric_markup): New mode.
13472         (Lily_lexer::push_lyric_markup_state): New method.
13473         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
13474
13475         * lily/parser.yy (book_body):
13476         (toplevel_expression): Grok \markup texts.
13477
13478         * lily/score-scheme.cc (ly:music-scorify): 
13479         * scm/lily-library.scm (collect-music-for-book): Take texts
13480         parameter.
13481
13482         * lily/score.cc (texts_): New member.
13483
13484         * lily/paper-book.cc (systems): Format score texts.
13485
13486         * score-text.ly: New file.
13487
13488         * ttftool/SConscript:
13489         * kpath-guile/SConscript: New file.
13490
13491         * lily/SConscript:
13492         * SConstruct: Update.
13493
13494 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13495
13496         * VERSION (PACKAGE_NAME): release 2.5.14
13497
13498 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13499
13500         * lily/main.cc: Add dummy xgettext markers.
13501
13502 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13503
13504         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
13505         requirements
13506
13507         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
13508         executable is < 40k
13509
13510         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
13511         hack.
13512
13513 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13514
13515         * flower/libc-extension.cc:
13516         * flower/include/libc-extension.hh: [Open]BSD simply cast
13517         cookie/funopen declarations.
13518
13519         * stepmake/aclocal.m4: Check for libkpathsea.so.
13520
13521         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
13522         dl_kpse_find_file.
13523
13524 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13525
13526         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
13527         (open_library): alternative for static library.
13528
13529 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13530
13531         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
13532
13533         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
13534
13535         Drop run-time dependency on teTeX.
13536
13537         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
13538
13539         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
13540         KPATHSEA_LIBS in LIBS.
13541         (STEPMAKE_DLOPEN): New function.
13542
13543         * lily/font-config.cc (init_fontconfig): Use dir for directory,
13544         not path.
13545
13546         * flower/file-path.cc (directories): Rename from paths, as this
13547         return an array of directories (a single path).
13548
13549 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13550
13551         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
13552
13553         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
13554         new ly:kpathsea-find-file
13555
13556         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
13557
13558         * kpath-guile/GNUmakefile: new file
13559
13560         * buildscripts/gen-emmentaler-scripts.py (i): generate
13561         emmentaler-X.fontname as well.
13562
13563         * buildscripts/ps-embed-cff.py: new script
13564
13565         * scm/lily-library.scm: remove ps-embed-cff.
13566
13567         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
13568         font loading. 
13569
13570         * scm/font.scm (add-music-fonts): load dynamics/numbers through
13571         fontconfig as well.
13572
13573         * lily/font-config.cc (init_fontconfig): add cff/ too.
13574
13575         * ly/generate-embedded-cff.ly: capitalize.
13576
13577         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
13578         so as to register the pango font.
13579
13580         * lily/font-config.cc (init_fontconfig): add
13581         prefix/{otf,type1,mf/out} to fontconfig path.
13582
13583         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
13584         overrides all. 
13585
13586         * configure.in (gui_b): remove ec mftrace check
13587
13588         * config.hh.in: use lilypond-Major.Minor as data directory.
13589
13590         * scm/framework-ps.scm (dump-page): use output-units for landscape.
13591
13592         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
13593         name.
13594
13595 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13596
13597         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
13598         error messages.
13599
13600         * flower/libc-extension.cc:
13601         * flower/include/libc-extension.hh: [Open]BSD fixes for
13602         cookie/funopen declarations.
13603
13604 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13605
13606         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
13607         emmentaler.
13608
13609         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
13610         lcrm10.
13611
13612         * scm/define-markup-commands.scm (fontsize): new markup
13613         command. Also set baseline-skip
13614
13615 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
13616         
13617         * lily/main.cc (do_chroot_jail): paranoia security for webserver
13618         use.
13619
13620 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13621
13622         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
13623
13624         * lily/pdf.cc: remove PDF related files
13625
13626 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13627
13628         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
13629         <hamamatsu@gmx.de>
13630
13631 2005-03-05  Graham Percival  <gperlist@shaw.ca>
13632
13633         * Documentation/user/advanced-notation.itely: first draft
13634         of reorg done.
13635
13636         * Documentation/user/global.itely: fixed (sub)section
13637         bits of MIDI.
13638
13639 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13640
13641         * cygwin/mknetrel (extras): Bufix (Bertalan).
13642
13643         * Documentation/user/basic-notation.itely (Chords): @ref fix.
13644         * Documentation/user/instrument-notation.itely (Introducing chord
13645         names): Compile fix: must have unique name.
13646
13647 2005-03-02  Graham Percival  <gperlist@shaw.ca>
13648
13649         * Documentation/user/instrument-notation.itely: reorg.
13650
13651 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13652
13653         * scm/output-gnome.scm:
13654         * scm/output-svg.scm: Fix font scaling.
13655
13656 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13657
13658         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
13659         what link to use best.
13660
13661         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
13662         * Documentation/user/tutorial.itely (Automatic and manual beams):
13663         Fix @ref.
13664
13665         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13666         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13667         * scm/framework-gnome.scm (tweak): Use it.
13668
13669 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13670
13671         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13672
13673         * scm/output-ps.scm (white-text): reinstate white-text
13674
13675 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13676
13677         * scm/output-ps.scm (offset-add): Remove.
13678
13679         * scm/lily-library.scm (offset-flip-y): New function.
13680         * scm/framework-gnome.scm (tweak): Use it.
13681
13682         * scm/output-gnome.scm (grob-cause): Add parameter.
13683
13684         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13685         * scm/output-ps.scm (url-link): Move.
13686         (white-text): Warn user about brokenness.
13687
13688         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13689         wrt ghostscript.
13690
13691 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13692
13693         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13694         if body length smaller than measure length.
13695
13696         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13697         for Y.
13698
13699         * ly/titling-init.ly (tagline): put default tagline in \paper
13700
13701 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13702
13703         * lily/kpath.cc: 
13704         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13705
13706         * scm/lily-library.scm (version-not-seen-message): New function.
13707         * ly/init.ly: Use it.
13708
13709         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13710         breaks as progess.
13711
13712         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13713         whitespace with l10n message.
13714
13715         * scm/framework-tex.scm (convert-to-ps):
13716         (convert-to-dvi): Do not use overly specific l10n messages.
13717
13718         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13719
13720         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13721         merge stderr with stdout.  
13722
13723 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13724
13725         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13726         Neeracher).
13727
13728 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13729
13730         * Documentation/user/instrument-notation.teily: moved
13731         \arpeggio to Basic.
13732
13733         * Documentation/user/advanced-notation.itely: Articulation to
13734         Basic, a bunch of stuff from Basic moved to Advanced.
13735
13736         * Documentation/user/basic.itely: swapped various sections,
13737         reorganized Basic.
13738
13739 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13740
13741         * flower/memory-stream.cc: 
13742         * flower/libc-extension.cc: Remove obsolete #undefs.
13743
13744         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13745         more carefully.
13746
13747 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13748
13749         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13750         dependency.
13751
13752         * VERSION (PACKAGE_NAME): release 2.5.13
13753
13754         * GNUmakefile.in (web-ext): don't ship ps.gz
13755
13756         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13757         stdout
13758
13759 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13760
13761         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13762         without libintl.  Now it compiles too.
13763
13764 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13765
13766         * Documentation/user/basic-notation.itely,
13767         instument-notation.itely, advanced-notation.itely:
13768         split up contents of notation.itely.
13769
13770         * Documentation/user/notation.itely: file removed.
13771
13772         * Documentation/user/invoking.itely, converters.itely:
13773         moved convert-ly info to invoking.itely.
13774
13775         * Documentation/user/global.itely, changing-defaults.itely,
13776         sound-output.itexi: moved global settings, file layout, and
13777         sound into global.itely.
13778
13779         * Documentation/user/sound-output.itexi: file removed.
13780
13781         * Documentation/user/lilypond.tely: removed links to
13782         notation.itely and sound.itely.
13783
13784 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13785
13786         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13787
13788         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13789  
13790         * THANKS: add sponsor.
13791
13792         * scm/define-markup-commands.scm (with-url): new markup command.
13793
13794         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13795         tagline.
13796         
13797         * scm/output-tex.scm (url-link): stub.
13798
13799         * scm/output-ps.scm (url-link): new function.
13800
13801         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13802         ly:set-point-and-click
13803
13804 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13805
13806         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13807         based on pdf-viewer setting.
13808
13809         * scm/framework-ps.scm (write-preamble): Find and set preferred
13810         pdf-viewer.
13811
13812 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13813
13814         * Documentation/user/point-and-click.itely: update for PDF point &
13815         click.
13816
13817         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13818         editors based on EDITOR setting.
13819
13820 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13821
13822         * scm/*: Oops, more grand 2005 replace bits.
13823
13824 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13825
13826         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13827
13828         * scm/output-ps.scm (grob-cause): point & click support for
13829         PostScript
13830
13831 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13832
13833         * lily/input-scheme.cc (LY_DEFINE): rename to
13834         ly:input-file-line-column
13835
13836 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13837
13838         * Documentation/user/examples.itely: small fix from Steve Doonan.
13839
13840         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13841
13842         * THANKS: added Yuval Harel.
13843
13844         * Documentation/user/{various}: inserted two spaces after a period.
13845
13846         * Documentation/user/lilypond.tely: added framework for reorg.
13847
13848         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13849         advanced-notation.itely, global.itely: new files, placeholder for
13850         future reorg.
13851
13852 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13853
13854         * Documentation/user/notation.itely: revamped Polyphony section
13855         
13856 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13857
13858         * Documentation/user/lilypond-book.itely (Music fragment options):
13859         doc fontload.
13860
13861         * Documentation/user/changing-defaults.itely (Text encoding): add
13862         fontload option to utf8 include
13863
13864         * scripts/lilypond-book.py (compose_ly): add fontload option
13865
13866         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13867         force-eps-font-include option.
13868
13869         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13870         black triangle
13871
13872         * Documentation/user/invoking.itely (Editor support): remove
13873         lilypond-latex section.
13874
13875         * scripts/lilypond-latex.py (Module): remove script.
13876
13877         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13878         overwrite .log. 
13879
13880         * lily/main.cc: remove -m, --no-layout
13881
13882         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13883         to define. We don't want to override fprintf everywhere.
13884
13885 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13886
13887         * cygwin/lilypond.hint: 
13888         * cygwin/README.in: Update dependencies.
13889
13890         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13891         Bugfix: do not pollute CPPFLAGS, LIBS.
13892
13893         * cygwin/mknetrel (extras): Cross compile fixes.
13894
13895         * ttftool/util.c: 
13896         * ttftool/ttfps.c: 
13897         * ttftool/ps.c: #include libc-extension.hh
13898
13899         * flower/include/libc-extension.hh:
13900         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13901         wrapper using funopen.
13902         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13903         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13904
13905         * config.hh.in:
13906         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13907         (AC_CHECK_HEADERS): Add libio.h
13908
13909         * scripts/convert-ly.py: Uniformize, internationalize.
13910         (2.5.2): Remove fatal encoding rule.
13911         (2.5.13): Handle latin1 encoding gracefully.
13912
13913 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13914
13915         * HACKING: Fix line breaks.
13916
13917 2005-02-23  Werner Lemberg  <wl@gnu.org>
13918
13919         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13920         contains those two files.
13921
13922 2005-02-21  Werner Lemberg  <wl@gnu.org>
13923
13924         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13925         to improve overlap removal process.
13926
13927         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13928         left and right ending.  This ensures better overlapping.
13929         Update all callers.
13930         ("lineprall"): Don't use draw_gridline to get better overlapping.
13931
13932 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13933
13934         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13935
13936         * Documentation/topdocs/NEWS.tely (Top): oops.
13937
13938 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13939
13940         * HACKING: new file.
13941
13942         * input/regression/utf8.ly (portuguese): added a portuguese example
13943         to show latin1 accents.
13944
13945 2005-02-21  Pal Benko  <benkop@freestart.hu>
13946
13947         * lily/mensural-ligature-engraver.cc:
13948         * lily/mensural-ligature.cc:
13949         * lily/include/mensural-ligature.hh: new algorithm implemented
13950
13951         * scm/define-grob-properties.scm: join-left killed (add-join may
13952         be used); join-left-amount changed to join-right-amount
13953
13954 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13955
13956         * Documentation/user/notation.itely: small but urgent fix.
13957
13958 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13959
13960         * lily/duration-scheme.cc: bugfix: correct parameters to
13961         SCM_ASSERT_TYPE.
13962
13963         * THANKS: added Pal.
13964
13965         * Documentation/user/notation.itely: bugfix: unTeXified
13966         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13967         "timesig.*x/y" -> "timesig.*xy".
13968
13969 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13970         
13971         * VERSION (PACKAGE_NAME): release 2.5.12
13972
13973 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13974
13975         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13976
13977         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13978
13979         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13980
13981         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13982
13983 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13984
13985         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13986         latin1..utf-8.
13987
13988         * input/regression/stanza-number.ly:
13989         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13990
13991         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13992
13993 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13994
13995         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13996         NEWS. Refer to website for older news.  
13997
13998         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13999         .HTML. This should be done for specific servers only.
14000
14001         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
14002         .ly image examples.
14003
14004         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
14005         in layer 0 too.
14006
14007         * scm/define-context-properties.scm
14008         (all-user-translation-properties): add tieWaitForNote
14009
14010         * scm/define-grobs.scm (all-grob-descriptions): add
14011         Tie_column::before_line_breaking
14012
14013         * lily/tie.cc (get_column_rank): new function
14014
14015         * lily/tie-column.cc (before_line_breaking): new function.
14016         (werner_directions): take into account ties that start on
14017         different columns.  
14018
14019         * lily/score-engraver.cc (set_columns): move add_column() so we
14020         have column rank available.
14021
14022         * lily/tie.cc (get_column_rank): new function.
14023
14024         * input/regression/utf8.ly (japanese): add japanese lyrics.
14025
14026         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
14027
14028         * THANKS: add Steve D
14029
14030         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
14031         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
14032
14033 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
14034
14035         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
14036         to show harmonic notes
14037         * scm/define-markup-commands.scm: in \markup-by-number
14038         "dots-dot" -> "dots.dot" to show dotted notes
14039
14040 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14041
14042         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
14043
14044         * flower/memory-stream.cc (writer): new file.
14045
14046         * configure.in: add endian test.
14047
14048 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
14049
14050         * Documentation/user/examples.itely: small
14051         simplification/beautification
14052
14053         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
14054         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
14055         notation manual.
14056
14057         * lily/mensural-ligature.cc: bugfix: another few victims of the
14058         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
14059
14060         * ly/gregorian-init.ly: commit some experimental code for hi-level
14061         ligature input language lying around here for several months.
14062
14063         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
14064         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
14065
14066         * lily/vaticana-ligature-engraver.cc: bugfix: another few
14067         "x-y-z"->"x.y.s-z" fixes.
14068
14069 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14070
14071         * scm/framework-pdf.scm (scm): new file
14072
14073         * lily/include/pdf.hh (class Pdf_file): new file.
14074
14075         * lily/pdf.cc (write_trailer): new file.
14076
14077 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
14078
14079         * input/regression/color.ly: new file
14080
14081         * lily/stencil.cc (interpret_stencil_expression):
14082         when a color expression is encountered: save current color,
14083         process the rest of the expression, and restore previous color.
14084
14085         * lily/system.cc (get_line): check all grobs for color property and
14086         prepare the stencil scheme expressions for further processing.
14087         Fix layer-loop.
14088
14089         * scm/define-grob-properties.scm: introduce the color property.
14090
14091         * scm/output-lib.scm: color helper functions.
14092
14093         * scm/output-ps.scm: introduce setcolor/resetcolor.
14094
14095 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
14096
14097         * ly/*.ly, input/regression/*.ly: Added missing \version
14098         statements in some files.
14099
14100 2005-02-15  Graham Percival  <gperlist@shaw.ca>
14101
14102         * Documentation/user/notation.itely: minor editing.
14103
14104         * Documentation/user/converters.itely: updated convert-ly bugs.
14105
14106         * Documentation/user/lilypond-book.itely: add info about using
14107         feta characters in latex.
14108
14109 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14110
14111         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
14112
14113 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14114
14115         * scm/define-grob-properties.scm (all-user-grob-properties):
14116         removed 'dashed property.
14117
14118 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14119
14120         * scm/lily.scm (define-safe-public): new macro for defining
14121         variables that can be used in --safe mode. Use it in *.scm
14122         instead of manually setting safe-objects in safe-lily.scm.
14123
14124 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14125         
14126         * lily/slur.cc: Slur-dash patch by Bertalan.
14127
14128         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
14129
14130         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
14131
14132 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
14133
14134         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
14135
14136 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14137
14138         * mf/GNUmakefile: teTeX-3.0 install fix.
14139
14140         * Cygwin patch from Bertalan.
14141
14142         * stepmake/stepmake/metafont-rules.make: Remove bashism.
14143
14144 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14145
14146         * GNUmakefile.in: 
14147         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
14148
14149         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
14150         2.0.x compatibility.
14151
14152 2005-02-08  Werner Lemberg  <wl@gnu.org>
14153
14154         * mf/feta-din-code.mf: Format; clean up code.
14155         Replace `---' with `--' plus explicit path directions.
14156         (linethickness#, stafflinethickness#): Remove.
14157         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
14158         ("dynamic s"): Improve shape.
14159         ("dynamic p"): Improve shape.
14160         Replace `draw' with better outline approximation.
14161         ("dynamic r"): Improve shape.
14162         Don't call `fill' and `draw' at the same time.
14163
14164 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14165
14166         * SConstruct (symlink):
14167         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
14168         build fix: add enc symlink.
14169
14170         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
14171
14172         Support for DESTDIR besides prefix=/foo
14173
14174         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
14175
14176         * stepmake/stepmake/*.make:
14177         * */GNUmakefile:
14178         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
14179
14180         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
14181
14182         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
14183         mawk in fontforge (date) test.
14184
14185 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14186
14187         * scm/font.scm (make-century-schoolbook-tree): add NCS as
14188         font-family=roman. Add Luxi Sans as sans
14189
14190 2005-02-07  Graham Percival  <gperlist@shaw.ca>
14191
14192         * Documentation/user/notation.itely: add warning about
14193         percent repeats and Voice contexts.
14194
14195         * Documentation/user/lilypond-book.itely: clarified the
14196         necessity of dvips -u arguments.
14197
14198 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
14199
14200         * THANKS: Added a bunch of bug hunters.
14201
14202 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14203
14204         * scm/framework-ps.scm (output-preview-framework): bugfix.
14205
14206         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
14207         o/ for chord modifier..
14208
14209         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
14210
14211         * lily/drum-note-performer.cc:  remove unused (thanks Michael
14212         Welsh Duggan). 
14213
14214 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
14215
14216         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
14217
14218         * ly/titling-init.ly: Do not also print intstrument in header on
14219         first page.  Do not print page number on first and only page.
14220
14221 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14222
14223         * input/regression/*.ly: remove old-relative everywhere
14224
14225         * lily/music-sequence.cc (simultaneous_relative_callback): do
14226         what-if analysis on copy, not on original. Fixes old-relative
14227         compatibility.
14228
14229         * scm/backend-library.scm (postscript->png): space before
14230         --verbose.
14231         
14232 2005-02-05  Werner Lemberg  <wl@gnu.org>
14233
14234         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
14235         is defined.
14236
14237         * mf/feta-alphabet.mf: Define `staffsize#'.
14238         Include `feta-params.mf'.
14239         s/staffheight/design_size/.
14240
14241         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
14242
14243         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
14244
14245         * mf/feta-nummer-code.mf: Reformatted.
14246         (draw_six): Use outline intersection to avoid a self-intersecting
14247         path.
14248         ("Numeral comma"): Fix serious outline glitches.  This slightly
14249         changes the glyph shape.
14250         ("Numeral dash"): Use `draw_rounded_block'.
14251         ("Numeral dot"): Use `drawdot'.
14252         ("Numeral 1"): Assure identical tangent directions for the
14253         intersection points of paths.  The glyph shape improvement is only
14254         visible at very high magnifications.
14255         ("Numeral 2"): Use `solve' macro to make the lower right part of
14256         the glyph outline touch the x axis exactly.  This changes the
14257         glyph shape.
14258         Minor fixes for better overlap removal support.
14259         ("Numeral 4"): Make lefter corner `rounder'.
14260         ("Numeral 5"): Assure identical tangent directions for the
14261         intersection points of paths.  This improves the glyph shape at
14262         high magnifications.
14263         ("Numeral 7"): Use `solve' macro to make the upper right part of
14264         the glyph outline touch the metrics box exactly.  This changes the
14265         glyph shape.
14266         Avoid corner in the upper left part of the glyph (causing a minor
14267         shape change).
14268
14269         * mf/feta-ital-*.mf: Removed.  Unused.
14270
14271 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14272
14273         * VERSION (PATCH_LEVEL): release 2.5.11
14274
14275         * input/regression/fill-line-test.ly: new file.
14276
14277         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
14278         emmentaler name, eg. emmentaler-23. 
14279
14280 2005-02-04  Christian Hitz  <chhitz@gmx.net>
14281
14282         * scm/scm/define-markup-commands.scm (fill-line): rework for better
14283         alignment with centered texts
14284
14285         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
14286         list of paddings
14287
14288 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14289
14290         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
14291
14292         * lily/note-column.cc (translate_rests): call flush_extent_cache()
14293         of parents when translating rests. Fixes: c-chord-rest.ly 
14294
14295         * lily/include/dimension-cache.hh (struct Dimension_cache): add
14296         dimension_callback_ member.
14297
14298         * lily/grob.cc (flush_extent_cache): new function. Force recompute
14299         of extents.
14300
14301 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
14302
14303         * all but lily/*: The grand 2004/2005 replace.
14304
14305 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14306
14307         * lily/*: add space after ,  
14308
14309         * scm/music-functions.scm (has-request-chord): don't use
14310         ly:music-name anywhere. Fixes <<\\>> notation. 
14311
14312         * scm/define-markup-commands.scm (box): use font-size for
14313         padding. Fixes boxed-rehearsal-marks.ly
14314
14315         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
14316         identifier definition too, so foo = \lyrics { ...   } bar = #1
14317         doesn't complain about "bar" being LYRICS_STRING.
14318
14319         * lily/paper-def.cc (find_pango_font): new routine; Store
14320         pango_fonts in hash tab too. This is necessary for retrieving
14321         Pango_fonts::physical_font_tab() later on.
14322  
14323         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
14324         crash if psname is null.
14325
14326         * lily/lily-guile.cc (ly_hash2alist): new function
14327
14328         * Documentation/user/changing-defaults.itely (Text encoding):
14329         rewrite. 
14330
14331         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
14332         -> font_filename mapping.
14333
14334         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
14335         ly_pango_font_physical_fonts
14336
14337         * scm/framework-ps.scm (supplies-or-needs): extract names from
14338         physical Pango_fonts.
14339
14340         * utf8.ly: new file.
14341
14342 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14343
14344         * Documentation/user/changing-defaults.itely (Page layout): add
14345         doco about systemSeparatorMarkup.
14346
14347         * scm/page-layout.scm (default-page-make-stencil): add-to-page
14348         function.
14349         (default-page-make-stencil): insert system separators.
14350
14351         * scm/define-markup-commands.scm (hcenter): add
14352         (beam): add.
14353
14354 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14355
14356         * scm/output-ps.scm (ez-ball): reinstate ez notation.
14357
14358 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
14359
14360         * lily/main.cc: Spell backend consistently.  Sort options.
14361
14362 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14363
14364         * scripts/lilypond-book.py (Module): revert @include.
14365         
14366 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
14367
14368         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
14369         Bugfix: @include .tex (not .texi).  Small cleanups.
14370
14371         * stepmake/bin/add-html-footer.py (i18n): New function.
14372
14373 2005-01-31  Werner Lemberg  <wl@gnu.org>
14374
14375         * mf/feta-nummer.mf: Removed.  Unused.
14376
14377 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14378
14379         * lily/ : 2004 -> 2005 s&r
14380
14381         * scm/file-cache.scm (cached-file-contents): add file. Read each
14382         file only once.
14383
14384         * scm/font.scm (add-pango-fonts): change order. Medium weight is
14385         now default.
14386
14387         * VERSION: release 2.5.10
14388         
14389         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
14390
14391         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
14392
14393         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
14394         that both X and Y extents of bbox are non-nil.
14395
14396 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14397
14398         * scm/chord-name.scm (alteration->text-accidental-markup): change
14399         - to . 
14400
14401         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
14402
14403         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
14404
14405         * Documentation/user/invoking.itely (Invoking lilypond): add note
14406         about EPS backend.
14407
14408         * scm/framework-eps.scm: new file: create per-system/per-page EPS
14409         files for inclusion in lilypond-book document.
14410
14411         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
14412
14413         * input/tutorial/lbook-texi-test.texi: new file.
14414
14415         * scm/safe-lily.scm (safe-objects): add
14416         {begin,end}-of-line-(in)?visible as safe.
14417  
14418 2005-01-30  Graham Percival  <gperlist@shaw.ca>
14419
14420         * Documentation/user/changing-defaults.itely: fixed example
14421         of (dynamics).
14422
14423 2005-01-29  Graham Percival  <gperlist@shaw.ca>
14424
14425         * lily/main.cc: fix info about -o=FILE.
14426
14427 2005-01-29  Werner Lemberg  <wl@gnu.org>
14428
14429         * mf/feta-toevallig.mf ("Natural"): Completely changed the
14430         construction to assure smooth transition from straight to curved
14431         lines.
14432
14433 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14434
14435         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
14436         stencils.
14437
14438         * ps/lilyponddefs.ps: add start-page, start-system doesn't
14439         translate to top of page. Fixes alignment problems of
14440         lilypond-generated EPS files.
14441
14442 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14443
14444         * scm/part-combiner.scm (analyse-spanner-states): trigger on
14445         crescendo-end as well, since Decrescendo maybe ended with Stop
14446         Crescendo.). Fixes: partcombine-diminuendo.ly
14447
14448         * scm/script.scm (default-script-alist): swap portato symbols.
14449
14450         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
14451
14452         * lily/paper-outputter-scheme.cc (LY_DEFINE):
14453         ly:outputter-port. New function.
14454
14455         * scm/framework-ps.scm (output-classic-framework): dump a
14456         -systems.texi too
14457         (output-classic-framework): dump multiple systems on an "infinite"
14458         page EPS including fonts. 
14459
14460         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
14461         .eps files for both texi and tex formats. Use PNG coming from
14462         lilypond.
14463         
14464 2005-01-28  Graham Percival  <gperlist@shaw.ca>
14465
14466         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
14467
14468         * scripts/lilypond-latex.py: fix info about -o=FILE.
14469
14470 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14471
14472         * ly/generate-embedded-cff.ly: write .cff.ps files.
14473
14474         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
14475
14476         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
14477         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
14478
14479 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
14480
14481         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
14482
14483 2005-01-28  Werner Lemberg  <wl@gnu.org>
14484
14485         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
14486         macros.
14487         (draw_bulb): Improved.
14488
14489         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
14490         metapost bug.
14491         (draw_pedal_P): Use soft_end_penstroke.
14492         (draw_pedal_d): Use soft_start_penstroke.
14493
14494         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
14495         path.
14496         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
14497         doesn't change the glyph shape.
14498
14499         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
14500         changing the shape) to avoid fontforge warnings.
14501
14502         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
14503         soft_end_penstroke and fix glyph shape.
14504
14505 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14506
14507         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
14508
14509 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14510
14511         * scm/define-markup-commands.scm (line): filter out empty stencils
14512         from line command.
14513
14514         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
14515         amount.
14516
14517 2005-01-27  Graham Percival  <gperlist@shaw.ca>
14518
14519         * Documentation/user/notation.itely: added info about what
14520         \voiceFoo does.  Also rewrote warning about marks at
14521         a line break.
14522
14523         * Documentation/user/changing-defaults.itely: added info
14524         about putting dynamics in parenthesis and brackets.
14525
14526 2005-01-27  Werner Lemberg  <wl@gnu.org>
14527
14528         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
14529
14530 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14531
14532         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
14533         portato-direction.ly
14534
14535         * lily/beam.cc (consider_auto_knees): add beam height to
14536         threshold. Fixes: knee-multiple-beam.ly
14537
14538         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
14539         pedal line spanners. Fixes: instrument-center-pedal.ly
14540
14541         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
14542         if encountering barline. Fixes: auto-beam-repeat.ly
14543
14544 2005-01-26  Werner Lemberg  <wl@gnu.org>
14545
14546         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
14547         overlapping.
14548
14549         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
14550         with inflections for the 1/2 sharp glyph.
14551
14552         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
14553         connection between `t' and `r'.
14554         Unify bulb with the rest of `r' to avoid grazing outlines which
14555         confuses the overlap removal algorithm of fontforge.
14556
14557         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
14558         inflections.
14559         (draw_cross): Fix shape to have uniform thickness in corners.
14560
14561         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
14562         to avoid an uneven number of self-intersections; this confuses
14563         fontforge.
14564         Fix a slight bug in the shape at left bottom (which is visible only
14565         at high magnifications).
14566         `Center' the stem horizontally to avoid overlapping.
14567
14568 2005-01-24  Werner Lemberg  <wl@gnu.org>
14569
14570         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
14571         to `asis'.
14572         (fet_begingroup): Save group name in string `feta_group'.
14573         (fet_endgroup): Updated.
14574         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
14575
14576         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
14577
14578         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
14579         in metapost.
14580
14581 2005-01-24  Graham Percival  <gperlist@shaw.ca>
14582
14583         * Documentation/user/notation.itely: really minor editing.
14584
14585 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14586
14587         * Documentation/user/examples.itely: minor editing.
14588
14589         * Documentation/user/changing-defaults.itely: minor editing.
14590
14591         * Documentation/user/notation.itely: clarified info on polyphony
14592         and \addlyrics.
14593
14594 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14595
14596         * scm/output-gnome.scm: 
14597         * scm/output-svg.scm:
14598         * scm/lily-library.scm (font-name-style): Update font name
14599         kludging for fontconfig use.
14600
14601 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
14602
14603         * scm/define-markup-commands.scm: Document right-align and
14604         larger markup commands. Remove "TODO" from the topmost comment
14605         "each markup function should have a doc string." More consistent
14606         use of new-lines.
14607
14608 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14609
14610         * Documentation/user/changing-defaults: removed info about
14611         copyright symbol, since it's likely to change soon.
14612         Added info about betweensystemspace.
14613
14614         * Documentation/user/notation.itely: minor fixes.
14615
14616         * Documentation/user/lilypond.tely,
14617         Documentation/user/music-glossary.tely: changed copyright
14618         date to 2005 instead of 2004.
14619
14620         * input/test/volta-chord-names.ly: added old example back.
14621
14622 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14623
14624         * mf/feta-beugel.mf: use design size 20 (not 15).
14625
14626         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
14627         change name to aybabtu completely
14628
14629 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14630
14631         * buildscripts/gen-emmentaler-scripts.py (outdir): add
14632         design_size to fontname
14633
14634 2005-01-19  Werner Lemberg  <wl@gnu.org>
14635
14636         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
14637         mf/feta-schrift.mf: s/p/pat/ if a path variable.
14638
14639         * mf/feta-autometric.mf (set_char_box): Add code which emits
14640         specials for mf2pt1 if run with metapost.
14641         (to_bp): New macro for mf2pt1.
14642
14643 2005-01-18  Graham Percival  <gperlist@shaw.ca>
14644
14645         * Documentation/user/changing-defaults: added info on
14646         creating a copyright symbol.
14647
14648 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14649
14650         * VERSION: release 2.5.9
14651         
14652 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
14653
14654         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14655
14656         * Documentation/user/notation.itely: Document
14657         score-override-auto-beam-setting Fix documentation for
14658         revert-auto-beam-setting.
14659
14660 2005-01-18  Werner Lemberg  <wl@gnu.org>
14661
14662         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14663         (procset): New function to define a procset resource.
14664         (ps-embed-pfa): New function to define a font resource.
14665         (setup): New function to define a `Setup' environment.
14666         (preamble): Use new functions.
14667
14668         * ps/lilypond.defs (init-lilypond-parameters): New function to
14669         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14670
14671 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14672
14673         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14674
14675 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14676
14677         * scm/define-markup-commands.scm: Change number->markletter-string
14678         to take two arguments (vector number). Add number->mark-alphabet-vector
14679         and markalphabet markup command.
14680
14681         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14682         format-mark-alphabet, format-mark-box-barnumbers and
14683         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14684
14685 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14686
14687         * Documentation/user/examples.itely: add SATB automatic piano
14688         reduction template.
14689
14690         * Documentation/user/notation.itely: added info about changing
14691         partcombine texts.  Also adds examples of alternate lyrics.
14692
14693         * Documentation/user/changing-defaults.itely: added warning
14694         about \RemoveEmptyStaffContext overriding previous changes.
14695
14696 2005-01-17  Werner Lemberg  <wl@gnu.org>
14697
14698         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14699         feta-alphabet*.
14700
14701 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14702
14703         * python/lilylib.py (make_ps_images): don't do final showpage for
14704         multi-page documents.
14705         
14706         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14707
14708 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14709
14710         * Documentation/user/lilypond.tely: changed order of appendices;
14711         unified index should be last.
14712
14713         * Documentation/user/notation.itely: add example of key signatures
14714         and info about Staff.printKeyCancellation.
14715
14716 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14717
14718         * lily/include/repeated-music.hh (class Repeated_music): change
14719         into "namespace" class.
14720
14721         * lily/event.cc: remove Key_change_event.
14722
14723         * lily/include/transposed-music.hh (class Transposed_music): remove.
14724
14725         * lily/transposed-music.cc: remove
14726
14727         * lily/include/relative-music.hh: remove.
14728
14729         * lily/include/music-sequence.hh (struct Music_sequence): change
14730         into "namespace" class.
14731
14732         * lily/untransposable-music.cc (Module): remove
14733
14734         * lily/include/un-relativable-music.hh (Module): remove
14735
14736         * lily/include/untransposable-music.hh (Module): remove
14737
14738         * lily/include/music-list.hh (Module): remove file
14739
14740         * lily/un-relativable-music.cc: remove file.
14741
14742 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14743
14744         * lily/parser.yy: Compile fix.
14745
14746 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14747
14748         * lily/include/music.hh (class Music): unvirtualize transpose().
14749
14750         * lily/sequential-music.cc: remove file.
14751
14752         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14753
14754         * lily/slur-scoring.cc (get_best_curve): only switch on
14755         DEBUG_SLUR_SCORING for non NDEBUG builds.
14756
14757         * lily/include/music.hh (class Music): replace Music::start_mom()
14758         by start-callback property
14759
14760         * lily/include/grace-music.hh: remove file. 
14761
14762         * lily/stem.cc (height): robustness fix.
14763
14764         * lily/time-scaled-music.cc: remove file.
14765
14766         * lily/include/music.hh (class Music): include SCM init argument.
14767         (class Music): replace Music::get_length() virtual by
14768         length-callback property everywhere.
14769
14770         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14771
14772         * mf/GNUmakefile: don't install *list.ly
14773
14774 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14775
14776         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14777
14778 2005-01-12  Werner Lemberg  <wl@gnu.org>
14779
14780         This patch addresses the following problems in the feta sources
14781         files which contribute to the fetaXX fonts.
14782
14783         . Many fixes for rasterization at low resolutions (consistent use of
14784           `vround' and `hround', integer shift values for paths, applying
14785           `eps' for mirrored paths, use of `define_whole_pixels' and
14786           friends, etc.) -- while this probably looks like a waste of time
14787           it has revealed deficiencies in some glyph shapes.  See comment at
14788           the end of feta-params.mf how vertical symmetry is achieved.
14789
14790         . The `---' operator has been replaced everywhere with `--'; this
14791           both improves and considerably reduces the font size after
14792           conversion with mf2pt1.
14793
14794         These change aren't explicitly mentioned below since virtually all
14795         glyphs are affected.
14796
14797         Other notable differences:
14798
14799         . Glyphs from feta-accordion.mf now have charboxes around the
14800           outline.
14801
14802         . Fixed incorrect charbox for `accDot'.
14803
14804         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14805
14806         . Fixed position of the bow in the `upprall' glyph and its siblings.
14807
14808         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14809           dependent on the staff line thickness to avoid touching the middle
14810           staff line at smaller sizes.
14811
14812         . Largely extended output for feta-testXX: Where useful, glyphs
14813         are shown both between and on staff lines.
14814
14815
14816         * mf/feta-params.mf (staff_space_rounded,
14817         stafflinethickness_rounded, linethickness_rounded,
14818         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14819         Update all code which uses them where appropriate.
14820         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14821         New variables used to control rasterization at low resolutions.  Set
14822         to zero if feta code is processed with metapost.
14823
14824         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14825         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14826         (flare_path): Updated.
14827         Make it work with `filldraw' (but only circular pens).
14828         (hfloor, vfloor, hceiling, vceiling): New macros.
14829
14830         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14831         Use `draw' again in mf mode to have good pixel dropout control.
14832         Fix intersection points of horizontal lines with circle.
14833         ("accDot"): Fix parameters for set_char_box.
14834         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14835         control.
14836
14837         * mf/feta-banier.mf: Updated.
14838
14839         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14840         testing.
14841         (undraw_inside_ellipse): Remove `center' argument.  Update all
14842         callers.
14843         (draw_brevis): New macro, called by "Brevis notehead".
14844         (draw_whole_triangle_head): New macro, called by "Whole
14845         trianglehead".
14846         (draw_small_triangle_head): Use `filldraw'.
14847
14848         * mf/feta-eindelijk.mf: Remove useless global group.
14849         Updated.
14850
14851         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14852         `filldraw'.
14853
14854         * mf/feta-pendaal.mf: Updated.
14855
14856         * mf/feta-puntje.mf: Updated.
14857
14858         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14859         less points.
14860         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14861         dropout control.
14862         ("Varied Coda"): Use `draw_block'.
14863         (draw_comma): Fix typo.
14864         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14865         pixel dropout control.
14866
14867         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14868         position of bow.
14869
14870         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14871         sizes.
14872
14873         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14874         testing.
14875         (draw_meta_sharp): Much simplified.
14876         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14877
14878         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14879
14880 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14881
14882         * Documentation/user/notation.itely (Ancient rests): Fix typo
14883         (thanks Anthony)
14884
14885 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14886
14887         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14888
14889         * lily/main.cc (setup_paths): Add cff.
14890
14891         * mf/GNUmakefile (foe): Include actual target %.cff.
14892         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14893
14894 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14895
14896         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14897         suffix for main_input_b_.
14898
14899         * scm/music-functions.scm (toplevel-music-functions):
14900         precompute music lengths for music expressions.  
14901
14902 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14903
14904         * lily/include/input.hh (class Input): new `end_' slot for end of
14905         input. Renamed defined_str0_ to start_.
14906
14907         * lily/input.cc (Input): Add Input::Input (Input const &) and
14908         remove Input::Input (Source_file*, char const *). Use the new
14909         slots.
14910         (set_location): method used by bison to propagate input
14911         locations (YYLLOC_DEFAULT).
14912         (end_line_number, end_column_number, step_forward): new methods
14913         
14914         * lily/input-scheme.cc (ly:input-both-locations): new function,
14915         similar to ly:input-location, but also return the end line and
14916         column.
14917
14918         * lily/include/includable-lexer.hh: 
14919         * lily/includable-lexer.cc: 
14920         * lily/include/lily-lexer.hh (class Lily_lexer): 
14921         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14922         Includable_lexer to Lily_lexer, in order to update lexloc (the
14923         yylloc), a new slot of Lily_lexer.
14924         (here_input, LexerError): simplify by using the lexloc slot (aka
14925         yylloc)
14926
14927         * lily/lexer.ll: #define yylloc to use input locations (it may
14928         be useless here?). Fixed the #embedded_scm rule (step the location
14929         forward in order to skip the sharp sign before parsing the scheme
14930         expression)
14931
14932         * lily/include/lily-parser.hh (class Lily_parser): 
14933         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14934         here_input()
14935         (parser_error): overload for more precise locations of errors.
14936
14937         * lily/parser.yy (YYLTYPE): set location type to Input
14938         (YYLLOC_DEFAULT): use Input::set_location()
14939         (yylex): add the YYLTYPE* location parameter.
14940         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14941         Give an Input parameter to THIS->parser-error() for more accurate
14942         messages.
14943
14944 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14945
14946         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14947
14948         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14949         on BEAMQUANTING for non-NDEBUG builds.
14950
14951         * lily/stem.cc (head_count): performance: avoid String::String()
14952         inside oft called function.
14953
14954 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14955
14956         * Documentation/user/examles.itely: attempted fix for broken
14957         string quartet template.
14958
14959         * Documentation/user/notation.itely: remove unnecessary broken
14960         link.
14961
14962 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14963
14964         * VERSION (PACKAGE_NAME): release 2.5.7
14965
14966 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14967
14968         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14969         mf-nowin for teTeX-3.0.  Backportme.
14970
14971         * scm/output-svg.scm (utf8-string): New function.
14972
14973         * scm/output-gnome.scm (utf8-string): New function.
14974         (otf-name-mangling): Remove.
14975
14976         * lily/pango-font.cc (Pango_font): Use font string iso font
14977         filename for utf8-text.
14978
14979         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14980         name.
14981
14982 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14983
14984         * Documentation/user/notation.itely: add info about
14985         Staff.extraNatural = ##f in Pitches section.  Also
14986         fixed some minor issues in the Vocal music section.
14987
14988 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14989
14990         * scm/output-ps.scm (white-text): comment out Helvetica font,
14991         which is broken for my GS install.
14992
14993         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14994         which provides a tighter bbox.
14995
14996         * scm/define-grobs.scm (all-grob-descriptions): remove all
14997         extra-offsets from definitions.
14998
14999 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
15000
15001         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
15002         add tuning for 4-string bass and some common 4/5-string banjo
15003         tunings.  New function (four-string-banjo) turns a 5-string tuning
15004         into a 4-string tuning.  New function
15005         (fret-number-tablature-format-banjo) computes correct fret numbers
15006         on 5-string banjos.
15007
15008         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
15009         Add beam correction to TabVoice.
15010
15011         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
15012         using bold font; makes tabs more readable.
15013
15014 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15015
15016         * lily/font-select.cc (get_font_by_design_size): don't make
15017         Modified_font_metric; this causes trouble, since we don't know the
15018         font magnification from inside Pango_font::text_stencil()
15019
15020         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
15021
15022         * Documentation/user/notation.itely (The Lyrics context): comment out
15023         broken {Small ensembles} link.
15024
15025         * scm/framework-svg.scm (output-framework): change calling convention.
15026
15027         * lily/object-key-dumper-scheme.cc: new file.
15028
15029         * lily/object-key-undumper-scheme.cc: new file.
15030
15031         * lily/tweak-registration-scheme.cc: new file.
15032
15033         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
15034
15035         * Documentation/user/examples.itely (String quartet): uncomment
15036         broken example.
15037
15038         * lily/font-config.cc: new file.
15039
15040 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
15041
15042         * scm/output-svg.scm: 
15043         * scm/output-gnome.scm: s/bigcheese/emmentaler.
15044
15045         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
15046
15047 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
15048
15049         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
15050         Add headers.
15051
15052         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
15053
15054 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15055
15056         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
15057
15058         * lily/include/main.hh: lose _b hungarian suffixes for global
15059         variables.
15060
15061         * lily/include/lily-guile-macros.hh: new file.
15062
15063         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
15064
15065         * lily/general-scheme.cc: new file. 
15066
15067         * lily/font-select.cc (get_font_by_design_size): retrieve
15068         PangoFont for (designsize . "pango-descr") entries.
15069
15070         * lily/lily-parser-scheme.cc: new file.
15071
15072         * lily/output-def-scheme.cc: new file.
15073
15074         * lily/paper-book-scheme.cc: new file.
15075
15076         * lily/duration-scheme.cc (LY_DEFINE): new file.
15077
15078         * lily/pitch-scheme.cc:  new file.
15079
15080         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
15081
15082 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15083
15084         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
15085
15086 2005-01-06  Graham Percival  <gperlist@shaw.ca>
15087
15088         * Documentation/user/notation.itely: minor editing.
15089
15090         * Documentation/user/changing-defaults: minor editing.
15091
15092         * Documentation/user/examples.itely: add template for
15093         string quartet part extraction; demonstrates tag.
15094
15095 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
15096
15097         * Documentation/user/notation.itely: documents
15098         format-mark-box-letters and format-mark-box-numbers
15099
15100         * scm/define-context-properties.scm: change comment.
15101
15102 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15103
15104         * scm/framework-ps.scm (output-classic-framework): new function:
15105         dump systems as separate .eps files (without fonts) and write a
15106         single collecting .tex file.
15107
15108 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
15109
15110         * Documentation/user/notation.itely (Setting simple songs):
15111         Correct several errors in the equivalent formulation of
15112         \addlyrics. 
15113         (The Lyrics context): Corrected link to the SATB example.
15114
15115 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15116
15117         * scm/lily.scm (completize-formats): new function
15118         (postprocess-output): new function
15119
15120         * lily/paper-book.cc (classic_output): change calling
15121         convention. Give basename as first argument. 
15122         remove Paper_book::post_processing().
15123
15124         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
15125
15126 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15127
15128         * lily/paper-outputter.cc (LY_DEFINE): new function
15129         ly:outputter-close.
15130
15131         * lily/main.cc: change --format,-f to --backend,-b
15132
15133         * lily/include/main.hh: rename format to backend.
15134
15135         * scm/translation-functions.scm (format-mark-box-numbers): add.
15136         patch by Erlend Aasland
15137
15138 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15139
15140         * lily/pango-font.cc (text_stencil): dump string as
15141         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
15142
15143 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
15144
15145         * configure.in (gui_b): Remove handy developer-only
15146         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
15147         CVS source installations (but break other non-default but correct
15148         PKG_CONFIG_PATH setups), as this is no longer developer-only.
15149
15150         * SConstruct: 
15151         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
15152         compatibility (backportme).
15153
15154         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
15155
15156 2005-01-03  Werner Lemberg  <wl@gnu.org>
15157
15158         Prepare glyph shapes for mf2pt1 conversion.
15159
15160         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
15161         (accDiscant, accFreebase, accStdbase): Replace `draw' with
15162         `penstroke'.
15163         (accDot): Use `drawdot'.
15164         (accBayanbase): Replace `draw' with `draw_gridline'.
15165         (print_penpos): Moved to feta-macros.mf.
15166         (accOldEE): Replace `filldraw' with `penstroke'.
15167         Replace `draw' with `penstroke' and `drawdot'.
15168
15169         * mf/feta-banier.mf: Code clean-up.
15170         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
15171         `fill'.
15172
15173         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
15174
15175         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
15176         paremeter to control drawing of labels.  Update all callers.
15177
15178         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
15179         (new_bulb): Return a bulb as a single path.  To do that, it now
15180         takes some more parameters.  Updated all callers.
15181         (draw_gclef): Major clean-up.  `draw' has been replaced with
15182         `penstroke', unnecessary outlines have been removed.
15183         Remove (unused) gnome-canvas code.
15184
15185         * mf/feta-macros.mf (print_penpos): New macro (from
15186         feta-accordion.mf).
15187         Other minor fixes.
15188
15189         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
15190         ("Pedal dot"): Use `drawdot'.
15191         (draw_pedal_P): Add parameter to control drawing of labels.  Update
15192         all callers.
15193         Fix shape at top.
15194         (draw_pedal_e): Add parameter to control drawing of labels.  Update
15195         all callers.
15196         (draw_pedal_d): Add parameter to control drawing of labels.  Update
15197         all callers.
15198         Revert drawing direction.
15199
15200         * mf/feta-schrift.mf (draw_fermata): Use single path.
15201         (draw_short_fermata): Replace `filldraw' with `fill'.
15202         (draw_long_fermata, draw_very_long_fermata): Replace calls to
15203         `draw_rounded_block' with a single path.
15204         ("Thumb"): Draw full circle instead of mirroring segments.
15205         (draw_accent): New macro.
15206         ("> accent", "espr"): Use it.
15207         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
15208         ("open (unstopped)"): Draw full circle instead of mirroring
15209         segments.
15210         (draw_vee): Removed.
15211         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
15212         ("Downbow"): Replace calls to `draw_rounded_block' with a single
15213         path.
15214         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
15215         partial pieces drawn with `fill' -- these do still overlap with the
15216         stem of the `t' but just once, not multiple times so that fontforge
15217         can handle it gracefully.
15218         Change other parts of the glyph so that fontforge's overlapping
15219         algorithm reliably works.
15220         (draw_heel): Replace `draw' with `fill'.
15221         (draw_toe): Use `draw_accent' instead of `draw_vee'.
15222         ("Flageolet"): Replace `draw' with `penstroke'.
15223         ("Segno"): Replace `filldraw' with `penstroke'.
15224         Replace `draw' with `drawdot'.
15225         ("Coda"): Replace `fill' with `penstroke', using a single path.
15226         ("Varied Coda"): Use less overlapping paths.
15227         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
15228         single path.
15229
15230         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
15231         group to better control the `labels' command.
15232         Rename argument to `offset' and use it actually.  Update all
15233         callers.
15234         Replace `filldraw' with `fill'.
15235         ("mordent", "prallmordent", "upmordent", "downmordent",
15236         "lineprall"): Replace `draw' with `draw_gridline'.
15237         ("upprall", "downprall"): Replace `draw' with `fill'.
15238
15239         * mf/feta-timesig.mf: Formatting.
15240
15241         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
15242         to...
15243         ("Flat"): Here.
15244         (draw_paren): Move code to draw labels to...
15245         ("Right Parenthesis"): Here.
15246
15247 2005-01-02  Graham Percival <gperlist@shaw.ca>
15248
15249         * Documentation/user/notation.itely: add example of \setTextDecresc
15250         and \setTextDim.
15251
15252 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
15253
15254         * scm/define-markup-commands.scm :  fix glyph-strings of
15255         accidentals and \note-by-number
15256
15257 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15258
15259         * VERSION: 2.5.6 released.
15260         
15261         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
15262
15263         * input/regression/new-markup-scheme.ly: oops. font-family=music
15264         -> font-encoding fetaMusic.  
15265
15266         * lily/main.cc: put default to PS.
15267
15268         * lily/tfm.cc: idem.
15269
15270         * lily/afm.cc: idem.
15271
15272         * lily/include/modified-font-metric.hh (struct
15273         Modified_font_metric): remove coding_scheme() method.
15274
15275         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
15276
15277         * scripts/convert-ly.py (conv): crash on encountering \encoding.
15278
15279         * input/les-nereides.ly: convert to utf8
15280
15281         * lily/modified-font-metric.cc (text_dimension): idem.
15282
15283         * lily/parser.yy (TODO): idem.
15284
15285         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
15286
15287         * lily/lexer.ll: remove encoding
15288
15289         * scm/framework-ps.scm (output-variables): separately scale the
15290         page to mm 
15291
15292         * lily/pango-font.cc (Pango_font): fix scaling.
15293
15294         * lily/font-metric.cc (design_size): design_size returns a
15295         dimension now as well.
15296
15297 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15298
15299         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
15300         brace generation. 
15301
15302         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
15303
15304 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
15305
15306         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
15307         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
15308
15309 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15310
15311         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
15312         in first run as well.
15313
15314         * scm/paper.scm (layout-set-staff-size): use text-font-size in
15315         dimension less points (ie. 12 = 12 point)
15316
15317         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
15318
15319         * lily/all-font-metrics.cc (find_pango_font): set description_
15320
15321         * lily/pango-font.cc (text_stencil): export size as well.
15322         (text_stencil): fix scaling and extents box.
15323
15324 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15325
15326         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
15327
15328         * Documentation/user/invoking.itely (Invoking lilypond): document
15329         texstr
15330
15331         * scripts/convert-ly.py (conv): add ancient rules.
15332
15333         * scm/clef.scm (c0-pitch-alist): replace - with .
15334
15335         * scripts/lilypond-book.py (process_snippets): add texstr support.
15336
15337         * scm/framework-texstr.scm (header): change extension to .textmetrics
15338
15339         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
15340         -f tex.
15341
15342         * lily/text-metrics.cc: new file.
15343         (try_load_text_metrics): new function
15344
15345         * lily/include/text-metrics.hh: new file.
15346
15347 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15348
15349         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
15350         ly_scheme_function to ly_lily_module_constant.
15351
15352         * lily/modified-font-metric.cc (text_dimension): try
15353         lookup_tex_text_dimension() first.
15354
15355         * lily/tfm.cc: new function ly:load-text-dimensions
15356
15357 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15358
15359         * scm/output-texstr.scm (text): use \lilygetmetrics
15360
15361         * scm/framework-texstr.scm (header): dump in new format.
15362
15363         * tex/lilypond-tex-metrics: new file.
15364         
15365 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
15366
15367         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
15368         mapping.
15369         (index_to_charcode): New method.
15370
15371         * scm/output-ps.scm (glyph-string): 
15372         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
15373
15374 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
15375
15376         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
15377         implement fully, need FONT to get to charcode.
15378
15379         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
15380
15381         * scm: Cleanups.
15382
15383         * Documentation/user/changing-defaults.itely: Fix internalsrefs
15384         {Tunable context properties},
15385         {All layout objects},
15386         {Music definitions}.
15387
15388 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15389
15390         * VERSION: release 2.5.5
15391         
15392         * lily/main.cc: use TeX as default output format.
15393
15394         * flower/file-path.cc (find): try to open directly as well, so we
15395         find absolute path files. 
15396
15397         * lily/pango-select.cc: new file.
15398
15399         * scm/framework-ps.scm: remove all encoding code. 
15400         load pfb/pfa for PangoFont too.
15401         
15402         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
15403
15404 2004-12-22  Werner Lemberg  <wl@gnu.org>
15405
15406         Prepare glyph shapes for mf2pt1 conversion.
15407
15408         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
15409
15410         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
15411         (define_triangle_shape): Use it to replace `draw' with `fill' and
15412         `unfill'.  Update all callers.
15413         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
15414         (draw_cross): Ditto.
15415         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
15416         Use penrazor for better conversion with mf2pt1.
15417         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
15418         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
15419         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
15420         draw_la_head, draw_ti_head): Replace `filldraw' with
15421         `fill'.  Update all callers.
15422
15423 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15424
15425         * lily/paper-book.cc (output): revert: only allow a single output
15426         format.
15427
15428         * lily/include/pango-font.hh: new file.
15429
15430         * lily/pango-font.cc: new file.
15431
15432         * lily/font-metric.cc (text_stencil): new routine
15433
15434         * lily/all-font-metrics.cc (find_pango_font): new routine.
15435
15436         * lily/include/font-metric.hh (struct Font_metric): add
15437         text_stencil()
15438
15439         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
15440
15441 2004-12-22  Werner Lemberg  <wl@gnu.org>
15442
15443         Prepare glyph shapes for mf2pt1 conversion.
15444
15445         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
15446
15447         * mf/feta-toevallig.mf: Formatting.
15448         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
15449         ("Natural"): Fix paths to allow better postprocessing.
15450         (draw_meta_flat): Use `z3l' as additional point in path to get
15451         better conversion with mf2pt1.
15452         Other minor cleanups.
15453         ("3/4 Flat"): Add auxiliary points and modify path to replace
15454         `draw' with `fill'.
15455         ("Double Sharp"): Mirror path segments instead of picture elements
15456         to get a single outline.
15457         Modify path to replace `filldraw' with `fill'.
15458
15459 2004-12-22  Graham Percival  <gperlist@shaw.ca>
15460
15461         * input/test/unfold-all-repeats.ly: added file back.
15462
15463         * Documentation/user/notation.itely,
15464         Documentation/user/programming-interface.itely
15465         Documentation/user/changing-defaults.itely: fixed misc broken
15466         links to input/test/ files.
15467
15468 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15469
15470         * tex/texinfo.tex: Update.  We should not be distributing this,
15471         but since we do, use latest version.
15472
15473         * Documentation/user/macros.itexi: Comment-out \fetaflat,
15474         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
15475         macros for feta glyphs.
15476
15477 2004-12-22  Graham Percival  <gperlist@shaw.ca>
15478
15479         * Documentation/user/changing-defaults.itely: fix index for set.
15480
15481         * Documentation/user/converters.itely: added convert-ly bugs list
15482         from CVS.
15483
15484 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15485
15486         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
15487         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
15488         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
15489         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
15490
15491         * mf/GNUmakefile (pfa_warning): Use less broken check.
15492
15493         * python/lilylib.py (setup_environment): Remove cruft from
15494         GS_FONTPATH.
15495
15496         * configure.in: Bump mftrace requirement to 1.1.1.
15497
15498 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
15499
15500         * scm/output-svg.scm (beam): Use polygon.
15501
15502         * scm/lily-library.scm: Bugfix.
15503
15504         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
15505
15506         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
15507
15508 2004-12-19  Werner Lemberg  <wl@gnu.org>
15509
15510         Prepare glyph shapes for mf2pt1 conversion.
15511
15512         * mf/feta-eindelijk: Some formatting.
15513         (multi_rest_x, multi_beam_height): Removed.  Unused.
15514         ("Quarter rest"): Use `intersectiontimes' to create a single
15515         outline.
15516         (rest_crook): Removed.  Unused.
15517         (draw_rest_bulb): Return path (without filling).  Update callers.
15518         Simplified.
15519         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
15520         "128th rest"): Simplify `pat'.
15521         Create single outline.
15522
15523 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15524
15525         * mf/GNUmakefile (ALL_GEN_FILES):
15526         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
15527
15528         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
15529         function.
15530
15531 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15532
15533         * scm/output-texstr.scm (placebox): add routine
15534
15535         * VERSION (PACKAGE_NAME): release 2.5.4
15536
15537         * scm/framework-texstr.scm (output-framework): new file.  
15538
15539         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
15540         processing.
15541
15542         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
15543
15544         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
15545         rule.
15546
15547         * configure.in (gui_b): bump mftrace requirement to 1.1.0
15548
15549         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
15550
15551         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
15552
15553 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15554
15555         * scm/framework-svg.scm (dump-page): Implement landscape.
15556
15557 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15558
15559         * lily/main.cc (setup_paths): Add svg to search path.
15560
15561         * scm/output-svg.scm:
15562         * scm/framework-svg.scm: Add pageSet.  Update.
15563         (dump-fonts): New function.
15564         (output-framework): Use it.
15565
15566         * mf/GNUmakefile: 
15567         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
15568
15569 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15570
15571         * tex/lilyponddefs.tex: comment out new ifpdf code.
15572
15573 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15574
15575         * GNUmakefile.in: 
15576         * SConstruct (symlink): Replace afm by otf.
15577
15578         * scm/framework-gnome.scm (gnome-main): Remove invocation of
15579         ly:pango-add-afm-decoder.
15580
15581         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
15582
15583 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15584
15585         * scm/output-ps.scm (new-text): don't access t glyph for getting
15586         space dimension.
15587
15588         * ly/init.ly: warn about \version
15589
15590         * lily/lexer.ll: set version-seen?
15591
15592 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15593
15594         * scm/output-svg.scm (string->entities): Update.
15595
15596 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15597
15598         * lily/main.cc (setup_paths): replace afm by otf for path. 
15599
15600         * lily/pangofc-afm-decoder.cc: remove.
15601
15602         * lily/include/pangofc-afm-decoder.hh: remove.
15603
15604         * scm/framework-scm.scm (output-framework): new file.
15605
15606         * mf/GNUmakefile: remove SAUTER_FONTS.
15607         remove SVG/sodipodi hacks.
15608
15609         * scm/lily-library.scm (stderr): move stderr.
15610
15611         * mf/GNUmakefile: remove AFM support.
15612
15613         * buildscripts/mf-to-table.py (base): remove AFM support.
15614
15615         * lily/open-type-font.cc (design_size): use design_size
15616
15617 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
15618
15619         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
15620
15621 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15622
15623         * mf/GNUmakefile: Generate combined aybabtu info.
15624         * mf/aybabtu.pe.in (i): Load it.
15625
15626         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
15627         are not symbols.
15628
15629         * lily/include/open-type-font.hh (count): New method.
15630
15631         * mf/aybabtu.pe.in: Typo.
15632
15633         * Documentation/user/out/lilypond-internals.nexi (Scheme
15634         functions): Typo.
15635
15636         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
15637
15638 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15639
15640         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
15641         subfonts.
15642
15643         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
15644
15645         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
15646         (tex-font-command-raw): new function.
15647
15648         * lily/include/virtual-font-metric.hh (Module): remove file
15649
15650         * lily/virtual-font-metric.cc (Module): remove file.
15651         
15652
15653         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15654         (get_indexed_char): read bbox from lily table if present.
15655
15656 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15657
15658         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15659         aybabtu.subfonts
15660
15661         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15662         global glyphname. Enables more than 64 glyphs in the OTF.
15663
15664 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15665
15666         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15667         braces.
15668
15669         * lily/open-type-font.cc (design_size): Use 12 as default for
15670         design size.
15671
15672         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15673
15674         * mf/GNUmakefile: Generate aybabtu.
15675
15676         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15677
15678 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15679
15680         * scm/lily-library.scm (char->unicode-index): Remove.
15681
15682         * scm/output-gnome.scm (text): Bugfix for plain string input.
15683         Updates.
15684
15685         * scm/output-svg.scm (svg-font): Add weight to font selection.
15686
15687 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15688
15689         * Documentation/topdocs/INSTALL.texi (Top): Point to
15690         buildscripts/out/clean-fonts instead of
15691         buildscripts/clean-fonts.sh. 
15692
15693 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15694
15695         * input/regression/figured-bass.ly: attempt to clarify text.
15696
15697         * Documentation/user/notation.tely: add cindex for tag, attempt to
15698         add figured bass example.
15699
15700         * Documentation/user/changing-defaults: basic editing.
15701
15702 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15703
15704         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15705
15706         * lily/open-type-font.cc (LY_DEFINE): new function
15707         ly:font-sub-fonts
15708
15709         * lily/include/font-metric.hh (struct Font_metric): new method
15710         sub_fonts()
15711
15712         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15713         . with - in add.stem.
15714         
15715 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15716
15717         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15718         and fetaDynamic.
15719
15720         * lily/rest.cc (glyph_name): Change - to . .
15721
15722         * scm/output-gnome.scm (text): Hello world, again.
15723
15724         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15725
15726         * lily/modified-font-metric.cc (index_to_charcode): New method.
15727
15728         * lily/include/font-metric.hh (index_to_charcode): New function.
15729
15730         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15731         new function.
15732         (ly:font-glyph-to-index): Remove.
15733
15734 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15735
15736         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15737
15738         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15739
15740         * lily/open-type-font.cc (load_scheme_table): new function
15741
15742         * lily/dots.cc (print): replace - 
15743
15744         * lily/open-type-font.cc (attachment_point): new function.
15745         (load_table): read LILC table
15746
15747         * buildscripts/gen-bigcheese-scripts.py (Module): new
15748         file. Generate FF scripts.
15749
15750         * mf/feta-din10.mf: idem.
15751
15752         * mf/feta-nummer10.mf: remove mf files.
15753
15754         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15755
15756 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15757
15758         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15759
15760         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15761         compatibility.
15762
15763 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15764
15765         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15766         design-size and units_per_EM.
15767
15768         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15769
15770 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15771
15772         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15773         does not crash fontforge.
15774
15775         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15776         PUA.
15777
15778 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15779
15780         * scm/framework-ps.scm (ps-embed-cff): new function.
15781
15782         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15783
15784 2004-12-12  Werner Lemberg  <wl@gnu.org>
15785
15786         * mf/bigcheese.pe.in: Add PUA mapping.
15787         Don't create Type 42 but bare CFF font.
15788
15789 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15790
15791         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15792         within canvas boundaries.
15793
15794         * mf/merge.pe.in: Set font names, version, license GPL.
15795
15796         * make/substitute.make: Add FONTFORGE.
15797
15798         * config.make.in (FONTFORGE): Add.
15799
15800         * configure.in (gui_b): Use PATH_PROG for fontforge.
15801
15802 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15803
15804         * scm/define-markup-commands.scm: add baseline-skip to info
15805         about \column.
15806
15807 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15808
15809         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15810
15811         * scm/output-gnome.scm (named-glyph): Use it.
15812
15813         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15814
15815         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15816         (upper_string, lower_string, reverse_string): Remove.
15817
15818         * configure.in (fontforge): Reinstate version check.
15819
15820         * ly/engraver-init.ly: Fix clef glyph names.
15821
15822         * lily/time-signature.cc (special_time_signature): Fix fraction
15823         glyph names.
15824
15825 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15826
15827         * mf/merge.pe: new file.
15828
15829         * lily/freetype.cc: new file.
15830
15831         * lily/include/open-type-font.hh (class Open_type_font): new file.
15832
15833         * lily/include/freetype.hh: new file.
15834
15835         * lily/open-type-font.cc: new file.
15836
15837         * lily/all-font-metrics.cc (find_otf): new function.
15838
15839 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15840
15841         * lily/time-signature.cc (special_time_signature): Fix.
15842
15843         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15844         GTK2 before checking for pango.  Fixes -fgnome.
15845
15846         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15847         Scheme name.
15848
15849         * scm/define-markup-commands.scm:
15850         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15851
15852         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15853
15854         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15855         date versions.  Fixes configure.
15856         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15857         argument.
15858
15859 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15860
15861         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15862         names in .enc
15863
15864         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15865
15866 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15867
15868         * Documentation/user/changing-defaults.itely: add info about
15869         make-dynamic-script
15870
15871         * Documentation/user/notation.itely: add link in dynamics to
15872         section about make-dynamic-script.
15873
15874 2004-12-09  Christian hitz  <chhitz@gmx.net>
15875
15876         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15877
15878 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15879
15880         * buildscripts/mf-to-table.py (parse_logfile): use . for
15881         concatting name and group.
15882         (parse_logfile): use M for Minus (negative.)
15883
15884         * lily/include/type-swallow-translator.hh
15885         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15886
15887         * lily/*.cc: cosmetics around = sign.
15888
15889         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15890         lyric spacing on the penultimate column.
15891
15892 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15893
15894         * configure.in:
15895         * lily/accidental-placement.cc:
15896         * lily/bar-line.cc:
15897         * lily/beam-concave.cc:
15898         * lily/beam-quanting.cc:
15899         * lily/beam.cc:
15900         * lily/bezier-bow.cc:
15901         * lily/bezier.cc:
15902         * lily/break-align-interface.cc:
15903         * lily/custos.cc:
15904         * lily/dimension-cache.cc:
15905         * lily/dot-column.cc:
15906         * lily/font-metric.cc:
15907         * lily/font-select.cc:
15908         * lily/gourlay-breaking.cc:
15909         * lily/grob-property.cc:
15910         * lily/grob.cc:
15911         * lily/lily-guile.cc:
15912         * lily/line-spanner.cc:
15913         * lily/lookup.cc:
15914         * lily/lyric-extender.cc:
15915         * lily/lyric-hyphen.cc:
15916         * lily/mensural-ligature.cc:
15917         * lily/midi-def.cc:
15918         * lily/misc.cc:
15919         * lily/note-collision.cc:
15920         * lily/note-column.cc:
15921         * lily/note-head.cc:
15922         * lily/paper-outputter.cc:
15923         * lily/percent-repeat-item.cc:
15924         * lily/rest-collision.cc:
15925         * lily/side-position-interface.cc:
15926         * lily/simple-spacer.cc:
15927         * lily/slur-configuration.cc:
15928         * lily/slur-scoring.cc:
15929         * lily/slur.cc:
15930         * lily/spaceable-grob.cc:
15931         * lily/spacing-spanner.cc:
15932         * lily/spanner.cc:
15933         * lily/staff-symbol-referencer.cc:
15934         * lily/stem.cc:
15935         * lily/stencil.cc:
15936         * lily/system-start-delimiter.cc:
15937         * lily/system.cc:
15938         * lily/text-item.cc:
15939         * lily/tie.cc:
15940         * lily/tuplet-bracket.cc:
15941         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15942         <cmath> beacause isinf/isnan is undefined in <cmath>
15943
15944 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15945
15946         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15947
15948 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15949
15950         * VERSION: release 2.5.3
15951         
15952 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15953
15954         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15955
15956 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15957
15958         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15959
15960         * lily/note-head.cc (internal_print): always try the "s" head if
15961         u/d not found.
15962
15963         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15964
15965 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15966
15967         * mf/parmesan-heads.mf (overdone_heads): typos.
15968
15969 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15970
15971         * lily/parser.yy (markup): in markups, { .. } without command
15972         before are also flattened, ie \line must be explicitely used.
15973
15974         * Documentation/user/changing-defaults.itely:
15975         * Documentation/user/notation.itely: 
15976         * input/wilhelmus.ly: 
15977         * input/regression/instrument-name-markup.ly: 
15978         * input/regression/markup-score.ly: 
15979         * input/regression/new-markup-scheme.ly: 
15980         * input/regression/new-markup-syntax.ly: 
15981         * input/test/coriolan-margin.ly: use \line in markups where
15982         appropriate
15983         
15984 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15985
15986         * scm/new-markup.scm (map-markup-command-list): helper function
15987         used in parser.yy to map markup commands on a markup list.
15988
15989         * lily/parser.yy: get rid off < > in markups by treating { } as
15990         real lists.
15991
15992         * lily/lexer.ll: remove < > from markup lexer mode.
15993
15994         * scripts/convert-ly.py (conv): add rule for converting 
15995         \markup < > to \markup { }
15996
15997         * ly/titling-init.ly: 
15998         * input/test/coriolan-margin.ly: 
15999         * input/regression/new-markup-syntax.ly: 
16000         * input/regression/new-markup-scheme.ly: 
16001         * input/regression/multi-measure-rest-text.ly: 
16002         * input/regression/markup-stack.ly: 
16003         * input/regression/markup-score.ly: 
16004         * input/regression/instrument-name-markup.ly: 
16005         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
16006         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
16007         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
16008         * input/wilhelmus.ly: 
16009         * Documentation/user/notation.itely: 
16010         * Documentation/user/music-glossary.tely: 
16011         * Documentation/user/changing-defaults.itely: change < > to { } in
16012         markups
16013
16014 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16015
16016         * lily/accidental-placement.cc (position_accidentals): shortcut if
16017         no accidentals to place.
16018
16019 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
16020
16021         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
16022         typo s/ly:dimension ?/ly:dimension?/
16023
16024         * input/regression/lily-in-scheme.ly: 
16025         * input/regression/music-function.ly: 
16026         * ly/spanners-init.ly (assertBeamSlope): 
16027         * scm/music-functions.scm (def-grace-function): add the paper
16028         argument to music function definitions.
16029
16030 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16031
16032         * lily/moment.cc (LY_DEFINE):
16033         ly:moment-main-{denominator,numberator}, new function.
16034
16035         * lily/score-engraver.cc (typeset_all): assign to column on basis
16036         of axis-group-parent-X setting.
16037
16038         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
16039         add_element() on basis of axis-group-parent-Y setting.
16040
16041         * lily/grob.cc: add axis-group-parent-{XY} properties.
16042
16043         * input/regression/spacing-stick-out.ly: new file.
16044
16045         * lily/simple-spacer.cc (add_columns): use binary search for
16046         setting column rods. Changes O(n^2) to O(n log(n)) for
16047         constructing spacing problem from columns.
16048         (add_columns): read allow-outside-line to make sure no texts stick
16049         out.
16050         (solve): Simple_spacer::is_active() only determines
16051         satisfies_constraints_ for non-ragged typesetting.
16052
16053         * lily/simultaneous-music.cc (to_relative_octave): only set
16054         old_relative_used if return pitch actually changed.
16055
16056         * scm/define-context-properties.scm
16057         (all-user-translation-properties): change to match implementation.
16058
16059         * python/lilylib.py: Replace re.match by re.search and adds "-c
16060         showpage" to the gs command line (Johannes Schindelin)
16061
16062         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
16063         before processing. Prevents crash when inf is in the extent.
16064
16065         * scm/define-markup-commands.scm (note-by-number): add "s" to
16066         "noteheads-" glyphname.
16067  
16068         * lily/parser.yy (Generic_prefix_music): supply parser argument to
16069         music function as well.
16070         
16071 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16072
16073         * VERSION: release 2.5.2
16074
16075         * Documentation/user/changing-defaults.itely (Creating titles):
16076         add breakbefore variable.
16077
16078         * lily/paper-book.cc (set_system_penalty): new function. Set
16079         penalty_ based on breakBefore setting
16080
16081         * lily/context-specced-music-iterator.cc (construct_children):
16082         interpret special context id $uniqueContextId 
16083
16084         * lily/context.cc (create_unique_context): new method. Move
16085         creation of unique (\new) contexts into interpreting phase. This
16086         makes
16087
16088           foo= \new Staff ..
16089           << \foo \foo >>
16090
16091         produce 2 staves.
16092         
16093
16094         * scm/define-music-properties.scm (all-music-properties): add
16095         quoted-voice-direction
16096
16097         * ly/music-functions-init.ly: killCues function.
16098
16099         * scm/music-functions.scm (cue-substitute): move creation of voice
16100         contexts further to the back. 
16101
16102 2004-11-25  Werner Lemberg  <wl@gnu.org>
16103
16104         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
16105         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
16106
16107 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
16108
16109         * buildscripts/guile-gnome.sh: Fixed typo.
16110
16111 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16112
16113         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
16114
16115         * scripts/abc2ly.py (dump_slyrics): add ord(). 
16116
16117         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
16118         to regular engraver. 
16119
16120 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16121
16122         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
16123
16124 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
16125
16126         * scm/define-markup-commands.scm (fill-line): Typo.
16127
16128         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
16129         and newer.
16130
16131 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
16132
16133         * ly/dynamic-scripts-init.ly: Fixed typo.
16134
16135 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16136
16137         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
16138         note-head, to have different attachment points for up and down.
16139
16140         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
16141
16142         * mf/feta-generic.mf (else): remove solfa.
16143
16144         * mf/feta-bolletjes.mf (tishape): remove unicode test.
16145
16146         * scm/define-context-properties.scm
16147         (all-user-translation-properties): add shapeNoteStyles property.
16148
16149         * lily/shape-note-heads-engraver.cc (process_music): new file.
16150
16151         * lily/event.cc (transpose): call Event::transpose() for
16152         transposing the tonic.
16153
16154 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
16155
16156         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
16157         Unicode/OpenType and AFM.
16158
16159         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
16160
16161 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16162
16163         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
16164
16165         * lily/context.cc (Context): unprotect key from ctor.
16166
16167         * scm/stencil.scm (stack-lines): return empty-stencil if argument
16168         is '()
16169         (stack-stencils): idem.
16170
16171         * Documentation/user/changing-defaults.itely (Creating titles):
16172         document new title layout options.
16173
16174         * lily/parser.yy (lilypond_header_body): copy previous
16175         $globalheader if present.
16176
16177         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
16178         ly:module-copy
16179         
16180         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
16181
16182         * scm/titling.scm: remove old titling functions
16183
16184         * lily/stencil.cc (translate): remove absolute dimension.
16185
16186         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
16187         via markup.
16188
16189         * scm/page-layout.scm (marked-up-headfoot): create header/footer
16190         field from user-supplied markup
16191
16192         * scm/define-markup-commands.scm (on-the-fly): new markup
16193         command. Enter SCM markup procedure directly in Scheme.
16194         (fromproperty): new markup command. Read markup from props argument.
16195
16196         * scm/titling.scm (marked-up-title): create title via
16197         user-specified markup. 
16198
16199         * scm/define-markup-commands.scm (column): remove empty stencils
16200         from column.
16201
16202         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
16203         not have side-effect of creating variable stub.
16204
16205         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
16206
16207 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
16208
16209         * scm/encoding.scm (coding-alist): 
16210         * scm/font.scm (add-ec-fonts):
16211         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
16212         Extended-TeX-Font-Encoding---Latin.
16213
16214         * lily/side-position-interface.cc (general_side_position): Add
16215         actual offset to error message (avoid constant error messages).
16216
16217         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
16218         block.
16219
16220         * lily/font-select.cc (select_encoded_font)
16221         (get_font_by_mag_step, get_font_by_design_size): 
16222         * lily/modified-font-metric.cc (Modified_font_metric): 
16223         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
16224
16225         * scm/encoding.scm (coding-alist): Add fetaDynamic.
16226         (read-encoding-file): Bugfix: do not require space after bracket.
16227
16228         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
16229         these do not exist.
16230
16231 2004-11-20  Graham Percival  <gperlist@shaw.ca>
16232
16233         * Documentation/user/notation.itely: added info about typesetting
16234         boxed bar numbers.
16235
16236 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16237
16238         * flower/interval.cc (T_to_string): gcc4 fixes.
16239
16240         * scm/define-markup-commands.scm (fill-line): use
16241         stack-stencils. This fixes problems with putting already centered
16242         stencils in a line.
16243
16244         * VERSION: release 2.5.1
16245
16246         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
16247
16248 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16249
16250         * input/example-[1-3].ly: simplify.
16251
16252         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
16253
16254         * scm/output-ps.scm (new-text): new function. Use glyphshow to
16255         show glyphs.
16256
16257         * scm/encoding.scm (decode-byte-string): new function.
16258
16259         * scripts/convert-ly.py (conv): add warning about
16260         set-global-staff-size.
16261
16262         * Doxyfile: add. 
16263
16264         * scripts/convert-ly.py (conv): add raggedlastbottom rule
16265         (conv): warn for TextSpanner split.
16266         (conv): warn for textheight.
16267
16268 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
16269
16270         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
16271         building the documentation, info with images are installed.
16272         (final-install): Fix description.  Mention sourcing of login
16273         scripts (instead of running).
16274
16275 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
16276
16277         * Debian lmodern support.  Note that LilyPond will issue warnings
16278         
16279             no such encoding: "FontSpecific"
16280
16281           The font selection mechanism wants to get the encoding from the
16282           font itself, but the idea of lmodern is that it is usable with
16283           different encodings, ie, Lily should get the encoding from the
16284           font tree, rather than the font itself.  This would require some
16285           more work.
16286         
16287         * configure.in: Test for and accept lmodern if EC fonts not found.
16288
16289         * scm/framework-tex.scm (font-load-command): TeX font name
16290         mangling for latin1 encoded cork-lm fonts.
16291         (convert-to-ps): Load lm.map if available.
16292
16293         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
16294         available.
16295
16296         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
16297
16298         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
16299         available.
16300
16301         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
16302         path for absolute file name, that is silly.
16303
16304         * lily/score-engraver.cc (initialize): 
16305
16306         * Documentation/user/GNUmakefile (local-install-info): Invoke
16307         install-info --remove first.
16308
16309         * #include cleanup (Andreas Scherer).
16310
16311 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
16312
16313         * input/test/script-abbreviations.ly: fix typos.
16314
16315 2004-11-17  Werner Lemberg  <wl@gnu.org>
16316
16317         * python/lilylib.py (options_help_str): Support pretty-printing of
16318         newlines in fourth element of option description.
16319
16320         * scripts/lilypond-book.py (option_definitions): Use new lilylib
16321         feature.
16322         Sort options.
16323
16324         * Documentation/user/lilypond-book.itely: Finish update.
16325
16326 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
16327
16328         * Documentation/user/macros.itexi: Add comment about \command.
16329
16330         * Documentation/user/lilypond.tely:
16331         * Documentation/user/lilypond-book.itely: Fix names of lilypond
16332         and lilypond-book nodes, so that `info lilypond' visits the manual
16333         at top level, and `info lilypond-book' visits the lilypond-book
16334         section.
16335
16336         * Documentation/user/GNUmakefile (local-install-info): Fix rules
16337         and packager messages.
16338
16339         * lily/pangofc-afm-decoder.cc: Update test.
16340
16341 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
16342
16343         * scm/lily-library.scm (char->unicode-index): New function.
16344
16345         * scm/output-gnome.scm: 
16346         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
16347
16348         * Proper naming of file name throughout; s/filename/file[-_]name/.
16349
16350         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
16351
16352         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
16353
16354 2004-11-16  Werner Lemberg  <wl@gnu.org>
16355
16356         * scripts/lilypond-book.py: The Lord has commanded me to use only
16357         tabs for indentation.  Your humble servant obeys.
16358
16359 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
16360
16361         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
16362         including font, if LilyPond-feta font is only feta font in path.
16363
16364         * scm/output-gnome.scm (text): Revert to file name of font if font
16365         has no name.  Fixes ec font selection.
16366         (char): Bugfix: do not utf8 twice.  Fixes clefs.
16367
16368         * scm/framework-svg.scm:
16369         * scm/output-svg.scm: New file.  TODO: figure out how to
16370         do character by index in font.
16371
16372         * scm/output-sodipodi.scm: Remove.
16373
16374         * scm/output-ps.scm (stem): Remove.
16375
16376 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
16377
16378         * scm/output-gnome.scm (beam): New function.
16379         (slur): Round corners.
16380         (round-filled-box): Round corners.
16381
16382 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16383
16384         * scm/output-gnome.scm (beam): add function.
16385         (draw-line): new routine.
16386         (dashed-line): stub; call draw-line
16387         (polygon): new routine.
16388
16389 2004-11-15  Werner Lemberg  <wl@gnu.org>
16390
16391         * Documentation/user/lilypond-book.itely: Revise section on
16392         lilypond-book options.
16393         Other minor fixes.
16394
16395         * scripts/lilypond-book.py: Change indentation to 4.
16396         Minor formatting.
16397
16398 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16399
16400         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
16401         grobs that have tweaks specced.
16402         
16403 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
16404
16405         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
16406
16407 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
16408
16409         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
16410         actual char #, not 0 based index.
16411
16412         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
16413
16414         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
16415         Warning: do make -C mf clean.
16416
16417         * lily/context-property.cc: Compile fix.
16418
16419         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
16420         Grok ec-fonts, braces and dynamics.
16421
16422         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
16423
16424 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16425
16426         * lily/include/tweak-registration.hh: new file.
16427
16428         * lily/tweak-registration.cc: new file.
16429
16430         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
16431         saving tweaks.
16432
16433         * scm/output-gnome.scm (text): comment dribble.
16434
16435 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
16436
16437         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
16438
16439         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
16440         path-def before using.  Fixes muchtomany slurs in wrong places
16441         bug.
16442
16443 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16444
16445         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
16446
16447         * lily/include/object-key-undumper.hh (Module): new file.
16448
16449         * lily/object-key-undumper.cc (Module): New file. Deserialize
16450         keys. SCM bindings
16451
16452         * lily/object-key-dumper.cc (Object_key_dumper): idem.
16453         Provide SCM bindings.
16454
16455         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
16456         new file. Serialize object keys.
16457         
16458         * lily/object-key.cc (dump): new function.
16459         (as_scheme): new virtual function
16460         (undump): new function
16461         (undumpers): new table.
16462
16463         * lily/include/global-context.hh (Context): take \score key upon init.
16464
16465         * lily/object-key-dumper.cc (serialize_key): new file.
16466
16467         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
16468
16469         * lily/lily-lexer.cc: remove \quote.
16470
16471         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
16472
16473         * lily/context.cc (Context): take key argument in ctor.
16474         (create_context): new function
16475
16476         * lily/grob.cc (Grob): take key argument in ctor.  
16477
16478         * lily/lilypond-key.cc (do_compare): new file.
16479
16480         * lily/object-key.cc (Object_key): new file.
16481
16482         * lily/include/object-key.hh (class Object_key): new file.
16483
16484         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
16485
16486 2004-11-13  Graham Percival  <gperlist@shaw.ca>
16487
16488         * Documentation/user/lilypond-book.itely: add small warning about
16489         noindent default in lilypond-book.
16490
16491         * Documentation/user/converters.itely: add examples for convert-ly.
16492
16493         * Documentation/user/examples.itely: change version string in templates
16494         to 2.4.0.
16495
16496 2004-11-12  Karl Hammar  <karl@aspodata.se>
16497
16498         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
16499         cmdline, use xargs instead (backportme)
16500
16501 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
16502         
16503         * Documentation/user/: Numerous fixes in the user manual.
16504
16505 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16506
16507         * lily/parser.yy (re_rhythmed_music): search music expression for
16508         context-id, surround by \new Voice if not found. Fixes:
16509         addlyrics-second-staff.ly
16510
16511         * VERSION: 2.5.0 released.
16512         
16513 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
16514
16515         * Documentation/index.html.in: Fix url to one big page.  (backportme)
16516
16517         * Documentation/user/GNUmakefile: Separate rules for split and
16518         unsplit html documents.  Remove perl massaging.  (backportme)
16519
16520 2004-11-11  Graham Percival  <gperlist@shaw.ca>
16521
16522         * Documentation/user/lilypond-book.itely: add short warning about
16523         \lilypond{} in LaTeX docs.
16524
16525 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
16526
16527         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
16528         found.  (backportme)
16529
16530         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
16531         version requirement.  (backportme)
16532
16533         * configure.in: Be explicit about old versions of
16534         ec-fonts-mtraced.  (backportme)
16535
16536         * lily/context-selector.cc (set_tweaks): New function.
16537         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
16538         web with -DTWEAK.
16539
16540         * Documentation/user/introduction.itely (Automated engraving):
16541         Remove fragment option.  Fixes web.
16542
16543         * lily/context-property.cc (make_item_from_properties):
16544         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
16545         #ifdef.
16546
16547         * scm/define-context-properties.scm
16548         (all-internal-translation-properties): Add tweakRank and tweakCount.
16549
16550         * lily/grob.cc: 
16551         * scm/define-grob-properties.scm (all-internal-grob-properties):
16552         Add tweak-rank and tweak-count.
16553
16554 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16555
16556         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
16557         New function.
16558         (text): Use them.
16559
16560         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
16561         animated/opaque grob dragging tweaks.
16562
16563         * buildscripts/guile-gnome.sh: Update.
16564
16565 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
16566
16567         * scm/define-grobs.scm (all-grob-descriptions): Added
16568         line-interface to the LigatureBracket object.
16569
16570 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16571
16572         * scm/framework-gnome.scm (item-event): Support non-animated mouse
16573         dragging tweaks.
16574
16575         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
16576
16577         * lily/context-selector.cc (store_context): New function.
16578
16579         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
16580         (store_grob): New function.
16581         (identify_grob): Add Moment parameter.
16582
16583         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
16584         exists.
16585
16586         * scm/framework-gnome.scm (save-tweaks): Write as alist.
16587
16588 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
16589
16590         * scm/framework-gnome.scm (item-event): Print grob id.
16591         (save-tweaks): New function.
16592         (tweak): New funtion.
16593         (item-event): Use it, bound to arrow keys.
16594
16595         * lily/context-property.cc (make_item_from_properties): Register grob.
16596         * lily/context.cc (add_context): Register context.
16597
16598         * lily/include/context-selector.hh:
16599         * lily/include/grob-selector.hh:
16600         * lily/context-selector.cc:
16601         * lily/grob-selector.cc: New file.
16602
16603 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16604
16605         * lily/slur.cc: add 'positions to interface
16606
16607         * lily/main.cc: reinstate PS as standard output format. 
16608
16609         * scm/framework-tex.scm (output-preview-framework): print systems
16610         up to first non title system.
16611
16612         * lily/grace-engraver.cc (start_translation_timestep): split
16613         scm_cadddr
16614         
16615 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16616
16617         * lily/quote-iterator.cc (Module): remove old quote-iterator
16618
16619         * scm/define-music-types.scm (music-descriptions): move
16620         NewQuoteMusic over QuoteMusic
16621
16622         * Documentation/user/notation.itely (Formatting cue notes): use
16623         \cueDuring.
16624
16625         * lily/new-quote-iterator.cc (quote_ok): new function.
16626
16627         * input/regression/quote-cue-during.ly: new file.
16628
16629         * input/regression/quote-grace.ly: new file.
16630
16631         * scm/define-context-properties.scm (Module): change definition of
16632         graceSettings
16633
16634         * lily/context-property.cc (Module): rename from
16635         translator-property.cc
16636
16637         * lily/context.cc (context_name_symbol): new function
16638
16639         * lily/grace-engraver.cc: new file. Set properties for grobs based
16640         on the grace-ness of now_moment().
16641
16642         * scm/music-functions.scm (add-grace-property): use list
16643         iso. vector for graceSettings
16644         remove set-{start,stop}-grace-properties. 
16645
16646         * lily/new-quote-iterator.cc (construct_children): set
16647         quote_outlet_ if no quoted-context-{id,type} specified.
16648
16649         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
16650
16651         * lily/parser.yy (command_element): remove \quote.
16652
16653         * ly/music-functions-init.ly (location): add quoteDuring music
16654         function. 
16655
16656         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
16657         optional semicolon. (backportme)
16658
16659 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16660
16661         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16662         need to link to GUILE et al.
16663
16664 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16665
16666         * scm/define-music-properties.scm (all-music-properties): add
16667         quoted-context-type, quoted-context-id.
16668
16669         * scm/lily.scm (type-check-list): new function.
16670         
16671         * scm/lily-library.scm: new file. Generic library routines.
16672
16673         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16674         parser.
16675
16676         * ly/music-functions-init.ly: add quoteDuring function.
16677
16678         * lily/include/music-iterator.hh (class Music_iterator): rename
16679         set_translator -> set_context
16680
16681         * lily/parser.yy (Generic_prefix_music_scm): add
16682         MUSIC_FUNCTION_SCM_SCM_MUSIC
16683
16684         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16685
16686         * scm/framework-tex.scm (header): sanitize TeX paper size.
16687         (backportme)
16688
16689 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16690
16691         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16692
16693         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16694
16695         * scm/framework-tex.scm (font-load-command): Use T1 if no
16696         font-encoding set.  (backportme)
16697
16698         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16699         exists before converting.  (backportme)
16700
16701         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16702         exists before converting.  (backportme)
16703         (convert-to-ps): Remove .ps file if it exists before
16704         converting.  (backportme)
16705
16706         * lily/lexer.ll: Remove extra progress newline, use present tense.
16707
16708         * scm/paper.scm (paper-alist): public.
16709         * scm/framework-tex.scm (convert-to-ps):
16710         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16711         command line.
16712
16713 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16714
16715         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16716
16717         * lily/recording-group-engraver.cc (derived_mark): mark
16718         now_events_. (backportme)
16719
16720 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16721
16722         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16723
16724         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16725         invoking latex. (backportme.)
16726
16727         * lily/stem.cc (off_callback): center stems for all rest stems.
16728
16729 2004-11-05  Werner Lemberg  <wl@gnu.org>
16730
16731         * Documentation/user/lilypond.tely: Add more guidelines for writing
16732         lilypond texinfo documents.
16733
16734 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16735
16736         * Documentation/index.html.in: remove <hr>.
16737
16738         * THANKS: change 2.3 to 2.4.
16739
16740 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16741
16742         * scm/output-gnome.scm: More fontconfig comment.
16743
16744 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16745
16746         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16747         <package> directory in $(builddir)/share according with
16748         PACKAGE_NAME defined in the VERSION file.
16749
16750 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16751
16752         * lily/beam.cc (rest_collision_callback): use local beam
16753         multiplicity.
16754
16755         * input/regression/stem-stemlet.ly: new file.
16756
16757         * lily/stem.cc (add_head): store rests as well.
16758
16759         * scm/define-grob-properties.scm (all-user-grob-properties): add
16760         stemlet-length
16761
16762         * lily/stem.cc: store rests as well.
16763         
16764         * input/regression/new-slur.ly: mention forcing.
16765
16766 2004-11-04  Werner Lemberg  <wl@gnu.org>
16767
16768         * Documentation/user/*: A new round of layout fixes and document
16769         structure cleanup.
16770
16771 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16772
16773         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16774
16775 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16776
16777         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16778
16779 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16780
16781         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16782
16783         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16784
16785         * lily/main.cc (main): Invoke identify.
16786
16787         * scm/lily.scm (postscript->pdf): Remove progress newline.
16788         Write progress to stderr.
16789
16790         * lily/paper-book.cc (output): Remove progress newline.
16791
16792         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16793         gettext on user messages, and remove whitespace.
16794
16795         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16796
16797         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16798         argv[0] (Thomas Scharkowski).
16799
16800         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16801         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16802         for ec-fonts-mtraced.
16803
16804         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16805         --srcdir build (Bertalan).
16806
16807         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16808         headers and library too (Laura Conrad).
16809
16810         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16811         package for guile too (Laura Conrad).
16812
16813         * lily/main.cc (usage): Typo.
16814
16815 2004-11-02  Werner Lemberg  <wl@gnu.org>
16816
16817         * Documentation/user/notation.ly: More fixes to improve appearance.
16818
16819         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16820         better output for multicolumn tables.
16821
16822 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16823
16824         * lily/main.cc (dir_info): Fixed typo in the printouts.
16825
16826 2004-11-01  Werner Lemberg  <wl@gnu.org>
16827
16828         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16829         of output.
16830         Set `per_line' to 2; replace hard-coded value with it.
16831
16832         * Documentation/user/*: Many fixes to improve appearance of
16833         printed manual.
16834
16835 2004-11-01  Werner Lemberg  <wl@gnu.org>
16836
16837         * Documentation/user/changing-defaults.itely,
16838         Documentation/user/notation.ly,
16839         Documentation/user/programming-interface.itely: Use @/.
16840         Fix formatting of some lilypond snippets and tables.
16841
16842         * scripts/lilypond-book.py (compose_ly): Provide useful default
16843         for LINEWIDTH in `override'.
16844
16845 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16846
16847         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16848
16849 2004-10-31  Werner Lemberg  <wl@gnu.org>
16850
16851         Resetting @exampleindent to `5' gives ugly results with texinfo's
16852         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16853         (if not quoting) to change @exampleindent only locally.
16854
16855         * scripts/lilypond-book.py (NOQUOTE): New variable.
16856         (output) [LATEX]: Remove AFTER and BEFORE.
16857         [TEXINFO]: Remove AFTER and BEFORE.
16858         Fix QUOTE and VERBATIM pattern.
16859         Add NOQUOTE pattern.
16860         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16861         and BEFORE.
16862         [output_texinfo]: Use NOQUOTE.
16863
16864 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16865
16866         * Documentation/user/changing-defaults.itely: clarify paper
16867         size commands with correct info.
16868
16869         * Documentation/user/lilypond-book.itely: add more docs for
16870         filename extensions.
16871
16872 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16873
16874         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16875         (PATCH_LEVEL): start 2.5.0.
16876
16877 #Local variables:
16878 #coding: utf-8
16879 #End:
16880