]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
update.
[lilypond.git] / ChangeLog
1 2006-10-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * po/lilypond.pot: update.
4
5         * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
6
7         * Documentation/user/global.itely (File structure): remove
8         \addqoute remark.
9
10         * lily/parser.yy (FIXME): remove ADDQUOTE
11
12         * Documentation/user/global.itely (Extracting fragments of
13         notation): new node, about clip systems.
14
15         * Documentation/user/lilypond-book.itely (Many quotes of a large
16         score): ref to clip systems.
17
18         * Documentation/user/instrument-notation.itely (Entering lyrics):
19         add note about lyric ties and required font.
20
21         * lily/open-type-font.cc (glyph_list): format errors.
22
23         * Documentation/user/programming-interface.itely (Scheme
24         procedures as properties): more doco on simple-closure and scheme
25         callbacks.
26         (Input variables and Scheme): use lilypond[verbatim], document
27         dummy statement.
28
29         * Documentation/user/page.itely (Displaying spacing): use \book
30         explicitly, so arrows show .
31         (Line breaking): add note about Forbid_line_break_engraver
32
33         * Documentation/user/tweaks.itely (Common tweaks): also set length
34         to prevent tie squeezing. 
35         (Default files): use @var{}
36
37         * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
38         (Generating LilyPond files): add FOMUS.
39
40 2006-10-20  Joe Neeman  <joeneeman@gmail.com>
41
42         * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
43         Y-offset for TextScript and Script
44
45         * lily/text-engraver.cc (make_item): 
46         * lily/script-engraver.cc (make_script_from_event):
47         remove call to Side_position_interface::set_axis since all scripts
48         now have this set by default
49
50         * lily/context.cc: 
51         * lily/prob.cc: use variables
52
53 2006-10-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
54
55         * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
56         at typography, rather analyse stream event duration. 
57
58         * Documentation/user/page.itely (Page formatting): set a6 paper
59         for system separator example.
60         
61         * lily/arpeggio.cc (Module): idem.
62
63         * lily/accidental-placement.cc: add script-priority property.
64
65         * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
66
67         * lily/ttf.cc (print_trailer): if all else fails: use
68         glyphIndexXXXX as glyph name. Fixes #117.
69
70         * lily/pango-font.cc (pango_item_string_stencil): only use cmap
71         entry if cmap contains glyph.
72         (get_index_to_charcode_map): remove from Pango_font class, use
73         global filename -> font mapping.
74         (get_glyph_index_name): new function.
75         (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
76         only for TTF. 
77
78         * scripts/lilypond-book.py (main): use -deps-box-padding=-3
79
80         * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
81         a number.
82
83         * scm/define-grob-properties.scm (all-user-grob-properties):
84         remove outdated doc. Fixes #116
85
86         * lily/completion-note-heads-engraver.cc (process_music): always
87         clone input events; otherwise we may overwrite input 'duration
88         property. Fixes #115.
89
90         * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
91         scm_t_int32 != int
92
93         * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
94         anchor. Fixes #114
95
96         * VERSION (PATCH_LEVEL): bump version.
97
98 2006-10-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
99
100         * lily/engraver.cc (internal_make_grob): use variables.
101
102         * flower/string-convert.cc (dec2double): clean-up warnings. 
103
104         * configure.in (CXXFLAGS): add -Werror.
105
106         * VERSION (PACKAGE_NAME): release 2.9.25
107
108 2006-10-18  Joe Neeman  <joeneeman@gmail.com>
109
110         * lily/simple-spacer.cc (get_line_forces): test for non-fitting
111         line even if we precede a forced break.
112
113         * lily/optimal-page-breaking.cc (try_page_spacing): square line
114         forces too. Make page-spacing weight default to 10 because the
115         changes to vertical springs decreased the page force/line force
116         proportions. Also, take the average of line force and page force
117         instead of just the sum.
118
119         * lily/constrained-breaking.cc (initialize): make the stiffness
120         of the vertical springs depend on the height of the system. This
121         prevents pages with only a few large systems from getting huge
122         forces
123
124         * Documentation/user/page.itely (Page formatting): document the
125         change in default page-spacing-weight
126
127         * lily/include/constrained-breaking.hh: initialise bottom_padding_
128
129 2006-10-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
130
131         * input/typography-demo.ly (melody): remove superfluous slur.
132
133         * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
134         add piano-pedal-script-interface
135
136 2006-10-18  Bertalan Fodor  <lilypondtool@organum.hu>
137
138         * scripts/lilypond-book.py: DocBook support.
139
140 2006-10-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
141
142         * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
143         Y-alignment code.
144         (stop_translation_timestep): set bound to currentMusicalColumn if
145         not set yet. Fixes #102
146
147         * lily/piano-pedal-bracket.cc: formatting.
148
149         * input/test/engraver-one-by-one.ly (MyStaff): reformat.
150
151         * lily/piano-pedal-align-engraver.cc: new class
152         Piano_pedal_align_engraver. Handle side-positioning Y-alignment
153         for piano pedals.  
154
155 2006-10-18  Heikki Junes  <hjunes@gmail.com>
156
157         * po/fi.po: Update Finnish translation (before the next release).
158
159 2006-10-17  Joe Neeman  <joeneeman@gmail.com>
160
161         * lily/system.cc (get_paper_system): reinstate the backwards-
162         compatible page breaking for the old page breaker.
163
164 2006-10-17  Erik Sandberg  <mandolaerik@gmail.com>
165         
166         * lily/recording-group-engraver.cc: removed
167
168         * lily/context.cc, lily/translator-group.cc: Don't touch
169         Context::implementation_ if it's null
170
171 2006-10-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
172
173         * scm/paper.scm: only use left-margin if defined.
174
175         * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
176
177         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
178
179         * lily/new-fingering-engraver.cc: stringFingerOrientations ->
180         strokeFingerOrientations
181
182         * lily/script-column.cc (row_before_line_breaking): also handle
183         accidentals and arpeggios in horizontal script stacking.
184
185         * lily/script-row-engraver.cc (acknowledge_accidental_placement):
186         new function.
187
188         * input/regression/script-stack-horizontal.ly: trim.
189
190 2006-10-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
191
192         * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
193         'text property too.
194
195         * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
196         'text if string argument.
197
198         * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
199
200         * scm/define-context-properties.scm
201         (all-user-translation-properties): change to strokeFingerOrientations
202
203 2006-10-16  Erik Sandberg  <mandolaerik@gmail.com>
204
205         * lily/parser.yy: remove debug output
206
207 2006-10-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
208
209         * ly/paper-defaults.ly: set left/right margin.
210
211         * scm/paper.scm (set-paper-dimensions): use left-margin and
212         right-margin for computing linewidth.
213
214         * Documentation/topdocs/NEWS.tely (Top): idem.
215
216         * input/regression/lyric-tie.ly (texidoc): use vowels for tied
217         lyrics example.
218
219         * scm/define-markup-commands.scm (tied-lyric): increase negative
220         space: space syllables tighter.
221
222         * VERSION (PATCH_LEVEL): bump version.
223
224         * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
225         Ax paper sizes. 
226
227 2006-10-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
228
229         * COPYING: further clarification
230
231         * VERSION: release 2.9.24
232
233         * input/regression/script-stack-horizontal.ly: add version.
234
235         * scm/lily-library.scm (list-join): use fold-right. Fixes #112
236
237         * input/regression/lyric-tie.ly (texidoc): use different words.
238
239         * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
240
241 2006-10-15  Erik Sandberg  <mandolaerik@gmail.com>
242
243         * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
244         macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
245         
246 2006-10-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
247
248         * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4; 
249
250         * Doxyfile: remove file.
251
252         * scm/define-grob-interfaces.scm (string-finger-interface): add
253         string-finger-interface
254
255         * lily/general-scheme.cc (LY_DEFINE): move
256         ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[] 
257
258         * Documentation/topdocs/NEWS.tely (Top): add note for
259         string-finger feature.
260
261         * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
262         property.
263
264         * scm/output-lib.scm (string-finger::calc-text): read 'digit
265         instead of 'text
266
267         * input/regression/script-stack-horizontal.ly: new file.
268
269         * ly/engraver-init.ly: add Script_row_engraver.
270
271         * lily/script-column.cc (order_grobs): refactor: separate axis
272         independent code.
273         (row_before_line_breaking): new function.
274
275         * lily/script-row-engraver.cc (Script_row_engraver): new file.
276
277         * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
278
279 2006-10-14  Jürgen Reuter  <reuter@ipd.uka.de>
280
281         * Documentation/user/instrument-notation.itely: Cleanup: Remove
282         annoying skip notes from mensural ligature example.  Update
283         @refbugs for ligatures and mensural ligatures.
284
285         * lily/coherent-ligature-engraver.cc,
286         lily/include/coherent-ligature-engraver.hh,
287         lily/mensural-ligature-engraver.cc,
288         lily/vaticana-ligature-engraver.cc: Revise code for item
289         reparentizing.  There should now be less programming_error
290         messages.
291
292         * lily/mensural-ligature-engraver.cc: Improve placement of dots.
293
294         * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
295         Maintenance bugfix: Don't create empty Stencil (), but empty box
296         instead.  This fix should eliminate some programming_error
297         messages.
298
299         * ly/engraver-init.ly (MensuralStaff): Set default accidental
300         style.
301
302         * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
303         \layout block _before_ score.
304
305 2006-10-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
306
307         * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
308
309         * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
310
311 2006-10-13  Erlend Aasland  <erlenda@gmail.com>
312
313         * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
314
315 2006-10-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
316
317         * VERSION (PATCH_LEVEL): bump version.
318
319         * COPYING: clarify exception note.
320
321         * lily/main.cc: remove remark about "COPYING".
322
323         * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
324         system-count starts at 0 for each clip-region. Change name to
325         FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
326         layout block, per score.
327
328 2006-10-13  Erik Sandberg  <mandolaerik@gmail.com>
329
330         * lily/input-smob.cc: add equal_p for Input
331
332         * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
333         function
334
335         * lily/parser.yy: MY_MAKE_MUSIC sets music origin
336
337         * lily/prob.cc: Add equal_p predicate for Prob
338
339         * lily/translator.cc: small cleanup
340
341         * scm/document-music.cc: use data from translator listener
342         registration to generate documentation for event classes
343
344         * lily/*: Eliminate accept arg of ADD_TRANSLATOR
345         
346         * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
347         
348 2006-10-13  Jan Nieuwenhuizen  <janneke@gnu.org>
349
350         * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
351
352 2006-10-12  Jan Nieuwenhuizen  <janneke@gnu.org>
353
354         * Documentation/topdocs/INSTALL.texi: Thinko.
355
356         * .cvsignore: Update.
357
358         * lexer-gcc-3.1.sh: Remove.
359
360         * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
361         Update anonymous cvs access.  Remove comment about gcc 3.0.4.
362
363 2006-10-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
364
365         * VERSION: release 2.9.23
366
367         * lily/paper-column-engraver.cc (stop_translation_timestep): also
368         typecheck barnumber.
369
370         * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
371
372         * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
373
374         * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
375
376         * input/regression/clip-systems.ly (Notes): new file. 
377
378         * scm/lily.scm (define-scheme-options): add clip-systems option.
379
380         * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
381         function
382         (dump-stencil-as-EPS): move bbox calculation from previous
383         dump-stencil-as-EPS
384         (output-framework): use -dclip-systems 
385
386         * scm/lily-library.scm (filtered-map): new function
387
388         * scm/framework-ps.scm (clip-system-EPS): new function.
389         (clip-system-EPSes): new function.
390
391         * lily/paper-column.cc: add rhythmic-location to interface
392
393         * scm/define-grob-properties.scm (all-user-grob-properties): add
394         rhythmic-location property.
395
396         * scm/clip-region.scm: new file: rhythmic-location data type and
397         system-clipped-x-extent function.
398
399         * ly/init.ly: use (scm clip-region)
400
401         * lily/paper-column-engraver.cc (stop_translation_timestep): set
402         rhythmic-location for paper column grobs.
403
404         * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
405
406 2006-10-12  Jürgen Reuter  <reuter@ipd.uka.de>
407
408         * ly/engraver-init.ly: Remove obsolete comment on
409         Bar_number_engraver.
410
411         * Documentation/user/instrument-notation.itely: Tune Ancient
412         Articulations figure, such that the episem actually shows.
413
414         * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
415         fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
416
417         * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
418         cleanup.
419
420 2006-10-12  Graham Percival  <gpermus@gmail.com>
421
422         * Documentation/user/ {some}: minor edits that were lost somehow.
423
424 2006-10-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
425
426         * VERSION (PACKAGE_NAME): bump version.
427
428         * input/regression/lyric-tie.ly (texidoc): new file.
429
430         * Documentation/topdocs/NEWS.tely (Top): add new feature.
431
432         * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
433
434         * scm/define-markup-commands.scm (tied-lyric): new function: split
435         string along ~ and reattach with U+203F (tie character) and
436         negative space.
437
438         * scm/output-lib.scm (lyric-text::calc-text): new function.
439
440         * lily/lyric-engraver.cc (process_music): don't set 'text.
441
442         * scm/output-lib.scm (string-finger::calc-text): new function
443         (lyric-text::print): new function.
444
445         * lily/new-fingering-engraver.cc (add_fingering): refactor; make
446         generic for fingering & string number. Use for string-finger. 
447
448         * scm/define-music-types.scm (music-descriptions): add
449         StringFingerEvent
450
451         * lily/fingering-engraver.cc (listen_string_finger): new function
452
453         * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
454
455         * scm/define-context-properties.scm
456         (all-user-translation-properties): add stringFingerOrientations
457
458 2006-10-11  Jürgen Reuter  <reuter@ipd.uka.de>
459
460         * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
461         ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
462
463         * lily/dots.cc: Added style property for dots.
464
465         * mf/parmesan-heads.mf: Fix typo in comment.
466
467         * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
468         adding longa head to feta font and removing obsolete default
469         mapping scheme code.
470
471 2006-10-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
472
473         * scm/output-lib.scm (fingering::calc-text): use origin
474         event-property, not music-property.
475
476         * lily/lilypond.rc.in: spell my name correctly.
477
478 2006-10-10  Joe Neeman  <joeneeman@gmail.com>
479
480         * lily/grob.cc (pure_height): only add minimum-Y-extent if we
481         already have a non-empty extent. Fixes estimation for Hara-kiri
482         staves.
483
484 2006-10-09  Jürgen Reuter  <reuter@ipd.uka.de>
485
486         * ly/gregorian-init.ly: Simplify definition of \episemInitium and
487         \episemFinis.
488
489         * lily/ligature-engraver.cc: Remove unused #include.
490
491         * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
492         Bugfix: remove method check_for_prefix_loss(Item *) from global
493         namespace to avoid namespace pollution.
494
495 2006-10-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
496
497         * VERSION: release 2.9.22
498
499         * ly/generate-documentation.ly: update option name.
500
501         * lily/dynamic-text-spanner.cc (print): revert fix.
502
503         * scm/define-grob-interfaces.scm
504         (trill-pitch-accidental-interface):
505         add trill-pitch-accidental-interface
506
507         * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
508         dereference if it's really a duration.
509
510         * lily/figured-bass-engraver.cc (process_music): clear spanner if
511         useBassFigureExtenders is not set.
512         (listen_bass_figure): record as new event if
513         useBassFigureExtenders not set. Fixes #103.
514
515         * scm/stencil.scm (circle-stencil): don't center stencil argument,
516         instead: move circle. Fixes #107.
517
518         * scm/define-grobs.scm (all-grob-descriptions): set
519         allow-loose-spacing for PaperColumn and
520         NonMusicalPaperColumn. Kludge for #110.
521
522         * lily/spaceable-grob.cc: add allow-loose-spacing property.
523
524         * lily/spacing-determine-loose-columns.cc (is_loose_column):
525         allow-loose-spacing property.
526
527         * scm/define-markup-commands.scm (postscript): gsave & grestore
528         around embedded PS. Do setlinewidth too. Fixes  #109.
529
530 2006-10-08  Jürgen Reuter  <reuter@ipd.uka.de>
531
532         * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
533         code.  This patch fixes ligature brackets that were not at all
534         engraved any more.
535
536 2006-10-08  Graham Percival  <gpermus@gmail.com>
537
538         * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
539
540         * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
541
542         * scm/define-context-properties.scm: clarified docs (bug 91).
543
544         * Documentation/user/basic-notation.itely: document volta brackets
545         not aligning (bug 63).
546
547         * Documentation/user/ global.itely invoking.itely: ignore or
548         add warnings about texstr.
549
550 2006-10-08  John Mandereau  <john.mandereau@free.fr>
551
552         * po/fr.po: update translation.
553
554         * po/: update msgids.
555
556 2006-10-08  Jan Nieuwenhuizen  <janneke@gnu.org>
557
558         * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
559
560 2006-10-08  Nicolas Sceaux  <nicolas.sceaux@free.fr>
561
562         * Documentation/user/page.itely (Two-pass vertical spacing): add
563         documentation for two-pass spacing technique.
564
565 2006-10-06  Graham Percival  <gpermus@gmail.com>
566
567         * Documentation/user/convert-ly.txt: new file; new
568         storage place for this file (moved from bugs/ CVS).
569
570 2006-10-06  Jürgen Reuter  <reuter@ipd.uka.de>
571
572         * lily/note-head.cc: Fixed programming_error message.
573
574 2006-10-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
575
576         * scm/define-grobs.scm (pure-conversion): move pure-callback
577         further into body.
578
579         * scm/script.scm (default-script-alist): set avoid-slur for turn,
580         marcato, stopped, thumb.
581
582 2006-10-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
583
584         * lily/completion-note-heads-engraver.cc (process_music): don't
585         skimp on memory usage.
586
587         * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
588         stems too. Fixes #5
589
590         * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
591         parenthesis item. This fixes premature Y-extent triggering. Fixes
592         issue #95. 
593  
594         * VERSION (PATCH_LEVEL): bump version.
595
596 2006-10-04  Graham Percival  <gpermus@gmail.com>
597
598         * Documentation/user/advanced-notation.itely: added
599         info about instrument names for piano or other contexts,
600         thanks Marcus!
601
602 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
603
604         * mf/feta-bolletjes.mf (solfa_quarter_width): use
605         solfa_base_notewidth as unit for non-DO-notes too.
606
607         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
608
609         * VERSION: release 2.9.21
610
611         * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
612         override.
613
614 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
615
616         * python/lilylib.py (progress): Minor fix.
617
618 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
619
620         * lily/note-name-engraver.cc: doc engraver.
621
622         * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
623
624         * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
625
626         * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
627         by callback.
628
629         * lily/stem-engraver.cc (make_stem): don't set duration-log
630
631         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
632         write snippet-names binary.
633
634         * python/lilylib.py (system): use os.system for mingw32
635
636         * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
637         to $PATH.
638
639         * scm/backend-library.scm: update email address.
640
641         * Documentation/topdocs/NEWS.tely (Top): add duration-log override
642         example.
643
644         * scm/define-grobs.scm (all-grob-descriptions): use callback to
645         calc dot count.
646
647         * lily/dots-engraver.cc (class Dots_engraver): new engraver:
648         handle dot creation separately.
649
650         * lily/tab-note-heads-engraver.cc (process_music): idem.
651
652         * lily/drum-note-engraver.cc (process_music): idem.
653
654         * lily/note-heads-engraver.cc (process_music): idem.
655
656         * lily/rest-engraver.cc: don't set duration-log.
657
658         * scm/output-lib.scm (string-number::calc-text): new function.
659         (note-head::calc-duration-log): new function.
660
661         * lily/fingering-engraver.cc (make_script): remove 'text setting.
662
663         * scm/output-lib.scm (fingering::calc-text): new function.
664
665 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
666
667         * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
668          and include-eps-font -> include-eps-fonts
669
670 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
671
672         * lily/multi-measure-rest-engraver.cc: use internalBarNumber
673
674         * lily/timing-translator.cc: list properties.
675         (start_translation_timestep): update internalBarNumber too.
676
677         * scm/define-context-properties.scm
678         (all-user-translation-properties): add internalBarNumber.
679
680         * input/regression/spacing-no-note.ly: new file.
681
682         * buildscripts/output-distance.py (link_file): verbosity for OSError.
683
684         * lily/book.cc: #include cleanup.
685
686         * lily/include/lily-guile-macros.hh: add assert to
687         scm_or_str2symbol(SCM).
688
689         * VERSION (PATCH_LEVEL): bump version.
690
691         * lily/spacing-spanner.cc (musical_column_spacing): handle
692         musical->nonmusical spacing case, where there is no spacing
693         wish. Fixes issue #61.
694
695         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
696         (pango_item_string_stencil): use logical rect horizontally (to
697         preserve spaces), ink_rect vertically (for time signatures).
698
699         * lily/font-metric.cc (word_stencil): new interface function
700
701         * input/regression/utf-8-mixed-text.ly: new file.
702
703         * lily/percent-repeat-engraver.cc (listen_percent): remove
704         spurious warning.
705
706         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
707         non-dynamic scripts. Fixes #30.
708
709         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
710
711         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
712
713         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
714         SCM_UNDEFINED for non-existent data.
715
716         * lily/side-position-interface.cc (general_side_position): allow
717         optional current_offset argument for chaining, so combinations of side-position
718         and outside slur callback don't add up.  Fixes issue #92.
719
720         * lily/pango-font.cc (pango_item_string_stencil): use
721         logical_rect. This prevents spaces after words from disappearing,
722         issue #72.
723         
724         * VERSION: release 2.9.20
725
726 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
727
728         * scm/define-grob-properties.scm (all-user-grob-properties):
729         mention stencil as user settable.
730
731 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
732
733         * Documentation/user/page.itely (Page formatting): 
734         document auto-first-page-number
735
736         * lily/page-breaking.cc (find_chunks_and_breaks): 
737         * lily/paper-score.cc (calc_breaking): Follow changes to the
738         Constrained_breaking interface
739
740         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
741         here backwards, as an optimisation
742         (initialize): new function; move most of the code in resize () here
743         (combine_demerits): cache ragged_right_
744         (Constrained_breaking): constructor now takes the Paper_score
745
746 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
747         
748         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
749         avoid parser lookahead for 0-ary functions.
750
751         * lily/translator.cc: Extract event classes from
752         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
753
754 2006-10-02  Heikki Junes  <hjunes@gmail.com>
755
756         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
757         KBabel fix tool.
758
759 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
760
761         * scm/layout-page-layout.scm (page-breaking-wrapper): new
762         function. Call the page breaking function selected in the
763         `page-breaking' \paper variable, then the post processing function
764         chosen using the `page-post-process' \paper variable.
765         (line-height): new function. Return the height of a system.
766         (line-minimum-position-on-page): new function. Return the position
767         of a system on page (using the previous line position), only
768         considering between system padding.
769         (stretchable-line?): new function. Says whether a line can be
770         stretched (ie. is not a title nor a single staff system).
771         (page-maximum-space-left): new function. Computes space left on a
772         page, when all systems are separated by their padding.
773
774         * lily/page-breaking.cc (breaking::make_pages): Move page post
775         processing function call to page breaking wrapper (common to all
776         page breakers).
777
778         * lily/paper-book.cc (book::pages): call the page breaking
779         wrapper, instead of the page breaker directly
780
781         * ly/paper-defaults.ly: Add \paper variables for page breaking
782         wrapper and page post processing function. Make
783         `write-page-layout' value depend on the 'dump-tweaks option. Add a
784         `system-maximum-stretch-procedure' variable for holding a function
785         computing the maximum stretch a system allows.
786
787         * scm/layout-page-dump.scm (write-page-breaks): computes the
788         stretch to apply to systems on a page to minimize left
789         space. Dump this stretch length.
790
791         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
792         the system-stretch property of the tweak data to stretch the
793         system.
794         (includePageLayoutFile): Void function which includes the
795         generated page-layout file if it exists and if the page layout
796         dumping is not asked.
797         (scoreTweak): if the score tweak named by the argument exists,
798         return it.
799
800 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
801
802         * lily/page-spacing.cc (compress_lines, uncompress_solution):
803         handle correctly the case where there are multiple \noPageBreaks
804         in a row.
805
806 2006-09-30  Laura Conrad <lconrad@laymusic.org>
807
808         * abc2ly.py adds segno (S) and Coda (O) to articulations.
809         
810         * abc2ly.py fix so that entering " -- " will translate to a -- in
811         the lilypond instead of a " - - "
812         
813 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
814
815         * lily/align-interface.cc: fix typo
816
817         * lily/dynamic-text-spanner.cc (print): Add a special case for
818         trill spanner right sides. 
819
820         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
821
822         * lily/align-interface.cc (get_extents_aligned_translates): add
823         support for padding variable.
824
825         * lily/break-align-interface.cc (self_align_callback): oops: use
826         loop variable in guard.
827
828         * input/regression/repeat-percent-grace.ly: new file.
829
830         * lily/percent-repeat-engraver.cc (start_translation_timestep):
831         remember first currentCommandColumn of a grace run. Fixes issue 70.
832
833         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
834         move class definition to CC file.
835
836         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
837
838         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
839         measure-long  repeats.
840
841         * flower/include/international.hh: include stdarg.h
842
843 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
844
845         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
846         put_systems_on_pages to return an empty result, we need to assign
847         demerits properly in that case.
848         (put_systems_on_pages): Make the number of pages depend on the
849         evenness of page_number. Add auto-first-page-number.
850         (calc_subproblem): ensure that the page-number is even for the
851         left-hand page. Warn if the first page-turn doesn't fit onto the
852         first (right-hand) page.
853
854         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
855         (min_page_count): make this publicly accessible
856         (min_page_count): fix a bug when there are forced page breaks that
857         was introduced when I made this loop run backwards
858         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
859         replace space_systems_on_min_pages with these two. The logic in
860         space_systems_on_min_pages was getting too convoluted and is better
861         contained in page-turn-page-breaking.
862
863         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
864         conditional
865         (breakable_column): typo
866
867         * lily/source-file.cc (get_line): fix off-by-one error
868         and clean up some of the logic
869
870 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
871
872         * lily/page-breaking.cc (make_pages): honour the first-page-number
873         property
874
875 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
876
877         * VERSION (PACKAGE_NAME): bump version.
878
879 2006-09-26  Pal Benko  <benko.pal@gmail.com>
880
881         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
882         (the latter is the same as petrucci-f which is kept for compatibility)
883
884 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
885         
886         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
887
888 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
889
890         * lily/global-context.cc (run_iterator_on_me): break out of loop
891         if moment doesn't increase.
892
893         * scm/define-grob-properties.scm (all-user-grob-properties): add
894         forced property.
895
896         * lily/accidental.cc (after_line_breaking): read forced property.
897
898         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
899         property.
900
901         * input/regression/accidental-forced-tie.ly:  new file.
902
903 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
904
905         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
906
907         * lily/figured-bass-engraver.cc: only listen to rest events if
908         ignoreFiguredBassRest is not set.
909
910         * scm/define-context-properties.scm
911         (all-user-translation-properties): add ignoreFiguredBassRest property
912
913 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
914
915         * lily/paper-book.cc (get_system_specs):
916         (set_system_penalty): fix breakbefore.
917         We used to set a penalty on the system after the break, now we
918         set a permission on the system before the break
919
920         * lily/grob-property.cc: add scm debugging hooks into
921         property modification
922
923         * lily/context-property.cc:
924         * lily/engraver.cc:
925         rename make_foo_from_properties to internal_make_foo and
926         move it from context-property.cc to a member function of
927         Engraver.
928         
929         * lily/include/lily-guile-macros.hh:
930         overload ly_symbol2scm macro so that there is no more need
931         to use internal_foo
932
933         * lily/volta-repeat-iterator.cc:
934         * lily/tweak-engraver.cc:
935         * lily/tuplet-bracket.cc:
936         * lily/span-bar-engraver.cc:
937         * lily/script-engraver.cc:
938         * lily/prob-scheme.cc:
939         * lily/pointer-group-interface.cc:
940         * lily/parser.yy:
941         * lily/grob-scheme.cc:
942         * lily/grob-property.cc:
943         * lily/context.cc:
944         * lily/context-property.cc:
945         * lily/break-substitution.cc:
946         * lily/break-align-engraver.cc:
947         * lily/axis-group-interface.cc:
948         * lily/align-interface.cc:
949         remove calls to internal_FOO
950
951         * lily/system-start-delimiter-engraver.cc:
952         * lily/parenthesis-engraver.cc:
953         * lily/accidental-engraver.cc:
954         remove calls to make_foo_from_properties
955
956 2006-09-23  Graham Percival  <gpermus@gmail.com>
957
958         * Documentation/user/programming-iterfaces.itely: fix
959         def-music-function -> define-music... leftover.
960
961 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
962
963         * lily/page-spacing.cc (min_page_count): by running the loop
964         backwards, we can calculate ragged_last properly.
965
966 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
967
968         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
969         printfirst-page-number -> print-first-page-number
970
971         * python/convertrules.py: corresponding rule.
972
973         * Documentation/user/page.itely (Page formatting): Document the
974         default values of all page layout parameters. 
975
976 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
977
978         * lily/lexer.ll: remove limitation on music function arity. New
979         mode extratoken, which inserts extra EXPECT_* tokens after
980         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
981
982         * lily/parser.yy: Change grammar for music function accordingly.
983
984         * lily/include/lily-parser.hh: New method get_state, new member
985         hidden_state. Works around a problem when parser fetches
986         MUSIC_FUNCTION token but not the following EXPECT_* token.
987
988         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
989         remove try_music
990
991         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
992         references to Music; use ASSIGN_EVENT_ONCE everywhere
993
994         * lily/grob-info.cc: junk *music_cause
995
996         * lily/music.cc: copy eventified articulations to stream event
997
998         * lily/part-combine-iterator.cc: Cleanup using enums
999
1000         * lily/translator-group.cc: Junk OldMusicEvent, and associated
1001         methods
1002
1003         * lily/include/engraver.hh: Junk music.hh include
1004
1005         * lily/stream-event.cc: Changed constructors
1006
1007 2006-09-21  Graham Percival  <gpermus@gmail.com>
1008
1009         * Documentation/user/tweaks.itely (Fitting music onto fewer
1010         pages): change settings to avoid warning messages.
1011
1012 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1013
1014         * Documentation/user/tweaks.itely (Fitting music onto fewer
1015         pages): Add between-system-space setting. 
1016
1017 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1018
1019         * lily/accidental-placement.cc (calc_positioning_done): don't
1020         trigger Y-extent calculation too early. Use pure_height instead.
1021
1022         * lily/scale.cc (LY_DEFINE): new file. 
1023
1024 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
1025
1026         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1027         that happen at the start of a score: having a zero-length
1028         chunk was messing up min_system_count calculations.
1029
1030         * lily/source-file.cc (get_line): lower_bound, not
1031         binary_search. Fixes problem where point-and-click would
1032         always point to the first line.
1033
1034 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1035
1036         * lily/accidental-placement.cc (calc_positioning_done): also put
1037         stems into accidental support. 
1038
1039         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1040         event_ detected.
1041
1042         * scm/script.scm (default-script-alist): avoid-slur and
1043         slur-padding for portato script.
1044
1045         * lily/stem-tremolo.cc (translated_stencil): new function. 
1046         (height): use new function. Fixes tremolos on whole notes.
1047
1048         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1049         slur found.
1050
1051 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1052
1053         * scripts/abc2ly.py (try_parse_comment): idem.
1054
1055         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1056         bar_string iso. string.find()
1057
1058         * lily/*.cc: idem.
1059
1060         * lily/slur.cc (get_curve): always use scm_is_pair() looping
1061         scheme lists.  
1062
1063 2006-09-18  Graham Percival  <gpermus@gmail.com>
1064
1065         * Documentation/user/basic-notation.itely: add bug
1066         warning about ties and octavation/clef.
1067
1068 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1069
1070         * VERSION (PACKAGE_NAME): release 2.9.18
1071
1072 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
1073
1074         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1075         figure out midi file names right here.
1076         
1077 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1078
1079         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1080
1081         * scm/backend-library.scm: option naming:  gs-font-load*s*
1082
1083         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1084         include-eps-fonts
1085
1086 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
1087
1088         * scm/define-music-types.scm (music-descriptions): remove
1089         BreakEvent and fix {Page,Line}{Break,Turn}Event so
1090         Music::to_event doesn't complain.
1091
1092         * lily/accidental-placement.cc (ape_compare):
1093         * lily/semi-tie.cc (compare): 
1094         * lily/note-column.cc (shift_compare): replace by XXX_less
1095
1096         * lily/tie-formatting-problem.cc (set_chord_outline): 
1097         * lily/tie-column.cc (calc_positioning_done): 
1098         * lily/system.cc (post_processing)
1099         (get_paper_system): 
1100         * lily/stem.cc (note_head_positions)
1101         (calc_positioning_done): 
1102         * lily/spanner.cc (do_break_processing)
1103         (find_broken_piece): 
1104         * lily/span-bar.cc (print): 
1105         * lily/semi-tie-column.cc (calc_positioning_done): 
1106         * lily/rest-collision.cc (calc_positioning_done): 
1107         * lily/program-option.cc (get_help_string): 
1108         * lily/note-collision.cc (get_clash_groups):
1109         * lily/new-fingering-engraver.cc (position_scripts):
1110         * lily/keyword.cc (Keyword_table):
1111         * lily/hara-kiri-group-spanner.cc (request_suicide):
1112         * lily/grob-pq-engraver.cc (stop_translation_timestep):
1113         * lily/accidental-placement.cc (calc_positioning_done):
1114         (stagger_apes):
1115         * lily/beam.cc (get_beam_segments):
1116         * lily/grob-array.cc (remove_duplicates):
1117         use new vector_sort
1118         
1119         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1120         ragged-last-bottom = ##f (test the new page breaker)
1121
1122         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1123
1124         * scm/define-context-properties.scm
1125         (all-internal-translation-properties): remove properties that
1126         were used to communicate page-turn stuff to the paper-column
1127         engraver.
1128
1129         * lily/lily-guile.cc (robust_scm2string): new function
1130
1131         * lily/paper-column-engraver.cc: Clean up page turn stuff
1132
1133         * lily/page-turn-engraver.cc: Re-write the page turn logic here
1134         instead of cluttering up paper-column-engraver.cc
1135
1136 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1137
1138         * scm/layout-page-dump.scm (scm): export utility function names,
1139         to allow user writing cutsom dumping functions.
1140
1141         * scm/layout-page-layout.scm: export utility function names to
1142         enable custom page breaking function writing. Tabify.
1143         (line-next-space): use ?-suffix only for predicates
1144         (page-maximum-space-to-fill): new function. Return the space
1145         between first and bottom system of a page, to give to
1146         space-systems.
1147         (space-systems): use a space-to-fill argument (for instance as
1148         computed by page-maximum-space-to-fill) instead of computing
1149         internaly this space with the page height. That way, the caller
1150         can adjust the space to use.
1151         (make-page-from-systems, walk-paths): compute space to fill before
1152         calling space-systems.
1153
1154 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1155
1156         * scm/script.scm (default-script-alist): set paddings for every
1157         type here, increase for portato mark.
1158
1159         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
1160         -dinclude-eps-fonts
1161
1162 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1163
1164         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1165         use spanner::set-spacing-rods
1166
1167         * lily/note-column.cc: reformat.
1168
1169         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1170         step positioning for note/rest combinations.
1171
1172         * input/regression/rest-note-collision.ly: new file.
1173
1174         * scm/define-grobs.scm (all-grob-descriptions): add
1175         springs-and-rods
1176
1177         * flower/include/std-vector.hh: switch off again.
1178
1179         * VERSION (PATCH_LEVEL): bump to 2.9.18
1180
1181         * flower/include/std-string.hh: idem.
1182
1183         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1184
1185 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1186
1187         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1188         PianoStaff. 
1189
1190 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
1191
1192         * Documentation/user/page.itely: update page breaking documentation
1193
1194 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
1195
1196         * lily/note-collision.cc (calc_positioning_done): only access
1197         first head if available.
1198
1199         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1200
1201         * scm/framework-ps.scm (output-preview-framework): use new name.
1202
1203         * lily/program-option.cc (internal_set_option): use new names.
1204
1205         * Documentation/user/SConscript (lilypond_book_flags): update -d
1206         variable names.
1207
1208         * Documentation/user/lilypond-book.itely (Inserting LilyPond
1209         output into other programs): new variable names.
1210
1211         * scm/lily.scm (define-scheme-options): uniformize var names.
1212
1213         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1214         tuplets_ is non-empty before popping.
1215
1216 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
1217
1218         * lily/spanner.cc (find_broken_piece): 
1219         * lily/spacing-spanner.cc (get_columns): 
1220         * lily/source-file.cc (get_line): 
1221         * lily/simple-spacer.cc (get_column_description): 
1222         * lily/keyword.cc (lookup): 
1223         use the new binary search.
1224
1225         * flower/include/std-vector.hh: replace binary_search with
1226         a more STL-like version
1227
1228 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
1229
1230         * lily/tie-performer.cc: remove unused last_event_ property.
1231         (class Tie_performer): add now_tied_heads_ property for
1232         partially-tied heads.
1233         (acknowledge_audio_element): when adding an Audio_note, put the
1234         note in now_tied_heads_ if the audio note is partially tied.
1235         (stop_translation_timestep): always include entries in
1236         now_tied_heads_ in heads_to_tie_.
1237
1238         * lily/drum-note-performer.cc (process_music): look for tie-events
1239         in the articulations; pass to Audio_note constructor.
1240
1241         * lily/note-performer.cc (process_music): look for tie-events in
1242         the articulations; pass to Audio_note constructor.
1243
1244         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1245         constructor.
1246
1247         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1248         include initializer in constructor.
1249
1250 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
1251
1252         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1253         unless they are breakable. This fixes discrepancies between the forces
1254         calculated here and the forces calculated in get_line_configuration.
1255
1256         * lily/grob.cc (pure_relative_y_coordinate): fix some
1257         mis-estimation that was happening with piano staves.
1258
1259         * lily/constrained-breaking.cc (resize): don't choke if we get a
1260         measure that won't fit on a line.
1261         (combine_demerits): don't consider uniformity when ragged
1262
1263         * lily/page-spacing.cc (solve): why the f* were there two of these?
1264         (calc_subproblem): properly handle the case where a system is taller
1265         than the page.
1266
1267         * lily/system.cc (get_paper_system): ensure that all the permissions
1268         and penalties are passed to the paper systems.
1269
1270         * lily/page-breaking.cc (create_system_list): support system-count.
1271
1272         * scm/define-grobs.scm (pure-print-callbacks): add
1273         ly:script-interface::print
1274
1275         * lily/page-spacing.cc (min_page_count): fix calculation of min
1276         pages if we are ragged and there are non-zero springs.
1277
1278         * scm/layout-page-layout.scm: if the pure-height estimates are under
1279         the real height, allow space-systems to ignore padding if it is
1280         needed in order to fit the systems on one page
1281
1282         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1283         ragged properties
1284         (solve): fix performance problem. Make sure we always get at least
1285         one solution
1286
1287         * lily/page-breaking.cc (make_pages): include write-page-breaks
1288         and page-stencil
1289
1290         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1291
1292         * scm/define-grobs.scm: add the new slur-callback
1293         fix pure-relevant to not exclude grobs whose extent is already
1294         calculated
1295
1296         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1297         page breaker
1298
1299         * lily/slur.cc (pure_height): new callback to estimate the height
1300         of a slur
1301
1302 2006-09-02  Graham Percival  <gpermus@gmail.com>
1303
1304         * Documentation/user/invoking.itely: small update on
1305         MacOS X notes; thanks Trevor!
1306
1307 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1308
1309         * VERSION (MY_PATCH_LEVEL): release 2.9.17
1310
1311         * lily/lexer.ll: accept EOF in all states.
1312
1313         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1314
1315         * lily/source-file.cc (Source_file): always 0-terminate character
1316         array, to prevent Flex from barfing.
1317
1318         * lily/global-context.cc (get_output): robustness: don't crash if
1319         no Score context found.
1320
1321         * lily/include/book.hh (class Book): idem.
1322
1323         * lily/include/context-def.hh (struct Context_def): idem.
1324
1325         * lily/include/score.hh (class Score): don't derive from Input.
1326
1327         * lily/book.cc (Book): add a copy ctor. 
1328
1329         * buildscripts/output-distance.py (FileLink.calc_distance): count
1330         orphans in distance too.
1331
1332         * python/midi.c (midi_parse_track): robustness: don't read past
1333         end of string.
1334
1335         * ly/performer-init.ly: add Control_track_performer, move
1336         Tempo_performer and Time_signature_performer to Score.        
1337
1338         * lily/score-performer.cc (acknowledge_audio_elements): override
1339         from base class: add to audio-columns
1340
1341         * lily/control-track-performer.cc (add_text): new file: generate
1342         the control track.
1343
1344         * lily/performance.cc: move output_header_track to
1345         Control_track_performer ()
1346
1347         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1348
1349         * lily/include/midi-item.hh (class Midi_channel_item): insert
1350         class into hierarchy, for items that can have a channel setting. Dehungarify.
1351
1352         * lily/include/performer.hh (class Performer): remove
1353         play_element();  move functionality into announce/acknowledge.
1354
1355         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1356
1357         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1358         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
1359
1360 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
1361
1362         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1363         ambituses.
1364
1365         * lily/all-font-metrics.cc: remove TFM support.
1366
1367         * lily/include/tfm.hh: remove TFM support, TFM reader.
1368
1369         * lily/include/binary-source-file.hh: remove Binary_source_file.
1370
1371 2006-08-27  Graham Percival  <gpermus@gmail.com>
1372
1373         * Documentation/topdocs/NEWS.itely: add @c marker for
1374         stuff I've processed.
1375
1376         * Documentation/user/ various: info from NEWS.
1377
1378 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
1379
1380         * lily/paper-column-engraver.cc (finalize): Oops, this change
1381         should have gone in on 2006-08-23
1382
1383 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
1384
1385         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1386         quotes to quote arguments. Fixes Windows problem.
1387
1388         * python/lilylib.py (progress): idem
1389
1390 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1391
1392         * scripts/musicxml2ly.py: fix for importing
1393         minor key signatures from MusicXML.  (Phillip Kirlin)
1394
1395 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
1396
1397         * python/musicxml.py: 
1398         (Attributes.get_key_signature): now correctly retrieves mode from 
1399         MusicXML. 
1400
1401 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1402
1403         * lily/parser.yy (output_def_body): take ownership of identifier
1404         back to C++.
1405
1406         * Documentation/user/advanced-notation.itely (Metronome marks):
1407         update use of \tempo in \midi.
1408
1409         * VERSION: release 2.9.16
1410         
1411 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
1412
1413         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1414         web partially)
1415
1416 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1417
1418         * input/regression/tie-chord-partial.ly: clarify example.
1419
1420         * scm/define-music-properties.scm (all-music-properties): remove
1421         untied.
1422
1423         * ly/music-functions-init.ly: remove \untied.
1424
1425         * lily/tie-engraver.cc (struct Head_event_tuple): store both
1426         stream events and music events.
1427         (stop_translation_timestep): search acknowledged heads for
1428         tie-event.
1429
1430         * input/regression/tie-chord-partial.ly: new file.
1431
1432         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1433         for \char markup command.
1434
1435         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1436
1437         * scm/define-music-types.scm (music-descriptions): consistency:
1438         Use solo-{one,two}-event iso. solo-[12]-event.
1439
1440         * lily/part-combine-engraver.cc (process_music):
1441         Use solo-{one,two}-event iso. solo-[12]-event.
1442
1443         * ly/declarations-init.ly (partCombineListener): add Timing as
1444         alias
1445
1446         * flower/std-string.cc (string_copy): use copy ()
1447
1448         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1449
1450 2006-08-24  Graham Percival  <gpermus@gmail.com>
1451
1452         * Documentation/user/changing-defaults.itely, global.itely,
1453         lilypond-book.itely, page.itely: minor changes from mailist.
1454
1455 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1456
1457         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1458         snippet-map
1459
1460         * scm/define-context-properties.scm
1461         (translator-property-description): robustness: detect type errors
1462         in property definitions.
1463
1464         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1465         after getting it from SCM. 
1466
1467         * lily/smobs.cc (protect_smob): switch off fancy smob protection
1468         for now. 
1469
1470         * lily/include/performer.hh (class Performer): strip get_tempo()
1471         method.
1472
1473         * lily/midi-def.cc: strip file.
1474
1475         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1476
1477         * lily/include/context-def.hh (struct Context_def): use
1478         VIRTUAL_COPY_CONSTRUCTOR().
1479
1480         * lily/source-file.cc: smobification.
1481
1482         * lily/include/source-file.hh (class Source_file): smobify
1483         Source_file. Trim redundant members.
1484
1485         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1486         clones after creation. This plugs a huge memory leak.
1487
1488         * python/convertrules.py (FatalConversionError.sub_tempo):
1489         complete rule for \midi{ \tempo }
1490
1491         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1492
1493         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1494
1495 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
1496
1497         * input/regression/optimal-page-breaking-hstretch.ly: test for
1498         ragged-last-bottom also
1499
1500         * lily/paper-column-engraver.cc (finalize): make the end of a score
1501         breakable by default. This is to balance out a change in behaviour
1502         of the page-turn-breaker which no longer makes the end of a score
1503         breakable.
1504
1505         * lily/paper-book.cc (pages): set the systems_ once the pages are
1506         broken
1507
1508         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1509         Page_breaking interface.
1510
1511         * lily/page-breaking.cc (class Page_breaking): make the interface
1512         more consistent and provide abstractions for dealing with
1513         Line_divisions.
1514
1515         * lily/optimal-page-breaking.cc (solve): use a more straightforward
1516         algorithm. Use the new interface to Page_breaking.
1517
1518         * lily/page-spacing.cc: better support for ragged-bottom and
1519         ragged-last-bottom
1520
1521 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
1522
1523         * python/convertrules.py (conv): warning on \tempo{}
1524
1525         * ly/performer-init.ly: set tempoWholesPerMinute.
1526
1527         * ly/midi-init.ly: remove \midi
1528
1529         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1530         MIDI tempo.
1531
1532         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1533         tempoUnitDuration for determining what to print.
1534
1535         * lily/lyric-extender.cc: typo.
1536
1537         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1538
1539         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1540         function.
1541
1542         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1543
1544         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1545         eps-pad-boxes is set.
1546
1547         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1548
1549         * THANKS: update sponsors.
1550
1551         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1552
1553         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1554
1555         * input/regression/tie-chord-untied.ly: new file.
1556
1557         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1558
1559         * scm/define-music-properties.scm (all-music-properties): add
1560         'untied property.
1561
1562         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1563         than .ly.txt.
1564         (headertext_nopics): sanitize no-examples text.
1565
1566         * scm/page.scm (make-page-stencil): don't rely on extents of
1567         page-stencil. This fixes spurious space around .EPS files produced
1568         with the EPS backend.
1569
1570 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1571
1572         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1573
1574         * lily/hara-kiri-engraver.cc (process_music): remember
1575         keepAliveInterfaces after processing \set
1576
1577         * lily/lyric-extender.cc (print): support left/right-padding for
1578         extenders.
1579
1580         * scm/documentation-generate.scm (string-append): revert lilypond/
1581         path, doc why.
1582
1583 2006-08-20  Graham Percival  <gpermus@gmail.com>
1584
1585         * Documentation/user/lilypond.tely: clarification to
1586         license presentation (not to actual license).
1587
1588         * Documentation/user/basic-notation.itely,
1589         instrument-notation.itely: minor changes.
1590
1591         * input/ {regression, test}/+.ly: clarification to
1592         text (you can click on examples).  Thanks, Mats!
1593
1594         * input/manual/bar-lines.ly: adds ||: repeats.
1595
1596 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1597
1598         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
1599
1600         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1601
1602         * Documentation/user/lilypond.tely: strip lilypond/ from info
1603         links, rename to category LilyPond
1604
1605         * lily/pango-font.cc (description_string): new function.
1606
1607         * VERSION: release 2.9.15
1608
1609         * lily/spacing-engraver.cc (stop_translation_timestep): use
1610         Dscho's fix for spacing spanner. 
1611
1612         * scm/define-music-types.scm (music-descriptions): use
1613         apply-output-event for ApplyOutputEvent
1614
1615         * lily/output-property-engraver.cc (listen_apply_output): rename
1616         from listen_layout_instruction.
1617
1618         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1619         function protect()
1620
1621 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1622
1623         * scm/lily.scm (lilypond-all): option read-file-list: substitute
1624         commandline args with contains, split by \n.
1625
1626         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1627         write snippet-names file, call with -dread-file-list. Fixes
1628         command limitations on 64-bit systems.
1629
1630         * input/regression/stencil-color-rotation.ly: new file.
1631
1632         * lily/include/translator.hh (struct Acknowledge_information):
1633         revert: don't use Protected_scm in global objects, as GUILE can't
1634         handle gc_unprotect from automated destructors on MacOS X.
1635  
1636         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1637         color, not the original stencil. Fixes combinations of
1638         color/transparency/rotation. 
1639
1640         * scripts/lilypond-book.py (main): add --formats=eps for
1641         texinfo/latex.
1642
1643         * lily/spacing-engraver.cc (stop_translation_timestep): don't
1644         crash if spacing_ is nonexistent.
1645
1646 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
1647
1648         * scripts/lilypond-book.py (output): Remove obsolete(!?)
1649         \catcode`\@=12 in the LaTeX output.
1650
1651 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1652
1653         * scm/define-music-types.scm (music-descriptions):
1654         use sustain-event iso. sustain-pedal-event.
1655
1656 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
1657
1658         * scripts/convert-ly.py: honour the -n command-line switch
1659
1660 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1661
1662         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1663         break specification.
1664
1665 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
1666
1667         * Documentation/user: convert-ly the user manual
1668
1669 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1670
1671         * stepmake/aclocal.m4: version check patch (thanks MWD)
1672
1673         * ly/music-functions-init.ly: robustness. Don't crash if
1674         currentBarNumber is not a number.
1675
1676         * VERSION (PATCH_LEVEL): bump.
1677
1678 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1679
1680         * stepmake/aclocal.m4: better version check; handle fooX.Y
1681         binaries too.
1682
1683         * ly/performer-init.ly: instrument name fixup.
1684
1685         * input/manual/chord-names-jazz.ly (banterProperties):
1686         instrumentName update
1687
1688         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1689
1690         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1691
1692         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1693         function. Use hash tables to check membership.
1694
1695         * lily/general-scheme.cc (LY_DEFINE): new function.
1696
1697         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1698
1699         * lily/include/translator.hh (struct Acknowledge_information): add
1700         Protected_scm
1701
1702         * ly/music-functions-init.ly: change name to BreathingEvent
1703
1704         * input/regression/*.ly: apply it.
1705
1706         * python/convertrules.py (conv): better instrumentName conversion
1707         rule.
1708
1709         * scm/define-music-types.scm (music-descriptions): add
1710         line-break-event to LineBreakEvent music
1711
1712         * lily/music.cc (to_event): don't crash if music type not set.
1713
1714         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1715         spacing not set.
1716
1717         * lily/spacing-engraver.cc (stop_translation_timestep): set
1718         spacing for proportional notation too.
1719
1720         * scm/translation-functions.scm (format-bass-figure): inspect
1721         stream-event.
1722
1723         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1724
1725 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1726
1727         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1728
1729         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1730
1731         * scm/layout-page-layout.scm (make-page-from-systems): new function
1732         (optimal-page-breaks): use the new page-breaking calling convention
1733
1734         * scm/define-context-properties.scm (all-user-translation-properties):
1735         add revokePageTurns
1736
1737         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1738         revokePageTurns  functionality. If there is a special barline within
1739         the breakable region, break there instead of at the end of the region.
1740
1741         * lily/paper-book.cc (pages): use the new page-breaking calling
1742         convention
1743
1744 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1745
1746         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1747
1748         * scripts/lilypond-book.py: insert \sourcefileline command in
1749         output, so lilypond error messages refer to the spot in the
1750         original .lytex / .itely sourcefile.
1751
1752 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1753
1754         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1755         space to next column for distance to fixed col.
1756
1757         * VERSION (PACKAGE_NAME): release 2.9.14
1758
1759         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1760         if no accidental.
1761
1762         * lily/accidental-engraver.cc (process_acknowledged): don't create
1763         accidental for trill span event. This fixes spurious accidentals
1764         on trills.
1765
1766 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1767
1768         * scm/define-grob-properties.scm (all-user-grob-properties):
1769         Clarify documentation of side-axis and direction. Thanks to Paul
1770         for the inspiration.
1771
1772         * lily/bar-line.cc: Add documentation for "||:" also in the
1773         interface documentation.
1774
1775 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1776
1777         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1778
1779         * lily/paper-column.cc (set_system): new function.
1780
1781         * lily/spacing-engraver.cc (stop_translation_timestep): store
1782         SpacingSpanner refs in Paper_column.
1783
1784         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1785         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1786
1787 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1788
1789         * lily/beam-engraver.cc (listen_beam): add method for
1790         Grace_beam_engraver too.
1791
1792 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1793
1794         * python/convertrules.py: Fix indentation bug that broke
1795         conversion of files older than 1.3.117.
1796         Fix escape error in the description for 2.9.6.
1797
1798 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1799
1800         * lily/*-engraver.cc: convert all try_music functions to listen_*
1801         functions.
1802
1803         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1804         enums to represent pedal types, and calculate more data statically.
1805
1806         * scm/part-combiner.scm (recording-group-emulate): create a
1807         softcoded substitute for recording-group-engraver.cc.
1808
1809         * lily/music.cc: make a common transpose function for events and
1810         music
1811
1812         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1813         ManualMelismaEvent, and obsoletes Melisma_translator.
1814
1815 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1816
1817         * input/test/instrument-name-align.ly: update version.
1818
1819 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1820
1821         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1822         Doc the --pdf flag to lilypond-book.
1823
1824 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1825
1826         * Documentation/topdocs/NEWS.tely (Top): add description.
1827
1828         * input/regression/tuplet-full-length-note.ly: add file.
1829
1830         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1831         always store axis group.
1832
1833 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1834
1835         * input/regression/instrument-switch.ly: new file.
1836
1837         * lily/instrument-switch-engraver.cc (process_music): new file.
1838
1839         * ly/engraver-init.ly: add Instrument_switch_engraver
1840
1841         * ly/music-functions-init.ly: \instrumentSwitch
1842
1843         * scm/define-context-properties.scm
1844         (all-user-translation-properties): add instrumentCueName
1845
1846         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1847
1848 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1849
1850         * ly/music-functions-init.ly: music function \transposition.
1851
1852         * lily/parser.yy (command_element): softcode \transposition.
1853
1854         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1855         (process_music): oops.
1856
1857         * lily/instrument-name-engraver.cc (start_spanner): new
1858         function. Create spanner when property changes.
1859         (stop_spanner): new function.
1860
1861         * python/convertrules.py (conv): add rule.
1862
1863         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1864         shortInstrumentName iso. instr.
1865
1866         * scm/output-ps.scm (dashed-line): add phase argument to
1867         dashed-line.
1868
1869         * lily/bar-line.cc (dashed_bar_line): new function.
1870         (compound_barline): support \bar "dashed". 
1871
1872         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1873         --output=DIR to DIR/BASE if it is a dir. 
1874
1875         * flower/file-name.cc (file_part): new function
1876         (dir_part): new function
1877
1878         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1879
1880         * DEDICATION: update
1881
1882 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1883
1884         * lily/instrument-name-engraver.cc: formatting.
1885
1886         * python/convertrules.py (conv): bugfix for \epsfile.
1887
1888 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1889
1890         * lily/grob.cc:
1891         
1892         * lily/gourlay-breaking.cc: Oops, these should have been included
1893         in my last commit
1894
1895 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1896
1897         * scripts/*.py (program_name): cleanup relocation snippets.
1898
1899         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1900
1901 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1902
1903         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1904         page-breakable by default
1905
1906         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1907         correctly calculated for a single-system page
1908
1909         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1910         bigger than the second number
1911
1912         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1913         acknowledge that we aren't satisfying constraints)
1914
1915         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1916         non-Items
1917
1918         * lily/grob.cc (pure_height): add minimum-Y-extent
1919
1920         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1921         ragged
1922
1923         * lily/constrained-breaking.cc: convert code to use new Matrix class
1924         (get_best_solution): new function
1925
1926         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1927         is a page with no systems
1928
1929 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1930
1931         * VERSION (PACKAGE_NAME): release 2.9.13
1932
1933         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1934         assignment.
1935
1936 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1937
1938         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1939
1940         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1941         function.
1942
1943         * scm/define-grob-properties.scm (all-user-grob-properties):
1944         remove grace-space-factor.
1945
1946         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1947         grace-spacing-interface
1948         (spacing-options-interface): add.
1949
1950         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1951
1952         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1953
1954         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1955         GraceSpacing object.
1956
1957         * lily/note-spacing.cc: fix prop list formatting
1958
1959         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1960         beaming for grace notes too.
1961
1962         * input/regression/spacing-grace.ly: update.
1963
1964         * lily/grace-spacing-engraver.cc: new file.
1965
1966         * lily/spacing-spanner.cc: add strict-grace-spacing.
1967
1968 2006-07-20  Graham Percival  <gpermus@gmail.com>
1969
1970         * lily/parser.yy: compile fix.
1971
1972 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1973
1974         * scm/define-grobs.scm (all-grob-descriptions): typo.
1975
1976         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1977         .eps extension from includegraphics.
1978
1979         * scripts/lilypond-book.py (main): add support for --pdf. 
1980
1981         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1982         callback to compute common shortest duration.
1983         (set_springs): typo.
1984
1985         * scm/define-grob-properties.scm (all-user-grob-properties): add
1986         strict-grace-spacing.
1987
1988         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1989         support float_grace_columns_.
1990
1991         * lily/spacing-options.cc (init_from_grob): new file.
1992
1993         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1994
1995         * input/regression/spacing-loose-grace.ly: new file.
1996
1997         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1998
1999         * lily/tuplet-engraver.cc (struct Tuplet_description): read
2000         tupletFullLengthNote too. Choose right bound depending on value.
2001
2002         * input/regression/tuplet-full-length-note.ly: new file.
2003
2004 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
2005
2006         * lily/*-performer.cc: Converted try_music to listen_*
2007
2008         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2009         as a stream-event internally. Introduce event_cause (), deprecate
2010         music_cause ().
2011
2012         * scm/define-music-types.scm: Removed BusyPlayingEvent
2013         
2014 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
2015
2016         * Documentation/user/advanced-notation.itely (Font selection):
2017         Document how to get a list of available fonts using 'lilypond
2018         -dshow-available-fonts blabla'.
2019
2020 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2021
2022         * GNUmakefile.in: filter lily-XXX.pdf files.
2023
2024         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2025
2026         * scm/define-grob-properties.scm (all-internal-grob-properties):
2027         remove delta-pitch. Use delta-position everywhere.
2028
2029         * scm/output-lib.scm (fall::print): use new order.
2030
2031         * scm/output-ps.scm (path): reorder arguments.
2032
2033         * scm/output-svg.scm (path): support for path primitive.
2034
2035         * input/regression/bend-after.ly: new file.
2036
2037         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2038         recipe for eps -> pdf conversion.
2039
2040 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
2041
2042         * lily/parser.yy, lily/lexer.ll: added some simplifications by
2043         Angelo Contardi.
2044
2045 2006-07-19  Graham Percival  <gpermus@gmail.com>
2046
2047         * input/manual/screech-boink.ly: moved to here.
2048
2049         * input/screech-boink.ly: deleted.
2050
2051         * scm/define-grob-properties.scm: clarify doc string.
2052
2053 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2054
2055         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2056
2057         * scm/output-ps.scm (path): define path.
2058
2059         * scm/define-stencil-commands.scm
2060         (ly:register-stencil-expression): add path.
2061
2062         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2063
2064         * ly/engraver-init.ly: add Fall_engraver
2065
2066         * lily/parser.yy (music_function_event): allow musicfunction
2067         without music arg as music_function_event.
2068
2069         * lily/grob-scheme.cc (LY_DEFINE):
2070         ly:grob-robust-relative-extent. New function.
2071
2072         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2073
2074         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2075
2076         * scm/output-lib.scm (fall::print): new function
2077
2078         * lily/fall-engraver.cc (stop_fall): new file.
2079
2080         * ly/music-functions-init.ly: alphabetise.
2081
2082         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2083         base.
2084
2085 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2086
2087         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2088
2089         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2090         doc pdftex usage.
2091
2092         * lily/translator-group.cc (connect_to_context): non const error message.
2093
2094         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2095
2096         * scm/paper.scm (internal-set-paper-size): define landscape to #f
2097         if unset.
2098
2099         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
2100
2101         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2102
2103         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2104         systems.pdftex too.
2105
2106         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2107
2108         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2109
2110         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2111
2112         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2113
2114         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2115
2116         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
2117
2118 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2119
2120         * scm/layout-page-layout.scm: Define module, tidy code, use more
2121         functions iso. a single big one.
2122
2123         * scm/layout-page-dump.scm: move page dump functions used in two
2124         pass spacing to this file. Define module.
2125
2126         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2127          (separate module)
2128
2129         * ly/paper-defaults.ly: use module layout-page-layout.
2130
2131 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
2132
2133         * lily/music.cc: Revised MusicEvent event class. It now contains
2134         event data directly instead of encapsulating it in music. The
2135         previously used class is renamed to OldMusicEvent.
2136
2137         * lily/stream-event.cc: Stream events are now probs.
2138         
2139         * lily/translator-group.cc, lily/translator.cc: Translators can
2140         now listen directly to stream events, by using macros
2141         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2142
2143         * lily/arpeggio-engraver.cc: Converted to use new event system
2144
2145         * THANKS: Corrected spelling mistake.
2146
2147 2006-07-12  Graham Percival  <gpermus@gmail.com>
2148
2149         * Documentation/user/SConscript, make/lilypond-vars.make,
2150         input/GNUmakefile: doc build looks in input/manual instead
2151         of input/test/
2152
2153         * input/manual/ GNUmakefile, SConscript: build files for
2154         input/manual/
2155
2156         * input/test/ various: some files moved to input/manual/ 
2157
2158         * Documentation/user/basic-notation.itely: small updates;
2159         thanks Kieren and Charles!
2160
2161 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2162
2163         * VERSION (PACKAGE_NAME): release 2.9.11
2164
2165         * Documentation/topdocs/NEWS.tely (Top): update prop value 
2166
2167         * Documentation/user/basic-notation.itely (Tuplets): new property
2168         value.
2169
2170 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2171
2172         * python/convertrules.py (conv): tweaks. 
2173
2174         * VERSION (PATCH_LEVEL): bump version.
2175
2176         * python/convertrules.py (conv): add rule for
2177         tupletNumberFormatFunction.
2178
2179         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2180         tupletNumberFormatFunction.
2181
2182         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2183         text through 'text callback.
2184
2185         * lily/time-scaled-music-iterator.cc (construct_children): copy
2186         tweaks generated events.
2187
2188         * scm/define-context-properties.scm
2189         (all-user-translation-properties): remove tupletNumberFormatFunction
2190
2191         * lily/tuplet-engraver.cc (process_music): don't read
2192         tupletNumberFormatFunction
2193
2194         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2195         function.
2196
2197 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
2198
2199         * lily/global-context-scheme.cc: Separated ly:run-translator into
2200         smaller pieces.
2201
2202         * lily/score-engraver.cc, lily/score-performer.cc,
2203         scm/define-context-properties.scm: Make paper/midi output
2204         accessable as a context property.
2205
2206         * lily/score-translator.cc, lily/score-context.cc: Removed.
2207
2208 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
2209
2210         * scm/ps-to-png.scm (Module): 
2211         * scm/framework-tex.scm (Module): 
2212         * scm/framework-ps.scm (Module): 
2213         * scm/backend-library.scm (Module): 
2214         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2215         "dDEVICEHEIGHTPOINTS".
2216
2217 2006-07-04  Graham Percival  <gpermus@gmail.com>
2218
2219         * Documentation/user/ various: general improvements to
2220         "working with lilypond files" section.
2221
2222 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
2223
2224         * lily/sequential-iterator.cc: Change the default get_music_list
2225         to read elements-callback music property
2226
2227         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2228         processing of multimeasure rests. Softcoded
2229         sequential-music-iterator.
2230
2231         * lily/sequential-music-iterator.cc: Removed.
2232
2233 2006-06-28  Graham Percival  <gpermus@gmail.com>
2234
2235         * Documentation/user/basic-notation.itely: clarify \repeatTie.
2236
2237 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
2238
2239         * lily/parser.yy: Wrap non-post-events in EventChords before
2240         assigning them to identifiers.
2241
2242 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
2243
2244         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2245         gives correct vertical placement of \bar ":" in all staff
2246         sizes. Thanks Martial!
2247
2248 2006-06-26  Graham Percival  <gpermus@gmail.com>
2249
2250         * Documentation/user/invoking.itely : minor update from mailist.
2251
2252 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
2253
2254         * lily/ various: Introduce stream events of types Prepare,
2255         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2256         ChangeContext, SetProperty, RevertProperty, Override and Revert.
2257
2258         * lily/global-context*.cc: Time is now -inf before iteration
2259         starts.
2260
2261         * lily/include/context.hh: Removed unique_, init_
2262
2263         * Documentation/topdocs/NEWS: Make the feathered beam example
2264         avoid triggering a bug.
2265
2266 2006-06-24  Graham Percival  <gpermus@gmail.com>
2267
2268         * Documentation/user/ various: small additions from mailist.
2269
2270 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
2271
2272         * ly/performer-init.ly: Add some missing links in the context
2273         hierarchy for MIDI output. There are probably some more missing!
2274
2275 2006-06-21  Graham Percival  <gpermus@gmail.com>
2276
2277         * Documentation/user/ various: minor spelling fixes;
2278         thanks Dave Luttinen!
2279
2280         * Documentation/user/ various: small clarifications;
2281         thanks Anthony Youngman!
2282
2283 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2284
2285         * po/fr.po: add \n appropriately.
2286
2287         * lily/lexer.ll: remove ? from version-seen?  
2288
2289 2006-06-19  John Mandereau  <john.mandereau@free.fr>
2290
2291         * po/fr.po; update translation, by Jean-Charles Malahieude and
2292         John Mandereau.
2293
2294 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2295
2296         * THANKS: add Markus Schneider.
2297
2298         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2299         Staff_symbol_engraver
2300
2301         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2302         replace staff_engraver
2303
2304         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2305         spanner.
2306
2307         * lily/staff-collecting-engraver.cc
2308         (acknowledge_end_staff_symbol): new function
2309
2310         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
2311
2312         * lily/staff-collecting-engraver.cc
2313         (acknowledge_end_staff_symbol): new function.
2314
2315         * lily/main.cc: switch on relocation by default.
2316
2317 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2318
2319         * lily/spacing-spanner.cc (musical_column_spacing): set
2320         compound_fixed_note_space to 0.0. Document why.
2321
2322         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2323         range of inverse_hooke_
2324         (Simple_spacer): init completely.
2325         (fits): const
2326         (get_line_configuration): don't use cols.resize(); it introduces
2327         initialized data.
2328
2329         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
2330
2331         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2332
2333         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2334         try. Divide by beatlength.
2335
2336         * input/regression/beaming-ternary-metrum.ly: update doc.
2337         add beatLength hack.
2338
2339         * scm/music-functions.scm (make-time-signature-set): add
2340         standard-beat-grouping. 
2341
2342 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2343
2344         * input/regression/tie-whole.ly: new file.
2345
2346         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2347         cross center of note head in case of invisible stem. 
2348
2349 2006-06-16  Graham Percival  <gpermus@gmail.com>
2350
2351         * Documentation/user/ various: small fixes from mailist.
2352
2353 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2354
2355         * lily/breathing-sign.cc (offset_callback): idem.
2356
2357         * lily/align-interface.cc (align_to_fixed_distance): remove
2358         hungarian suffix.
2359
2360         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2361         x%2==0.
2362
2363 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2364
2365         * VERSION (PACKAGE_NAME): release 2.9.9
2366
2367         * ly/lilypond-book-preamble.ly: add \version
2368
2369 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
2370
2371         * scripts/lilypond-book.py (PREAMBLE_LY): include
2372         lilypond-book-preamble.ly
2373
2374         * lily/stem.cc (get_beaming): return max of 0 and
2375         scm_ilength. Fixes slurring from/to beams.
2376
2377         * ly/lilypond-book-preamble.ly: new file.
2378
2379         * lily/slur.cc: add inspect-index feature.
2380
2381 2006-06-13  Graham Percival  <gpermus@gmail.com>
2382
2383         * Documentation/user/tutorial.itely: trivial fix.
2384
2385 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
2386
2387         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2388         all non-event music in the parser via MAKE_SYNTAX.
2389
2390         * lily/parser-scheme.cc: Add ly:parser-error function
2391
2392         * scm/paper.scm: fix typo
2393
2394 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
2395
2396         * THANKS: add RT.
2397
2398         * lily/font-config.cc (init_fontconfig): add warning if cache_file
2399         is null.
2400
2401         * buildscripts/output-distance.py (test_compare_signatures):
2402         timing routines.
2403         (read_signature_file): use new signature format.
2404
2405         * scm/stencil.scm (write-system-signature): simpler signature
2406         format.
2407
2408         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2409         for beamed case. 
2410
2411         * lily/note-spacing.cc (stem_dir_correction): don't inspect
2412         stem_end_position, but estimate instead. 
2413
2414         * lily/tuplet-bracket.cc (calc_positions): look at
2415         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2416         brackets narrower than beams. 
2417
2418         * lily/lexer.ll: set version-seen? even if version is
2419         INVALID. 
2420
2421         * lily/rest.cc (y_offset_callback): bugfix: decide position
2422         override based on scm_is_number(). Fixes \rest on center staff
2423         line. 
2424
2425         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2426         patterns for 16th triplets.
2427
2428 2006-06-10  Graham Percival  <gpermus@gmail.com>
2429
2430         * Documentation/user/ page.itely, global.itely: editing
2431         and reorg.
2432
2433         * Documentation/user/ various: findex -> funindex.
2434
2435 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
2436
2437         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2438         insert extra tuplet events.
2439
2440 2006-06-10  Graham Percival  <gpermus@gmail.com>
2441
2442         * Documentation/user/programming-interfaces.itely: add
2443         info from NEWS.
2444
2445         * python/convertrules.py: add annotatefoo -> annotate-foo
2446         rules.
2447
2448         * Documentation/user/global.itely: start editing.
2449
2450         * Documentation/user/page.itely: major editing, new spacing
2451         docs.
2452
2453 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
2454
2455         * scm/define-markup-commands.scm (wordwrap-markups): use
2456         output-def 'line-width if undefined.
2457
2458         * HACKING: trim outdated info.
2459
2460 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
2461
2462         * scm/define-grobs.scm (all-grob-descriptions): Add
2463         line-spanner-interface to all grobs that already have
2464         text-spanner-interface or dynamic-text-spanner-interface
2465
2466         * scm/page.scm: Rename annotate{headers,systems,page}->
2467         annotate-*
2468
2469         * input/regression/page-spacing.ly,
2470         input/regression/page-layout-manual-position.ly: idem
2471
2472 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2473
2474         * lily/line-spanner.cc: cleanup property list.
2475
2476         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2477         generator expressions (2.3 compat). 
2478
2479 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
2480
2481         * lily/vertical-align-engraver.cc: Make sure that the
2482         align{Above,Below}Context properties are included in the automatic
2483         documentation.
2484
2485 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
2486
2487         * scm/paper-system.scm (paper-system-annotate): also annotate the
2488         estimated pure-Y-extent
2489
2490         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2491
2492         * lily/system.cc (break_into_pieces): set the estimated height
2493         of each child system
2494
2495         * lily/stem.cc (pure_height): new pure-Y-extent callback
2496
2497         * lily/staff-symbol-referencer.cc (callback): don't destroy
2498         the staff-position property
2499
2500         * lily/hara-kiri-group-spanner.cc (request_suicide): split
2501         consider_suicide into two functions
2502
2503         * lily/constrained-breaking.cc (resize): use the new pure
2504         callbacks to estimate the height of a system
2505
2506         * lily/axis-group-interface.cc (pure_group_height): new
2507         side-effect-free VerticalAxisGroup height-callback
2508
2509         * lily/align-interface.cc (get_extents_aligned_translates):
2510         split align_elements_to_extents into two functions
2511         (get_pure_child_y_translation): new function
2512
2513         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2514
2515         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2516
2517         * lily/paper-score.cc: cache break_indices and columns
2518
2519         * lily/side-position-interface.cc: new pure-Y-extent callbacks
2520         
2521 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2522
2523         * lily/font-config.cc (init_fontconfig): do the init if
2524         cache_file, but don't look at cache_file.
2525
2526         * input/regression/quote-tie.ly: new file.
2527
2528         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2529         to Head_event_tuple, so we deal gracefully with ties on
2530         cue-endings.
2531
2532         * lily/pango-font.cc (pango_item_string_stencil): type correctness
2533         for FcChar8*
2534
2535 2006-06-08  Graham Percival  <gpermus@gmail.com>
2536
2537         * input/test/ smart-transpose.ly, reverse-music.ly:
2538         \applyMusic to music functions update, thanks Michael!
2539
2540 2006-06-07  Graham Percival  <gpermus@gmail.com>
2541
2542         * input/test/ add-staccato.ly, add-text-script.ly,
2543         unfold-all-repeats.ly, music-box.ly: \applyMusic to
2544         music functions update, thanks to Michael Meixner.
2545
2546         * Documentation/user/music-glossary.tely: small fix
2547         from Francisco.
2548
2549         * Documentation/user/ various: minor additions from mailist.
2550
2551         * Documentation/user/lilypond.tely, basic-notation.itely:
2552         small test of @funindex.  (works here)
2553
2554         * input/test/font-table.ly: reduce size to partially
2555         de-ugly version in manual.
2556
2557         * Documentation/user/page.itely: new file (split former
2558         "global issues" into "page settings" and "non-musical
2559         output".
2560
2561         * Documentation/user/ various: fix @ref{}s to match
2562         new chapter names (above).
2563
2564 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2565
2566         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2567
2568 2006-06-06  Graham Percival  <gpermus@gmail.com>
2569
2570         * Documentation/user/advanced-notation.itely: add example
2571         for segno/coda on barline.
2572
2573         * tex/texinfo.tex: merge from upstream.
2574
2575 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2576
2577         * scripts/lilypond-book.py (process_snippets): Argument fix.
2578
2579         * SConstruct:
2580         * buildscripts/builder.py:
2581         * lily/SConscript: 
2582         * mf/SConscript: 
2583         * Documentation/user/SConscript:  More SCons fixes.
2584
2585 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2586
2587         * lily/font-config.cc (init_fontconfig): Only initialize if
2588         global cache_file is found.
2589
2590 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
2591
2592         * ly/music-functions-init.ly: Updated \overrideProperty to use the
2593         new \applyOutput.
2594
2595 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2596
2597         * VERSION (PACKAGE_NAME): release 2.9.8
2598
2599         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2600         function. Delay ledger modifying ledgered grobs to
2601         stop_translation_timestep(), to ensure that we're ledgering
2602         according to the new spanner.
2603         (acknowledge_staff_symbol): don't check for non-NULL
2604         staff_sym->get_bound()
2605
2606         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2607         creation.
2608
2609         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2610         pictures too.
2611
2612         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2613         directly from srcdir/stepmake/aclocal.m4
2614         
2615         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2616         disting MISC files.
2617
2618         * lily/simple-spacer.cc (get_column_desc): desc -> description.
2619
2620 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2621
2622         * lily/simple-spacer.cc (get_line_configuration): add
2623         keep-inside-line rods
2624         (struct Column_desc): add constructor
2625         (struct Rod_desc): add constructor
2626         (get_line_forces): check for forced page breaks here too
2627
2628         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2629         support/elements cycles between InstrumentNames and AxisGroups
2630
2631 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2632
2633         * config.make.in (METAFONT): remove MAKEINFO_VERSION
2634
2635         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2636         make-txt-files target.
2637
2638         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2639         make-txt-files target.
2640
2641         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2642
2643         * stepmake/stepmake/generic-vars.make (distdir): create dist in
2644         top-build-dir.
2645
2646 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
2647
2648         * Documentation/user/instrument-notation.itely,
2649         input/regression/breathing-sign-ancient.ly,
2650         input/test/divisiones.ly: Removed redundant property settings for
2651         vaticana contexts.
2652
2653         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2654         fix lyrics alignment problems.  They are implemented now as scheme
2655         functions that add the appropriate unicode char to the first lyric
2656         event rather than adding a separate lyric event.  Minor edit of
2657         comments.
2658
2659 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2660
2661         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2662         pollute src dir with built .txt files, but install directly from
2663         Documentation/topdocs/out/
2664
2665         * buildscripts/output-distance.py
2666         (ComparisonData.create_html_result_page): put version/directories
2667         in table header.
2668
2669         * Documentation/topdocs/NEWS.tely (Top): document spacing section
2670         feature.
2671
2672         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2673         Patch by Karl Hammar
2674         
2675         * buildscripts/readlink.py: add  file.
2676         Patch by Karl Hammar
2677
2678 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2679
2680         * lily/tuplet-number.cc (print): prevent stencil from being
2681         garbage collected.
2682
2683 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2684
2685         * scm/stencil.scm (write-system-signature): explicitly 
2686         -well, superfluously- close output port.
2687
2688         * buildscripts/output-distance.py (main): oops. Add extra argument.
2689
2690 2006-06-05  Graham Percival  <gpermus@gmail.com>
2691
2692         * Documentation/user/music-glossary.tely: clarified example
2693         from Francisco Vila, thanks!
2694
2695 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2696
2697         * input/regression/spacing-section.ly: new file.
2698
2699         * lily/input.cc (programming_error): new function.
2700
2701         * lily/spacing-engraver.cc (try_music): new function. Accept
2702         spacing-section-event
2703
2704         * lily/spacing-spanner.cc (set_springs): take slices of all
2705         columns for spacing.
2706
2707         * lily/include/paper-column.hh (class Paper_column): add
2708         Paper_column::compare.
2709
2710         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2711
2712         * scm/define-music-types.scm (music-descriptions): add
2713         SpacingSectionEvent
2714
2715         * lily/music-iterator.cc (report_event): use programming_error for
2716         sending non-event error.
2717
2718         * lily/input.cc (programming_error): new function
2719
2720         * buildscripts/output-distance.py (main): use compare-XXX for
2721         compare files.
2722         (main): --threshold option, default at 0.30
2723
2724         * output-distance.py (main): add --threshold option.
2725
2726 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2727
2728         * scm/paper-system.scm (paper-system-annotate): fix problem when
2729         annotating an empty system
2730
2731 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2732
2733         * GNUmakefile.in: reinstate old web tar/copying.
2734
2735 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2736
2737         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2738         nothing changes. (Erik S) 
2739
2740         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2741         count. (Erik S)
2742
2743 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2744
2745         * scm/define-markup-commands.scm (whiteout): do not force
2746         foreground color of argument markup to black.
2747
2748         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2749         the left of the arrow, instead of below the arrow name, so that,
2750         when two little arrows are vertically stacked, their dimensions
2751         and name should not overlap. Add a color key parameter.
2752
2753         * scm/paper-system.scm (paper-system-annotate): Annotate
2754         next-space+next-padding instead of next-space. Annotate space
2755         between next-padding and next-space+padding, respectively, and
2756         following system extent and refpoint-Y-extent. Use colors.
2757
2758         * scm/page.scm (annotate-page): translate annotations slightly to
2759         the right.
2760
2761 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2762
2763         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2764         fix for x-staff slurs. Thanks Joe!
2765
2766         * buildscripts/output-distance.py
2767         (SystemLink.output_expression_change_count): keep track of changed
2768         details, and dump in details html page.
2769  
2770         * input/regression/figured-bass-staff.ly: add note about setting
2771         properties in Staff context.
2772
2773         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2774         add slurs and ties to support too.
2775
2776         * buildscripts/output-distance.py (main): set dest_dir
2777         argument. Add --max-count option.
2778
2779 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2780
2781         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2782         shortcuts for special unicode chars that are useful in chant
2783         notation.  Revised exisiting and added new comments.
2784
2785 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2786
2787         * make/mutopia-rules.make: remove duplicate recipe.
2788
2789 2006-06-02  Werner Lemberg  <wl@gnu.org>
2790
2791         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2792         Add support for U+0132 (IJ) and U+0133 (ij).
2793
2794 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2795
2796         * buildscripts/output-distance.py (FileLink): new class. collect
2797         info systems from one .ly file. 
2798         (FileLink.link_files_for_html): further tweaks.
2799
2800 2006-06-02  Graham Percival  <gpermus@gmail.com>
2801
2802         * tex/texinfo.tex: partial fix for @funindex.
2803
2804         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2805         break anything).
2806
2807 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2808
2809         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2810
2811         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2812         @example too. Backportme.
2813
2814 2006-06-02  Graham Percival  <gpermus@gmail.com>
2815
2816         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2817         from Werner Lemberg.
2818
2819 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2820
2821         * Documentation/user/music-glossary.tely: additional spanish
2822         updates and a lyrics fix in an example.
2823
2824 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2825
2826         * scm/define-grob-properties.scm: Previous patch contained
2827         spurious line from another patch not yet committed.  Fixed.
2828
2829         * scm/define-grob-properties.scm: Add missing doc strings for
2830         ancient notation.
2831
2832 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2833
2834         * buildscripts/output-distance.py
2835         (ComparisonData.write_text_result_page): separate the scores, sort
2836         by geo_score.
2837
2838         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2839         system signatures.
2840
2841         * buildscripts/output-distance.py (me_path): use argv[0] for
2842         sys.path extension
2843         (ComparisonData.img_cell): use colored borders.
2844
2845         * scm/stencil.scm (write-system-signature): escape newlines too.
2846         (write-system-signature): use (1,-1) interval for empty interval
2847
2848 2006-01-01  Graham Percival  <gpermus@gmail.com>
2849
2850         * Documentation/user/music-glossary.tely: Spanish updates
2851         from Francisco Vila.
2852
2853         * Documentation/user/lilypond-book.itely: addition from
2854         Vaclav Smilauer.
2855
2856         * Documentation/user/ various: edits, small additions
2857         from mailist, etc.
2858
2859 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2860
2861         * GNUmakefile.in (tree-lib-prefix-current):
2862         (tree-share-prefix-current): Use version number in tree, add
2863         `current' symlinks.
2864
2865 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2866
2867         * GNUmakefile.in: write VERSION, again.
2868
2869         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2870         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2871
2872         * stepmake/aclocal.m4: robuster version detection.
2873
2874         * buildscripts/output-distance.py
2875         (ComparisonData.create_html_result_page): copy only if file
2876         exists, fixup src paths.
2877
2878         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2879
2880 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2881
2882         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2883         Another datarootdir reto.
2884
2885         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2886         available.  This should be moved to postinstall-lilypond-doc.
2887
2888 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2889
2890         * GNUmakefile.in: simplify local-WWW-post. 
2891         remove -type l from find.
2892
2893         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2894         fixes. Don't follow symlinks.
2895         (ComparisonData.create_html_result_page): remove previous results.
2896         insert ../python in path.
2897
2898         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2899
2900 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2901
2902         * config.make.in (datadir): Add datarootdir to silence autoconf.
2903
2904         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2905
2906 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2907
2908         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2909
2910         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2911         slash beams too wide.
2912
2913 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2914
2915         * VERSION: release 2.9.7
2916         
2917 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2918
2919         * lily/relocate.cc (read_relocation_dir): Do not blindly
2920         dereference DIR.
2921
2922 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2923
2924         * lily/parser.yy: replace THIS by PARSER
2925
2926         * Documentation/index.html.in: add link to test-results.html page.
2927
2928         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2929
2930         * scm/translation-functions.scm (format-bass-figure): translate
2931         digits over 10 to the left
2932
2933         * scm/define-markup-commands.scm (translate-scaled): new markup.
2934
2935         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2936         7 glyph. 
2937
2938         * ly/engraver-init.ly: add Figured_bass_engraver
2939
2940         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2941
2942         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2943
2944         * lily/score-engraver.cc (announce_grob): only note START announces.
2945
2946         * lily/include/engraver-group.hh (Translator_group):
2947         acknowledge_hash_table_ is now drul.
2948
2949         * lily/engraver.cc (announce_end_grob): new method.
2950
2951         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2952
2953         * lily/translator-dispatch-list.cc (create): take start_end argument.
2954
2955         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2956         acknowledge_static_array_ to drul
2957
2958         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2959
2960         * scm/define-grob-interfaces.scm
2961         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2962
2963         * scm/define-grobs.scm (all-grob-descriptions): add
2964         BassFigureAlignmentPositioning
2965
2966         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2967         number stays up to date. Backportme.
2968
2969 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2970
2971         * Documentation/user/basic-notation.itely (Bar lines): Document
2972         the "||:" bar type. 
2973
2974 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2975
2976         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2977
2978         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2979         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2980         build.
2981
2982         * Resurrect `scons lily' build.
2983
2984         * SConstruct (symlink_tree): Bugfix: link
2985         music-drawing-routines.ps to file iso directory.
2986
2987         * lily/SConscript: Remove kpath-guile from LIBS.
2988
2989         * SConstruct (libdir_package_version): Typo.
2990         (configure): Comment-out fontforge for lack of fontforge.pc .
2991         Also add libdir* to environment.
2992
2993 2006-05-30  Graham Percival  <gpermus@gmail.com>
2994
2995         * Documentation/user/ various: minor additions from mailist and
2996         editing.
2997
2998 2006-05-30  Paco <fravd@ya.com>
2999
3000         * Documentation/user/music-glossary.tely: numerous corrections and
3001         some new translations.
3002
3003 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3004
3005         * BackportmeStart.
3006         
3007         * buildscripts/output-distance.py
3008         (ComparisonData.create_html_result_page): new routine: summarise
3009         results in HTML page with images. 
3010         (ComparisonData.create_text_result_page): create summary text files too.
3011
3012         * GNUmakefile.in (web-ext): package .signature files too. They
3013         compress well. 
3014
3015         * scm/stencil.scm (write-system-signature): typo.
3016
3017         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3018
3019         * scm/stencil.scm (write-system-signature): better escaping.
3020         only write signature for music systems, not for markup systems.
3021
3022         * scm/framework-ps.scm (output-framework): dump-signatures support
3023         for plain output.
3024
3025         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3026
3027         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3028         for -dno-point-and-click
3029
3030         * lily/grob.cc (get_print_stencil): don't read
3031         point_and_click_global to determine whether to set grob-cause.
3032
3033 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3034
3035         * buildscripts/output-distance.py (main): new function.
3036         (ComparisonData): new class.
3037
3038         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3039         careful with generating new LedgerLineSpanners.
3040
3041         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3042
3043         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3044         context. This fixes double ledger lines in output. 
3045
3046         * lily/system.cc (get_paper_system): remove 3 layer limit.
3047
3048         * buildscripts/output-distance.py (SystemLink.distance): new
3049         file. Compare signatures.
3050
3051         * python/safeeval.py (SafeEval.visitUnarySub): new file.
3052
3053         * lily/grob-array.cc (remove_duplicates): rename from
3054         uniq(). Sort before calling uniq() so it actually works.
3055
3056 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3057
3058         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3059         \version from lilypond file snippet.
3060         (Lilypond_file_snippet.ly): oops. typo.
3061         (find_toplevel_snippets): urgh. again.
3062
3063         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3064         prevent duplicated broken items in output.
3065
3066         * scm/framework-eps.scm (output-classic-framework): only dump if
3067         dump-signatures is set.
3068
3069         * scm/lily.scm (define-scheme-options): add dump-signatures option.
3070
3071         * scm/stencil.scm (write-system-signature): new routine: write
3072         python parseable signature of a separate paper system.
3073         BackportmeEnd.
3074         
3075 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
3076
3077         * lily/stanza-number-engraver.cc (process_music): use is_markup()
3078         iso is_string().
3079         include header.
3080
3081 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
3082
3083         * translator-group.cc: send music events to engravers in
3084         non-bottom contexts.
3085
3086         * tuplet-engraver.cc: process tuplet brackets in correct order.
3087
3088 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3089
3090         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3091         arg 2 might point us to a new binary (patch by Karl Hammar)
3092         
3093 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3094
3095         * VERSION (PACKAGE_NAME): release 2.9.6
3096
3097         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
3098
3099         * Documentation/user/*.itely: 2nd
3100         attempt: replace funindex -> findex globally.
3101
3102 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3103
3104         * input/no-notation/display-lily-tests.ly: fix \applyOutput
3105         test. Add \break, \pageBreak, \pageTurn, etc, tests.
3106
3107         * scm/define-music-display-methods.scm: display methods for
3108         breaks. Fix \applyOutput.
3109
3110 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3111
3112         * Documentation/user/macros.itexi: comment out funindex expansion. 
3113
3114         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3115         everywhere.
3116
3117         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3118         Karl Hammar. Backportme.
3119  
3120         * Documentation/user/advanced-notation.itely (Balloon help): idem.
3121
3122         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3123
3124         * Documentation/user/programming-interface.itely (Running a
3125         function on all layout objects): idem.
3126
3127         * Documentation/user/introduction.itely (Automated engraving):
3128         update \applyOutput syntax
3129
3130         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3131         remove debugging hook.
3132
3133         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3134         expansion. 
3135
3136         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3137
3138         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3139         TEXI2DVI_FLAGS to texi2dvi invocation. 
3140
3141 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
3142
3143         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3144         works. More work is done by iterator now, and engraver has been
3145         very much simplified.
3146
3147         * lily/translator-group.cc: try_music is now invoked through a
3148         listener
3149
3150         * lily/*-iterator.cc: Massive cleanups. Junked
3151         try_music_in_children globally. Renamed try_music to report_event,
3152         and made that method descend to a bottom context automatically.
3153
3154         * lily/event-iterator.cc: New file.
3155
3156         * lily/output-property-iterator.cc,
3157         lily/old-lyric-combine-music-iterator.cc: Removed.
3158
3159         * python/convert-rules.py: Modified the syntax for \applyOutput.
3160
3161 2006-05-23  Graham Percival  <gpermus@gmail.com>
3162
3163         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3164         creation.
3165
3166         * Documentation/user/ various: stuff that might have helped
3167         to fix the pdf creation, plus some minor doc additions.
3168
3169         * Documentation/user/changing-defaults.itely: remove @b from
3170         @b{ @internasref{foo}}; this breaks texi2dvi -E.
3171
3172 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3173
3174         * lily/beaming-pattern.cc (beamify): deal with negative start
3175         moments for beaming patterns.
3176
3177 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3178
3179         * lily/beaming-info.cc (beamify): new function: read beatLength
3180         and beatGrouping from context. 
3181
3182         * input/regression/beam-beat-grouping.ly (Module): new file.
3183
3184         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3185
3186         * lily/beam.cc (get_beam_segments): generate events for
3187         max_connect_ case too.
3188         (get_beam_segments): read Stem::max-beam-connect.
3189
3190         * input/regression/beam-single-stem.ly: new file.
3191
3192         * lily/stem.cc (set_beaming): use #f as signaling value for
3193         beamcount 0.
3194
3195         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3196
3197         * lily/beam.cc (set_beaming): read clip-edges property.
3198         (calc_direction): don't suicide for single stem.
3199
3200         * lily/beaming-info.cc (best_splitpoint_index): take bool*
3201         argument, remove 1<<15 hack. Remove clip_edges() 
3202
3203         * lily/hairpin.cc (print): only do padding for nonmusical bounds
3204
3205 2006-05-21  Graham Percival  <gpermus@gmail.com>
3206
3207         * Documentation/user/basic-notation.itely: reorg.
3208
3209         * Documentation/user/ various: minor fixes.
3210
3211 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
3212
3213         * lily/stencil-expression.cc (register_stencil_head): opps, append
3214         to cdr of static SCM object.
3215
3216 2006-05-19  Graham Percival  <gpermus@gmail.com>
3217
3218         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3219         update framework for command index.  DOC WRITERS: use @funindex
3220         instead of @cindex @code{}.
3221
3222         * Documentation/user/ various: replace @cindex @code{} => @funindex
3223
3224 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
3225
3226         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3227         case positions is set manually. 
3228
3229 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
3230         
3231         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3232         rules to Scheme.
3233
3234 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
3235
3236         * Documentation/user/changing-defaults.itely (Contexts explained):
3237         use absolute dimension for @image.
3238
3239         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3240         out image for illustration too.
3241         ($(outdir)/%.png): add more png <-> eps rules. 
3242
3243 2006-05-17  Graham Percival  <gpermus@gmail.com>
3244
3245         * Documentation/user/ various: remove trailing whitespace, cosmetic
3246         change to reduce changes produced by diff.
3247
3248 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
3249
3250         * lily/main.cc (do_chroot_jail): correctness tweak.
3251
3252         * python/lilylib.py (system): import subprocess in system () only.
3253
3254         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3255
3256         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3257         variable. Backportme.
3258
3259 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
3260         
3261         * lily/parser.yy: Change all syntax rules of type Music to SCM type
3262
3263 2006-05-17  Werner Lemberg  <wl@gnu.org>
3264
3265         * lily/lexer.ll (init_signature_has_table): Add
3266         `scm-scm-music-music'.
3267
3268         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3269         (Generic_prefix_music_scm): Add rule for it.
3270
3271         * lily/quote-iterator.cc (Quote_iterator::process): Handle
3272         `quoted-transposition' property.
3273
3274         * ly/music-functions-init.ly (transposedCueDuring): New function.
3275
3276         * scm/define-music-properties.scm (all-music-properties): Updated.
3277
3278         * Documenation/topdocs/NEWS.itely: Document it.
3279
3280 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
3281
3282         * python/lilylib.py (system): move import subprocess to system()
3283         definition. 
3284
3285         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3286
3287         * VERSION (PATCH_LEVEL): release 2.9.5
3288         
3289         * Documentation/topdocs/INSTALL.texi (Top): update versions and
3290         build instructions. 
3291
3292         * ly/engraver-init.ly: switch on hairpinToBarline by default.
3293
3294 2006-05-16  Graham Percival  <gpermus@gmail.com>
3295
3296         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3297
3298         * Documentation/user/ various: minor fixes.
3299
3300 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
3301
3302         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3303
3304 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
3305
3306         * Documentation/user/advanced-notation.itely (Instrument names):
3307         Modified obsolete instruction on how to move instrument names away
3308         from the staves. Hmm, at second thought the bug probably has been
3309         solved, so the full bug description should probably be removed.
3310
3311 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
3312
3313         * lily/dynamic-engraver.cc (typeset_all): hang ending on
3314         currentCommandColumn. 
3315
3316         * lily/hairpin.cc (print): also add padding for non-neighbor
3317         hairpin bounds.
3318
3319         * scm/define-context-properties.scm
3320         (all-user-translation-properties): add hairpinToBarline
3321
3322         * input/regression/hairpin-to-barline.ly: new file.
3323
3324         * lily/context.cc (internal_send_stream_event): thinko fix.
3325
3326         * lily/tie.cc (set_default_control_points): robustness fix.
3327
3328         * python/musicxml.py (Part.interpret): don't complain about
3329         incomplete measures.
3330
3331         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3332         new music if last_event_chord() returned None.
3333
3334         * python/musicxml.py (Part.interpret): skip back over chord notes.
3335
3336 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
3337         
3338         * lily/percent-repeat-engraver.cc, lily/parser.yy,
3339         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3340         lily/slash-repeat-engraver.cc,
3341         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3342         iterator sends PercentEvents
3343
3344         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3345         rework tuplets: send start/stop events to engraver
3346
3347         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3348         dispatchers event-source and events-below to Context
3349         
3350 2006-05-15  Graham Percival  <gpermus@gmail.com>
3351
3352         * Documentation/user/README.txt: update info for doc writers.
3353
3354         * Documentation/user/programming-interface.itely: integrate
3355         Nicolas' fixes for chapter rewrite.
3356
3357         * Documentation/user/ various: minor fixes.
3358
3359 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
3360
3361         * lily/clef-engraver.cc: cleanup.
3362
3363         * Documentation/user/GNUmakefile: dist context-example.eps too.
3364
3365         * lily/key-engraver.cc (create_key): use
3366         explicitKeySignatureVisibility for cancellation too. 
3367
3368         * lily/font-config.cc (init_fontconfig): don't close file if
3369         f==NULL. 
3370
3371 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
3372
3373         * Documentation/topdocs/NEWS.tely: niente and rotation news
3374
3375 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
3376
3377         * lily/include/stencil.hh
3378         * lily/stencil.cc (rotate): new function. Makes it possible
3379         to rotate a stencil around a given offset.
3380
3381         * lily/grob.cc (get_print_stencil): add rotation support
3382
3383         * lily/stencil-interpret.cc (interpret_stencil_expression):
3384         add rotation support
3385
3386         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3387
3388         * scm/define-grob-properties.scm: add 'rotation property
3389
3390         * scm/define-markup-commands.scm: add rotate markup command
3391         
3392         * scm/output-ps.scm: add rotation support in PostScript backend
3393
3394         * scm/output-svg.scm: add rotation support in SVG backend
3395
3396 2006-05-13  Graham Percival  <gpermus@gmail.com>
3397
3398         * Documentation/user/music-glossary.itely: French correction.
3399
3400         * Documentation/user/programming-interface.itely: major
3401         new docs, some reorg, some info from Nicolas.
3402
3403         * Documentation/user/ various: small fixes.
3404
3405 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
3406
3407         * Documentation/user/programming-interface.itely (Markup
3408         programmer interface): Remove duplicate text.
3409
3410 2006-05-12  Graham Percival  <gpermus@gmail.com>
3411
3412         * Documentation/user/context-example.eps: new file.
3413
3414         * Documentation/user/changing-defaults.itely: set up file to
3415         use eps image.
3416
3417         * Documentation/user/programming-interface.itely: changes
3418         from mailist.
3419
3420 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
3421
3422         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3423
3424 2006-05-11  Graham Percival  <gpermus@gmail.com>
3425
3426         * Documentation/user/programming-interface.itely: first round of
3427         editing and merging emails from Nicolas.
3428
3429         * Documentation/user/scheme-tutorial: minor edit.
3430
3431 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
3432
3433         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3434         XML attributes.
3435         (Xml_node.message): use it.
3436
3437         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
3438         oops. Add duration argument.
3439
3440 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
3441
3442         * lily/paper-column-engraver.cc (make_columns):
3443         * scm/define-grobs.scm: Revert my previous change and set the default
3444         in define-grobs.scm instead.
3445
3446 2006-05-09  Graham Percival  <gpermus@gmail.com>
3447         
3448         * Documentation/user/changing-defaults.itely: general editing,
3449         info about \set and \override.
3450
3451         * Documentation/user/tweaking.itely, advanced-notation.itely:
3452         fixes from Dave Luttinen, thanks!
3453
3454 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
3455
3456         * lily/paper-column-engraver.cc (make_columns): By default, a column
3457         needs to be breakable.
3458
3459 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
3460
3461         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3462         Attributes methods
3463         (musicxml_time_to_lily): idem
3464         (musicxml_key_to_lily): idem
3465         (instrument_drumtype_dict): dict for supported drumtypes.
3466         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3467         moments and pending mm rests
3468         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3469         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3470         (musicxml_voice_to_lily_voice): add mode change.
3471         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3472         speed and less memory usage (factor 5 to 10).
3473         (convert): write -defs.ly  and driver file separately so people
3474         can script their own part extraction.
3475
3476         * python/musicxml.py (minidom_demarshal_node): new function:
3477         separate minidom handling.
3478         (lxml_demarshal_node): new function: support lxml.etree too.
3479         (Xml_node.message): new function: verbose error message, with XML
3480         path to offending node.
3481         (Attributes.get_measure_length): sane interface to MusicXML attributes.
3482         (Part_list.generate_id_instrument_dict): new method: collect
3483         instrument names, to be able to set drum_type.
3484         (Part.interpret): handle underfull measures
3485         (Part.interpret): assign instrument names.
3486
3487         * python/musicexp.py (Output_printer.close): new method
3488         (MusicWrapper.print_ly): new class: support other modes,
3489         eg. \drummode
3490         (BarCheck.print_ly): new class. Support bar checks, with comments
3491         and fancy barchecks. 
3492         (NoteEvent.__init__): also set drum_type for drum notes.
3493         (MultiMeasureRest.lisp_expression): dump mm rests.
3494
3495         * lily/paper-column-engraver.cc (stop_translation_timestep): set
3496         line-break-permission if forbidBreak is not set.
3497
3498 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
3499
3500         * scm/define-context-properties.scm:
3501         * scm/define-grob-properties.scm:
3502         * scm/define-grobs.scm:
3503         * scm/define-music-display-methods.scm:
3504         * scm/define-music-properties.scm:
3505         * scm/define-music-types.scm:
3506         * scm/music-functions.scm:
3507         * ly/declarations-init.ly:
3508         * lily/include/constrained-breaking.hh:
3509         * lily/system.cc:
3510         * lily/spaceable-grob.cc:
3511         * lily/simple-spacer.cc:
3512         * lily/paper-score.cc:
3513         * lily/paper-column.cc:
3514         * lily/paper-column-engraver.cc:
3515         * lily/item.cc:
3516         * lily/gourlay-breaking.cc:
3517         * lily/constrained-breaking.cc:
3518         * python/convertrules.py:
3519         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3520         "page-break-penalty" and "line-break-permission".
3521         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3522         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3523
3524         * lily/bar-engraver.cc:
3525         * lily/beam-engraver.cc:
3526         * lily/forbid-break-engraver.cc:
3527         * lily/ligature-engraver.cc:
3528         * lily/paper-column-engraver.cc:
3529         * lily/percent-repeat-engraver.cc:
3530         * lily/score-engraver.cc:
3531         * lily/score-engraver.hh:
3532         * lily/paper-column-engraver.hh:
3533         Inter-engraver communication regarding line breaks is done through context
3534         properties (Score.forbidBreak) instead of function calls.
3535
3536 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
3537
3538         * VERSION (PACKAGE_NAME): release 2.9.4
3539
3540 2006-05-08  Graham Percival  <gpermus@gmail.com>
3541
3542         * Documentation/user/working.itely: proofreading from Dave
3543         Luttinen, thanks.
3544
3545         * Doucmentation/user/README.txt: updated with manual style info.
3546
3547         * Documentation/user/ various: trim linewidth to 78 chars.
3548
3549 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3550
3551         * scm/define-grob-properties.scm (all-internal-grob-properties):
3552         remove chord-tremolo property.
3553
3554         * lily/beam.cc (get_beam_segments): don't use stem position as
3555         base for broken ends.
3556
3557 2006-05-06  Graham Percival  <gpermus@gmail.com>
3558
3559         * Documentation/user/putting.itely: proofreading from Dave
3560         Luttinen, thanks!
3561
3562         * Documentation/user/ various: more reorg and clarifications.
3563
3564 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3565
3566         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3567
3568         * ly/music-functions-init.ly: new function featherDurations
3569
3570         * lily/beam.cc: read grow-direction for feathered beaming.
3571
3572         * Documentation/topdocs/NEWS.tely (Top): typo.
3573
3574 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3575
3576         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3577         tremolo beams.
3578
3579 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
3580         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3581         used by music streams.
3582
3583         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3584         lily/stream-event.cc, lily/stream-event-scheme.cc,
3585         lily/listener.cc, lily/scheme-listener.cc,
3586         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3587         lily/include/stream-event.hh, lily/include/listener.hh,
3588         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3589         Created data structures for music streams.
3590         
3591 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3592
3593         * lily/beam.cc (get_beam_segments): new function. Reorganise the
3594         construction of a beam. 
3595         (print): rewrite. 
3596
3597         * flower/include/std-vector.hh (default_compare): use only one comparison.
3598
3599         * scm/define-markup-commands.scm (note-by-number): remove debug display.
3600         (note-by-number): further attachment fixes.
3601
3602         * scm/lily-library.scm (ordered-cons): new function.
3603         (interval-index): new function
3604
3605         * lily/note-head-scheme.cc (LY_DEFINE): new file.
3606
3607         * lily/note-head.cc (get_stem_attachment): new function.
3608
3609         * scm/define-markup-commands.scm (note-by-number): read 'style
3610         property. 
3611
3612         * input/regression/markup-note.ly: show note-head style option.
3613
3614         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3615         triangle head.
3616
3617 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
3618
3619         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3620
3621         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3622
3623         * lily/include/constrained-breaking.hh: GCC 4 fix.
3624
3625 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
3626
3627         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3628         Replace it with functions get_line_forces and get_line_configuration.
3629         (class Simple_spacer): Make data private.
3630         Rewrite compression algorithm to be faster and simpler.
3631
3632         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3633         * lily/gourlay-breaking.cc (solve):
3634         * lily/constrained_breaking.cc (space_line):
3635         Change it to the new simple-spacer code.
3636
3637         * lily/paper-score.cc (get_paper_systems):
3638         (Paper_score):
3639         (process):
3640         Delay breaking the systems until they are requested.
3641         (find_break_indices):
3642         Use vsize for indices.
3643         (calc_breaking):
3644         Move the "Calculating line breaks" message here.
3645
3646         * lily/system.cc (pre_processing):
3647         Move the "Calculating line breaks" message away from here.
3648         (break_into_pieces):
3649         Allow multiple calls to this function in sequence (with touching-but-
3650         not-overlapping breakpoints).
3651
3652         * lily/constrained-breaking.cc:
3653         Replace most of the get_XXXX functions with get_line_details.
3654         Only calculate the force for each line. Calculate configurations only
3655         for the lines we will actually use.
3656         Replace cols_ with lines_.
3657
3658 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3659
3660         * mf/GNUmakefile (depth): remove FC_FIND.
3661
3662         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3663
3664         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3665
3666         * scm/framework-ps.scm (write-preamble): new function.
3667         (write-preamble): load mac fonts via fondu, even if gs-font-load
3668         is set.
3669
3670 2006-05-03  Werner Lemberg  <wl@gnu.org>
3671
3672         * mf/GNUmakefile (FC_FIND): Fix typo.
3673
3674 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
3675
3676         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3677
3678 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3679
3680         * stepmake/aclocal.m4: run python-config for crosscompiling
3681         flags. 
3682
3683         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3684         -f png for HTML, TEXINFO formats. 
3685
3686         * input/tutorial/lbook-html-test.html: new file.
3687
3688         * lily/include/tie-formatting-problem.hh (class
3689         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3690         [column, direction]. This fixes laissez vibrer ties.
3691  
3692         * flower/include/tuple.hh (struct Tuple2): new file.
3693
3694         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3695         $(FCMATCH), only if $(NCSB_DIR) not set. 
3696
3697         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3698
3699         * config.make.in (DOCUMENTATION): set FCMATCH.  
3700
3701         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3702
3703 2006-05-03  Graham Percival  <gpermus@gmail.com>
3704
3705         * Documentation/user/ various: final round of reorg.
3706
3707         * Documentation/user/instrument-notation.itely: some more
3708         fixes from Eduardo, thanks!
3709
3710 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3711
3712         * VERSION (PACKAGE_NAME): release 2.9.3
3713
3714         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3715
3716         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3717
3718 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3719
3720         * scm/define-grob-properties.scm (all-user-grob-properties):
3721         Correct typo, thanks to Eduardo.
3722
3723 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3724
3725         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3726
3727         * buildscripts/lilypond-words.py (F): indent fix.
3728
3729         * input/regression/tie-arpeggio-collision.ly: new file.
3730
3731         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3732         function: store outlines per column rank.
3733
3734         * lily/include/tie-configuration.hh (class Tie_configuration): add
3735         column_ranks_ to specification and configuration, to distinguish
3736         between ties for different heads in arpegiated chords.
3737
3738         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3739
3740         * *.py: more 4 space indents.
3741
3742         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3743
3744 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3745
3746         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3747
3748 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3749
3750         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3751
3752         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3753
3754         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3755
3756 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3757
3758         * python/convertrules.py (conv): indent 4 for python files.
3759
3760 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3761
3762         * Documentation/user/changing-defaults.itely (Creating contexts):
3763         Clarify \new semantics.
3764
3765 2006-04-28  Graham Percival  <gpermus@gmail.com>
3766
3767         * Documentation/user/ various: major new sections in the
3768         Learning manual, slight reorg elsewhere.
3769
3770 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3771
3772         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3773
3774         * scm/framework-ps.scm (output-framework): remove PageMedia
3775
3776 2006-04-27  Graham Percival  <gpermus@gmail.com>
3777
3778         * Documentation/user/ tweaks.itely, working.itely: new
3779         files, being more advanced "learning manual" chapters.
3780
3781         * Documentation/user/ tutorial, putting, lilypond: reorg.
3782
3783 2006-04-26  Graham Percival  <gpermus@gmail.com>
3784
3785         * input/regression/lyric-combine-polyphonic.ly: fixed test
3786         (no more "can't find context `one'" error).
3787
3788 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3789
3790         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3791
3792         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3793         
3794 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3795
3796         * lily/relocate.cc (read_relocation_dir): new function.
3797
3798 2006-04-26  Graham Percival  <gpermus@gmail.com>
3799
3800         * Documentation/user/instrument-notation.itely: a few more fixes
3801         from Eduardo, thanks!
3802
3803         * Documentation/user/README.txt: new file; contains info on
3804         style that used to be in lilypond.tely.
3805
3806         * Documentation/user/ various: first round of doc reorg.
3807
3808         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3809         graphic; this probably causes problems on some pdf
3810         viewers, notably Adobe Acrobat.
3811
3812 2006-04-24  Graham Percival  <gpermus@gmail.com>
3813
3814         * Documentation/user/instrument-notation.itely: many alterations
3815         to Vocal music, from Eduardo Viera.
3816
3817 2006-04-23  Graham Percival  <gpermus@gmail.com>
3818
3819         * Documentation/user/instrument-notation.itely: fix \new
3820         instead of \context problem.
3821
3822 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3823
3824         * lily/relocate.cc (expand_environment_variables): new function.
3825         (read_line): id.
3826         (read_relocation_file): id.
3827
3828         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3829
3830 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3831
3832         * ly/engraver-init.ly: remove old comments from TabVoice
3833
3834 2006-04-20  Graham Percival  <gpermus@gmail.com>
3835
3836         * Documentation/user/instrument-notation.itely: added Erlend's
3837         latest doc patch, thanks!
3838
3839 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3840
3841         * lily/include/slur.hh:
3842         * lily/slur.cc:
3843         * lily/phrasing-slur-engraver.cc:
3844         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3845         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3846         Slur_engraver:: and putting it in
3847         Slur::auxiliary_acknowledge_extra_object ().
3848
3849         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3850
3851         * lily/note-collision.cc: fix a comment
3852
3853 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3854
3855         * stepmake/bin/add-html-footer.py: fix footer position in
3856         generated html files: before </body> and </html> tags.
3857
3858 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3859
3860         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3861         Earlier successive `make' commands finally compiled ok.
3862
3863         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3864
3865 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3866
3867         * lily/include/stem-tremolo.hh:
3868         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3869         callers.
3870
3871         * lily/lookup.cc:
3872         * lily/include/lookup.hh: add rotated_box ()
3873
3874 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3875
3876         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3877         been generated. Fixes "can't get `--help'" bug after make clean.
3878
3879         * THANKS: alphabetize contributors.
3880
3881 2006-04-17  Graham Percival  <gpermus@gmail.com>
3882
3883         * Documentation/user/instrument-notation.itely: added Erlend's
3884         tabs and banjo doc patch.  Thanks!
3885
3886 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3887
3888         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3889
3890         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3891
3892         * scm/output-lib.scm: add some more predefined string tunings.
3893
3894         * Documentation/user/instrument-notation.itely: and doc them.
3895
3896 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3897
3898         * ly/engraver.ly: Remove obsolete comments.
3899
3900         * ly/gregorian-init.ly: Define default layout block.
3901
3902         * input/puer-fragment.ly: Updated and extended.
3903
3904 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3905
3906         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3907         pdf conversion behaviour.
3908
3909         * flower/file-name.cc (dir_name)
3910         (get_working_directory): Move from relocate.cc.
3911
3912         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3913         
3914         * lily/relocate.cc: Encapsulate sys/stat.h in
3915         HAVE_STAT_H.
3916
3917 2006-04-14  Graham Percival  <gpermus@gmail.com>
3918
3919         * Documentation/user/ various: small updates from Cameron
3920         and Juergen, thanks!
3921
3922         * Documentation/user/ various: small updates of my own.
3923
3924         * THANKS: 2.7 -> 2.8.
3925
3926 2006-04-11  Graham Percival  <gpermus@gmail.com>
3927
3928         * scm/define-context-properties.scm: typo.
3929
3930         * Documentation/user/ : many more small updates.
3931
3932 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3933
3934         * scm/define-music-types.scm: disposed "docme".
3935
3936 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3937
3938         * lily/hairpin.cc: make niente circles a bit smaller.
3939
3940 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3941
3942         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3943         get-pfa and get-*-fonts targets.
3944
3945 2006-04-10  Graham Percival  <gpermus@gmail.com>
3946
3947         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3948         music-glossary, programming-interface: more minor fixes
3949         from mailist.
3950
3951         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3952
3953         * scm/define-context-properties.scm: another old \property update.
3954         This time tested for compiling!
3955
3956 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3957
3958         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3959
3960 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3961
3962         * scm/define-context-properties.scm (all-user-translation-properties): 
3963         * Documentation/user/global.itely (Page formatting): Compile fix.
3964
3965 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3966
3967         * Documentation/user/advanced-notation.itely (Polymetric
3968         notation): Update the example to use the "+" symbol and add link
3969         to input/test/compound-time.ly.
3970
3971 2006-04-08  Graham Percival  <gpermus@gmail.com>
3972
3973         * scm/define-grob-properties.scm: clarify docs for #'direction.
3974
3975         * scm/define-context-properties.scm: update old \property override.
3976
3977         * Documentation/user/ advanced-notation, global, lilypond-book:
3978         more minor doc updates.
3979
3980 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3981
3982         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3983
3984         * scm/backend-library.scm (search-gs): oops.
3985
3986 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3987
3988         * scripts/lilypond-book.py (output): use base, not filename for href.
3989
3990         * scm/backend-library.scm: only look for gs.
3991
3992         * scripts/lilypond-book.py (output): fix printfilename.
3993
3994         * lily/parser.yy (music_function_musicless_prefix): fold together
3995         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3996
3997         * lily/slur.cc (print): only set font-size if not set yet.
3998
3999         * lily/slur-configuration.cc (add_score): improved layout of debug
4000         scoring output.
4001
4002 2006-04-05  David Feuer  <David.Feuer@gmail.com>
4003
4004         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4005         (draw_circle): Hopefully fixed regression.
4006         Improved documentation for several procedures.
4007         
4008 2006-03-04  Werner Lemberg  <wl@gnu.org>
4009
4010         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4011
4012 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
4013
4014         * scripts/musicxml2ly.py (bindir): add dynamic
4015         relocation. 
4016
4017 2006-04-04  Graham Percival  <gpermus@gmail.com>
4018
4019         * Documentation/user/ basic-notation, advanced-notation, putting,
4020         instrument-notation, invoking, lilypond, THANKS: another ream of small
4021         fixes from the Doc Helpers.
4022
4023 2006-04-03  David Feuer  <David.Feuer@gmail.com>
4024
4025         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4026
4027         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4028
4029         * Cleaned up interfaces between PostScript and Scheme, and moved
4030         computations from PostScript to Scheme:
4031
4032         * music-drawing-routines.ps
4033         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
4034         with stroke_and_fill throughout.
4035         (euclidean_length, print_letter, draw_box): Deleted unused
4036         procedures.  If someone needs draw_box, implement it using
4037         draw_round_box; don't duplicate code.
4038         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4039         Refactored/cleaned up interfaces.
4040         (mark_URI): Moved.
4041
4042         * output-ps.scm: reordered arguments to PostScript functions to
4043         match new interfaces
4044         (glyph-string): Rewrote glyph-string.
4045         (grob-cause): Replaced string-append with format.
4046         (repeat-slash): Rewrote to do computation here.
4047         (round-filled-box): Rewrote to do computation here.
4048
4049 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
4050
4051         * stepmake/stepmake/generic-targets.make: add cvs-clean target
4052
4053         * stepmake/stepmake/toplevel- targets.make: print help info about
4054         cvs-clean
4055
4056 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
4057
4058         * input/regression/hairpin-circled.ly: new file
4059
4060 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
4061
4062         * lily/hairpin.cc (print): add support for circled tip
4063
4064         * scm/define-grob-properties.scm: add circled-tip parameter
4065
4066         * scm/define-grobs.scm: init circled-tip to false
4067         
4068 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
4069
4070         * scm/music-functions.scm (quote-substitute): set
4071         iterators-ctor. 
4072
4073 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
4074
4075         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4076         BSTINPUTS. 
4077
4078         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4079
4080         * scm/output-ps.scm (glyph-string): revert cid selectfont.
4081
4082 2006-03-31  David Feuer  <david.feuer@gmail.com>
4083         
4084         * scm/framework-ps.scm:
4085         
4086         * scm/output-ps.scm: glyph-string now produces smaller, more
4087         readable, and probably faster PostScript.  Several findfont
4088         scalefont setfont instances changed to selectfont
4089         Hacked-up string-appends changed to formats.
4090
4091         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4092         
4093 2006-03-30  Graham Percival  <gpermus@gmail.com>
4094
4095         * scm/lily-library.scm: make "no version" warning message more polite.
4096
4097         * lily/music.cc: add double quotes to failed octave check.
4098
4099         * Documentation/user/ advanced-notation, changing-defaults,
4100         instrument-notation, invoking, music-glossary: whole bunch of minor
4101         fixes from mailist.
4102
4103 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
4104
4105         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4106         $(buildscriptdir) iso. depth.
4107
4108         * VERSION (PACKAGE_NAME): release 2.9.1
4109
4110 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4111
4112         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4113
4114         * VERSION (PATCH_LEVEL): bump version number.
4115
4116         * flower/include/guile-compatibility.hh (scm_from_uint32): add
4117         scm_from_uint32 ()
4118
4119         * lily/pango-font.cc (pango_item_string_stencil): use
4120         scm_from_uint32 ()
4121
4122         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4123         $(outdir)/emmentaler-%.svg): remove canary.
4124
4125         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4126         glyphnames if we have a ttf font.
4127
4128 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
4129
4130         * Documentation/user/advanced-notation.itely (Font selection):
4131         Corrected reference to the font-family-override.ly example.
4132
4133 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
4134         
4135         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4136         stem-tremolo object in the stem (or else the stem might not be
4137         long enough).
4138
4139 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4140
4141         * lily/ttf.cc (print_trailer): only print existing glyphs.
4142
4143 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
4144
4145         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4146         position the tremolo based on the position of the notehead.
4147
4148         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4149         notes and update the texidoc line with the new positioning rules.
4150         
4151 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4152
4153         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4154
4155         * scripts/lilypond-book.py (Module): set default for linewidth if
4156         preamble not found.
4157
4158 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4159
4160         * VERSION (PACKAGE_NAME): release 2.9.0.
4161
4162         * input/regression/stem-tremolo-position.ly: new file.
4163
4164         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4165
4166 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
4167
4168         * lily/stem-tremolo.cc (print): position
4169         the tremolo depending only on the end of the stem
4170         and not on the notehead
4171         (raw_stencil): center, on the middle staff line, the
4172         flag that is closest to the end of the stem (previously
4173         the bottom flag)
4174         (calc_width): add this callback to shorten a tremolo when
4175         it is beamed or it is stemup with a flag
4176         (style): add this callback to make a tremolo rectangular when
4177         it is beamed or it is stemup with a flag
4178         (rotated_box): this is like Lookup::beam but makes a rotated
4179         rectangle instead of a parallelogram
4180
4181         * lily/stem.cc (calc_stem_info): make sure the stem
4182         is long enough to fit the tremolo
4183         (calc-length): reduce the length of tremolo stems since the
4184         tremolo code is now capable of better positioning
4185
4186         * scm/define-grobs.scm: make calc_width the default beam-width
4187         callback for stem-tremolo and add the style callback
4188                 
4189 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4190
4191         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4192         case. 
4193
4194 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4195
4196         * lily/ttf.cc (make_index_to_charcode_map): restore old
4197         cmap. 
4198
4199 2006-03-28  Werner Lemberg  <wl@gnu.org>
4200
4201         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4202
4203 2006-03-28  Graham Percival  <gpermus@gmail.com>
4204
4205         * THANKS: update for 2.9, add section for Documentation helpers.
4206
4207         * Documentation/topdocs/NEWS.tely: compile fix.
4208
4209         * Documentation/user/ basic-notation, global, advanced-notation,
4210         examples.itely: minor fixes from mailist.
4211
4212 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
4213
4214         * mf/feta-bolletjes.mf: match width of solfa notes with normal
4215         note heads. 
4216
4217         * lily/ttf.cc (print_trailer): use it.
4218
4219         * lily/pango-font.cc (get_unicode_name): new function.
4220
4221         * lily/ttf.cc (make_index_to_charcode_map): move function from
4222         open-type-font.cc
4223         (print_trailer): substitute uniXXXX name if applicable. 
4224
4225         * lily/pango-font.cc (get_index_to_charcode_map): new function.
4226         (pango_item_string_stencil): use it to generate uniXXXX names.
4227
4228         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4229         note heads, for uniform widths in shape note output.
4230         (overdone_heads): hmm. remove them again.
4231
4232         * scripts/lilypond-book.py (output): add links to filenames.
4233
4234         * Documentation/topdocs/INSTALL.texi (Top): update versions.
4235
4236         * lily/note-collision.cc (get_clash_groups): only consider when
4237         Note_column::dir <> CENTER. 
4238
4239         * scripts/lilypond-book.py (get_option_parser): init output_name
4240         to ''. 
4241
4242 2006-03-24  Graham Percival  <gpermus@gmail.com>
4243
4244         * Documentation/topdocs/NEWS.tely: add @end itemize
4245
4246         * Documentation/user/ global, advanced-notation: minor
4247         stuff from mailist.
4248
4249 2006-03-23  Graham Percival  <gpermus@gmail.com>
4250
4251         * Documentation/user/ lilypond.tely, music-glossary,
4252         preface: housekeeping; 2005->2006, remove "notes for 2.6"
4253
4254 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
4255
4256         * mf/GNUmakefile: don't install .enc files.
4257
4258         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4259
4260         * VERSION (PATCH_LEVEL): bump to 2.9.0
4261
4262 2006-03-22  Graham Percival  <gpermus@gmail.com>
4263
4264         * Documentation/user/advanced-notation.itely: minor fixes
4265         from mailist.
4266
4267 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
4268
4269         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4270
4271         * branch lilypond_2_8
4272
4273 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
4274
4275         * scripts/lilypond-book.py (samefile): new function, for windoze
4276         compatibility.
4277
4278 2006-03-21  Graham Percival  <gpermus@gmail.com>
4279
4280         * ly/engraver-init.ly: add info about StaffGroup.
4281
4282 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
4283
4284         * input/regression/stem-direction-context.ly: idem.
4285
4286         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4287
4288         * THANKS: add Mats.
4289
4290         * input/regression/page-layout-twopass.ly: comment out \markup so
4291         tweak-file is left.
4292
4293         * lily/instrument-name-engraver.cc (finalize): add to instrument
4294         name global System. This also fixes chopped instrument names, but
4295         doesn't crash when there are slurs/beams.
4296
4297         * lily/slur-configuration.cc (add_score): disallow negative slur
4298         scores.
4299         
4300 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4301
4302         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4303
4304         * lily/instrument-name-engraver.cc (process_music): kludge: add
4305         InstrumentName spanner to axis group of left bound. Fixes chopped
4306         off instrument names in EPS images.
4307
4308         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4309
4310         * scripts/abc2ly.py (option_parser): update to 2.7.40
4311
4312 2006-03-20  Graham Percival  <gpermus@gmail.com>
4313
4314         * THANKS: move small doc contributors to SUGGESTIONS.
4315
4316         * Documentation/user/ basic-notation, advanced-notation,
4317         global: small changes from mailist.
4318
4319 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4320
4321         * Documentation/user/advanced-notation.itely (Text marks): update
4322         for new rehearsalMarkAlignSymbol convention.
4323
4324         * VERSION (PATCH_LEVEL): bump version.
4325
4326         * input/test/instrument-name-align.ly: new file.
4327
4328         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4329
4330         * input/test/instrument-name-align.ly: new file. Document how to
4331         align instrument names.
4332
4333         * lily/mark-engraver.cc: remove properties.
4334
4335         * scm/define-context-properties.scm
4336         (all-user-translation-properties): remove align symbol properties
4337         for barnumber/reh. mark.
4338
4339         * lily/break-align-interface.cc (self_align_callback): new
4340         interface, new function. Look at complete alignment. This handles
4341         tunable break alignments in case break-align-symbols are missing.
4342
4343         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4344
4345         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4346
4347         * python/convertrules.py (conv): mark/bar number alignment rule.
4348
4349         * lily/break-align-interface.cc (calc_positioning_done): also
4350         store offset from last visible break-alignment to its
4351         neighbor. This makes alignment on non-visible objects more reliable.
4352
4353         * po/lilypond.pot (Module): ran po-replace.
4354
4355         * input/regression/tie-single-manual.ly (Module): new file.
4356
4357         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4358         look at has_manual_position_.
4359         (from_ties): set has_manual_position_ if tie has staff-position set.
4360
4361         * lily/tuplet-bracket.cc (calc_positions): idem.
4362
4363         * lily/tuplet-number.cc (print): don't print tupletnumber if it
4364         doesn't span time.
4365
4366 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4367
4368         * scm/define-markup-commands.scm (smallCaps): new markup command
4369         for turning a text to small caps using smaller font size and upper
4370         casing.
4371
4372 2006-03-17  Graham Percival  <gpermus@gmail.com>
4373
4374         * Documentation/user/ examples, instrument-notation,
4375         advnaced-notation: minor fixes from mailist.
4376
4377 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4378
4379         * Documentation/user/tutorial.itely (First steps): change example
4380         to verbatim.  
4381
4382 2006-03-17  Graham Percival  <gpermus@gmail.com>
4383
4384         * Documentation/user/ examples, advanced: minor changes from mailist.
4385
4386         * THANKS: add Geoff Horton, for documentation stuff.
4387
4388 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4389
4390         * python/lilylib.py (system): revert have_select kludge.
4391
4392         * Documentation/user/tutorial.itely (Commenting input files):
4393         update version numbers in doc. 
4394
4395         * scm/define-grob-interfaces.scm (multi-measure-interface): add
4396         bound-padding to multi-measure-interface
4397
4398 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4399
4400         * input/test/engraver-example.ily: update version number.
4401
4402         * VERSION (PACKAGE_NAME): release 2.7.39
4403
4404         * lily/note-spacing.cc (get_spacing): heighten threshold where
4405         accidentals/arpeggios influence previous spacing fully.
4406
4407         * lily/rest.cc (y_offset_callback): only use direction if
4408         staff-position wasn't set before.
4409
4410         * lily/bar-number-engraver.cc: add support for
4411         barNumberAlignSymbol. 
4412         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4413
4414         * lily/pointer-group-interface.cc (set_ordered): new function. 
4415         (add_unordered_grob): new function.
4416
4417         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4418         to ordered, unless the opposite has been proved.  This fixes
4419         random reordering of large object groups across linebreaks,
4420         eg. beams.
4421
4422         * lily/main.cc (do_chroot_jail): printf format fix.
4423
4424         * lily/tie-formatting-problem.cc (generate_configuration):
4425         multiply y-shift for dot with direction.
4426  
4427         * scm/define-markup-commands.scm (note-by-number): put (magstep
4428         size) in y-attach too.
4429
4430         * Documentation/topdocs/NEWS.tely (Top): show override.
4431
4432         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4433         direction for stems.
4434         
4435 2006-03-15  Graham Percival  <gpermus@gmail.com>
4436
4437         * Documentation/user/ changing-defaults, global: minor
4438         fixes from mailist.
4439
4440 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4441
4442         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4443
4444         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4445         breakable items after uniformly stretched notes.
4446
4447         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4448         outline with outer edge of note heads. This prevents infinity
4449         problems with tied whole notes.
4450
4451         * scripts/lilypond-book.py (do_file): use os.popen
4452
4453         * python/convertrules.py (conv): add rule for Stem #'beamed-*
4454
4455 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
4456
4457         * Documentation/user/invoking.itely: Add ragged-right to bug report
4458         guidelines.
4459
4460 2006-03-14  Graham Percival  <gpermus@gmail.com>
4461
4462         * Documentation/user/global.itely: small fix from mailist.
4463
4464 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
4465
4466         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4467         file descriptor returned by tempfile.mkstemp() when writing
4468         to tmpfile and closing it. Solves problem with unlink(tmpfile)
4469         on mingw.
4470
4471 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4472
4473         * po/fi.po: newline bugfix.
4474
4475 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4476
4477         * scm/paper.scm (paper-alist): Rounding fixes.
4478
4479 2006-03-13  Graham Percival  <gpermus@gmail.com>
4480
4481         * Documentation/user/ changing-defaults, instrument-notation,
4482         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
4483
4484 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
4485
4486         * po/fi.po: update.
4487
4488 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4489
4490         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4491         mailto: to http:// 
4492
4493         * python/lilylib.py (print_environment): move ps_page_count to
4494         lilypond-book.py
4495
4496 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4497
4498         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4499
4500         * scm/framework-ps.scm (embed-document): new function. Use to
4501         embed PFA files.
4502
4503         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4504
4505 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
4506
4507         * Documentation/user/instrument-notation.itely (Setting simple
4508         songs): Added \book{...} around the full example, so the separate
4509         markups are included in the printed example. 
4510
4511 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4512
4513         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4514         tmphandle.
4515
4516         * python/lilylib.py (system): rewrite system() using
4517         subprocess. Remove >& redirection trickery.
4518
4519 2006-03-11  Graham Percival  <gpermus@gmail.com>
4520
4521         * Documentation/user/ changing-defaults, global, scheme-tutorial,
4522         notation-appendices.itely: minor fixes from mailist.
4523
4524 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4525
4526         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4527         unsplit man also needs images.
4528
4529         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4530
4531         * VERSION (PACKAGE_NAME): 2.7.38 released.
4532
4533 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4534
4535         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4536         log in output dir.
4537
4538 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
4539
4540         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4541         respects the Score.skipTypesetting property.
4542         
4543 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4544
4545         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4546         Prolog. No %%EOF after CFF file.
4547
4548 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
4549         
4550         * lily/constrained-breaking.cc (get_max_systems): used to return a
4551         much too big value
4552         (combine_demerits): use pointers to reduce copying data
4553         (calc_subproblem): idem
4554         (get_page_penalty): add page turn penalties
4555         
4556 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4557
4558         * Documentation/user/invoking.itely (Invoking lilypond): better
4559         explanation of -e usage.
4560
4561         * lily/main.cc (main_with_guile): don't append to
4562         init_scheme_code_string
4563
4564         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4565
4566         * Documentation/user/invoking.itely: add note about MacOS X scripts.
4567
4568         * scripts/convert-ly.py (do_options): don't print help for
4569         --show-rules rule.
4570
4571         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4572         @code and @example. Update from texinfo.tex from CVS.
4573
4574 2006-03-08  Graham Percival  <gpermus@gmail.com>
4575
4576         * Documentation/user/scheme-tutorial.itely: clarifies distances
4577         measured in staff-spaces.
4578
4579 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4580
4581         * lily/slur.cc (outside_slur_callback): only calculate offsets if
4582         consider[k] is true.
4583
4584         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4585
4586         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4587         consider columns that have originals.  Unifies spacing for mm
4588         rests around line breaks.
4589
4590         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4591         (set_text_rods): idem.
4592         (calculate_spacing_rods): new function: share code between
4593         set_text_rods and set_spacing_rods.
4594         (set_text_rods): take extents of bounds into account.  
4595
4596 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4597
4598         * Documentation/user/basic-notation.itely (Writing music in
4599         parallel): don't use relative.
4600
4601 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4602
4603         * ly/music-functions-init.ly (Module): add shiftDurations
4604
4605         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4606
4607         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
4608
4609         * ly/engraver-init.ly: init vocalName to nil.
4610
4611 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
4612
4613         * scm/music-functions.scm (music->make-music): bugfix,
4614         KeyChangeEvents are now handled correctly.
4615
4616         * scripts/lilypond-book.py: Add --debug option.
4617
4618 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4619
4620         * python/lilylib.py: add tempfile.
4621
4622 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4623
4624         * VERSION (PACKAGE_NAME): release 2.7.37
4625
4626         * python/lilylib.py (ps_page_count): remove make_ps_images().
4627         (ps_page_count): remove mkdir_p
4628         (system): remove cleanup_temp.
4629         (exit): remove lilypond_version_(check)
4630         (error_log): remove pseudo_filter_p
4631         remove read_pipe
4632         remove cp_to_dir
4633         remove identify
4634
4635         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4636         use __main__
4637
4638         * lily/accidental-engraver.cc (make_standard_accidental): only add
4639         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4640
4641         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4642         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4643         Make incompatibilities.
4644
4645         * scm/output-ps.scm (grob-cause): replace backslashes by /
4646         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4647
4648 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4649
4650         * cygwin/GNUmakefile: Install fixes.
4651
4652         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4653
4654         * lily/note-head.cc (head::get_balltype): Compile fix.
4655
4656         * flower/file-name.cc (dos_to_posix): Flower string fix.
4657
4658 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4659
4660         * python/lilylib.py: pychecker cleanups.
4661
4662         * scripts/lilypond-book.py
4663         (Lilypond_snippet.output_print_filename): pychecker cleanups
4664
4665         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4666
4667         * python/lilylib.py (underscore): remove identify() , warranty()
4668
4669         * ps/music-drawing-routines.ps: change Border routine for GSView
4670         compatibility.
4671
4672         * lily/stem.cc (height): use quantize-positions.  This triggers
4673         set_stem_lengths, so scripts on beamed stems are handled correctly.
4674
4675         * lily/side-position-interface.cc (aligned_side): check if edges
4676         of script are inside staff. Fixes accent of edge of the staff.
4677
4678         * input/regression/staccato-pos.ly: more examples.
4679
4680         * stepmake/aclocal.m4 (depth): fix bashism.
4681
4682         * lily/lyric-combine-music-iterator.cc: move from
4683         new-lyric-combine-iterator.cc
4684         (process): add pending_grace_lyric_ member to delay lyrics on
4685         grace notes.
4686
4687         * lily/system-start-text.cc (print): suicide if we don't have any
4688         elements. Fixes hara kiri'd instrument names.
4689
4690         * scripts/mup2ly.py (Module): remove.
4691
4692 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4693
4694         * Documentation/user/global.itely (A single music expression):
4695         close @lilypond properly
4696
4697         * lily/volta-bracket.cc (modify_edge_height): change from
4698         after_line_breaking_callback. Suicide last bracket if appropriate.
4699  
4700         * python/lilylib.py: strip getopt support
4701
4702         * scripts/etf2ly.py (do_options): use optparse
4703
4704         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4705
4706         * scripts/abc2ly.py (voices): use optparse.
4707
4708         * stepmake/stepmake/generic-vars.make: new function absdir.
4709
4710         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4711
4712         * scripts/lilypond-book.py (find_file): use global_options for
4713         include path
4714
4715         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4716         entering C code.
4717
4718 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4719
4720         * python/lilylib.py (get_global_option): ughness for extracting
4721         global options from lilylib.
4722         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4723
4724         * scripts/lilypond-book.py (get_option_parser): use optparse for
4725         option handling.  Put options in global_options variable.
4726
4727 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4728
4729         * Documentation/index.html.in: clarify.
4730
4731 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4732
4733         * scm/layout-page-layout.scm (write-page-breaks): add a
4734         music-system-heights property to the page layout output.
4735
4736         * scm/page.scm (make-page-stencil): take footer into account when
4737         computing the 'space-left page property
4738         (annotate-space-left): take footer into account when annonating
4739         space left.
4740
4741 2006-02-28  Graham Percival  <gpermus@gmail.com>
4742
4743         * Documentation/user/ advanced-notation, global: more (final)
4744         docs for music expressions, removed special fermatas.
4745
4746 2006-02-27  Graham Percival  <gpermus@gmail.com>
4747
4748         * Documentation/user/ basic-notation, global: minor changes
4749         from mailist.
4750
4751 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4752
4753         * scm/framework-ps.scm:         
4754         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4755         layer for inf? and nan? from framework-ps to lily-library.
4756
4757 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4758
4759         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4760         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4761
4762         * buildscripts/substitute-encoding.py (Module): remove file.
4763
4764         * mf/GNUmakefile: more PFA strippage.
4765
4766         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4767
4768         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4769         generation
4770
4771         * scm/framework-ps.scm: remove font name munging.
4772
4773         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4774
4775 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4776
4777         * scm/markup.scm (define-markup-command): change
4778         def-markup-command to define-markup-command
4779
4780         * scm/music-functions.scm (define-music-function): change
4781         def-music-function to define-music-function.
4782
4783         * python/convertrules.py (conv): rules for def-music-function
4784         and def-markup-commands
4785
4786         * Documentation/user/programming-interface.itely,
4787         input/no-notation/display-lily-tests.ly,
4788         input/regression/lily-in-scheme.ly,
4789         input/regression/markup-user.ly,
4790         input/regression/music-function.ly, input/regression/tie-chord.ly,
4791         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4792         ly/gregorian-init.ly: use new macro names (define-music-function,
4793         define-markup-command).
4794
4795 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4796
4797         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4798         (output): add comments to lp-book latex output.
4799
4800         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4801         address.
4802
4803 2006-02-23  Graham Percival  <gpermus@gmail.com>
4804
4805         * Documentation/user/ tutorial, global: minor changes.
4806
4807 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4808
4809         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4810         blocks (for make 3.80)
4811
4812         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4813         \notemode so that user should not have to explicitely type it.
4814
4815         * scm/define-music-display-methods.scm: various
4816         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4817         constructs)
4818
4819         * input/no-notation/display-lily-tests.ly: new tests for
4820         \applyOutput and \applyContext
4821
4822 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4823
4824         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4825         changed it slightly so that the number of systems returned by
4826         solve () will be the same as the last value passed to resize
4827         (). I've also added more documentation, removed casts, fixed style
4828         problems and put in some recovery if constraints aren't satisfied."
4829
4830 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4831
4832         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4833         for emacs < 22 compatibility.
4834         (count-rexp): Use it.
4835         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4836         substring juggling (Milan Zamazal).
4837
4838 2006-02-23  Graham Percival  <gpermus@gmail.com>
4839
4840         * Documentation/user/ basic-notation, advanced-notation,
4841         global.itely, invoking.itely, tutorial,itely:
4842         minor fixes from mailist.
4843
4844         * scm/define-markup-commands.scm: improve docs of \filled-box.
4845
4846 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4847
4848         * Documentation/index.html.in: changes concern the previous release.
4849
4850         * input/regression/+.ly: cultivate typographical terminology.
4851
4852 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4853
4854         * scm/define-grob-interfaces.scm (parentheses-interface): add
4855         padding to parentheses-interface.
4856
4857         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4858         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4859
4860         * VERSION (PATCH_LEVEL): release 2.7.36
4861
4862         * lily/slur.cc: add avoid-slur (ugh.)
4863         
4864         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4865         intersection gets smaller. This fixes slurs over extreme points.
4866
4867         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4868         stems with neutral-direction set.
4869
4870         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4871
4872         * lily/open-type-font.cc (load_table): format error.
4873
4874         * lily/change-iterator.cc (process): format fix.
4875
4876         * flower/include/international.hh (_f): idem.
4877
4878         * flower/include/std-string.hh: add format printf attribute.
4879
4880         * scm/define-grobs.scm (all-grob-descriptions): height of all
4881         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4882
4883         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4884         ambitus lines.
4885
4886         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4887
4888 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4889
4890         * input/regression/: upgraded syntax for some files.
4891
4892         * THANKS: Add bughunters.
4893
4894 2006-02-22  Graham Percival  <gpermus@gmail.com>
4895
4896         * Documentation/user/ invoking.itely, advanced-notation.itely,
4897         global.itely: long-awaited "let's make chapter 10 not suck"
4898         update.  Rearrange chapter 10; now called "global issues",
4899         addresses file structure, etc.  Some info from other files
4900         moved into global.itely.
4901
4902 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4903
4904         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4905         catch trill-span-event notes.
4906
4907         * Documentation/user/examples.itely (Ancient notation templates): typo.
4908         (Jazz combo): typo.
4909
4910         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4911
4912         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4913
4914         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4915
4916         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4917
4918         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4919         froum Laissez_vibrer_engraver.
4920
4921         * ly/declarations-init.ly (repeatTie): add \repeatTie
4922
4923         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4924
4925         * scm/define-grob-properties.scm (all-user-grob-properties): add
4926         head-direction property.
4927
4928         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4929         from_lv_ties. Take head direction argument.
4930
4931         * lily/semi-tie-column.cc: rename from
4932         laissez-vibrer-tie-column.cc. Rename class too.
4933
4934         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4935         class too.
4936
4937         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4938
4939         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4940         0 case.
4941         (find_breaks): idem.
4942
4943 2006-02-21  Graham Percival  <gpermus@gmail.com>
4944
4945         * Documentation/user/advanced-notation.itely: fixed make-moment]
4946         example.
4947
4948         * Documentation/user/basic-notation.itely: more clarification to
4949         transpose.
4950
4951 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4952
4953         * lily/include/constrained-breaking.hh (class
4954         Constrained_breaking): new file.
4955
4956         * lily/constrained-breaking.cc (resize): new file.
4957
4958         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4959
4960         * Documentation/user/advanced-notation.itely (Clusters): insert
4961         end ignore too.
4962
4963         * lily/tie-column.cc (calc_positioning_done): support for
4964         tie-score debugging
4965
4966         * lily/tie-formatting-problem.cc
4967         (generate_extremal_tie_variations): factor out.
4968         (score_ties_configuration): annotate all tie 
4969         (print_ties_configuration): new routine.
4970         (generate_configuration): nudge extremal ties outside of the head
4971         Y extents.
4972         (score_ties_configuration): oops. convert to staff-space before
4973         determining position symmetry.
4974
4975 2006-02-20  Graham Percival  <gpermus@gmail.com>
4976
4977         * Documentation/user/*-notation.itely: misc minor editing,
4978         shifting doc sections around.
4979
4980         * Documentation/user/*-notation-itely, global.itely,
4981         changing-defaults.itely: added new stuff from NEWS.
4982
4983 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4984
4985         * po/fi.po: update.
4986
4987 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4988
4989         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4990         lilypond --verbose for lp-book.
4991
4992         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4993         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4994
4995         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4996         $(buildscript-dir) iso. absolute depth.
4997
4998         * buildscripts/genicon.py (dir): thinko.
4999
5000         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5001
5002 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
5003
5004         * scm/output-lib.scm: swap darkcyan/darkyellow
5005
5006         * THANKS: Add bughunters.
5007
5008 2006-02-19  Graham Percival  <gpermus@gmail.com>
5009
5010         * Documentation/user/programming-interfaces.itely: fixed example.
5011
5012         * Documentation/user/instrument-notation.itely: fix @{ @}.
5013
5014         * scm/script.scm: add avoid-slur for \open.
5015
5016 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5017
5018         * lily/tie-formatting-problem.cc (score_configuration): use
5019         sliding score for min-length. 
5020
5021         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5022         spaghetti for icons.
5023
5024         * buildscripts/genicon.py (program_name): new file.
5025
5026         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5027         in outline too.  
5028         (generate_configuration): for small ties, also look for collisions
5029         at Y + DIR*h + DELTA_Y.
5030         (get_variations): consider variation for dot positions too.
5031
5032         * lily/side-position-interface.cc (aligned_side): take abs for
5033         quantized rounded position. Fixes tenuto below staff.
5034
5035         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5036         markers when necessary.
5037
5038         * lily/program-option.cc (internal_set_option): add
5039         strict_infinity_checking option.
5040
5041         * scm/output-lib.scm (cyan): swap yellow and cyan.
5042
5043 2006-02-19  Graham Percival  <gpermus@gmail.com>
5044
5045         * darwin.patch: trivial linenumber update.
5046
5047         * Documentation/user/ {various}: `\context foo = named' changed
5048         to `\new foo = "name"' in docs.
5049
5050 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5051
5052         * scm/stencil.scm (annotate-y-interval): use it.
5053
5054         * scm/lily-library.scm (interval-sane?): new function.
5055
5056         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5057         tfm_checksum stuff.
5058
5059         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5060         common refpoint.
5061
5062         * flower/include/std-vector.hh (iterof): add iterof macro.
5063
5064         * lily/enclosing-bracket.cc (width): new function.
5065
5066         * lily/align-interface.cc (align_elements_to_extents): reinstate
5067         warning.
5068
5069 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
5070
5071         * Documentation/index.html.in: fix spelling: thankyous.
5072
5073 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5074
5075         * lily/lyric-hyphen.cc: typo.
5076
5077 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5078
5079         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5080         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5081         builds don't work. 
5082
5083         * VERSION: release 2.7.35
5084
5085         * lily/beam.cc (get_default_dir): oops. Take abs () for
5086         extremes[DOWN].
5087         (get_default_dir): use extreme position criterion only in absence
5088         of forced stem directions.
5089
5090         * VERSION (PATCH_LEVEL): bump VERSION.
5091
5092         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5093         dependencies. Necessary for -jX builds.  
5094
5095 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5096
5097         * lily/relocate.cc (setup_paths): Yet another const fix.
5098
5099 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5100
5101         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5102
5103         * lily/relocate.cc (setup_paths): oops.
5104
5105 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
5106
5107         * Documentation/index.html.in: order links: html before PDF.
5108
5109 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5110
5111         * lily/tie-column-format.cc (Module): remove.
5112
5113         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5114
5115         * lily/text-spanner.cc (print): idem.
5116
5117         * lily/dynamic-text-spanner.cc (print): only print line if longer
5118         than dash-period.
5119
5120         * lily/auto-change-iterator.cc (change_to): formatting.
5121
5122         * lily/beam.cc (get_default_dir): take extreme note head as input
5123         for stem direction.
5124
5125         * lily/tie.cc (get_default_dir): only look directions for visible
5126         stems. 
5127
5128         * lily/side-position-interface.cc (aligned_side): oops. Don't
5129         mutiply with direction. This fixes quantized (staccato, tenuto)
5130         scripts below notes.
5131
5132         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5133         direction. Fixes c-lyrics-center-align.ly
5134
5135 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5136
5137         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5138         constructor.
5139
5140         * lily/std-string.cc:
5141         * lily/include/std-vector.hh (split_string): Move and rename from
5142         lily/include/misc.hh, lily/misc.cc.  Update callers.
5143
5144 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5145
5146         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5147
5148 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5149
5150         * flower/test-file.cc: New file.
5151
5152         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5153         libraries.
5154
5155         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5156
5157 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5158
5159         * flower/include/file-storage.hh: remove file.
5160
5161         * lily/include/midi-item.hh (class Midi_track): idem.
5162
5163         * lily/include/source.hh (class Sources): idem.
5164
5165         * lily/include/performance.hh (class Performance): use vector
5166         iso. Cons<>
5167
5168         * flower/include/cons.hh (class Cons): remove file.
5169
5170         * flower/include/flower-proto.hh: remove template cruft.
5171
5172         * lily/include/font-metric.hh: use size_t not vsize for indices.
5173
5174         * flower/include/flower-proto.hh (Module): remove std-vector.hh
5175         from proto.
5176
5177         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5178
5179         * lily/include/paper-book.hh (class Paper_book):
5180         make get_system_specs() public.
5181
5182         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5183         the force=10000 case if we don't have a current-best. 
5184
5185         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5186         vsize 
5187
5188         * flower/include/flower-proto.hh: remove outdated templates.
5189
5190         * scm/page.scm: use annotate-spacing
5191
5192 2006-02-15  Graham Percival  <gpermus@gmail.com>
5193
5194         * scm/translation-functions.scm: circle patch from Erlend, thanks!
5195
5196         * THANKS: moved Erlend Aasland to contributors.
5197
5198 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5199
5200         * config.hh.in: remove HAVE_PANGO_16
5201
5202         * lily/tuplet-bracket.cc (calc_positions): multiply with
5203         staff-space for beam case. This fixes tuplets+beams on scaled
5204         staves.
5205
5206         * config.hh.in: remove all Kpathsea related defines.
5207
5208         * lily/dot-column.cc (side_position): reach stem via dots->
5209         head->stem. Inspect all stems for dot collisions. 
5210
5211         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5212         stem handling.
5213
5214         * lily/bar-number-engraver.cc (process_music): document function
5215         of whichBar.
5216
5217         * lily/score.cc (default_rendering): add pscore, not systems
5218         themselves.
5219
5220         * lily/paper-book.cc (get_system_specs): separate generation of
5221         titles and systems.
5222
5223         * flower/include/std-vector.hh: don't include config.hh
5224
5225 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5226
5227         * flower/include/std-vector.hh: Better wrapper compatibility with
5228         std::vector.
5229
5230         * flower/include/flower-proto.hh: Remove cheap forward declaration
5231         attempts.
5232
5233         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5234
5235 2006-02-14  Graham Percival  <gpermus@gmail.com>
5236
5237         * Documentation/user/invoking.itely: add warning about command line.
5238
5239 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5240
5241         * lily/include/lily-proto.hh: add Prob, rm Page.
5242
5243         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5244
5245         * VERSION: release 2.7.34
5246
5247         * lily/relocate.cc (framework_relocation): show canary if
5248         GHOSTSCRIPT_VERSION undefined.
5249
5250         * GNUmakefile.in: remove $(VERSION) symlink.
5251
5252         * lily/relocate.cc (setup_paths): add + 
5253
5254 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
5255
5256         * Documentation/index.html.in: specify sizes for all big HTML pages.
5257
5258 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5259
5260         * config.hh.in: remove @FRAMEWORKDIR@
5261
5262         * lily/system-start-text.cc (get_stencil): new file: separate out
5263         system-start-delimiter text support.
5264
5265         * input/**ly: replace \context with \new where appropriate.
5266         
5267         * THANKS: add Don.
5268
5269         * lily/slur-scoring.cc (get_base_attachments): use
5270         robust_relative_extent. This fixes problems with empty paper-columns. 
5271
5272 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5273
5274         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5275
5276         * scm/define-music-properties.scm (all-music-properties):
5277         create-new property.
5278
5279         * lily/context-specced-music-iterator.cc (construct_children):
5280         inspect 'create-new property iso. magical $uniqueContextId context
5281         id.
5282
5283         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5284
5285         * lily/context-key-manager.cc (Module): new file. Encapsulate
5286         object key generation.
5287
5288         * lily/include/context-key-manager.hh (Module): new file.
5289
5290 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5291
5292         * scm/define-grobs.scm (all-grob-descriptions): center instrument
5293         names vertically
5294
5295         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5296         options.
5297         (reloc_b): excise --enable-framework-dir
5298
5299         * lily/relocate.cc (framework_relocation): use getenv
5300         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5301
5302 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5303
5304         * flower/include/std-string.hh: 
5305         * flower/include/std-vector.hh: Finish std:: conversion; move
5306         flower extensions from std:: namespace.  Update users.
5307
5308         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5309         their expansion to vector<*>.  Update users.
5310
5311 2006-02-10  Graham Percival  <gpermus@gmail.com>
5312
5313         * Documentation/user/invoking.itely: add example to File structure.
5314
5315         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5316         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5317
5318 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5319
5320         * ly/paper-defaults.ly: typo.
5321
5322         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5323         set_parent() for parentheses. This will make it show up in bbox
5324         calculations.
5325
5326         * scm/output-lib.scm (parentheses-item::print): rewrite, using
5327         ly:grob-common* functions.
5328
5329         * lily/grob-scheme.cc (LY_DEFINE):
5330         ly:grob-common-refpoint-of-array: new function 
5331         ly:grob-common-refpoint: new function 
5332         ly:grob-relative-coordinate: new function 
5333
5334         * lily/instrument-name-engraver.cc (process_music): use
5335         Text_interface::is_markup(). This fixes \markup on instrument names.  
5336
5337         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5338         for ties and slurs.
5339
5340         * lily/slur.cc (print): idem.
5341
5342         * lily/tie.cc: add line-thickness for ties. 
5343
5344 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5345
5346         * scm/output-svg.scm: Document diversion from GNU coding standards
5347         as a workaround for a bug in Microsoft Internet Explorer.
5348
5349 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5350
5351         * lily/instrument-name-engraver.cc (process_music): use
5352         is_markup() iso. is_string()
5353
5354         * Documentation/user/changing-defaults.itely (Module): add menu entry.
5355
5356         * lily/percent-repeat-engraver.cc (process_music): only look at
5357         main_part_ for % repeats.
5358
5359         * lily/stem-tremolo.cc (get_beam_translation): new function.
5360         (calc_slope): new function.
5361         (height): don't use real slope.
5362
5363 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
5364
5365         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5366         new connect-to-neighbor, control-points and staff-padding
5367         properties to make ligature brackets showing up again.
5368
5369 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5370
5371         * VERSION: release 2.7.33
5372
5373         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5374         too many.
5375
5376         * Documentation/user/changing-defaults.itely (Difficult tweaks):
5377         remove applyOutput example.
5378         (Objects connected to the input): document \tweak, \parenthesize
5379
5380         * lily/relocate.cc (prefix_relocation): allow "current"
5381         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5382         changing VERSION in a lily tree less painful.
5383
5384         * input/regression/parenthesize.ly: new file. 
5385
5386         * scm/output-lib.scm (parenthesize-element): new function.
5387
5388         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5389
5390         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5391
5392         * lily/accidental-engraver.cc (make_standard_accidental): reroute
5393         cause: accidentals are caused by note heads, not note events. 
5394
5395 2006-02-08  Graham Percival  <gpermus@gmail.com>
5396
5397         * darwin.patch: small patch from Erlend, thanks!
5398
5399         * Documentation/user/basic-notation.itely: add stem-neutral example.
5400
5401         * Documentation/user/putting.itely: clarifications.
5402
5403 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5404
5405         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5406         note, add more guidelines to what should go into NEWS.
5407
5408         * input/sakura-sakura.ly: document how to override font.
5409
5410         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
5411
5412 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5413
5414         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5415
5416 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5417
5418         * scripts/convert-ly.py (lilypond_version_re_str): Move from
5419         convertrules.  Add explicit grouping, needed for python2.2.
5420
5421 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5422
5423         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5424
5425 2006-02-07  Graham Percival  <gpermus@gmail.com>
5426
5427         * Documentation/user/global.itely: fix line-width in (text) docs.
5428
5429         * Documentation/user/lilypond-book.itely: same.
5430
5431 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5432
5433         * VERSION (PACKAGE_NAME): release 2.7.32
5434
5435         * Documentation/topdocs/NEWS.tely (Top): document new variable
5436         naming.
5437
5438         * flower/include/array.icc (Message): remove file.
5439
5440         * flower/include/std-vector.hh: make sure vsize and VPOS are
5441         defined for binary_search_bounds().
5442
5443         * flower/std-string.cc (std): add to_string(long unsigned).
5444
5445         * configure.in (gui_b): excise std_string option.
5446         (gui_b): excise std_vector option.
5447
5448         * flower/string.cc (Module): excise flower array & string
5449
5450         * flower/include/std-string.hh: excise flower string.
5451
5452         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5453
5454         * python/convertrules.py (lilypond_version_re_str): require
5455         only numbers and dots in \version string.
5456
5457 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5458
5459         * lily/system-start-delimiter.cc (print): allow style = text too.
5460
5461         * lily/system-start-delimiter-engraver.cc
5462         (acknowledge_system_start_text): new function, also add add to
5463         support of system-start-text (instrument names). This fixes
5464         instrument names on piano staves.
5465
5466         * lily/instrument-name-engraver.cc: rewrite. Use
5467         system-start-delimiter approach. This save memory and cpu.
5468
5469         * scm/define-grobs.scm (all-grob-descriptions): remove
5470         instrument-name from break-alignment.
5471
5472         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5473
5474 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
5475
5476         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5477         jobserver going.
5478
5479         * configure.in (std_vector): On by default.
5480
5481         * lily/include/font-metric.hh:
5482         * lily/include/tfm-reader.hh: 
5483         * lily/include/spanner.hh: Use unsigned for indices and sizes.
5484         Update users.
5485
5486         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5487
5488 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5489
5490         * VERSION (PACKAGE_NAME): 2.7.31
5491
5492         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5493         EPS edge at 0, but take minimum with left-overshoot. This fixes
5494         cut off system start delims. 
5495
5496         * lily/instrument-name-engraver.cc (stop_translation_timestep):
5497         hack: add to axis group if not added yet. This fixes hara kiri'd
5498         piano staves.
5499
5500         * lily/hara-kiri-group-spanner.cc
5501         (force_hara_kiri_in_y_parent_callback): fix signatures.
5502
5503         * lily/hairpin.cc (print): check next hairpin to see whether or
5504         not to be continuing.
5505
5506 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5507
5508         * Remove trailing whitespace from makefiles.
5509         
5510         * flower/include/std-vector.hh: Add binary_search_bounds workaround
5511         for earlier gcc.
5512
5513         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
5514
5515         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5516
5517         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5518
5519         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5520
5521         * configure.in: Use it.
5522
5523 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5524
5525         * scm/music-functions.scm (pitch-of-note): new function.
5526
5527         * ly/music-functions-init.ly: add \octave and \addquote
5528
5529         * lily/parser.yy (music_function_chord_body): softcode \octave.
5530         (lilypond_header): softcode \addquote
5531
5532 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5533
5534         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5535         array.hh, parray.hh at all.  Getting ready to flip the
5536         configure default.
5537
5538         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5539
5540         * lily/source-file.cc (file::get_line): Help binary_search_bounds
5541         a bit.
5542
5543         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5544
5545 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5546
5547         * flower/include/array.hh: typo. 
5548
5549 2006-02-02  Graham Percival  <gpermus@gmail.com>
5550
5551         * Documentation/user/advanced-notation.itely: doc "\#" in text.
5552
5553 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5554
5555         * flower/include/pqueue.hh: Derive from std::vector.
5556
5557         * flower/include/parray.hh: Conform to std::vector interface.
5558         Update users.
5559
5560 2006-02-02  Graham Percival  <gpermus@gmail.com>
5561
5562         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5563
5564 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5565
5566         * flower/file-path.cc (is_file): remove if 0 section.
5567
5568         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5569         selecting afii61352.
5570
5571 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5572
5573         * flower/include/std-vector.hh (boundary): Oops, reverse.
5574
5575         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5576         remove superfluous `d'.
5577
5578         * flower/include/std-vector.hh (boundary, top): Detach from class.
5579         Remove empty vector shell.
5580
5581         * flower/include/array.hh (reverse, swap): Detach from class.
5582         Update users.
5583         
5584         * flower/include/std-vector.hh
5585         * flower/include/array.hh (concat): Globally change to insert ().
5586
5587         
5588         * flower/include/std-vector.hh
5589         * flower/include/parray.hh
5590         * flower/include/array.hh (elem, elem_ref): Globally replace by
5591         at ().
5592
5593 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5594
5595         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5596
5597         * python/convertrules.py (FatalConversionError.sub_cxx_id):
5598         anticipate on identifier substitutions.
5599
5600 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5601
5602         * flower/include/std-vector.hh (insert): Remove, replace by
5603         std::vector interface.  Update callers.
5604
5605         * flower/include/array.icc (insert): Change signature to
5606         match std::vector interface.
5607         
5608         * flower/include/array.icc (vector_sort): Bugfix.
5609
5610 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5611
5612         * lily/parser.yy (output_def_head_with_mode_switch): new
5613         production. Result: dashes and underscores may be used in the
5614         \paper block.
5615
5616         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
5617
5618         * python/convertrules.py (conv): oops. One slash too much.
5619
5620 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5621
5622         * flower/include/std-vector.hh (sort): Remove, replace by
5623         ::vector_sort.  Update callers.
5624
5625         * flower/include/std-vector.hh (slice): Remove.  Update callers.
5626         (sort): Bugfix.
5627
5628         * flower/test-std.cc (vector_sort): New test.
5629
5630 2006-02-01  Graham Percival  <gpermus@gmail.com>
5631
5632         * Documentation/user/putting.itely: fixes from Erik.
5633
5634 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5635
5636         * flower/test-std.cc: Add simple unit test for vector migration.
5637
5638         * stepmake/stepmake/test*: Unit test support.
5639
5640         * flower/include/std-vector.hh (del): Remove.  Use erase (),
5641         update callers.
5642
5643         * flower/include/array.hh (begin, end): Add.
5644         (del, get): Remove.
5645
5646 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5647
5648         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5649         std::string not String. 
5650
5651         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5652         iso UINT_MAX.
5653
5654         * lily/prob.cc (Prob): copy type_ too.
5655
5656         * lily/lily-guile.cc (mangle_cxx_identifier): new
5657         function. Class_bla::foo_bar_[px] ->
5658         ly:class-bla::foo-bar[?!]. Changes throughout
5659
5660 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5661
5662         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5663
5664         * lily/beam.cc (calc_direction): take dir from visible stem in
5665         degenerate case.
5666
5667 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5668
5669         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5670         Fix -1, >=0 boundary checks for unsigned vsize.
5671
5672         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5673         loop for unsigned vsize.
5674
5675         * configure.in (--enable-std-vector): New option.
5676         (--enable-std-string): On by default.
5677
5678         * flower/include/std-vector.hh: New file.  Enable switch to
5679         std::vector, update client code.
5680
5681 2006-01-30  Graham Percival  <gpermus@gmail.com>
5682
5683         * scm/document-translation.scm: clarify "this context is also
5684         known as".  Thanks, Werner!
5685
5686         * Documentation/user/putting.itely: small fixes from Don Blaheta.
5687
5688         * Documentation/user/invoking.itely: small fix from Don.
5689
5690 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5691
5692         * scm/lily.scm (define-scheme-options): rename option
5693         preview-include-book-title to book-title-preview
5694         (define-scheme-options): move force-eps-font-include (from paper
5695         block) to eps-font-include -d option.
5696
5697         * VERSION (PATCH_LEVEL): release 2.7.30
5698
5699         * input/bach-schenker.ly (staffPiano): new file.
5700
5701         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5702
5703         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5704         credits to Nicolas.
5705
5706         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5707
5708         * ps/lilyponddefs.ps: remove start-system, stop-system,
5709         start-page fluff. This saves putting { } code on the stack, fixing
5710         stack overflows when including EPS files.
5711
5712 2006-01-29  Graham Percival  <gpermus@gmail.com>
5713
5714         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5715
5716 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5717
5718         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5719
5720 2006-01-28  Graham Percival  <gpermus@gmail.com>
5721
5722         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5723
5724 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5725
5726         * input/mutopia/claop.py: Update.
5727
5728 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5729
5730         * input/regression/completion-heads.ly (texidoc): fix.
5731
5732         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5733
5734         * lily/tie-formatting-problem.cc
5735         (set_ties_config_standard_directions): use abs iso fabs for ints.
5736
5737         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5738
5739         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5740         little less than noteheight, to prevent overlaps in chords.
5741
5742         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5743         head, and fudge stem-attachment.
5744
5745         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5746
5747         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5748
5749 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5750
5751         * lily/main.cc (main): Debugging aid: catch exceptions.
5752
5753         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5754         output with std::string.
5755
5756 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5757
5758         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5759
5760 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5761
5762         * Fix -DSTRING_UTILS_INLINED.
5763
5764 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5765
5766         * VERSION (PATCH_LEVEL): release 2.7.29
5767
5768         * lily/relocate.cc (setup_paths): mingw uses std string too.
5769
5770         * lily/*.cc: various fixes for substr(ARG).
5771
5772         * lily/sustain-pedal.cc (print): 
5773
5774         * flower/file-name.cc (slashify): use std strings.
5775
5776         * flower/string-convert.cc: remove publib.h
5777
5778         * scm/define-markup-commands.scm (verbatim-file): new markup
5779         command \verbatim-file
5780
5781         * Documentation/topdocs/NEWS.tely: fixup URLs
5782
5783         * input/regression/alignment-vertical-manual-setting.ly (Module):
5784         new file.
5785
5786         * lily/align-interface.cc (align_elements_to_extents): overwrite
5787         translations with numbers in alignment-offsets from left bound
5788
5789         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5790         (page-translate-systems): new function: take into account Y-offset.
5791
5792         * Documentation/topdocs/NEWS.tely (Top): document new features.
5793
5794         * input/regression/page-layout-manual-position.ly (Module): new
5795         file.
5796
5797 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5798
5799         * flower/file-path.cc (path::parse_path): Oops.
5800
5801         * Finish std::string interface.  For now, use std:: marker
5802         throughout for easy s/r.
5803
5804 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5805
5806         * Documentation/user/putting.itely (Score is a single musical
5807         expression): typo.
5808         (Score is a single musical expression): more typos.
5809
5810         * scm/page.scm (annotate-space-left): thinko.
5811         (annotate-page): more thinkos.
5812
5813 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5814
5815         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5816         for different \score blocks separately.
5817         (post-process-pages): put write-page-layout into paper block.
5818
5819         * lily/output-def.cc (get_parser): new file.
5820
5821         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5822         file.
5823
5824         * lily/include/output-def.hh (class Output_def): add parser_ member.
5825
5826         * input/regression/page-layout-twopass.ly (Module): new file.
5827
5828         * scm/lily.scm: remove cpp hack.
5829
5830         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5831
5832 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5833
5834         * GNUmakefile.in (c-clean): New target.
5835
5836         * flower/include/std-string.hh: String/std::string compatibility:
5837         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5838         type.
5839
5840         * flower/rational.cc: 
5841         * flower/include/rational.hh: 
5842
5843         * flower/offset.cc: 
5844         * flower/include/offset.hh: 
5845
5846         * flower/interval.cc: 
5847         * flower/include/interval.hh: 
5848
5849         * flower/string-convert.cc: 
5850         * flower/include/string-convert.hh: Use std::string [interface].
5851         Update callers.
5852
5853 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5854
5855         * Documentation/index.html.in: clean up.
5856
5857 2006-01-25  Graham Percival  <gpermus@gmail.com>
5858
5859         * Documentation/user/putting.itely: another new untested doc section.
5860
5861 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5862
5863         * scm/layout-page-layout.scm (write-page-breaks): write
5864         \spacingTweaks #ALIST. Handle grace timing.
5865
5866         * scm/: more imports.
5867
5868         * scm/page.scm (make-page): add footer/header.
5869         (annotate-space-left): revise: only take page argument.
5870         (layout->page-init): new function.
5871
5872         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5873         version of the system/spacing/linebreak hack writing to the output
5874
5875         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5876         ly:make-prob.
5877
5878         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5879         ly:spanner-bound
5880
5881 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5882
5883         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5884
5885         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5886
5887         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5888         handling to page.scm
5889
5890         * lily/prob-scheme.cc (LY_DEFINE): new file.
5891         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5892
5893         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5894         prob functions.
5895
5896         * lily/music.cc (derived_mark): derive Music from Prob.
5897
5898         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5899
5900         * lily/prob.cc (Module): Implement Prob (Property Object), object
5901         with shared and r/w property alists.  
5902
5903         * lily/include/prob.hh (Module): new file. Declare Prob.
5904
5905         * flower/string.cc: remove is_empty().
5906
5907         * flower/include/string.hh (class String): remove String:: qualifier.
5908
5909         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5910         substitute appropriate functions.
5911
5912         * flower/include/string.hh (class String): remove to_str0 and
5913         is_empty(). S&R everywhere.
5914
5915 2006-01-23  Graham Percival  <gpermus@gmail.com>
5916
5917         * Documentation/user/basic-notation.itely: add hairpin
5918         after-linebreak tweak to commonprop.
5919
5920         * Documentation/user/putting.itely: added two new sections.
5921
5922 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5923
5924         * flower/international.cc: 
5925         * flower/include/international.hh: 
5926
5927         * flower/getopt-long.cc: 
5928         * flower/include/getopt-long.hh: Use std::string [interface].
5929         Update callers.
5930
5931         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5932
5933         * stepmake/stepmake/executable-rules.make: Add dependency on
5934         module libraries.
5935
5936 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5937
5938         * flower/file-path.cc: 
5939         * flower/include/file-path.hh: Use std::string [interface].
5940         Update callers.
5941
5942         * flower/direction.cc: 
5943         * flower/axis.cc: Unused.  Remove.
5944
5945         * configure.in (--enable-std-string): New option.
5946
5947         * flower/std-string.cc: 
5948         * flower/include/std-string.hh: New file.
5949
5950         * flower/file-name.cc[STD_STRING]:
5951         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5952
5953 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5954
5955         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5956
5957         * scm/define-markup-commands.scm (with-dimensions):
5958         with-dimensions markup command.
5959
5960         * input/test/font-table.ly: use it.
5961
5962         * lily/open-type-font.cc (glyph_list): new function.
5963
5964         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5965
5966         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5967
5968 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5969
5970         * ly/music-functions-init.ly (parallelMusic): new music function
5971         for parallel music entry.
5972
5973         * scm/define-music-properties.scm (all-music-properties): new
5974         'void music property
5975
5976         * scm/music-functions.scm (ly:music-message): make public, to be
5977         used in music function definitions
5978
5979         * scm/lily-library.scm (collect-music-for-book): discard music
5980         when the 'void property is set.
5981
5982 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5983
5984         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5985
5986         * mf/GNUmakefile: idem.
5987
5988         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5989
5990         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5991
5992         * Documentation/user/notation-appendices.itely (The Feta font):
5993         use it.
5994
5995         * input/test/font-table.ly: new file. Generate font table within lily.
5996
5997         * Documentation/user/notation-appendices.itely (The Feta font):
5998         use new font-table.ly file. 
5999
6000         * stepmake/stepmake/install-out-targets.make
6001         (local-install-outfiles): only create directory if
6002         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6003
6004 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6005
6006         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6007
6008         * VERSION (PACKAGE_NAME): release 2.7.28
6009
6010         * scm/framework-ps.scm (write-preamble): use it to pick exactly
6011         the right font from a Mac dfont.
6012         (write-preamble): don't forget directory, only look at files.
6013
6014         This fixes problems with TTF files in dfonts that don't match
6015         their PostScript names.
6016          
6017         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6018         PS name from TTF font.
6019
6020         * input/regression/tie-manual.ly: document new feature.
6021
6022         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6023
6024         * VERSION (MY_PATCH_LEVEL): bump to .28
6025
6026         * Documentation/user/basic-notation.itely (Ties): add tie examples
6027         refs.
6028
6029         * lily/tie-formatting-problem.cc (score_ties_configuration):
6030         symmetry penalties for outer ties.
6031
6032 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6033
6034         * lily/tie-formatting-problem.cc (generate_configuration) 
6035         (set_manual_tie_configuration): skip non-pair manual
6036         tie-configuration, so you can set individual ties as
6037
6038           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6039
6040         * input/regression/tie-chord.ly: use generateTiePattern to
6041         simplify file.
6042
6043         * lily/tie-formatting-problem.cc (peak_around): new function.
6044         (score_configuration): use sliding criterion for staff line collisions. 
6045         (score_configuration): idem for dot collisions.
6046         (generate_configuration): use separate stem_gap for gap to stem.
6047
6048         * lily/include/tie-formatting-problem.hh (struct Tie_details):
6049         separate penalty factors for x and y distance.
6050         (struct Tie_details): separate penalties for tip and center line collisions.
6051
6052 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
6053
6054         * lily/tie-formatting-problem.cc (generate_configuration): make
6055         large ties avoid stafflines in the horizontal section.
6056         (score_configuration): use softcoded penalties
6057         (score_aptitude): idem.
6058
6059         * lily/tie-helper.cc (from_grob): softcode tie details
6060
6061         * lily/staff-symbol-referencer.cc (on_staff_line): new function
6062
6063         * lily/staff-symbol-referencer.cc (on_line): rename from
6064         on_staffline 
6065
6066 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6067
6068         * ly/music-functions-init.ly: remove duplicate tag.
6069
6070         * lily/include/*.hh: GCC 4.1 fixes.
6071
6072 006-01-16  Erlend Aasland  <erlenda@gmail.com>
6073
6074         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6075
6076         * scm/define-music-types.scm: fix bug in desc. string
6077         for OverrideProperty
6078
6079 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
6080
6081         * scripts/lilypond-book.py: bugfix
6082
6083         * scm/define-music-types.scm: fix typos.
6084
6085 2006-01-14  Graham Percival  <gpermus@gmail.com>
6086
6087         * Documentation/user/ basic-notation.itely, global.itely,
6088         advanced-notation.itely, instrument-notation.itely: small
6089         additions (bugs and commonly tweaked properties).
6090
6091 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6092
6093         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6094         detection of mingw build.
6095         (MINGW_BUILD): opps.
6096
6097 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
6098
6099         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6100         i686-mingw32.
6101
6102 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6103
6104         * scm/music-functions.scm (skip->rest): add skip->rest
6105
6106 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6107
6108         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6109         explicitly.
6110
6111         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6112         config dirs. Aids debugging. 
6113         (display_config): also display config files.
6114
6115 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6116
6117         * VERSION: release 2.7.27
6118
6119         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6120         for determining bar size.
6121
6122         * lily/staff-symbol.cc (print): place lines at distance line-positions
6123
6124         * scm/define-grob-properties.scm (all-user-grob-properties): add
6125         line-positions.
6126
6127         * lily/staff-symbol.cc (height): new function.
6128
6129         * input/regression/staff-line-positions.ly:  new file.
6130
6131 2006-01-06  Graham Percival  <gpermus@gmail.com>
6132
6133         * input/test/add-staccato.ly: remove reference to old file.
6134
6135 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6136
6137         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6138         lilypond binary too.
6139
6140 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6141
6142         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6143
6144 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6145
6146         * scripts/midi2ly.py: Bugfix: Declare datadir.
6147
6148         * make/ly-rules.make:
6149         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6150         that seems to be gone). Fixes make web.
6151
6152         * The grand 2005-2006 replace.
6153
6154         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6155
6156 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6157
6158         * make/lilypond-vars.make: set LILYPOND_BINARY variable
6159         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6160         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6161         like -dgs-font-load.
6162
6163         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6164         remove absolute path to lilypond binary.
6165         
6166 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
6167
6168         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6169
6170 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6171
6172         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6173
6174         * mf/GNUmakefile: remove broken dvips map symlink.
6175
6176 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
6177
6178         * lily/main.cc: 
6179         * configure.in: Cosmetic fixes.
6180
6181 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
6182
6183         * Documentation/user/music-glossary.tely (Pitch names): Added
6184         Spanish pitch names and durations, thanks to Ernesto Gancedo
6185
6186 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6187
6188         * scm/lily.scm (define-scheme-options): use quasi-quote for option
6189         init. Fixes verbose printing of .scm files.
6190
6191         * stepmake/aclocal.m4: add spaces before - options.
6192         
6193 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6194
6195         * lily/relocate.cc (setup_paths): Bugfix: do not store result
6196         of path search in local block variable.
6197
6198 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6199
6200         * configure.in (NCSB_DIR): --enable-ncsb-dir
6201         (LINK_GXX_STATICALLY): denko.
6202
6203         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
6204
6205         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
6206         use locate to find c059033l.pfb. 
6207         
6208 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6209
6210         * lily/tie-formatting-problem.cc
6211         (problem::generate_base_chord_configuration): Use my_round (was
6212         round).
6213
6214         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6215         do not invoke mbrtowc.
6216
6217         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6218
6219 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6220
6221         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6222
6223 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
6224
6225         * Documentation/user/invoking.itely (svg): revise.
6226
6227 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6228
6229         * lily/lexer.ll: use sourcefilename iso. renameinput.
6230
6231 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6232
6233         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6234         <PostScriptName>.ttf instead of c059XXXttf.
6235
6236         * lily/program-option.cc (LY_DEFINE): special support for
6237         --verbose, so it works before option init too.
6238  
6239         * mf/GNUmakefile (local-install): oops.
6240
6241         * lily/lyric-hyphen.cc (print): oops.
6242
6243         * buildscripts/pfx2ttf.fontforge: new file.
6244         
6245         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6246         ($(outdir)/%.ttf): new rule. 
6247
6248         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6249         to LyricHyphen.
6250
6251         * lily/lyric-hyphen.cc (print): multiply hyphen height by
6252         font-size
6253
6254 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6255
6256         * VERSION: release 2.7.26
6257         
6258         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6259
6260 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6261
6262         * lily/font-config.cc (init_fontconfig): verbosity.
6263
6264         * THANKS: add Muziekacademie Lede. 
6265
6266         * scripts/musicxml2ly.py (print_voice_definitions): new function 
6267         (print_score_setup): new function
6268         (convert): read part definition to output staves properly.
6269
6270         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6271         Music_xml notes.
6272
6273         * python/musicexp.py (Output_printer.__init__): use _ in data
6274         members.
6275         (Output_printer.unformatted_output): new function: no formatting,
6276         but count braces.
6277         (Duration.get_length): remove isinstance() checks for
6278         Output_printer everywhere.
6279
6280         * input/regression/lyrics-bar.ly (texidoc): add
6281         Separating_line_group_engraver.
6282
6283 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
6284
6285         * lily/relocate.cc (framework_relocation): New function,
6286         factored from set_relocation ().
6287         (prefix_relocation): Rename from set_relocation ().
6288         (setup_paths): Use it.
6289
6290 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6291
6292         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6293         numbers. Patch by Erlend Aasland.
6294
6295 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6296
6297         * lily/font-config.cc (init_fontconfig): print warning if cache
6298         file is not existant.
6299
6300         * lily/main.cc: don't use #ifdef but #if
6301
6302 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6303
6304         * lily/grob-property.cc (internal_set_property): don't abort on
6305         calculation-in-progress.
6306
6307         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6308
6309         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6310         connect-to-neighbor property not connect-to-other
6311
6312         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6313         (LY_DEFINE): oops. don't forget protection.
6314
6315         * flower/parse-afm.cc (Module): strip AFM handling completely.
6316
6317         * lily/stencil-expression.cc: idem.
6318
6319         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6320
6321         * lily/function-documentation.cc (ly_add_function_documentation):
6322         use static member iso. Protected_scm
6323
6324         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6325
6326         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6327
6328 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6329
6330         * lily/relocate.cc (set_env_dir): New function.
6331         (set_relocation): Use it to fix setting PANGO_PREFIX.
6332
6333 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6334
6335         * input/regression/stem-direction-context.ly: remove rest.
6336
6337         * lily/melody-engraver.cc (process_music): restart for bar lines.
6338         (acknowledge_slur): restart for slurs.
6339
6340 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
6341
6342         * Documentation/user/invoking.itely: describe how to view SVG 
6343         output using Inkscape which replace embedded fonts with OTF fonts.
6344
6345 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6346
6347         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6348
6349 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6350
6351         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6352         comment.
6353
6354 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6355
6356         * VERSION (PACKAGE_NAME): release 2.7.25
6357
6358         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6359
6360         * input/regression/stem-direction-context.ly: new file.
6361
6362         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6363
6364         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6365         on rest.
6366
6367         * ly/engraver-init.ly: add Melody_engraver
6368
6369         * lily/beam.cc (calc_direction): use default-direction
6370         iso. get_default_direction()
6371
6372         * scm/define-grob-properties.scm (all-user-grob-properties): add
6373         default-direction property.
6374
6375         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6376
6377         * lily/stem.cc (calc_default_direction): remove
6378         Stem::get_default_direction, use default-direction with callback
6379         instead.
6380
6381         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
6382
6383         * lily/melody-engraver.cc: new file. Acknowledge stems for
6384         interpolated stem directions. 
6385
6386         * lily/melody-spanner.cc: new file. Interpolate stem directions.
6387
6388         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6389
6390         * lily/slur-configuration.cc (fit_factor): more robust check for
6391         point in curve X-extent.
6392
6393         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6394         (outside_slur_callback): check for 'outside avoidance.
6395
6396         * lily/slur-configuration.cc (score_extra_encompass): don't use
6397         bound->column() == avoid->column() for checking extents, as this
6398         doesn't work for accidentals. 
6399
6400         * lily/slur-engraver.cc (acknowledge_extra_object): remove
6401         DynamicText hardcoding.
6402
6403         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6404         crash if bound stem is NULL
6405
6406         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6407         pedals.
6408
6409 2005-12-22  Graham Percival  <gpermus@gmail.com>
6410
6411         * scm/define-markup-commands.scm: typo.  @code{\raise}
6412         => @code{\\raise}.
6413
6414         * darwin.patch: now used again, includes a
6415         required patch from fink.
6416
6417 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
6418
6419         * po/TODO: mention gtranslator along with kbabel.
6420         * po/fi.po: update translations.
6421
6422 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6423
6424         * lily/relocate.cc (setup_paths): Bugfix.
6425
6426 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6427
6428         * lily/slur-configuration.cc (score_extra_encompass): don't use
6429         "avoid" choice for avoid-slur.
6430
6431         * stepmake/bin/install.py (dest): don't create existing dir.
6432
6433 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6434
6435         * stepmake/bin/install.py: Remove file before copying.
6436
6437         * config.make.in: 
6438         * stepmake/aclocal.m4: Do not substitute INSTALL.
6439
6440 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6441
6442         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6443         depend on link-tree.
6444
6445         * lily/relocate.cc (setup_paths): only check path for non-absolute
6446         dir without directory part.
6447
6448         * flower/file-name.cc (is_absolute):  new method.
6449         (is_absolute): check root_ too.
6450
6451 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6452
6453         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6454         relocation code.  Oops, don't comment out too much.
6455
6456         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6457         iso itself.
6458
6459         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
6460         compile.
6461
6462 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6463
6464         * .cvsignore: Add install-sh.
6465
6466         * autogen.sh (srcdir): Typo.
6467
6468 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6469
6470         * autogen.sh (srcdir): urg. Touch install-sh.
6471
6472         * stepmake/bin/install-sh (Module): remove.
6473
6474         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6475
6476         * lily/include/relocate.hh: new file.
6477
6478         * lily/relocate.cc: new file. Contain relocation logic.
6479
6480         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6481         (main): read LILYPOND_VERBOSE as the first thing.
6482
6483         * stepmake/aclocal.m4: remove INSTALL variable.
6484
6485         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6486         separate target for making font symlinks.
6487         (documentation-dir): use $(if $(findstring )) for switching off
6488         Documentation.
6489
6490         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6491         something if DOCUMENTATION is no.
6492
6493 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6494
6495         * VERSION: release 2.7.24
6496
6497         * lily/script-column-engraver.cc (stop_translation_timestep):
6498         delay adding to script-column.
6499
6500         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
6501
6502         * python/convertrules.py (conv): rule for number-visibility
6503
6504         * lily/slur-configuration.cc (score_extra_encompass): different
6505         distance measure for avoid and inside avoidance.
6506         (score_extra_encompass): use 1/(distance+eps) as penalty.
6507
6508         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6509         encompass objects for generating slur curves.
6510
6511         * lily/slur.cc: use details iso. slur-details property.
6512
6513         * input/regression/slur-tuplet.ly: new file.
6514
6515         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
6516
6517         * flower/include/offset.hh (class Offset): new operator /=
6518
6519         * lily/tuplet-number.cc (print): new file, new interface.
6520
6521         * scm/define-grob-properties.scm (all-user-grob-properties):
6522         remove number-visibility property.
6523
6524         * lily/tuplet-bracket.cc (calc_control_points): new function
6525         (calc_connect_to_neighbors): new function.
6526         (print): remove text handling for tuplet numberdef.
6527
6528         * lily/tuplet-engraver.cc (struct Tuplet_description): create
6529         TupletNumbers too. 
6530
6531         * lily/lily-guile.cc (robust_scm2booldrul): new function
6532
6533         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6534
6535         * lily/tuplet-bracket.cc (calc_position_and_height): use
6536         staff-padding to control whether tuplet brackets are over staves.
6537
6538         * lily/grob.cc (suicide): clear dim_caches_.
6539
6540         * lily/dimension-cache.cc (clear): new function.
6541
6542         * lily/grob.cc (extent): swap order of min-extent and extent
6543         calculations. This fixes hara kiri staves. 
6544
6545 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6546
6547         * lily/main.cc: Nitpick: relocation is not based on path, but on
6548         directory (location).
6549
6550 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6551
6552         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6553
6554         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6555
6556         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6557
6558         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6559
6560         * stepmake/stepmake/generic-vars.make (Module): idem.
6561
6562         * stepmake/stepmake/executable-targets.make (default): use it.
6563
6564         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6565
6566         * make/GNUmakefile: don't install make rules.
6567
6568         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6569         slashes.
6570         (prepend_env_path): more verbosity.
6571
6572 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6573
6574         * GNUmakefile.in: add dir argument for find command.
6575
6576         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6577         fixes weird line numbers for point & click.
6578
6579         * lily/source-file.cc (get_counts): init line/column/char counts.
6580
6581 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6582
6583         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6584
6585 2005-12-16  Graham Percival  <gpermus@gmail.com>
6586
6587         * Documentation/user/basic-notation.itely, advanced-notation.itely:
6588         minor fixes from Fredric.  Thanks!
6589
6590 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6591
6592         * ly/music-functions-init.ly: add \bar and \clef music function 
6593
6594         * lily/lily-lexer.cc: idem.
6595
6596         * lily/parser.yy (FIXME): remove BAR and CLEF.
6597
6598 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6599
6600         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6601
6602         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6603         function arguments too
6604
6605         * lily/main.cc (set_relocation): new function.
6606
6607         * scripts/musicxml2ly.py (convert): add \version
6608
6609         * lily/tie.cc: remove get_default_attachments()
6610
6611         * VERSION (PACKAGE_NAME): release 2.7.23
6612         
6613         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6614         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6615
6616         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6617
6618         * lily/tie-formatting-problem.cc (score_ties): new function
6619         (get_variations): new function. Try flipping dirs for collisions.
6620         (generate_optimal_chord_configuration): new function. 1-opt search
6621         for better configuration.
6622
6623         * lily/tie-configuration.cc: new file.
6624
6625         * lily/tie.cc: junk Tie::get_configuration()
6626
6627         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6628         (score_ties_configuration): new function.
6629         (generate_ties_configuration): new function.
6630         (generate_base_chord_configuration): new function.
6631         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
6632         (set_manual_tie_configuration): Move body from tie-column-format.cc 
6633
6634         * input/regression/tie-dot.ly: new file.
6635
6636         * lily/tie-formatting-problem.cc (score_configuration): score
6637         tie/dot collisions.
6638
6639         * lily/tie-helper.cc (get_transformed_bezier): new function
6640
6641         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6642
6643         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6644         -undefined suppress iso. -framework Python 
6645
6646         * scm/define-grobs.scm (all-grob-descriptions): set
6647         springs-and-rods (thanks Joe Neeman!)
6648
6649 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6650
6651         * input/no-notation/display-lily-tests.ly (test): 
6652         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6653         changed from \tag #'(a b) to \tag #'a \tag #'b
6654
6655 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6656
6657         * Documentation/topdocs/NEWS.tely: strip out-www.
6658
6659         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6660
6661         * config.make.in (AR): add AR and RANLIB
6662
6663         * flower/libc-extension.cc: include cassert
6664
6665         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6666         darwin check.
6667
6668 2005-12-11  Graham Percival  <gpermus@gmail.com>
6669
6670         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6671
6672         * stepmake/stepmake/python-modules-vars.make: define
6673         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
6674
6675         * THANKS: added Johannes Schindelin.
6676
6677 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6678
6679         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6680
6681         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6682         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
6683
6684         * lily/parser.yy: reorganize file layout.
6685
6686         * ly/music-functions-init.ly: add tweak music function.
6687
6688         * lily/grob-info.cc (ultimate_music_cause): new function:
6689         recursively lookup causes. 
6690
6691         * lily/parser.yy (chord_body_element): allow music functions for
6692         post-events, allow music functions for chord elements. 
6693  
6694         * lily/font-config-scheme.cc (display_fontset): add cast.
6695
6696         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6697         #'(a b) -> \tag #'a \tag #'b rule.
6698
6699         * python/musicexp.py (Output_printer.dump_version): new function
6700
6701 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6702
6703         * lily/parser.yy (FIXME): remove \tag
6704         (FIXME): remove tag_music() function.
6705
6706         * lily/lily-lexer.cc: remove \tag
6707
6708         * ly/music-functions-init.ly: define music-function "tag"
6709
6710         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6711
6712 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6713
6714         * VERSION (PATCH_LEVEL): release 2.7.22
6715
6716         * input/regression/lyric-hyphen-retain.ly: renew.
6717
6718         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6719         grob
6720
6721         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6722         iso. minimum-length property for rods.
6723
6724         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6725         LyricSpace item to keep lyrics spaced apart.
6726
6727         * ly/engraver-init.ly: remove Separating_line_group_engraver
6728
6729         * Documentation/user/music-glossary.tely: do setfilename before
6730         music-glossary.
6731
6732 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6733
6734         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6735         See xref documentation, for example.
6736
6737 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6738
6739         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6740         pending_skip iso. ly_voice[-1]
6741         (main): add if __main__ for debugging.
6742
6743         * python/musicxml.py (Accidental.__init__): new class.
6744
6745         * scripts/musicxml2ly.py (progress): new function
6746         (musicxml_key_to_lily): don't barf on modeless keys.
6747         (create_skip_music): new function.
6748         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6749         (musicxml_note_to_lily_main_event): new function.
6750
6751         * python/musicexp.py (Music.__init__): add comment field.
6752         (NestedMusic.append): new routine.
6753         (SequentialMusic.print_ly): print comment.
6754         (ArpeggioEvent.ly_expression): new class
6755         (BeamEvent.ly_expression): new class
6756         (NoteEvent.__init__): support for cautionary/forced accs.
6757
6758         * lily/lookup.cc (slur): normal order for array loop.
6759
6760         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6761         to 0.0.
6762
6763         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6764         collapsed.
6765
6766 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6767
6768         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6769
6770         * scripts/lilypond-book.py: Introduce option
6771             --preserve-line-breaks, for usage with srcltx
6772
6773 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6774
6775         * scm/output-lib.scm (print-circled-text-callback): draw circle
6776         around text using make-circle-markup.
6777
6778         * Documentation/user/*: strip out-www from file names.
6779
6780 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6781
6782         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6783         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6784
6785 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6786
6787         * Documentation/user/GNUmakefile: idem.
6788
6789         * Documentation/user/macros.itexi: strip out-www
6790
6791         * python/rational.py: python 2.3 compat.
6792
6793         * VERSION (PATCH_LEVEL): release 2.7.21
6794
6795         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6796         option formatting, lilypond style.
6797
6798         * python/musicexp.py: grab from Ikebana: a library for composing
6799         ly music expressions. 
6800         (Output_printer): class for advanced .ly printing.
6801         (eg. tupletting) 
6802
6803         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6804         convert to pythonesque structure.
6805
6806         * python/rational.py: PD rational number class.
6807
6808         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6809
6810 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6811
6812         * lily/part-combine-iterator.cc: Minor bugfix
6813         
6814         * THANKS: Update bughunters
6815
6816 2005-12-02  Werner Lemberg  <wl@gnu.org>
6817
6818         * mf/README: Document process for proper mf2pt1 conversion.
6819
6820         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6821         overlapping.
6822
6823         * mf/feta-harmonica.mf: Removed.  Unused.
6824
6825 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6826
6827         * scripts/lilypond-book.py (do_file): fix thinkos.
6828
6829 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6830
6831         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6832         ($(outdir)/parser.cc): 
6833         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6834
6835 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6836
6837         * ly/titling-init.ly (tagline): it should be a space between
6838         "Music engraving by LilyPond" and the version number.
6839
6840 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6841
6842         * VERSION (PACKAGE_NAME): release 2.7.20
6843
6844 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6845
6846         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6847
6848         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6849         1.0.
6850         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6851
6852 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6853
6854         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6855
6856         * kpath-guile/: remove directory
6857
6858         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6859         file. Encapsulate kpathsea using commandline tools.
6860
6861         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6862         kpathsea) module.
6863
6864 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6865
6866         * Documentation/user/advanced-notation.itely (Setting automatic
6867         beam behavior): Correct a few typos. Thanks to David Bobroff.
6868
6869         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6870         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6871
6872 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6873
6874         * scripts/*.py: gmane address for bugs.
6875
6876 2005-11-28 Pal Benko <benkop@freestart.hu>
6877         
6878         * make/ly-rules.make: add -f switch to mv
6879
6880         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6881
6882         * lily/bar-line.cc: interpret it
6883
6884 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6885
6886         * configure.in (--disable-documentation): New switch.
6887
6888         * GNUmakefile.in: Use it.
6889
6890         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6891
6892 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6893
6894         * scripts/lilypond-book.py (do_file): search chunks for
6895         \\begin{document}
6896
6897         * GNUmakefile.in: add copy step in between so we can lose the
6898         out-www directories.
6899
6900 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6901
6902         * lily/pango-font.cc (pango_item_string_stencil): put
6903         geometry.width into glyph-string too.
6904
6905 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6906
6907         * scm/define-music-display-methods.scm (RevertProperty):
6908         (OverrideProperty): Use grob-property-path property, a list of
6909         symbols, instead of grob-property, which used to be a single
6910         symbol.
6911         (BassFigureEvent): a figure can be a plain number, not necessarily a
6912         markup.
6913
6914 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6915
6916         * VERSION: release 2.7.19
6917         
6918         * lily/figured-bass-engraver.cc (process_music): check
6919         figuredBassCenterContinuations first.
6920
6921         * scm/translation-functions.scm (format-bass-figure): make double
6922         sharp larger. 
6923
6924         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6925         determine X-parent.
6926
6927         * lily/system-start-delimiter-engraver.cc: move from
6928         Nested_system_start_delimiter_engraver, rename
6929         Nested_system_start_delimiter_engraver ->
6930         System_start_delimiter_engraver.
6931
6932         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6933         bracket type from hierarchy.
6934
6935 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6936
6937         * lily/rest.cc (y_offset_callback): read staff-position.
6938
6939         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6940         mark after-line-breaking-callback as internal.
6941
6942         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6943
6944 2005-11-25  Werner Lemberg  <wl@gnu.org>
6945
6946         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6947
6948 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6949
6950         * stepmake/bin/add-html-footer.py (do_file): add google
6951
6952         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6953         staff if first_start_ is true.
6954
6955 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6956
6957         * scripts/midi2ly.py (split_track): add __repr__ members.
6958         (track_first_item): only return Item if not None. This fixes a
6959         problem when dumping a track that starts with an empty channel.
6960
6961         * python/midi.c: doc module.
6962
6963 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6964
6965         * Documentation/user/global.itely (Creating MIDI files): Fix
6966         compilation problem.
6967
6968 2005-11-22  Graham Percival  <gpermus@gmail.com>
6969
6970         * Documentation/user/basic-notation.itely: clarify dynamic
6971         padding text.
6972
6973         * Documentation/user/advanced-notation.itely: add unicode
6974         escape control example, whatever that is.  :)
6975
6976         * Documentation/user/global.itely: added "removing dynamics
6977         from MIDI" code.
6978
6979 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6980
6981         * VERSION (PATCH_LEVEL): release 2.7.18
6982
6983         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6984         System_start_delimiter_engraver by
6985         Nested_system_start_delimiter_engraver.
6986
6987         * lily/nested-system-start-delimiter-engraver.cc (struct
6988         Bracket_nesting_node): new class.
6989         (struct Bracket_nesting_group): new class
6990         (struct Bracket_nesting_staff): new class.
6991         (process_music): create hierarchy of grobs. This allows separate
6992         tuning of different SSDs. 
6993
6994         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6995         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6996
6997 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6998
6999         * lily/side-position-interface.cc (aligned_side): multiply
7000         staff_radius by 2.
7001
7002         * lily/script-engraver.cc (make_script_from_event): allow setting
7003         values to '()
7004
7005 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7006
7007         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7008
7009         * scm/define-grobs.scm (all-grob-descriptions): new grob
7010         NestedSystemStartDelimiter.
7011
7012         * input/regression/system-start-heavy-bar.ly: new file.
7013
7014         * lily/nested-system-start-delimiter-engraver.cc: new file.
7015
7016         * lily/nested-system-start-delimiter.cc: new file.
7017
7018         * input/regression/system-start-nesting.ly: new file.
7019
7020         * scm/define-grobs.scm (all-grob-descriptions): use X side
7021         positioning for positioning braces for nested contexts.
7022
7023         * lily/system-start-delimiter.cc (print): don't divide extent by
7024         staff_space.
7025         (print): use style iso. glyph.
7026         (staff_bracket): translate glyph inside routine already.
7027
7028 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
7029
7030         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7031         names.
7032
7033 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7034
7035         * scm/define-context-properties.scm
7036         (all-user-translation-properties): rename figuredBassFormatter
7037         from newFiguredBassFormatter.
7038
7039         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7040
7041         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7042
7043         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7044
7045         * lily/beam.cc (calc_beaming): new function.
7046         (calc_shorten): new function.
7047
7048         * THANKS: add Edward Neeman.
7049
7050         * input/regression/accidental-clef-change.ly: new file.
7051
7052         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7053
7054         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7055
7056         * lily/clef-engraver.cc (inspect_clef_properties): reset
7057         localKeySignature for clef changes.
7058
7059 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
7060
7061         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
7062         add dummy definition that works in Linux and add information in
7063         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7064
7065         * Documentation/user/changing-defaults.itely (Modifying context
7066         plug-ins): Add index for \with.
7067
7068         * Documentation/user/music-glossary.tely (dal segno): Updated
7069         example to version >=2.6.
7070
7071 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
7072
7073         * Documentation/user/instrument-notation.itely (Printing chord
7074         names): Reorder \chordmode and \repeat in one example.
7075
7076 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7077
7078         * VERSION: release 2.7.17
7079         
7080         * Documentation/topdocs/NEWS.tely (Top): add note about
7081         refactoring.
7082
7083         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7084         new function. Search region of 3 positions for best tie.
7085         (score_configuration): new function.
7086         (score_aptitude): new function.
7087         (generate_configuration): new function.
7088         (get_configuration): new function.
7089         (Tie_formatting_problem): new function
7090
7091         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
7092
7093         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7094
7095         * THANKS: add Eduardo Vieira & Ralph Little
7096
7097         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7098         narrower.
7099
7100         * lily/include/tie-formatting-problem.hh (class
7101         Tie_formatting_problem): add Tie_details to
7102         Tie_formatting_problem. Update calling conventions.
7103
7104         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7105         config.make.
7106
7107         * Documentation/user/lilypond.tely: remove musedata2ly entry.
7108
7109 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
7110
7111         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7112         scm/define-context-properties.scm: Maintenance bugfix: make
7113         ligature brackets work again by removing obsolete ligature
7114         primitive callback push/pop.
7115
7116         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7117         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
7118         value.
7119
7120 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
7121
7122         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7123         used and do not call it a path.
7124         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7125
7126 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7127
7128         * lily/include/tie-formatting-problem.hh (class
7129         Tie_formatting_problem): new file.
7130
7131         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7132
7133         * Documentation/misc/ChangeLog-2.3:  new file.
7134
7135         * lily/audio-staff.cc (output): degarianize.
7136
7137 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7138
7139         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7140         Unset PYTHONOPTIMIZE.  Fixes install if set.
7141
7142 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7143
7144         * python/convertrules.py (conv): add warning about drums. 
7145
7146         * make/stepmake.make: include toplevel-version.make after config.make.
7147
7148         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7149         also allow python2.4
7150
7151         * config.make.in (configure-srcdir): remove GXX GCC vars.
7152
7153         * stepmake/aclocal.m4: don't do non-srcdir build with
7154         symlinks. Use inclusion, so the src directory name can be changed.
7155
7156 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7157
7158         * make/mutopia-vars.make:
7159         * make/ly-vars.make: Use src-wildcard iso wildcard for source
7160         files.
7161
7162 2005-11-13  Werner Lemberg  <wl@gnu.org>
7163
7164         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7165         but the affected path.  This ensures that the (overlapping) outlines
7166         have the same direction, which is a necessary prerequisite for
7167         FontForge's algorithm to remove overlaps.
7168         Formatting.
7169
7170         * mf/feta-haak.mf: Formatting.
7171         (draw_bracket): Slightly modify outline to avoid an unnecessary
7172         corner.
7173         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7174         them from the affected paths.
7175
7176 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7177
7178         * mf/README: remove xpm / accordion notes.
7179
7180         * lily/tie-column-format.cc (set_chord_outline): add dots into
7181         skyline extents. This fixes tie formatting if the left head has dots.
7182
7183         * lily/tie.cc (get_configuration): only shift tie by a whole staff
7184         space inside the staff.
7185         (get_configuration): shift another position if necessary in case
7186         of left head tie  
7187
7188 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7189
7190         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7191         buildscript-dir iso. $(depth)/buildscripts.
7192
7193         * tex/GNUmakefile (local-uninstall): remove
7194         music-drawing-routines.ps juggling.
7195
7196         * stepmake/stepmake/install-targets.make (local-install-files):
7197         prepend src-dir to install targets.
7198
7199         * lily/system-start-delimiter-engraver.cc
7200         (acknowledge_system_start_delimiter): use
7201         add_offset_callback(). This fixes translation of nested
7202         staffgroups.
7203
7204         * lily/grob-closure.cc (add_offset_callback): only encaps in
7205         simple_closure if it's a procedure.
7206         
7207         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7208         from bar-line.
7209
7210         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7211         remove-empty where pertinent.
7212
7213 2005-11-12  Graham Percival  <gpermus@gmail.com>
7214
7215         * Documentation/user/instrument-notation.itely: added
7216         Cameron Horsburgh's multiple stanzas docs.  Thanks!
7217
7218 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7219
7220         * lily/GNUmakefile
7221         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7222         make picture in builddir, not srcdir.
7223
7224 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7225
7226         * VERSION: release 2.7.16
7227         
7228         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7229         shell arguments. 
7230
7231 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
7232
7233         * Documentation/user/examples.itely (Piano templates): Minor
7234         modification to the Piano centered lyrics example.
7235
7236 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7237
7238         * scripts/lilypond-invoke-editor.scm (run-browser): look at
7239         $BROWSER.
7240
7241         * Documentation/user/point-and-click.itely: simplify p&c
7242         instruction: don't configure firefox. Put lilypond-invoke-editor
7243         in front of the browser.
7244
7245         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7246         (run-browser): new function.
7247
7248         * lily/parser.yy (Lily_lexer): recognize Book
7249
7250         * lily/book.cc (clone): new function
7251
7252         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7253
7254 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
7255
7256         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7257         Maintenance bugfix: reduce number of font related warnings by
7258         updating naming conventions for glyph-name.
7259
7260 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7261
7262         * scm/define-grobs.scm (all-grob-descriptions): add
7263         rhythmic-grob-interface to TabNoteHead.
7264
7265         * scm/layout-beam.scm (check-quant-callbacks): remove
7266         set_stem_lengths()
7267
7268 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
7269
7270         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7271         alignment of centered divisiones.
7272
7273         * scm/scripts.scm (articulations): Maintenance bugfix:
7274         follow-into-staff -> quantize-position.
7275
7276         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7277         plica head in porrectus deminutus.
7278
7279 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7280
7281         * make/lilypond.fedora.spec.in (Group): add %clean section.
7282
7283         * lily/tuplet-bracket.cc (print): change check: remove bracket if
7284         less then 1/5th of total length.  
7285         (print): use gap too.  Fixes tupletUp-single-bracket.ly
7286
7287         * scm/music-functions.scm (glue-mm-rest-texts): also put other
7288         events into EventChord. This fixes textspanners on mm rests. Fixes
7289         spanner-rest.ly
7290
7291         * lily/side-position-interface.cc (get_axis): read side-axis
7292         (set_axis): set side-axis.
7293
7294         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7295         properties everywhere.
7296
7297         * lily/spacing-spanner.cc (breakable_column_spacing): add
7298         average-spacing-wishes. Take maximum if not set.
7299         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7300
7301         * scm/define-grobs.scm (all-grob-descriptions): add
7302         average-spacing-wishes.
7303
7304         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7305         offset callbacks. This fixes alignment for Fingering objects.
7306
7307         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7308         space for key - timesig combination. 
7309
7310         * input/regression/script-stem-tremolo.ly (Module): new file.
7311
7312         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7313         to key sig.
7314
7315         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7316         Fixes: c-tremolo-script.ly.
7317         
7318         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7319
7320         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7321         
7322         * scm/define-grobs.scm (all-grob-descriptions): remove
7323         self-X-offset. Fixes alignment of octavate-8.
7324
7325         * scripts/lilypond-book.py (datadir): look in
7326         LILYPONDPREFIX/share/lilypond/current/
7327
7328         * GNUmakefile.in: symlink current to <VERSION>. 
7329
7330 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
7331
7332         * lily/main.cc: eps listed as a backend.
7333
7334 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7335
7336         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7337
7338 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7339
7340         * lily/include/score.hh (class Score): remove texts_ member.
7341
7342         * lily/beam.cc (set_stem_lengths): force direction callback.
7343         (print): read quantized-positions, so we can force
7344         Beam::set_stem_lengths to occur.
7345         (rest_collision_callback): use common X parent. 
7346
7347 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7348
7349         * flower/file-path.cc (find): Bugfix: Return name of file found.
7350
7351         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7352         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7353         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7354
7355 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7356
7357         * flower/offset.cc: idem.
7358
7359         * mf/*.mf: update email address.
7360
7361         * lily/font-config-scheme.cc:  new file.
7362
7363         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7364
7365         * lily/*:  cs.uu.nl -> xs4all.nl
7366
7367         * VERSION (PATCH_LEVEL): release 2.7.15
7368
7369         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7370         spec files.
7371
7372         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7373
7374 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7375
7376         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
7377
7378         * lily/staff-performer.cc (process_music): add audio
7379         elements. This makes MIDI instrument changes work once again.
7380
7381         * lily/main.cc (LY_DEFINE): add gmane address.
7382
7383         * lily/beam.cc: remove calc_positions()
7384
7385         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7386         original_ in private scope.
7387         (class Grob): drop pscore_ pointer, change to output_def pointer.
7388         (class Grob): cleanup class definition.
7389
7390         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7391
7392 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7393
7394         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7395         absolute.  Better diagnostics.
7396
7397         * GNUmakefile.in: Add bin/ to tree and populate with some links.
7398         This makes lilypond run from the build directory using argv0
7399         relocation (without any --prefix or LILYPONDPREFIX setting).
7400
7401 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7402
7403         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7404
7405         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7406         with simple-closure.
7407
7408         * lily/self-aligment-interface.cc (set_align_self): new function
7409         (set_center_parent): new function.
7410
7411         * lily/side-position-interface.cc (set_axis): new function.
7412
7413         * lily/new-fingering-engraver.cc (position_scripts): use drul for
7414         generic code. 
7415
7416         * scm/define-grob-properties.scm (all-user-grob-properties):
7417         remove [XY]-offset-callbacks add [YX]-offset
7418         
7419 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
7420
7421         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7422         entry for time signatures after breathing signs. Bug report by
7423         Scott Russell.
7424
7425 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7426
7427         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7428         not absolute, make it absolute using PATH.
7429
7430 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7431
7432         * python/midi.c (initmidi): Fix type for mingw.
7433
7434 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
7435
7436         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7437
7438         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7439         cross compiling.
7440
7441         * stepmake/aclocal.m4: Support python cross compiling.
7442
7443         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7444         Add mingw section.
7445
7446 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7447
7448         * scm/output-lib.scm (chain-grob-member-functions): replace
7449         chained-callback.cc
7450
7451         * lily/chained-callback.cc (Module): remove file.
7452
7453         * lily/rest-collision.cc (force_shift_callback_rest): change to
7454         chained callback.
7455
7456         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
7457
7458         * lily/grob.cc (y_parent_positioning): remove axis argument from
7459         parent_positioning callbacks.
7460         (Grob): junk init code
7461         (get_offset): use generic property callbacks for
7462         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7463         (axis_parent_positioning): new function
7464         (axis_offset_symbol): new function
7465         (chain_offset_callback): new function
7466         (add_offset_callback): new function
7467
7468         * lily/beam.cc (rest_collision_callback): change signature; this
7469         is now a chained callback.
7470
7471         * lily/include/dimension-cache.hh (class Dimension_cache): remove
7472         callback administration.
7473
7474         * lily/simple-closure.cc: new file. Smob type that allows "grob
7475         member functions",
7476
7477             (ly:make-simple-closure FUNC A B)
7478
7479         is evaluated as (FUNC grob A B). This allows chaining of callbacks
7480         in various ways.
7481
7482         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7483         callbacks.
7484
7485         * lily/slur.cc (outside_slur_callback): take 2 arguments.
7486
7487         * lily/rest.cc (polyphonic_offset_callback): remove.
7488
7489         * lily/script-engraver.cc (try_music): remove bool* argument.
7490
7491         * scm/script.scm (default-script-alist): set quantize-position
7492         appropriately.
7493
7494         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
7495
7496         * lily/side-position-interface.cc (aligned_side): move staff
7497         position quantization from
7498         Side_position_interface::quantised_position().
7499         (quantised_position): remove
7500         
7501 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7502
7503         * input/regression/beam-quant-standard.ly: reindent, set
7504         debug-beam-quanting to #t.
7505
7506         * lily/beam-concave.cc (calc_concaveness): set concaveness to
7507         10000 if this is a "hard" concave beam.
7508
7509         * lily/beam.cc (calc_least_squares_positions): change from
7510         calc_least_squares_dy
7511         (set_stem_lengths): this is now a chained callback.
7512
7513         * lily/context-property.cc (execute_general_pushpop_property):
7514         bugfix override with procedure should have effect.
7515
7516         * scm/define-grob-properties.scm (all-internal-grob-properties):
7517         remove position-callbacks.
7518
7519         * scm/define-grobs.scm (all-grob-descriptions): use
7520         ly:make-callback-chain for positions property.
7521
7522         * scm/layout-beam.scm (check-quant-callbacks): return list of
7523         chained callbacks.
7524
7525         * scm/lily.scm (type-p-name-alist): add callback-chain
7526
7527         * lily/lily-guile.cc (type_check_assignment): type check failure
7528         is warning not message.
7529
7530         * lily/grob-property.cc (try_callback): walk callback chain if
7531         appropriate.
7532
7533         * lily/chained-callback.cc: new file. new smob type.
7534
7535         * lily/lily-guile.cc (procedure_arity): new function.
7536
7537 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7538
7539         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7540
7541 2005-10-25  John Mandereau  <john.mandereau@free.fr>
7542  
7543         * Documentation/user/instrument-notation.itely (Figured bass):
7544         describe new features
7545
7546 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7547
7548         * lily/beam.cc (calc_least_squares_dy): use property callback.
7549
7550         * lily/beam-concave.cc (calc_concaveness): use property callback.
7551
7552         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
7553
7554 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
7555
7556         * HACKING: Update.
7557
7558 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7559
7560         * scm/layout-page-layout.scm (page-headfoot): annotate
7561         pagetopspace too.
7562
7563         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
7564
7565         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7566         doesn't take y-space.
7567
7568         * scm/paper.scm (paper-alist): fix A7 dimensions. 
7569
7570 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
7571
7572         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7573         src-wildcard, remove $(wildcard).
7574
7575         * po/GNUmakefile (PO_FILES): 
7576         * ps/GNUmakefile (PS_FILES): 
7577         * tex/GNUmakefile (TEX_FILES): 
7578         * cygwin/GNUmakefile (POSTINSTALLS):
7579         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7580         some wildcard calls.
7581
7582 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7583
7584         * THANKS: add Thomas Bushnell.
7585
7586 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
7587
7588         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7589         (lilypond-main): Redirect to gui-main if 'gui is set.
7590
7591         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7592         for alternative installations kludging s/share/lib/g
7593         LILYPONDPREFIX. 
7594
7595         * SConstruct (libdir_package_version): Define.
7596
7597         * python/SConscript: 
7598         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7599         module in libdir.  
7600
7601 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7602
7603         * lily/main.cc: clarify --safe.
7604
7605 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7606
7607         * VERSION: release 2.7.14
7608         
7609         * Documentation/user/*.itely: remove minimumVerticalExtent.
7610
7611         * scm/define-grobs.scm (all-grob-descriptions): remove
7612         RemoveEmptyVerticalGroup
7613
7614         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7615
7616         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7617         compile on MOSX
7618
7619         * python/convertrules.py (conv): add rules.
7620
7621         * lily/grob.cc: remove is_empty()
7622
7623         * lily/grob-property.cc: remove add_to_list_property().
7624
7625         * scripts/convert-ly.py (datadir): add prefix switching hack to
7626         .py too.
7627
7628         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7629         space-function tweak.
7630
7631         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7632
7633         * scm/define-grob-properties.scm (all-user-grob-properties):
7634         remove callback property.
7635
7636         * lily/include/grob.hh (class Grob): remove property_callbacks_
7637         member. Properties of procedure type are assumed to be callbacks.
7638
7639         * lily/ligature-engraver.cc (override_stencil_callback):
7640         rewrite. Use noteHeadLigaturePrimitive as source.
7641
7642         * scm/define-grob-properties.scm (all-internal-grob-properties):
7643         remove ligature-primitive-callback
7644
7645         * lily/include/dimension-cache.hh (class Dimension_cache): make
7646         class, with Grob as friend.
7647
7648         * lily/grob.cc: remove set_extent_callback(), set_extent() and
7649         has_extent_callback()
7650
7651         * scm/translation-functions.scm (format-new-bass-figure): read
7652         figuredBassPlusDirection
7653
7654         * scm/define-context-properties.scm
7655         (all-user-translation-properties): add figuredBassPlusDirection.
7656
7657         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7658
7659         * lily/align-interface.cc (set_ordered): new function.
7660
7661         * lily/grob.cc (flush_extent_cache): rewrite.
7662
7663         * lily/dimension-cache.cc (Dimension_cache): cache extent as
7664         Interval pointer directly.
7665
7666         * lily/main.cc (setup_paths): insert extra / .
7667         (setup_paths): junk cff entry.
7668
7669         * lily/font-config.cc (init_fontconfig): only add type1 / otf
7670         directories.
7671
7672         * lily/axis-group-engraver.cc (finalize): remove
7673         extraVerticalExtent, minimumVerticalExtent verticalExtent.
7674
7675         * lily/grob.cc (Grob): don't set extent from ctor.
7676         (extent): use property callbacks. 
7677
7678         * lily/axis-group-interface.cc: remove set_axes() function.
7679
7680         * lily/grob-property.cc (del_property): new function.
7681
7682 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7683
7684         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7685         
7686 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7687
7688         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7689
7690 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7691
7692         * mf/SConscript: Updates.
7693
7694         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7695
7696         * stepmake/stepmake/*:
7697         * */GNUmakefile:
7698         * config.make.in:
7699         * GNUmakefile.in:
7700         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7701         from any directory in build-dir.  Cleanups.
7702
7703         * make/srcdir.make.in: Remove.
7704
7705         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7706
7707         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7708         main).
7709
7710         * lily/SConscript: Remove ttftools.
7711
7712         * SConstruct: Resurrect.
7713
7714 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7715
7716         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7717         Y coordinate. 
7718
7719         * lily/paper-book.cc (add_score_title): put Paper_score title into
7720         systems_ list.
7721
7722         * scm/translation-functions.scm (format-new-bass-figure): also
7723         allow plus in combination with _
7724
7725 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7726
7727         * VERSION: 2.7.13 released.
7728
7729         * lily/note-collision.cc (check_meshing_chords): don't wipe
7730         stencil, merely set transparent.
7731
7732         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7733         (Top): document #'callbacks.
7734         (Top): document nested \override.
7735
7736         * input/regression/figured-bass.ly: update for slash and pluses.
7737
7738         * input/regression/figured-bass-continuation-forbid.ly (Module):
7739         new file.
7740
7741         * scm/translation-functions.scm (format-new-bass-figure): use
7742         slashed-digit if diminished is set.
7743         (format-new-bass-figure): add + if 'augmented is set.
7744
7745         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7746
7747         * input/test/piano-staff-distance.ly: remove file.
7748
7749         * Documentation/user/advanced-notation.itely (Formatting cue
7750         notes): use length-fraction for making stems/beams smaller.
7751
7752         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7753         modifications.
7754
7755         * lily/new-figured-bass-engraver.cc: new property
7756         centerFiguredBassContinuations
7757
7758         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7759         use callbacks.
7760
7761         * lily/context-property.cc (execute_general_pushpop_property):
7762         robustness checks.
7763
7764         * input/regression/override-nest.ly: new file.
7765
7766         * python/convertrules.py (FatalConversionError.subber): conversion
7767         rule for #'callbacks
7768
7769         * input/regression/override-nest.ly: new function.
7770
7771         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7772         #c too. 
7773
7774         * lily/context-property.cc (lookup_nested_property): new function.
7775         (evict_from_alist): new function.
7776         (general_pushpop_property): new function.
7777         (execute_general_pushpop_property): rewrite. Support nested
7778         properties too.
7779
7780 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7781
7782         * lily/beam.cc: use length-fraction too.
7783
7784         * scm/define-grob-properties.scm (all-user-grob-properties):
7785         remove property flag-width-function
7786         (all-user-grob-properties): remove space-function.
7787
7788         * scm/layout-beam.scm: remove flag-width-function.
7789
7790         * lily/beam.cc: remove flag-width-function
7791
7792         * scm/layout-beam.scm: remove beam dir functions.
7793
7794         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7795
7796         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7797         for easier grace tweaks.
7798
7799         * lily/beam.cc: remove dir-function.
7800
7801         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7802
7803         * lily/grob.cc: remove spacing-procedure.
7804
7805         * lily/note-head.cc (calc_stem_attachment): new function.
7806         (internal_print): use callback to get glyph-name.
7807
7808         * lily/grob-property.cc (get_interfaces): new function.
7809
7810         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7811
7812         * lily/stem.cc (calc_stem_end_position): new function.
7813         (calc_length): new function.
7814         document details for stem.
7815         remove Stem::get_direction()
7816
7817         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7818
7819         * lily/grob-property.cc (set_callback): new function.
7820
7821         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7822
7823         * lily/item-scheme.cc: new file.
7824
7825         * lily/bar-line.cc (before_line_breaking): remove function.
7826         remove bar-size-procedure, break-glyph-function
7827
7828         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7829
7830         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7831
7832         * lily/system-start-delimiter.cc (print): suicide from
7833         here. Remove after_line_breaking_callback.
7834
7835         * lily/script-interface.cc (calc_direction): use callback for direction.
7836
7837         * lily/side-position-interface.cc (aligned_side): don't use
7838         Side_position_interface::get_direction directly. Use callback. 
7839
7840         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7841         calculate stencil.
7842         (get_print_stencil): rename from get_stencil: create stencil with
7843         transparency, color and cause. 
7844
7845         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7846
7847         * python/convertrules.py (conv): insert temporary warning rule.
7848
7849         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7850
7851         * lily/grob-property.cc (try_callback): remove marker if applicable.
7852
7853         * lily/grob.cc: elucidate doc about after/before-line-breaking
7854
7855         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7856
7857         * lily/stem.cc (height): idem.
7858
7859         * lily/stem-tremolo.cc: idem.
7860
7861         * lily/slur.cc (height): don't use get_uncached_stencil()
7862
7863         * lily/rest.cc (y_offset_callback): use offset callback
7864         iso. after-line-breaking callback.
7865
7866         * lily/grob.cc: change after/before-line-breaking-callback to
7867         after/before-line-breaking dummy properties.
7868
7869         * lily/include/grob.hh: remove Grob_status.
7870
7871         * scm/define-context-properties.scm
7872         (all-user-translation-properties): remove verticalAlignmentChildCallback
7873
7874         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7875         (calc_direction): use callback
7876         (calc_positions): use callback.
7877
7878         * lily/tie.cc (calc_direction): use callback. Only call parent
7879         positioning for more than one tie.
7880
7881         * lily/tie-column.cc (calc_positioning_done): use callback
7882
7883         * lily/slur-scoring.cc (calc_control_points): use callback
7884
7885         * lily/slur.cc (calc_direction): use callback.
7886
7887         * lily/note-collision.cc (force_shift_callback): remove.
7888
7889         * lily/dot-column.cc (force_shift_callback): remove. Use
7890         other_axis_parent_positioning.
7891
7892         * lily/grob.cc (other_axis_parent_positioning): new function.
7893         (same_axis_parent_positioning): new function
7894
7895         * lily/align-interface.cc (alignment_callback): remove function.
7896
7897         * lily/note-collision.cc (calc_positioning_done): use callback.
7898
7899         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7900         (calc_direction): idem.
7901         remove print function.
7902
7903         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7904
7905         * lily/dot-column.cc (calc_positioning_done): use callback.
7906
7907         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7908
7909         * lily/beam.cc (calc_direction): use pseudo-property for beam
7910         direction callback.
7911         (calc_positions): use callback 
7912
7913         * lily/align-interface.cc (calc_positioning_done): use
7914         callback. Fold fixed  distance and normal alignment in one function.
7915
7916         * lily/stem.cc (calc_stem_end_position): use callback.
7917         (calc_positioning_done): idem.
7918         (calc_direction): idem.
7919         (calc_stem_end_position): idem
7920         (calc_stem_info): idem.
7921
7922         * lily/grob-property.cc (get_property_data): new function: 
7923         (try_callback): new function.
7924
7925         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7926         callbacks property.
7927
7928         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7929
7930 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7931
7932         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7933         tie
7934         has no heads.
7935         
7936         * lily/include/*.hh (Module): compile fixes.
7937
7938 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7939
7940         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7941         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7942         instead of (char-syntax nil), thanks to Milan Zamazal.
7943
7944 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7945
7946         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7947         dist.
7948
7949         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7950         themselves.
7951
7952 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7953
7954         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7955         add class_name() method.
7956
7957         * lily/music-scheme.cc: remove ly:music-name.
7958
7959 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7960
7961         * cygwin/postinstall-lilypond.sh: Remove cruft.
7962
7963         * cygwin/postremove-lilypond.sh: Remove.
7964
7965         * cygwin/GNUmakefile (default): Remove postremove rules.
7966
7967 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7968
7969         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7970         even header too.
7971         
7972         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7973         MacOS 9 users.
7974
7975         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7976         consider break index for broken spanner.
7977
7978         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7979         characters from string before splitting.
7980
7981 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7982
7983         * scm/framework-ps.scm (output-preview-framework): use
7984         is-book-title to determine whether to chop off the booktitle.
7985
7986         * lily/paper-book.cc (systems): init from book-title-properties
7987         (add_score_title): init score-title-properties.
7988
7989         * ly/paper-defaults.ly: add {score,book}-title-properties.
7990
7991         * scm/document-backend.scm (lookup-interface): error message if
7992         using unknown interface.
7993
7994         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7995         edge-height.
7996
7997         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7998         make_bracket.
7999         (make_bracket): new function.
8000
8001         * scm/lily.scm (define-scheme-options): add paper-size option.
8002
8003         * ly/declarations-init.ly (laissezVibrer): get paper size from
8004         -dpaper-size
8005
8006         * scm/translation-functions.scm: use \fontsize for changing the
8007         fontsize.
8008
8009         * scm/define-grobs.scm (all-grob-descriptions): set
8010         between-length-limit to 1.0
8011
8012         * lily/tie-helper.cc: add between_length_limit_ detail property.
8013
8014         * mf/feta-bolletjes.mf: typos.
8015
8016         * lily/note-head.cc (internal_print): don't shadow idx
8017         parameter. This fixes wrong attachment for do shape heads.
8018
8019 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8020
8021         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8022
8023         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8024
8025         * scm/layout-slur.scm: rename from slur.scm
8026
8027         * scm/layout-page-layout.scm: rename from page-layout.scm
8028
8029         * scm/layout-beam.scm: rename from beam.scm
8030
8031         * scm/define-grob-interfaces.scm (bass-figure-interface): add
8032         bass-figure-interface
8033
8034         * lily/new-figured-bass-engraver.cc (process_music): add
8035         implicitBassFigures property.
8036         
8037         * scm/define-markup-commands.scm (pad-x): new markup.
8038
8039         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8040         minimumVerticalExtent on FiguredBass context.
8041
8042         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8043         case the continuation crosses a line break.
8044
8045 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8046
8047         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8048         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
8049         absolute file name bug.  
8050
8051 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8052
8053         * VERSION (PACKAGE_NAME): release 2.7.12
8054
8055         * input/regression/figured-bass-continuation-center.ly: new file.
8056
8057         * input/regression/beam-outside-beamlets.ly: new file.
8058
8059         * lily/beam.cc (set_beaming): don't clip edges.
8060         (connect_beams): don't clip edges.
8061
8062         * lily/beaming-info.cc (clip_edges): new function.
8063
8064         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8065
8066         * Documentation/user/instrument-notation.itely (Figured bass):
8067         demonstrate extenders, update seealso links.
8068
8069         * scm/titling.scm (marked-up-headfoot): change tagline
8070         handling. tagline = ##f will blank the tagline as well.
8071
8072 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8073
8074         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8075
8076         * lily/new-figured-bass-engraver.cc (struct
8077         New_figured_bass_engraver): add new_music_found_ member.
8078
8079         * lily/lilypond-version.cc (Lilypond_version): deal with
8080         incorrectly formatted version strings. 
8081
8082         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8083         New_figured_bass_engraver by default.
8084
8085         * lily/ttf.cc (print_trailer): only define glyph names when
8086         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8087
8088 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8089
8090         * lily/horizontal-bracket.cc (make_bracket): new function.
8091
8092         * scm/define-grobs.scm (all-grob-descriptions): new grobs
8093         NewBassFigure, BassFigureBracket, BassFigureContinuation,
8094         BassFigureLine, BassFigureAlignment
8095
8096         * lily/new-figured-bass-engraver.cc (process_music): new file.
8097
8098         * lily/figured-bass-continuation.cc: new file.
8099
8100         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8101         new file.
8102
8103 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
8104
8105         * scripts/lilypond-book.py: Bug fix, put the quote around the
8106         actual score for LaTeX documents.
8107
8108         * scm/define-grobs.scm (all-grob-descriptions): Change
8109         collapse-height of the SystemStartBracket grob to 5.0, 
8110         so the bracket disappears for single stave score lines (similarly
8111         to SystemStartBraces). 
8112
8113         * Documentation/user/advanced-notation.itely (Polymetric
8114         notation): Clarify the use of compressMusic.
8115
8116         * Documentation/user/basic-notation.itely (Grace notes): Clarify
8117         that the grace spacer note in other staves need the same duration
8118         and document the stroke-style property.
8119
8120 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8121
8122         * Documentation/user/global.itely (Vertical spacing): document
8123         alignment-extra-space and fixed-alignment-extra-space.
8124
8125         * Documentation/topdocs/NEWS.tely (Top): add entry.
8126
8127         * input/regression/alignment-vertical-spacing.ly: new file.
8128
8129         * python/convertrules.py (conv): add rule.
8130
8131         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8132
8133         * lily/align-interface.cc (stretch_after_break): new
8134         function. Read fixed-alignment-extra-space property.
8135         (align_elements_to_extents): read alignment-extra-space property.
8136
8137         * lily/lily-guile.cc (robust_scm2dir): new function.
8138
8139         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8140         (annotate-space-left): new function. Annotate space left on page. 
8141         (annotate-y-interval): new function.
8142         (paper-system-annotate-last): new function. Annotate bottom-space.
8143
8144         * mf/feta-beugel.mf (y): 
8145
8146 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8147
8148         * VERSION (PACKAGE_NAME):  release 2.7.11
8149
8150         * scm/lily-library.scm (interval-translate): new function
8151         (interval-center): new function. 
8152
8153         * scm/page-layout.scm (paper-system-annotate): new function. Add
8154         arrows for dimensions.
8155  
8156         * scm/stencil.scm (dimension-arrows): new function.
8157
8158         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8159
8160         * input/regression/page-spacing.ly: add annotatespacing
8161
8162         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8163         (LY_DEFINE): new function ly:paper-system-set-property!
8164
8165         * Documentation/user/global.itely (Paper size): explain how to add
8166         sizes.
8167
8168         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8169         correspond to GS's definition.
8170
8171         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8172         tuplet bracket.
8173         (print): only connect to next bracket if the next one is alive.
8174         (print): set padding to 0.0 if the bound is a breakable
8175         column. This makes tupletFullLength brackets reach up to the staff
8176         line if it doesn't connect to the next line.
8177
8178 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8179
8180         * lily/bar-number-engraver.cc: correct docs.
8181
8182         * scm/output-lib.scm (first-bar-number-invisible): rename from
8183         default-bar-number-visibility
8184
8185 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8186
8187         * scm/define-music-properties.scm (all-music-properties): remove
8188         predicate property.
8189
8190 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
8191
8192         * po/fi.po: refresh.
8193
8194 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8195
8196         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8197         superfluous s1.
8198         (disappear): bugfix.
8199
8200         * lily/stem-tremolo.cc (raw_stencil): read slope property.
8201
8202         * lily/include/paper-system.hh (class Paper_system): remove
8203         staff_extents_ member.
8204
8205         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8206
8207         * lily/include/paper-system.hh (class Paper_system): remove
8208         number_ variable. Remove is_title_. Remove break_before_penalty_
8209
8210         * lily/paper-book.cc (systems): use 'number property iso. number_
8211         member.
8212
8213         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8214         remove ly:paper-system-number.
8215
8216         * scm/lily-library.scm (paper-system-title?): new function.
8217
8218         * lily/book.cc (process): bugfix: flip ?: cases. 
8219
8220         * Documentation/user/changing-defaults.itely (Difficult tweaks):
8221         add outputProperty.
8222
8223         * ly/music-functions-init.ly: add outputProperty music function.
8224
8225         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8226
8227         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8228         and next-padding.
8229         (optimal-page-breaks): rename from ly:optimal-page-breaks.
8230
8231         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8232
8233         * lily/paper-system.cc (internal_get_property): new function.
8234
8235         * Documentation/user/global.itely (Vertical spacing): refer to
8236         page-spacing.ly
8237
8238         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8239         pagetopspace
8240
8241         * input/regression/page-spacing.ly: new file.
8242
8243         * input/regression/page-top-space.ly: new file.
8244
8245         * lily/spacing-spanner.cc: cmath -> math.h
8246
8247         * lily/paper-system.cc (read_left_bound): new function. Read
8248         line-break-system-details from left bound to determine extents.
8249  
8250         * Documentation/user/programming-interface.itely (Using LilyPond
8251         syntax inside Scheme): change applyxxx -> applyXxx.
8252
8253         * ly/music-functions-init.ly: add outputProperty music function.
8254
8255         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8256
8257         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8258
8259         * python/convertrules.py (conv): rule
8260
8261         * ly/music-functions-init.ly: applyxxx -> applyXxx
8262
8263         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8264         TabVoice to Voice.
8265
8266 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8267
8268         * flower/include/real.hh: include <math.h> iso. <cmath>
8269
8270         * flower/include/offset.hh: include real.hh
8271
8272 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8273
8274         * Documentation/user/changing-defaults.itely (Difficult tweaks):
8275         fix example, now that 'interfaces is no longer directly available.
8276
8277         * lily/book.cc (process): don't crash if paper == NULL.
8278
8279         * po/fr.po: update.
8280
8281 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8282
8283         * scm/define-music-types.scm (music-descriptions): set length and
8284         start-callback for QuoteMusic
8285
8286 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
8287
8288         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8289         arguments. Fixes compilation error with gcc 3.3.
8290
8291 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8292
8293         * VERSION: release 2.7.10
8294
8295         * stepmake/stepmake/python-module-rules.make
8296         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
8297
8298         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8299         real.hh
8300
8301 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8302
8303         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8304         -Werror. Otherwise GCC barfs over various optimizations.
8305
8306         * scm/define-grob-properties.scm (all-internal-grob-properties):
8307         add note-head property
8308
8309         * Documentation/user/instrument-notation.itely (Laissez vibrer
8310         ties): new node.
8311
8312         * input/regression/laissez-vibrer-ties.ly: new file.
8313
8314         * lily/laissez-vibrer-engraver.cc: new file.    
8315
8316         * lily/include/tie-column-format.hh: new file.
8317
8318         * lily/tie-column-format.cc: new file. 
8319
8320         * lily/tie-column.cc (set_manual_tie_configuration): new function.
8321
8322         * lily/laissez-vibrer-tie.cc: new file.
8323
8324         * lily/include/laissez-vibrer-tie.hh: new file.
8325
8326         * ly/engraver-init.ly: add Laissez_vibrer_engraver
8327
8328         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8329
8330         * scm/define-grobs.scm (all-grob-descriptions): add
8331         LaissezVibrerTie, LaissezVibrerTieColumn
8332
8333         * lily/tie-column.cc (set_tie_config_directions): new function
8334         (final_shape_adjustment): new function.
8335         (shift_small_ties): new function.
8336
8337         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8338
8339         * lily/include/tie.hh (struct Tie_details): add x_gap_
8340         (struct Tie_configuration): add head_position_
8341
8342         * lily/tie-column.cc (set_chord_outline): new function.
8343
8344         * mf/cmr.enc.in:  remove file.
8345
8346 2005-09-11  Graham Percival  <gpermus@gmail.com>
8347
8348         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
8349
8350 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8351
8352         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8353         reduce aliasing effects.
8354
8355         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8356         box in skyline.
8357
8358 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8359
8360         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8361
8362         * flower/include/real.hh: std::fabs too.
8363
8364 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8365
8366         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
8367
8368         * lily, flower: Include C++ iso C headers.  Import namespace std
8369         throughout.
8370
8371         * lily/side-position-interface.cc: 
8372         * lily/scm-hash.cc: 
8373         * lily/note-head.cc: 
8374         * lily/include/includable-lexer.hh: 
8375         * flower/include/string-data.icc: Remove using std::*.
8376
8377         * lily, flower: Include C++ iso C headers.  Import namespace std
8378         throughout.
8379
8380         * lily/side-position-interface.cc: 
8381         * lily/scm-hash.cc: 
8382         * lily/note-head.cc: 
8383         * lily/include/includable-lexer.hh: 
8384         * flower/include/string-data.icc: Remove using std::*.
8385
8386         * Documentation/user/instrument-notation.itely (Entering lyrics):
8387         Multiple latin-1->utf-8 conversion fix.
8388
8389         * Documentation/user/*tely: Update Emacs cookie to utf-8.
8390
8391 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8392
8393         * lily/tie.cc (get_configuration): also avoid dots for non-space
8394         situations.
8395
8396 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8397
8398         * Documentation/user/instrument-notation.itely: Bugfix.
8399
8400 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8401
8402         * tex/GNUmakefile: don't install texinfo.tex
8403
8404         * tex/ : cleanup: remove unused files.
8405
8406         * lily/general-scheme.cc: remove my_{isinf,isnan}.
8407
8408         * flower/include/real.hh: using std::{isnan,isinf}
8409         
8410         * VERSION (PATCH_LEVEL): release 2.7.9
8411
8412 2005-09-05  Graham Percival  <gpermus@gmail.com>
8413
8414         * Documentation/user/ instrument-notation.itely,
8415         advanced-notation.itely: minor tweaks.
8416
8417         * input/test/script-chart.ly: add item padding.
8418
8419 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8420
8421         * flower/offset.cc: use math.h iso. <cmath>
8422
8423         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8424         of IE users.
8425
8426         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8427         (widen-left-stencil-edges): new function. Fix alignment problems
8428         with LaTeX includegraphics.
8429
8430         * lily/text-interface.cc (interpret_markup): use abort().
8431
8432 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8433
8434         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8435
8436         * lily/tie.cc (get_configuration): update bezier shape as we
8437         change Y positions.
8438         (get_configuration): don't move large ties if we're outside of the
8439         staff.
8440
8441 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8442
8443         * scm/define-markup-commands.scm (strut): swap X and Y dims.
8444         
8445 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
8446
8447         * .cvsignore: Add auto-generated configure files and then some.
8448
8449 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8450
8451         * scm/define-grobs.scm (DynamicLineSpanner): Add
8452         X-extent-callback.  Fixes hairpin-slur collision.
8453
8454 2005-08-31  Graham Percival  <gpermus@gmail.com>
8455
8456         * Documentation/user/advanced-notation.itely,
8457         basic-notation.itely: minor changes.
8458
8459 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
8460
8461         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8462         \linebreak between each .eps file if \betweenLilyPondSystem is
8463         undefined. 
8464
8465         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8466         music): Document the \linebreak
8467
8468         * Documentation/user/lilypond-book.itely,
8469         input/tutorial/lbook-latex-test.tex,
8470         Documentation/user/examples.itely: Remove \usepackage{graphics}
8471
8472 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8473
8474         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8475
8476         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8477         compat bugfix.
8478
8479         * scripts/lilypond-book.py (PREAMBLE_LY): define
8480         inside-lilypond-book
8481         (modify_preamble): new function. Insert \RequirePackage{graphics}
8482         when no {graphics found in preamble.  
8483
8484 2005-08030  Graham Percival  <gpermus@gmail.com>
8485
8486         * Documentation/user/basic-notation.itely, global.itely,
8487         tutorial.itely: misc small changes.
8488
8489 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8490
8491         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8492         VERSION.
8493
8494 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8495
8496         * lily/tie-column.cc (new_directions): put Tie down on center
8497         staff line. 
8498
8499         * lily/script-interface.cc (before_line_breaking): use
8500         Grob::programming_error
8501
8502         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8503
8504         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8505         of splitext.
8506
8507 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8508
8509         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8510
8511 2005-08-29  Werner Lemberg  <wl@gnu.org>
8512
8513         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8514         the `*.scale.pfa' files to avoid warnings.
8515
8516 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8517
8518         * lily/tempo-performer.cc (process_music): idem.
8519
8520         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8521
8522 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8523
8524         * Documentation/user/advanced-notation.itely (Text markup): not a
8525         fragment.
8526
8527         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8528
8529         * lily/staff-performer.cc (initialize): add tempo/name to
8530         audio_staff_
8531
8532
8533 2005-08-26  Graham Percival  <gpermus@gmail.com>
8534
8535         * Documentation/user/advanced.itely: add text-only example.
8536
8537         * Documentation/user/invoking.itely: add index entries for
8538         convert-ly.
8539
8540         * Documentation/user/ tutorial.itely, basic-notation.itely:
8541         small fixes suggested by Steve D.  Thanks!
8542
8543 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8544
8545         * input/regression/markup-bidi-pango.ly: new file.
8546
8547         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8548         standard. Remove #ifdef. Remove memleak.
8549         (text_stencil): use text_dir to decide how to composite items.
8550         (text_stencil): determine uniform text direction for the entire
8551         string.
8552
8553         * scripts/lilypond-book.py (output_name): remove
8554         latex_filter_cmd. Non-portable to non-Unix systems. 
8555         (get_latex_textwidth): use File.write and os.unlink() instead.
8556
8557         * THANKS: add Vicente & Trevor.
8558
8559         * lily/grob.cc (discretionary_processing): look up origin for
8560         programming_error too. 
8561
8562         * input/regression/tie-broken.ly: new file.
8563
8564         * lily/tie-column.cc (set_chord_outlines): set outline for line
8565         break case too.
8566         
8567 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8568
8569         * lily/pango-font.cc (text_stencil): don't translate glyphs in
8570         unscaled transform, just translate stencils.
8571
8572         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
8573         MIDI.
8574
8575         * scm/define-markup-commands.scm (wordwrap-string): use
8576         text-direction
8577         (wordwrap-stencils): idem.
8578         (line): idem.
8579         (fill-line): idem.
8580         (wordwrap-stencils): translate last line to right for
8581         text-direction = LEFT.
8582
8583         * scm/define-grob-properties.scm (all-user-grob-properties): add
8584         text-direction.
8585
8586 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8587
8588         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8589         when copying a Lily_parser object.
8590
8591 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8592
8593         * scm/define-markup-commands.scm (null): add null markup.
8594
8595 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
8596
8597         * lily/item.cc: Add documentation of center-invisible
8598
8599 2005-08-24  Graham Percival  <gpermus@gmail.com>
8600
8601         * Documentation/user/advanced-notation.itely: add info about
8602         raising text.
8603
8604         * Documentation/user/programming-interface.itely: fix example
8605         involving raised text.
8606
8607 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8608
8609         * lily/beam.cc (print): fix X start/end points of isolated
8610         beamlets.
8611
8612         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8613
8614         * lily/multi-measure-rest.cc (set_text_rods): new function.
8615
8616         * lily/vertical-align-engraver.cc (process_music): call
8617         Align_interface::set_axis(). This forces #'elements to be ordered,
8618         preventing random vertical reordering of staves.
8619
8620         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8621         add avoid-slur property. 
8622
8623         * Documentation/user/basic-notation.itely (Measure repeats): add
8624         countPercentRepeats example.
8625
8626         * Documentation/user/advanced-notation.itely (Other text markup
8627         issues): remove remark about normal-font.  We have \normal-text
8628
8629         * input/regression/tie-chord.ly: add note about remaining bugs.
8630
8631         * lily/tie.cc (print): try Tie_column::set_directions () if
8632         control-points not yet defined.
8633
8634 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8635
8636         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8637         extent. This fixes braces falling out of the EPS bbox.
8638
8639         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8640         exactly to bbox.
8641
8642 2005-08-23  Graham Percival  <gpermus@gmail.com>
8643
8644         * {various} : change #up->#UP and #down->#DOWN.
8645
8646         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8647
8648         * Documentation/user/advanced-notation.itely: clarify
8649         what objects handles text on a multimeasure rest.
8650
8651 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8652
8653         * VERSION (PATCH_LEVEL): release 2.7.7
8654
8655 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8656
8657         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
8658
8659         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8660
8661         * input/regression/*.ly: formatting clean-up. Default layout
8662         before music expression.
8663
8664         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8665         romanze28-2 example.
8666
8667         * scm/ps-to-png.scm: remove dir-re function.
8668         (make-ps-images): generate page names, instead of globbing them.
8669         This brings down LilyPond memory usage for make web by a factor
8670         10. 
8671
8672         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8673         don't use glob. With 3000 files, globbing
8674         Documentation/user/out-www/ can take too much time. 
8675         
8676         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8677
8678         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8679
8680         * input/regression/tie-manual.ly: new file
8681
8682         * input/regression/tie-chord.ly: update.
8683
8684         * flower/include/interval.hh (struct Interval_t): 
8685
8686         * lily/tie.cc (distance): new function 
8687         (height): new function.
8688         (init): new function
8689         (Tie_details): new struct.
8690
8691         * lily/skyline.cc (skyline_height): new function.
8692
8693         * lily/tie-column.cc (set_chord_outlines): new function.
8694         (new_directions): read tie-configuration
8695
8696         * lily/skyline.cc: fix ASCII art.
8697         
8698 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8699
8700         * python/convertrules.py (string_or_scheme): Fix spelling error
8701
8702 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8703         
8704         * lily/tie-column.cc (set_directions): set directions only once.
8705         (add_configuration): new function.
8706
8707         * lily/tie.cc (set_control_points): new function
8708
8709         * lily/tie-column.cc (new_directions): new function.
8710
8711         * ly/music-functions-init.ly: set 'pitch property
8712         iso. trill-pitch. This makes \relative work with \pitchedTrill
8713
8714         * lily/tie.cc (get_configuration): new function. Don't generate
8715         control points, rather, generate configuration.
8716         remove head-pair property.
8717
8718         * lily/include/tie.hh (struct Tie_configuration): new struct.
8719
8720 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8721
8722         * Documentation/topdocs/NEWS.tely: clarify.
8723
8724 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8725
8726         * lily/tie.cc: remove minimum-length
8727
8728         * scm/define-grob-properties.scm (all-user-grob-properties):
8729         remove staffline-clearance, y-offset 
8730
8731         * input/regression/tie-dots.ly (Module): remove.
8732
8733         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8734         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8735
8736         * input/regression/tie-single.ly: new file.
8737
8738 2005-08-21  Graham Percival  <gpermus@gmail.com>
8739
8740         * ly/bagpipe.ly: fix compile problem.
8741
8742 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8743
8744         * lily/midi-item.cc (name): new method.
8745
8746         * lily/staff-performer.cc (acknowledge_audio_element): use
8747         signature of baseclass.
8748
8749         * lily/engraver-group.cc (do_announces): move recursion call out
8750         of while loop. 
8751
8752         * lily/drum-note-performer.cc (class Drum_note_performer): use
8753         process_music everywhere.
8754
8755         * ly/performer-init.ly: add default children everywhere.
8756
8757         * lily/paper-book.cc (output): call paper-book-write-midis
8758         directly: always write MIDI, even if no \layout {} block. 
8759
8760 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8761
8762         * VERSION (PACKAGE_NAME): release 2.7.6
8763
8764         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8765         about not being able to handle repeat.
8766
8767 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8768
8769         * Documentation/user/examples.itely (Piano templates):
8770         * lily/include/performer-group.hh: Remove last traces of
8771         Performer_group_performer.  Fixes make web.
8772
8773 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8774
8775         * Documentation/user/examples.itely (Piano templates): change
8776         Engraver_group_engraver -> Engraver_group
8777
8778         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8779         scm_stand_in_procs is not weak_any.
8780
8781         * lily/volta-bracket.cc (print): don't use strcmp().
8782
8783         * lily/volta-engraver.cc (process_music): use
8784         Text_interface::is_markup() for setting the 'text property of the
8785         volta bracket.
8786
8787         * input/mutopia/claop.py (accents): update syntax to 2.6
8788
8789         * scm/define-context-properties.scm
8790         (all-user-translation-properties): add countPercentRepeats.
8791
8792         * Documentation/user/basic-notation.itely (Measure repeats): add
8793         isolated percent example.
8794
8795 2005-08-18  Graham Percival  <gpermus@gmail.com>
8796
8797         * input/ {various}: change direction #1, #-1 to
8798         #up/#down or \fooUp, \fooDown.
8799
8800         * Documentation/user/music-glossary.tely: #-1 to #down.
8801
8802         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8803         to #up, #-1 to #down.
8804
8805 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8806
8807         * lily/include/engraver-group.hh: rename.
8808
8809         * lily/include/performer-group.hh: rename.
8810
8811 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8812
8813         * input/test/script-abbreviations.ly: Removed some old LaTeX
8814         left overs.
8815
8816 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8817
8818         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8819         Remove functions.  Remove if 1: constructs, reindent.
8820
8821         * scripts/convert-ly.py (add_version): Add functions from
8822         convertrules.py
8823
8824         * scm/script.scm (default-script-alist):
8825         s/priority/script-priority.  Fixes script stacking.  Backportme.
8826         (Fermata): Very low priority.
8827
8828 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8829
8830         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8831
8832         * input/regression/slur-script.ly: remove padding tweaks. Add
8833         comment strings.
8834
8835         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8836         time sigs and related stuff.
8837
8838         * scm/define-grob-properties.scm (all-user-grob-properties): add
8839         @code{} tags to property description.
8840
8841         * lily/include/line-group-group-engraver.hh (Module): remove file.
8842
8843         * python/convertrules.py (conv): add rule for
8844         Engraver_group_engraver -> Engraver_group.
8845
8846         * lily/include/performer-group-performer.hh: analogous.
8847
8848         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8849
8850         * lily/context-def.cc (instantiate): check for
8851         Engraver_group_engraver and Performer_group_performer not
8852         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8853  
8854 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8855
8856         * input/les-nereides.ly: Remove three fingering tweaks, update
8857         remaining one.
8858
8859         * input/regression/slur-script-inside.ly: Update, fix doc.
8860
8861         * scm/script.scm: Update to avoid-slur.
8862
8863         * scm/define-grob-properties.scm (avoid-slur): New property.
8864
8865         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8866         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8867         outside_slur_callback if avoid-slur != #'inside.
8868
8869         * scm/define-grobs.scm (Fingering, Textscript): No
8870         inside-slur/outside-slur preference.
8871         (DynamicLineSpanner): Always outside slur.
8872
8873         * input/regression/slur-script.ly: More tests.
8874
8875 2005-08-17  Graham Percival  <gpermus@gmail.com>
8876
8877         * Documentation/user/lilypond-book: fix notime entry.
8878
8879         * Documentation/user/advanced-notation.itely: add info on
8880         getting an I rehearsal mark.
8881
8882         * Documentation/user/putting.itely: reinstate "I", re-enforce
8883         the fact that \override numbers are the result of
8884         experimentation and personal taste.
8885
8886         * Documentation/user/invoking.itely: update convert-ly bugs.
8887
8888 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8889
8890         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8891         to #t.
8892
8893         * lily/timing-translator.cc (initialize): don't initialize timing.
8894
8895         * input/regression/stem-spacing.ly (Module): remove file.
8896
8897         * input/regression/spacing-stick-out.ly: specify Score context for
8898         \override
8899
8900         * input/regression/clefs.ly: remove spurious {}s 
8901
8902 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8903
8904         * Documentation/topdocs/NEWS.tely,
8905         input/regression/repeat-percent-count.ly: clarify a bit.
8906
8907 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8908
8909         * input/no-notation/display-lily-tests.ly: delete
8910         display-lily-init call.
8911
8912         * ly/music-functions-init.ly (displayLilyMusic): move
8913         display-lily-init call at top level, so that the user should not
8914         have to call it.
8915
8916         * scm/define-music-display-methods.scm (note-name->lily-string):
8917         retrieve note names directly from pitchnames using new function `rassoc'.
8918         (display-lily-init): note names list construction removed.
8919
8920 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8921
8922         * THANKS: spello.
8923
8924         * lily/lily-parser.cc (get_header): copy module, instead of
8925         returning it.
8926
8927         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8928         counters.
8929
8930         * Documentation/user/basic-notation.itely (Measure repeats): add
8931         links to Counter grobs.
8932
8933         * scm/define-grobs.scm (all-grob-descriptions): add
8934         DoublePercentRepeatCounter
8935         (all-grob-descriptions): add PercentRepeatCounter
8936
8937         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8938         also create counter grobs.
8939
8940         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8941         return grob without space-alist.
8942
8943         * input/proportional.ly: tune staff-padding.
8944
8945         * input/regression/repeat-percent-count.ly: new file. 
8946
8947 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8948
8949         * input/no-notation/display-lily-tests.ly: moved from
8950         input/regression/ to input/no-notation. Be sure to call
8951         `display-lily-init' before trying to use the display function.
8952
8953 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8954
8955         * scripts/lilypond-book.py (option_definitions): Don't localize
8956         the empty string. Fixes bug when --psfonts was used with
8957         non-English locale.
8958
8959 2005-08-15  Graham Percival  <gpermus@gmail.com>
8960
8961         * lily/tuplet-bracket.cc: simple build fix.
8962
8963         * Documentation/user/putting.itely: use "we" instead of "I".
8964
8965         * Documentation/user/basic-notation.itely: cautionary accidentals
8966         work with naturals, too.
8967
8968 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8969
8970         * lily/tuplet-bracket.cc (calc_position_and_height): add
8971         staff-padding support.
8972
8973         * input/proportional.ly: set staff-padding.
8974         
8975         * VERSION (PATCH_LEVEL): release 2.7.5
8976
8977         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8978         fixes. Remove tweaks.
8979
8980         * input/regression/tuplet-slope.ly: add a test case.
8981
8982         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8983         erroneous fix. Add spanner bounds to offset array with relative X
8984         positions.
8985
8986         * ly/engraver-init.ly: add Rest_engraver only once.
8987
8988         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8989         (*parser*) lookup if (*parser*) != #f.
8990
8991 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8992
8993         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8994         Cut-and paste update.
8995
8996         * input/regression/slur-script.ly: Add example of reverting
8997         inside-slur for fingering.
8998
8999         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
9000         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
9001
9002         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
9003         outside_slur_callback if inside-slur == #f (as opposed to unset).
9004
9005 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9006
9007         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
9008         encoding files are already removed.
9009
9010 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
9011
9012         * Documentation/user/advanced-notation.itely (Instrument names):
9013         Document a workaround for instrument names that collide with
9014         system start braces/brackets.
9015
9016 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9017
9018         * lily/rest-collision.cc (do_shift): spello.
9019
9020         * input/proportional.ly: use #'used property. Set break-overshoot
9021         property.
9022
9023         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
9024
9025         * lily/paper-column.cc: add #'used property
9026
9027         * lily/mark-engraver.cc (stop_translation_timestep): set grob
9028         array for staves found.
9029
9030         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
9031         array for stavesFound.
9032
9033         * lily/staff-spacing.cc (next_note_correction): add fixed and
9034         space to calling convention. This fixes spacing of accidentals
9035         after barlines.
9036
9037         * input/regression/spacing-accidental-stretch.ly: add barline -
9038         accidental case.
9039
9040         * scm/framework-ps.scm (page-header): add version number to
9041         creator
9042         (eps-header): idem.
9043
9044         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
9045         
9046 2005-08-13  Graham Percival  <gpermus@gmail.com>
9047
9048         * Documentation/user/global.itely: add "fit as much as
9049         possible onto this page" example (Vertical spacing).
9050
9051 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
9052
9053         * *: Nitpick run.
9054
9055         * buildscripts/fixcc.py: Fixes.
9056
9057 2005-08-12  Graham Percival  <gpermus@gmail.com>
9058
9059         * Documentation/user/advanced-notation.itely: add markup
9060         example to Text spanners.
9061
9062 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
9063
9064         * Documentation/user/basic-notation.itely (Ties): Add example of
9065         tying a tremolo to a chord. Thanks to Steve Doonan. 
9066
9067         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
9068         properties and move tieMelismaBusy to the list of written
9069         properties. 
9070
9071 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
9072
9073         * po/TODO: suggest to use a dedicated tool like kbabel.
9074
9075         * po/fi.po: update using kbabel.
9076
9077 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9078
9079         * *: Remove obsolete files.  Nitpick run.
9080
9081         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
9082
9083 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
9084
9085         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
9086         too.
9087
9088         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
9089
9090         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
9091         whitespace as symbol separator.
9092
9093         * lily/side-position-interface.cc: Add slur-padding.
9094
9095         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
9096         quite a large fix, and it never worked in a stable release; so not
9097         really a regression.
9098
9099         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
9100         Update cut and paste code from Slur_engraver.
9101
9102         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9103         Add.
9104
9105         * scm/define-grobs.scm (DynamicLineSpanner): Add
9106         dynamic-line-spanner-interface.
9107         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
9108
9109 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9110
9111         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
9112         to_boolean () so that non-set 'inside-slur means false.
9113
9114         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
9115         slur has control-points.  Skip script without direction.  Always
9116         do_shift if script inside slur, even if slur not contained in
9117         script y-extent.  Increment k in loop.
9118
9119 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
9120
9121         * scm/define-markup-commands.scm: Improved regexp to search for
9122         EPS bounding boxes and corrected call to ly:warning.
9123
9124 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9125
9126         * Documentation/user/programming-interface.itely (Displaying music
9127         expressions): doc for \displayLilyMusic. Also some precisions in
9128         "Markup construction in Scheme"
9129
9130 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
9131
9132         * scm/define-markup-commands.scm (normal-text): Added 2 new
9133         markup commands, \normal-text and \medium (the latter thanks to
9134         Bruce Fairchild). 
9135
9136 2005-08-08  Graham Percival  <gpermus@gmail.com>
9137
9138         * Documentation/user/programming-interface.itely: fix @{ @}.
9139
9140         * scm/define-markup-commands.scm: add linewidth info to
9141         \justify and \wordwrap, add "upright is the opposite of italic".
9142
9143         * Documentation/user/advanced-notation.itely: shaped->shape,
9144         add (cons (markup "foo")) type of example to text markup,
9145         reword multi-measure rests section.
9146
9147         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
9148         comment.  No actual code was touched.
9149
9150         * Documentation/user/invoking.itely: add more info about
9151         \include.  Thanks, Bruce!
9152
9153         * THANKS: add Bruce Fairchild, alphabetise.
9154
9155         * Documentation/user/global.itely: document \score{\header{}}
9156         behavior.
9157
9158         * Documentation/user/basic-notation.itely: reword multi-measure
9159         rest discussion in Rests.
9160
9161 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
9162
9163         * Documentation/user/programming-interface.itely (Markup
9164         construction in Scheme): Corrected example and tried to clarify
9165         the implicit \line in the table.
9166
9167 2005-08-07  Graham Percival  <gpermus@gmail.com>
9168
9169         * Documentation/user/instrument-notation.itely: moved
9170         some bagpipe info back into the bagpipe section.  Somehow
9171         it ended up in the "other vocal issues" section?!  :o_O
9172
9173 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9174
9175         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
9176         directories, not paths).
9177
9178 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9179
9180         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
9181         plain emmentaler/aybabtu.  Backportme.
9182
9183         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
9184         missing dir correction.
9185
9186 2005-08-05  Graham Percival  <gperlist@shaw.ca>
9187
9188         * scm/define-markup-commands: fix reversed justify/wordwrap
9189         doc strings.
9190
9191 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
9192
9193         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
9194         lily/gregorian-ligature-engaver.cc,
9195         lily/include/ligature-engraver.hh,
9196         lily/include/coherent-ligature-engraver.hh,
9197         lily/include/gregorian-ligature-engraver.hh: make these classes
9198         truely abstract.  This should fix some internal oddities such as
9199         duplicate as well as dead translator/property declarations, and
9200         also some dead code.
9201
9202         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
9203         bugfix: avoid message "junking empty ligature" on ligature
9204         brackets by collecting dummy grobs.
9205
9206 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9207
9208         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
9209
9210         * input/proportional.ly (staffKind): bugfix.
9211         (staffKind): updates by Trevor Baca.
9212
9213         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
9214         default layout. 
9215
9216         * lily/tuplet-bracket.cc (print): check whether edge-text is a
9217         pair.
9218
9219         * lily/beam.cc (rest_collision_callback): call position_beam() if
9220         necessary.
9221
9222         * VERSION: release 2.7.4
9223
9224         * input/regression/spacing-uniform-stretching.ly: new file.
9225
9226         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
9227
9228         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
9229         contributor.
9230
9231         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
9232
9233         * input/proportional.ly: new file.
9234
9235         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
9236         columns is empty
9237
9238         * lily/tuplet-engraver.cc (finalize): new function. Reset right
9239         bounds to currentCommandColumn for the last step.
9240         (start_translation_timestep): if tupletFullLength is set, set
9241         bound to Paper Column
9242
9243         * input/regression/tuplet-full-length.ly (indent): new file.
9244
9245         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
9246         clique of loose columns, eg. a set of grace notes in strict
9247         notespacing.
9248
9249         * input/regression/spacing-strict-spacing-grace.ly: new file.
9250
9251         * lily/key-signature-interface.cc: change property name to
9252         alteration-alist
9253
9254         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
9255         keyAccidentalOrder
9256
9257         * python/convertrules.py (conv): keyAccidentalOrder ->
9258         keyAlterationOrder
9259
9260         * lily/key-engraver.cc (create_key): always print a cancellation
9261         for going to C-major/A-minor, regardless of printKeyCancellation.
9262         (create_key): remove typecheck for visibility. This fixes key
9263         signature not being printed.
9264
9265         * lily/spacing-determine-loose-columns.cc: new file.
9266
9267         * input/regression/spacing-strict-notespacing.ly: new file.
9268
9269         * lily/spacing-spanner.cc (generate_springs): rename from
9270         do_measure. 
9271         (generate_pair_spacing): new function.
9272         (init, generate_pair_spacing): set between-cols for floating
9273         nonmusical columns.
9274
9275         * lily/spaceable-grob.cc (get_spring): new function. 
9276
9277         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
9278         relative to the right edge of the prefatory matter.
9279
9280         * lily/beam.cc (print): read break-overshoot to determine where to
9281         stop/start broken beams.
9282
9283         * input/regression/spanner-break-overshoot.ly: new file.
9284
9285 2005-08-04  Graham Percival  <gperlist@shaw.ca>
9286
9287         * ly/bagpipe.ly: updated.
9288
9289         * Documentat/user/instrument.itely: un-comment out bagpipe example.
9290
9291 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9292
9293         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
9294         support: now (de)crescs avoid slurs as well.
9295
9296         * Documentation/user/instrument-notation.itely (Bagpipe example):
9297         comment out non-functioning bagpipe example.
9298         (Bagpipe definitions): idem.
9299
9300         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
9301         (Top): add proportionalNotationDuration example.
9302
9303         * input/regression/spacing-proportional.ly: new file.
9304
9305         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
9306         synched to a beam.
9307
9308         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
9309         fixes beams with a single stem (eg. beams across linebreaks.)
9310
9311         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
9312
9313         * flower/rational.cc (operator +): prevent overflow. This fixes
9314         heavily nested tuplets.
9315
9316         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
9317         have to protect even those unlikely to be corrupted data members.  
9318
9319 2005-08-04  Graham Percival  <gperlist@shaw.ca>
9320
9321         * ly/bagpipe.ly: new file.
9322
9323         * THANKS: added Sven Axelsson.
9324
9325 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9326
9327         * lily/spacing-engraver.cc (stop_translation_timestep): directly
9328         copy proportionalNotationDuration into currentMusicalColumn if
9329         set.
9330
9331         * lily/spacing-spanner.cc (musical_column_spacing): if
9332         uniform-stretching set, fixed space is 0.0
9333
9334         * input/regression/spacing-multi-tuplet.ly: show
9335         uniform-stretching property.
9336
9337         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
9338
9339         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
9340         (struct Spacing_options): new struct.
9341
9342         * lily/spacing-basic.cc: new file.
9343
9344         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
9345         delta_t doesn't have to be smaller than shortest_playing_len
9346
9347 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9348
9349         * input/regression/markup-arrows.ly:  new file.
9350
9351         * lily/tuplet-bracket.cc: document new behavior.
9352
9353         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
9354         with line breaks.
9355
9356         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
9357
9358         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
9359         default 
9360
9361         * lily/tuplet-bracket.cc: add edge-text property.
9362         add break-overshoot.
9363         (print): read break-overshoot.
9364         (print): read edge-text, add stencils.
9365
9366         * mf/feta-arrow.mf: new file.
9367
9368         * mf/feta-generic.mf: add feta-arrow.
9369
9370 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
9371
9372         * Documentation/user/lilypond-book.itely (An example of a
9373         musicological document): Added flag -o to dvips for people who use
9374         the default setting in teTeX where output is sent to the printer. 
9375
9376         * Documentation/user/global.itely (Vertical spacing): Added
9377         reference to the Axis_group_engraver which documents the *Extent
9378         properties.
9379
9380 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9381
9382         * Documentation/user/basic-notation.itely (Tuplets): add note
9383         about nested tuplets. Remove BUG. 
9384
9385         * input/regression/tuplet-nest.ly: update: remove manual hack. 
9386
9387         * lily/tuplet-bracket.cc (print): use robust_scm2drul
9388         (print): manually call print() for subtuplets.
9389         (calc_position_and_height): add subtuplets to the
9390         support. Vertically shift outer tuplet 
9391
9392         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
9393         remove-first for Lyrics, ChordNames and FiguredBass
9394
9395         * scm/define-grob-properties.scm (all-internal-grob-properties):
9396         use ly:grob-array? iso. grob-list?
9397         (all-internal-grob-properties): add tuplets grob-array.
9398
9399         * lily/tuplet-bracket.cc (add_tuplet_bracket):
9400         new function
9401
9402 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9403
9404         * input/test/time-signature-staff.ly: new file.
9405
9406         * ly/declarations-init.ly (center): escape to Scheme. Fixes
9407         spurious #<Music FingerEvent> errors. Backportme.
9408
9409 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
9410
9411         * Documentation/user/programming-interface.itely (Markup
9412         construction in Scheme): Corrected markup syntax in the
9413         translation table.
9414
9415 2005-08-03  Graham Percival  <gperlist@shaw.ca>
9416
9417         * Documentation/user/instrument-notation.itely: small update
9418         to bagpipe notation docs; thanks Sven!
9419
9420         * Documentation/user/basic-notation.itely: add link about trills.
9421
9422 2005-08-02  Graham Percival  <gperlist@shaw.ca>
9423
9424         * Documentation/user/music-glossary: remove accidentally committed
9425         fink patch.
9426
9427 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9428
9429         * lily/lily-parser.cc (get_header): new function. Enable multiple
9430         \header definitions.
9431
9432         * lily/parser.yy (lilypond_header_body): use get_header.
9433
9434         * ly/init.ly:
9435         * scm/lily-library.scm (print-score-with-defaults): renamed
9436         $globalheader to $defaultheader
9437             
9438         * Documentation/user/global.itely (Creating titles): added short
9439         explanation that multiple headers are useable.
9440
9441
9442 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9443
9444         * lily/module-scheme.cc (LY_DEFINE): new file. 
9445
9446         * Documentation/user/advanced-notation.itely (Font selection): add
9447         doco for make-pango-font-tree.
9448
9449 2005-07-31  Graham Percival  <gperlist@shaw.ca>
9450
9451         * Documentation/user/music-glossary: more languages
9452         for tenuto.
9453
9454         * Docuemntation/user/instrument-notation.itely: minor
9455         update for bagpipe example.
9456
9457 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9458
9459         * input/regression/+.ly (TODO): add some text.
9460
9461 2005-07-28  Graham Percival  <gperlist@shaw.ca>
9462
9463         * Documentation/user/invoking.itely: \score begins with music.
9464
9465         * Documentation/user/ basic-notation.itely,
9466         instrument-notation.itely: minor changes.
9467
9468         * Documentation/user/music-glossary.itely: began tenuto entry.
9469
9470 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9471
9472         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
9473
9474         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
9475
9476 2005-07-27  Graham Percival  <gperlist@shaw.ca>
9477
9478         * Documentation/user/examples.itely: remove bagpipe template.
9479
9480         * Documentation/user/instrument-notation.itely: add bagpipe
9481         section, maybe fix quotes in lyrics.  I hate text encoding.
9482         Clarify chord durations, more bagpipe stuff.
9483
9484 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9485  
9486         * lily/accidental-engraver.cc: formatting fixes.
9487
9488         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
9489         grob-array.
9490
9491         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
9492
9493         * lily/note-column.cc (arpeggio): new function.
9494
9495         * lily/note-spacing.cc (get_spacing): also take arpeggio into
9496         account for spacing.
9497
9498 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
9499
9500         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
9501         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
9502         mingw build.
9503         
9504 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9505
9506         * scm/lily.scm (lilypond-all): clear anonymous modules after
9507         processing files.
9508
9509 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9510
9511         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
9512         SCM_I_CONSP
9513
9514         * VERSION: 2.7.3 released
9515
9516         * Documentation/user/invoking.itely (Invoking lilypond): add
9517         LILYPOND_GC_YIELD documentation.
9518
9519         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
9520         scm_from_real / scm_make_real.
9521
9522         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
9523         higher. This increases memory footprint, but provides overall
9524         speedup of 15 to 20%. 
9525
9526         * lily/include/translator.hh (class Translator): remove
9527         PRECOMPUTED_VIRTUAL everywhere.
9528
9529         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
9530
9531         * lily/context.cc (now_mom): non-recursive now_mom() 
9532
9533         * lily/include/profile.hh: new file.
9534
9535         * lily/profile.cc: new file.
9536
9537         * lily/grob.cc (Grob::Grob): look properties up directly.
9538
9539         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
9540         lookups.
9541
9542         * lily/include/box.hh (class Box): smob Box type.
9543
9544         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
9545
9546         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
9547         protect() and unprotect(). Use throughout.
9548
9549 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9550
9551         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
9552
9553         * scm/define-music-display-methods.scm (markup->lily-string):
9554         markup elements can also be strings (without simple-markup
9555         appended)
9556
9557 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9558
9559         * lily/context.cc (where_defined): also assign value in
9560         where_defined().
9561
9562         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
9563         (curve_coordinate): new function
9564
9565         * lily/simple-spacer.cc (add_columns): only add rods between
9566         column i and begin/end if keep-inside-line is set (this repleces
9567         allow-outside-line as default)
9568
9569 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9570
9571         * lily/tuplet-engraver.cc (start_translation_timestep): only read
9572         tupletSpannerDuration if applicable.
9573
9574         * lily/font-size-engraver.cc (process_music): read fontSize only
9575         once per timestep.
9576
9577         * lily/engraver*cc: use throughout.
9578         
9579         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
9580
9581         * lily/translator.cc (add_acknowledger): new file. Directly jump
9582         into an Engraver::acknowledge_xxx () method based on a grobs
9583         interface-list.
9584
9585         * lily/include/translator-dispatch-list.hh (class
9586         Engraver_dispatch_list): new struct, new file.
9587
9588         * scm/define-context-properties.scm
9589         (all-internal-translation-properties): remove acceptHashTable,
9590         acknowledgeHashTable
9591
9592         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
9593
9594         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
9595         change acknowledgeHashTable to C++ member. 
9596
9597         * lily/rest-collision.cc (do_shift): use extract_grob_set().
9598
9599 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9600
9601         * scm/display-lily.scm: new file. Define a `display-lily-music'
9602         function, that displays the music expression given as an argument,
9603         using LilyPond notation.
9604
9605         * scm/define-music-display-methods.scm: new file. Implementation
9606         of display methods for each music type.
9607
9608         * ly/music-functions-init.ly (displayLilyMusic): new function for
9609         displaying music with LilyPond notation.
9610
9611         * input/regression/display-lily-tests.ly: new regression test file
9612         for `display-lily-music'.
9613
9614         * scm/markup.scm: remove obsolete debugging code (for printing
9615         markups with LilyPond notation).
9616
9617         * scm/define-music-types.scm (music-name-to-property-table):
9618         * scm/clef.scm (supported-clefs): export, in order to be accessible
9619         from the (scm display-lily) module.
9620
9621 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9622
9623         * Documentation/topdocs/NEWS.tely (Top): Typo.
9624
9625 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
9626
9627         * Documentation/index.html.in, Documentation/texinfo.css,
9628           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9629           Documentation/bibliography/index.html.in,
9630           Documentation/bibliography/html-long.bst: revert css-width patch,
9631           it does not work with IE6.
9632
9633 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9634
9635         * Documentation/texinfo.css: revert 760px hack. 
9636
9637         * VERSION: release 2.7.2
9638
9639         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
9640
9641         * Documentation/user/basic-notation.itely (Barnumber check): add
9642         section.
9643
9644         * scm/music-functions.scm (skip-to-last): new function. Show only
9645         last showLastLength part of the \score.
9646
9647         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
9648
9649         * python/convertrules.py (conv): add ly:x-moment rule
9650
9651         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
9652
9653         * Documentation/topdocs/NEWS.tely (Top): add new feature.
9654
9655         * Documentation/user/instrument-notation.itely (Flexibility in
9656         alignment): options in subsections.
9657
9658         * lily/lyric-engraver.cc (process_music): don't typeset text for _
9659         syllable text. Instead, assume that the previous lyric text is a
9660         melismated text.
9661
9662         * Documentation/index.html.in: revert 800x600 change.
9663
9664 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9665
9666         * lily/main.cc (main): Remove invalid handle kludge.
9667
9668         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
9669         (lambda): add gui define.
9670
9671 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9672
9673         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
9674
9675         * Documentation/user/instrument-notation.itely (Musica ficta
9676         accidentals): add section Musica ficta accidentals
9677
9678         * lily/accidental-engraver.cc (make_suggested_accidental): new
9679         function.
9680         (make_standard_accidental): move into new function.
9681         (create_accidental): new function.
9682
9683         * scm/define-grobs.scm (all-grob-descriptions): new Grob
9684         AccidentalSuggestion
9685
9686         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
9687
9688         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9689         undefined.
9690
9691         * Documentation/user/global.itely (Page formatting): document
9692         horizontalshift.
9693
9694         * scm/page-layout.scm (default-page-music-height):
9695         horizontalshift: new variable, shift all systems by
9696         horizontalshift to the right, to make space for instrument names.
9697
9698         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9699
9700         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9701
9702 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9703
9704         * lily/note-column.cc (dir): idem.
9705
9706         * lily/spacing-spanner.cc (Module): idem.
9707
9708         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9709
9710         * lily/include/paper-column.hh (class Paper_column): add
9711         non-static get_rank() member.
9712
9713         * VERSION: release 2.7.1
9714         
9715         * scm/framework-null.scm: new file, used for benchmarking.
9716
9717 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9718
9719         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9720         version dependencies for fontforge and gs.
9721
9722         * Documentation/index.html.in, Documentation/texinfo.css,
9723         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9724         Documentation/bibliography/index.html.in, 
9725         Documentation/bibliography/html-long.bst: optimize width of
9726         html for a 800x600 screen (width:760), increases printability
9727         when 'fit to page' is not set and readability in wide screens.
9728
9729         * stepmake/bin/add-html-footer.py: add missing </p>.
9730
9731 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9732
9733         * scm/define-markup-commands.scm (beam): use polygon in beam
9734         command.
9735
9736         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9737         all acknowledged grobs, and do potentially expensive merge and
9738         write in one go.
9739
9740         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9741
9742         * configure.in (reloc_b): add --enable-static-gxx to statically
9743         link to libstdc++
9744
9745         * lily/GNUmakefile (static-gxx-libs): new target
9746         static-gxx-libs. Create symlink to libstdc++.a
9747
9748         * lily/new-lyric-combine-music-iterator.cc: rename to
9749         Lyric_combine_music_iterator
9750
9751         * lily/lyric-combine-music-iterator.cc
9752         (Old_lyric_combine_music_iterator): rename to
9753         Old_lyric_combine_music_iterator
9754
9755         * lily/*-engraver.cc (various): remove double use of
9756         PRECOMPUTED_VIRTUAL function: only use
9757         start_translation_timestep() and stop_translation_timestep(), not
9758         both.
9759
9760         * lily/break-substitution.cc (fast_substitute_grob_array): do
9761         fast_substitute_grob_array for all unordered grob_arrays.
9762         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9763         (substitute_grob_array): optimize.
9764
9765         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9766
9767         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9768
9769         * lily/parser.yy: revert $globalheader patch.
9770         
9771         * lily/include/translator.icc
9772         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9773         Translator methods, without _static helper.
9774  
9775         * lily/grob-smob.cc (derived_mark): rename from
9776         do_derived_mark(). Return void.
9777
9778         * scm/define-context-properties.scm
9779         (all-internal-translation-properties): remove tweakCount/tweakRank.
9780
9781         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9782         predefined break-visibilities.
9783
9784         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9785         booleans for break-visibility.
9786
9787         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9788
9789         * python/convertrules.py (conv): rule for Timing_translator. 
9790
9791         * lily/include/translator.icc: new file. 
9792
9793         * lily/paper-column-engraver.cc (process_music): new
9794         file. Separate Paper_column factory from Score_engraver.
9795
9796         * lily/vertically-spaced-context-engraver.cc: administer
9797         spaceable-staves property of System.
9798
9799         * lily/translator-group-ctors.cc: new file.
9800
9801         * lily/context-property.cc (make_grob_from_properties): construct
9802         the right Grob class programmatically, looking at the class entry
9803         for the meta property.
9804
9805         * lily/break-align-engraver.cc (stop_translation_timestep): call
9806         Break_align_interface::add_element() directly.
9807
9808         * lily/context.cc (measure_position): measure_position() is now a
9809         normal function.
9810
9811         * lily/include/translator.hh (class Translator): rename
9812         process_acknowledged_grobs() to process_acknowledged() and move to
9813         Translator.
9814
9815         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9816         field for each grob description.
9817
9818         * lily/include/translator-group.hh (class Translator_group):
9819         change to base class. Separate class from Translator. This gets
9820         rid of virtual inheritance for Engravers/Performers.
9821
9822         * lily/staff-performer.cc (class Staff_performer): derive
9823         Staff_performer from Performer, not Performer_group_performer 
9824
9825         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9826         new function.
9827         (precompute_method_bindings): new function. Precompute lists of
9828         Translators, so we only call methods (process_music,
9829         start_translation_timestep, etc.) for Translators needing
9830         it. Also: dispose of pointer-to-member-function calls.
9831
9832         * lily/engraver-group-engraver.cc: remove engraver_each,
9833         recurse_down_engravers ()
9834
9835         * lily/note-head.cc (internal_print): only call
9836         glyph-name-procedure if style != default. 
9837
9838 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9839
9840         * ly/titling-init.ly: add printallheaders option.
9841
9842         * Documentation/user/global.itely: document printallheaders.
9843
9844 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9845
9846         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9847         anymore, but do it centrally.  
9848
9849         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9850         hammer hack.
9851
9852         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9853
9854         * scm/output-lib.scm: remove hammer-print-function.
9855
9856         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9857         macro. Declare a Link_array<Grob> and fill it from a grob.
9858         (extract_item_set): idem for item.
9859
9860         * lily/break-substitution.cc: add header.
9861         (fast_substitute_grob_array): rewrite for Grob_arrays.
9862         (substitute_grob_array): idem.
9863
9864         * lily/group-interface.cc (add_thing): remove file.
9865
9866         * flower/include/parray.hh (class Link_array): slice() is const.
9867
9868         * lily/include/grob-array.hh: new file.
9869
9870         * lily/grob-array.cc (spanner): new file.
9871
9872         * lily/beam-quanting.cc (fill): read details property from beam.
9873
9874         * lily/beam.cc: support details property.
9875
9876         * total speedups below: approx 10%.
9877
9878         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9879
9880         * lily/include/grob.hh (class Grob): add interfaces_ member.
9881
9882         * lily/bezier.cc (init_polynomial_cache): new function: cache
9883         binom(3,j) t^j (1-t)^{3-j}
9884         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9885
9886         * lily/*.cc: substitution throughout.
9887
9888         * lily/grob-property.cc (internal_get_object): new routine.
9889         (internal_set_object): idem. Store grob refrences in separate
9890         alist. This saves processing time, since properties aren't
9891         break-substituted, and the per grob namespace is smaller, both for
9892         grobs and non-grob properties.
9893
9894         * scm/define-grob-properties.scm (all-internal-grob-properties):
9895         remove center-element.
9896
9897         * lily/grob.cc: remove tweak-count, tweak-rank.
9898
9899 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9900
9901         * Documentation/user/lilypond-book.itely: fixes example.
9902
9903 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9904
9905         * Documentation/user/global.itely (Creating titles):    
9906         * Documentation/user/examples.itely (All headers): change the
9907         place of \header in \score blocks (after music block) to make
9908         examples compile (cf. changes on parser.yy on 2005-07-10)
9909
9910 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9911
9912         * python/convertrules.py: add exc -> ecc rule.
9913
9914         * scripts/convert-ly.py: add location of convertrules.py
9915         in a comment.
9916
9917         * Documentation/user/changing-defaults.itely: fix language.
9918
9919 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9920
9921         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9922
9923 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9924
9925         * scm/output-socket.scm (grob-bbox): don't use inf? 
9926
9927         * flower/include/rational.hh: add operator bool() 
9928
9929         * scm/define-music-types.scm (music-descriptions): remove
9930         internal-class-name properties.
9931
9932         * lily/include/event.hh: remove file.
9933
9934         * lily/include/music-constructor.hh: remove file.
9935
9936         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9937         in 'types property.
9938
9939         * lily/music.cc (duration_length_callback): new function.
9940
9941         * lily/event.cc: remove file.
9942
9943         * lily/music-constructor.cc: remove file.
9944
9945         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9946
9947         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9948         (get_context_key): idem.
9949
9950         * scm/lily.scm (lambda): new option object-keys (default to #f)
9951
9952         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9953
9954         * scm/output-gnome.scm: remove beam routine.
9955
9956         * scm/output-ps.scm (scm): idem.
9957
9958         * scm/output-svg.scm: remove beam.
9959
9960         * ps/music-drawing-routines.ps: remove draw_beam.
9961
9962         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9963
9964         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9965         add scm_from_locale_string compatibility glue. 
9966
9967 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9968
9969         * scripts/lilypond-book.py: Prevent occuring error when
9970         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9971         times and target file shoud be overwritten.  (Error message said
9972         'input file and output file is same'.)
9973
9974 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9975
9976         * input/regression/slur-extreme.ly,
9977         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9978         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9979         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9980         "excentricity" to "eccentricity".
9981
9982         * Documentation/user/converters.itely: fix URL for Noteedit and
9983         Rosegarden.
9984
9985         * THANKS: added Yoshinobu Ishizaki.
9986
9987 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9988
9989         * scm/define-markup-commands.scm (justify-field): add. 
9990
9991         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9992
9993 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9994
9995         * lily/lookup.cc (filled_box): express filled_box with
9996         round_filled_box
9997
9998         * scm/midi.scm (paper-book-write-midis): new function. Write all
9999         performances in numbered MIDI files.
10000
10001         * lily/performance-scheme.cc (LY_DEFINE): new file.
10002         (LY_DEFINE): new function ly:performance-write.
10003
10004         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
10005         new function.
10006         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
10007
10008         * scm/framework-*.scm: use port arguments throughout.
10009
10010         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
10011
10012         * lily/paper-outputter.cc (Paper_outputter): take port argument.
10013
10014         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
10015
10016         * scm/framework-texstr.scm (output-framework): 
10017
10018         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
10019
10020         * scm/output-lib.scm (tablature-stem-attachment-function):
10021         tablature stem attachment fix. 
10022
10023 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10024
10025         * lily/bezier.cc: hardcode binomial coefficients of order 3.
10026
10027         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
10028
10029         * scm/define-music-types.scm (music-descriptions): don't use
10030         Music_wrapper type.
10031
10032         * lily/paper-column.cc (print): print moment too.
10033
10034         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
10035         remove compatibility cruft.
10036
10037         * lily/parser.yy (score_body): \score can only begin with Music. 
10038
10039         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
10040         make-score. Take music argument only. Move parser interaction to
10041         Scheme.
10042
10043         * scm/lily-library.scm (scorify-music): new function.
10044
10045         * python/lilylib.py (datadir): remove 2.1 compat kludge.
10046         (datadir): remove resource import.
10047         (print_environment): remove get_bbox()
10048         (cp_to_dir): remove pre 1.5.2 compat glue.
10049
10050 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10051
10052         * lily/include/simple-spacer.hh (Module): idem.
10053
10054         * lily/include/spring.hh (struct Spring): store inverse
10055         strength. This prevents division by zero.
10056
10057         * VERSION: release 2.7.0
10058         
10059         * lily/include/music.hh (class Music): remove Music::duration_log()
10060
10061         * lily/stem-engraver.cc (make_stem): take duration log from event.
10062
10063         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
10064
10065 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10066
10067         * scm/lily.scm (ly:load): load autochange.scm
10068
10069         * Documentation/user/tutorial.itely (Running LilyPond for the
10070         first time): remove reference to DVI/TeX
10071
10072         * scm/define-markup-commands.scm (text): add \text markup command.
10073
10074         * configure.in (reloc_b): bump requirement to Python 2.2.
10075
10076         * lily/include/dots.hh (class Dots): make has_interface() static.
10077
10078         * python/convertrules.py (conv): add rule for ly:grob-default-font
10079
10080         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
10081         alphabetical order.
10082
10083         * input/regression/trill-spanner-pitched.ly: new file.
10084
10085         * lily/font-interface-scheme.cc (LY_DEFINE): function
10086         ly:grob-default-font (changed from get-default-font).
10087
10088         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
10089
10090         * lily/note-head.cc (internal_print): if style is not a symbol,
10091         set style to 'default. 
10092         (internal_print): no style suffix if glyph-name-procedure not
10093         set. Default to quarter head.
10094
10095         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
10096
10097         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
10098
10099         * ly/music-functions-init.ly: \pitchedTrill
10100
10101         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
10102
10103         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
10104
10105         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
10106
10107         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
10108
10109         * po/fr.po: update
10110
10111         * po/de.po: update.
10112
10113 2005-07-06  Graham Percival  <gperlist@shaw.ca>
10114
10115         * Documentation/user/changing-defaults.itely: add link
10116         to grob-iterface.
10117
10118         * Documentation/user/advanced-notation.itely: add material
10119         to Setting automatic beam behaviour.  Thanks, Joe!
10120
10121         * Documentation/user/lilypond.itely: change encoding to utf-8.
10122
10123 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
10124
10125         * Documentation/user/advanced-notation.itely (Setting automatic
10126         beam behavior): Correct the documentation of
10127         revert-auto-beam-setting (backportme)
10128
10129 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10130
10131         * lily/ly-module.cc (ly_make_anonymous_module): define
10132         %module-public-interface of module. 
10133
10134         * lily/lily-parser.cc (print_smob): allow printing of parser smob
10135         without lexer.
10136
10137 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10138
10139         * input/regression/fret-diagrams.ly: stretch example.
10140
10141 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10142
10143         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
10144         Fodor).
10145
10146 2005-06-30  Graham Percival  <gperlist@shaw.ca>
10147
10148         * Documentation/topdocs/AUTHORS.texi: update personal web address.
10149
10150         * Documentation/user/examples.itely, lilypond-book.itely:
10151         change \RequirePackage to \usepackage.
10152
10153         * Documentation/user/global.itely: document copyright and tagline.
10154
10155 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10156
10157         * Documentation/user/basic-notation.itely (Transpose): remove link
10158         to nonexistent UntransposableMusic.
10159
10160         * scm/output-svg.scm: remove old definitions.
10161
10162         * scripts/lilypond-book.py (do_file): search for kpsewhich before
10163         invoking.
10164
10165         * python/lilylib.py (search_exe_path): new function.
10166
10167 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10168
10169         * python/lilylib.py (mkdir_p): remove setup_environment()
10170         (backportme)
10171
10172         * buildscripts/mutopia-index.py (headertext): trim text.
10173
10174         * Documentation/topdocs/NEWS.tely (Top): refresh.
10175
10176         * scm/define-markup-commands.scm (wordwrap-string): new function:
10177         split string in paras and words.
10178         (wordwrap-markups): new function.
10179         (wordwrap-stencils): new function. 
10180         (justify): use it.
10181         (wordwrap): use it.
10182         (wordwrap-string): use it
10183         (justify-string): use it.
10184
10185         * scm/lily-library.scm (regexp-split): new function.
10186
10187         * scm/define-markup-commands.scm: remove encoded-simple. 
10188         remove font-markup.
10189         (fontsize): remove old version  of fontsize.
10190         (wordwrap): new markup function. Wrap into paragraphs.
10191
10192         * VERSION: Branch lilypond_2_6
10193         (MINOR_VERSION): go to 2.7.0
10194
10195 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10196
10197         * po/zh_TW.po: update from translation project.
10198
10199 2005-06-28  Graham Percival  <gperlist@shaw.ca>
10200
10201         * scm/midi.scm: compile fix.
10202
10203 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
10204
10205         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
10206         patch. Now, the tempfile module is loaded too, not only used.
10207
10208 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
10209
10210         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
10211         0.05 - 1.00 to 0.25 - 1.00
10212
10213         * scm/midi.scm: moved the default-instrument-equalizer procedure
10214         to just under the insturment-equalizer-alist it takes as an
10215         argument.
10216
10217 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10218
10219         * Documentation/user/advanced-notation.itely (Font selection):
10220         remove CMR note.
10221
10222         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
10223
10224 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10225
10226         * THANKS: Add UTF-8 marker.
10227
10228         * Documentation/user/point-and-click.itely (http): Update: use
10229         lilypond-invoke-editor.  Fix: instruct to use user.js.
10230
10231 2005-06-27  Graham Percival  <gperlist@shaw.ca>
10232
10233         * ly/titling-init.ly: implements printpagenumber, increases
10234         space between dedication and title (to avoid collisions with
10235         "g" and "q" in dedication), and nicer logic about copyright
10236         and instrument fields being printed on the first page.
10237         Thanks Vincent!
10238
10239         * Documentation/user/global.itely: document printpagenumber.
10240
10241 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10242
10243         * Documentation/topdocs/NEWS.tely: Update to 2.6.
10244
10245 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10246
10247         * THANKS: update to 2.6
10248
10249         * VERSION: 2.6.0 released.
10250
10251 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10252
10253         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
10254         rule, errorneously removed probably because of misleading comment.
10255
10256 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10257
10258         * python/lilylib.py (datadir): py2exe comments.
10259
10260         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
10261
10262         * configure.in (reloc_b): make fontconfig REQUIRED.
10263
10264 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
10265
10266         * po/fi.po: add latest translations.
10267
10268 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10269
10270         * ChangeLog: recode utf-8
10271
10272         * Documentation/pictures/lilypond.xpm (Module): edited photo as
10273         logo.
10274
10275         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
10276
10277         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
10278
10279         * python/convertrules.py (do_conversion): don't print program_name
10280         from within a module
10281
10282         * configure.in (reloc_b): bump fontforge requirement to 20050624.
10283
10284         * python/convertrules.py (conv): add 2.6.0 dummy rule.
10285
10286 2005-06-23  Graham Percival  <gperlist@shaw.ca>
10287
10288         * Documentation/user/lilypond-book.itely,
10289         Documentation/user/examples.itely: add \RequirePackage{graphics}.
10290
10291         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
10292         fixes baseline-skip.  Thanks Vincent!
10293
10294         * Documentation/user/advanced-notation.itely, global.itely:
10295         moved "Selecting font sizes" to global, since it deals with
10296         notation font size, not text fonts.
10297
10298 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10299
10300         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
10301         to fonts.
10302
10303 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
10304
10305         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
10306         workaround since /dev/stdin doesn't work on Cygwin. Using a
10307         temporary file in the current directory since latex doesn't
10308         understand the path name to the default TMP in Cygwin (at least on
10309         win XP).
10310         
10311         * Documentation/user/global.itely (Creating titles): Correct
10312         misprint in example. Thanks to Rob Vlasaty.
10313
10314 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10315
10316         * VERSION (PATCH_LEVEL): release 2.5.32
10317
10318         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
10319         variable in lily module
10320
10321         * scm/framework-ps.scm (output-classic-framework): error message
10322         regarding the classic framework.
10323
10324         * Documentation/user/henle-flat-gray.png (Module): new file.
10325
10326         * Documentation/user/baer-flat-gray.png (Module): new file.
10327
10328         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
10329         whiteout for markups.
10330
10331         * buildscripts/substitute-encoding.py (note_glyph): include _ in
10332         regex too. This fixes change clef appearance in PDF. 
10333
10334         * ttftool/include/*: remove.
10335
10336         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
10337
10338         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
10339
10340         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
10341
10342         * ttftool/*: remove ttftool subdirectory.
10343
10344         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
10345
10346         * lily/ttf.cc (print_header): new file. Convert to type42, using
10347         FreeType to parse the TTF. 
10348
10349         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
10350         and post table may differ. Pass around post_nglyphs as well.
10351
10352 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10353
10354         * ly/music-functions-init.ly (musicMap): new music function
10355         musicMap. 
10356         
10357 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10358
10359         * make/mutopia-rules.make: anti-alias-factor = 2
10360
10361         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
10362         page switch.
10363
10364         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
10365         anti-alias-factor for lilypond-book runs.
10366
10367         * scm/ps-to-png.scm (scale-down-image): new function.
10368         (my-system): new function.
10369         (make-ps-images): blow up GS resolution by anti-alias-factor,
10370         scale down image by anti-alias-factor.  This improves appearance
10371         of bitmaps
10372         (make-ps-images): remove showpage. Fixes spurious empty png at
10373         end.
10374
10375         * scm/framework-ps.scm (write-preamble): downcase filename before
10376         string-matching. Should fix .TTF files (as opposed to ttf files)  
10377
10378         * Documentation/user/tutorial.itely (Running LilyPond for the
10379         first time): separate subsections for windows, macos and unix.  
10380
10381         * Documentation/user/invoking.itely (Updating files with
10382         convert-ly): add MacOS X note.
10383
10384 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10385
10386         * Documentation/user/introduction.itely (Engraving): don't include
10387         file optical-spacing, add directly.
10388
10389         * lily/paper-outputter.cc (file): open file in binary mode. This
10390         fixes OTF embedding on windows.
10391
10392 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10393
10394         * scm/framework-ps.scm (write-preamble): remove debugging output.
10395
10396         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
10397
10398         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
10399         outdir.
10400         (install-fc-cache): install font cache in installation directories.
10401
10402 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10403
10404         * scm/editor.scm (editor-command-template-alist): Use char iso
10405         column, except for Emacs.
10406         (get-editor-command): Substitute char too (Bertalan Fodor).
10407
10408 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10409
10410         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
10411         quoted ~s.  This should fix PNG output on Windows; single quotes
10412         are regular characters on Windows.
10413
10414 2005-06-16  Graham Percival  <gperlist@shaw.ca>
10415
10416         * Documentation/user/basic-notation.itely: include ChoirStaff
10417         in System start delimiters.
10418
10419         * Documentation/user/putting.itely: new doc section on
10420         fixing overlapping notation.
10421
10422 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10423
10424         * Documentation/user/global.itely (Paper size): \paper is in
10425         \book, not \score.
10426
10427         * make/mutopia-rules.make: -ddelete-intermediate-files
10428
10429         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
10430
10431 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10432
10433         * ChangeLog: Recode utf-8.
10434
10435         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
10436         datadir with .py modules.
10437
10438 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
10439
10440         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
10441
10442 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10443
10444         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
10445         
10446         * scm/framework-ps.scm (write-preamble): remove status check.
10447
10448         * Documentation/user/invoking.itely (Updating files with
10449         convert-ly): remove -o option.
10450
10451         * VERSION (PACKAGE_NAME): release 2.5.31
10452
10453         * scm/framework-ps.scm (write-preamble): use ly:system.
10454         (write-preamble): verbosity.
10455
10456         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
10457
10458         * python/convertrules.py: new file. Store conversion rules
10459         separately.
10460
10461 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10462
10463         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
10464
10465 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
10466
10467         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
10468         \musicDisplay 
10469
10470         * Documentation/user/instrument-notation.itely (More stanzas): Add
10471         reference to StanzaNumber.
10472
10473 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10474
10475         * THANKS: separate section for website translators.
10476
10477 2005-06-14  Graham Percival  <gperlist@shaw.ca>
10478
10479         * Documentation/topdocs/INSTALL.texi: update vim info;
10480         thanks Simon Bailey!
10481
10482         * Documentation/user/advanced-notation.itely: included
10483         color names.
10484
10485         * Documentation/user/advanced-notation.itely,
10486         Documentation/usr/notation-appendices.itely: moved
10487         color names into an appendix.
10488
10489 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10490         
10491         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
10492
10493         * scm/lily.scm (lambda): initialize program options from here.
10494
10495         * scm/framework-*.scm: add header info.
10496
10497         * lily/main.cc (parse_argv): only set output format to pdf if no
10498         other format specified.
10499
10500         * scm/backend-library.scm (postprocess-output): process
10501         'delete-intermediate-files after running convert-to-*. This fixes
10502         PNG generation when 'delete-intermediate-files is set.
10503         
10504 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10505
10506         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
10507         links on website. 
10508
10509 2005-06-13  Graham Percival  <gperlist@shaw.ca>
10510
10511         * Documentation/topdocs/INSTALL.texi,
10512         Documentation/user/lilypond-book.itely: typos.
10513
10514 2005-06-12  Pal Benko  <benkop@freestart.hu>
10515
10516         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
10517         added between program name and switch; -b changed to -f not
10518         to generate pdf
10519
10520 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10521
10522         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
10523         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
10524
10525         * input/sakura-sakura.ly: add \midi.
10526
10527         * buildscripts/mutopia-index.py (find): use /usr/bin/find
10528         iso. python find. 
10529
10530         * ttftool/test.c (main): cosmetics.
10531
10532         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
10533
10534         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
10535         create a ttf2ps binary.
10536
10537         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
10538
10539         * scm/backend-library.scm (postscript->png): set rename-page-1 to
10540         true.
10541
10542 2005-06-11  Graham Percival <gperlist@shaw.ca>
10543
10544         * Documentation/user/lilypond-book.itely: add warning about
10545         the font warnings in dvips.
10546
10547 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10548
10549         * THANKS: typo
10550
10551         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
10552
10553         * GNUmakefile.in: remove links for .map, .enc
10554         don't fail if out/ doesn't exist yet.
10555
10556 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10557
10558         * ttftool/util.c (surely_read): return nbytes
10559
10560         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
10561
10562         * VERSION (PACKAGE_NAME): release 2.5.30
10563
10564         * flower/string-convert.cc (precision_string): >? fix.
10565
10566         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
10567         (make-ps-images): add verbose -q too.
10568
10569         * lily/default-actions.cc (Module): new file. default
10570         {book,score}-print functions.
10571
10572         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
10573         pass results via parseStringResult, lookup via ly:parser-lookup.  
10574
10575         * lily/lily-parser.cc (Lily_parser): only clone lexer in
10576         constructors.
10577         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
10578         (parse_string): idem.
10579
10580         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
10581
10582         * lily/main.cc (main_with_guile): copy be_verbose_global into
10583         ly_set_option()
10584
10585 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10586
10587         * scm/backend-library.scm (postscript->pdf):
10588         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
10589         verbose mode.  Search for several names of gs executable.
10590
10591 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10592
10593         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
10594         directly. This fixes a massive memory leak, provided you use CVS
10595         GUILE.
10596
10597 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
10598
10599         * ly/property-init.ly: Added tieDashed.
10600
10601         * THANKS: Added some bughunters for 2.5.
10602
10603 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10604
10605         * lily/program-option.cc: add debug-gc option.
10606
10607         * lily/include/lily-guile-macros.hh: don't protect exported module
10608         objects.
10609
10610         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
10611
10612         * scm/backend-library.scm (postscript->pdf): use
10613         delete-intermediate-files iso. running-from-gui? 
10614
10615         * ttftool/util.c (surely_read): robustness. Allow read() to return
10616         less bytes than requested, as per posix standards.
10617
10618         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
10619         program option.
10620
10621         * ttftool/include/ttftool.h ("C"): rename verbosity to
10622         ttf_verbosity. Add to public interface.
10623
10624         * scm/music-functions.scm (unfold-repeats): remove debugging display.
10625
10626         * lily/program-option.cc: rename from scm-option.cc
10627
10628         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
10629         (get_help_string): Print pretty help string.
10630
10631         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
10632         to snippet preamble.
10633
10634         * lily/scm-option.cc: remove command-line-settings option. Fold
10635         all command-line options plus default settings in a generic
10636         interface. 
10637
10638         * flower/getopt-long.cc (table_string): indent 2nd lines of help
10639         texts too.
10640
10641 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10642
10643         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
10644         or EXT_ components non-empty.
10645
10646 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10647
10648         * scm/lily.scm (running-from-gui?): Export.
10649
10650         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
10651         output in .ly source directory.
10652
10653 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10654
10655         * ttftool/util.c (surely_lseek): more verbosity.
10656
10657         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
10658         compile.
10659
10660         * lily/parser.yy (Repeated_music): remove >? 
10661
10662         * scm/backend-library.scm (postscript->pdf): Support for
10663         -dgs-font-load=1
10664
10665         * scm/framework-ps.scm (write-preamble): make font loading
10666         switchable to GS via --define-default gs-font-load=1
10667
10668 2005-06-09  Graham Percival  <gperlist@shaw.ca>
10669
10670         * Documentation/user/global.itely: added \layout docs.
10671
10672 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10673
10674         * lily/lily-parser-scheme.cc: add unistd.h
10675
10676 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10677
10678         * scm/editor.scm: add char argument.
10679
10680         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
10681
10682         * ttftool/util.c (syserror): use errno for better error reporting.
10683
10684         * lily/source-file.cc (get_counts): new function. Calc column,
10685         line and char count in one go.
10686
10687         * lily/binary-source-file.cc (quote_input): rename to quote_input
10688
10689         * lily/input.cc (set): new function.
10690
10691 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10692
10693         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10694         directory part of file name to search directory.
10695
10696         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10697         search path and chdir to DIR if --outname=DIR used.
10698
10699         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10700         existence before appending original path.
10701
10702 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10703
10704         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10705         file" massage.
10706
10707         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10708         texinfo.tex is always used.
10709         
10710 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10711
10712         * flower/include/axis.hh: rename from axes.hh
10713
10714         * lily/include/text-interface.hh (Module): rename from text-item.hh
10715
10716         * VERSION (PATCH_LEVEL): release 2.5.29
10717
10718         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10719
10720         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10721         (handle-macfont): new function. Call fondu for Native mac fonts.
10722
10723         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10724         '() case.
10725
10726 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10727
10728         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10729         multi-page.  Fix .eps regular expression.
10730
10731 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10732
10733         * Documentation/user/putting.itely: add info on modifying templates.
10734
10735         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10736         misc small changes.
10737
10738 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10739
10740         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10741
10742         * scripts/lilypond-ps2png.scm
10743
10744         * VERSION (PACKAGE_NAME): release 2.5.28
10745
10746 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10747
10748         * lily/main.cc (prepend_env_path): Do not append /, that does not
10749         work.  Localedir lives in datadir, not in prefix.
10750
10751         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10752         hack for windows.
10753
10754         * flower/include/file-cookie.hh: Compile fix.
10755
10756 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10757
10758         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10759
10760         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10761         system primitives.
10762         (gulp-port): using read-string!/partial. We don't want to read an
10763         entire PS file  (GUILE 1.6 limits strings to 16M) 
10764
10765         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10766         properties. Add font-interface. 
10767
10768         * scm/define-grob-properties.scm (all-user-grob-properties):
10769         remove old bracket properties.
10770
10771         * scm/x11-color.scm: reformat. 
10772
10773         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10774         LedgerLineSpanner if new StaffSymbol is found. 
10775
10776         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10777         staff-symbol for finishing staff. 
10778
10779         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10780
10781         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10782         change black to currentColor everywhere. This fixes color support
10783         in SVG.
10784
10785 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10786
10787         * input/regression/fret-diagrams.ly: new file to test fret diagram
10788         capability
10789
10790         * scm/output-tex.scm: remove white-dot and white-text
10791
10792         * scm/output-ps.scm: remove white-dot and white-text
10793
10794         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10795         using ly:stencil-in-color instead
10796         (draw-dots) : remove call to white-dot
10797
10798 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10799
10800         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10801         support.
10802
10803         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10804
10805         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10806
10807         * flower/file-cookie.cc: new file. lily_cookie extension.
10808         
10809 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10810
10811         * scm/editor.scm (editor-command-template-alist): Add syn
10812         editor (Jaap [de Vos]).
10813
10814 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10815
10816         * scripts/lilypond-ps2png.scm:
10817         * scm/ps-to-png.scm: New file.
10818
10819         * scm/backend-library.scm (postscript->png): Use it.
10820
10821         * scripts/lilypond-ps-to-png.py: Remove file.
10822
10823         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10824
10825 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10826
10827         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10828
10829         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10830         start on grace moment. Fixes autobeam-grace.ly.
10831
10832         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10833         process anything unless we're at the end of a pending beam. Fixes
10834         syncopated 8ths beamed across a beat.
10835
10836 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10837
10838         * scm/editor.scm (editor-command-template-alist): Start emacs if
10839         emacslient fails.
10840
10841         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10842
10843         * flower/file-path.cc (is_file, is_dir): Export.
10844
10845         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10846
10847 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10848
10849         * lily/easy-notation.cc: Added include cctype to correct
10850         compilation error.
10851
10852 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10853
10854         * scm/backend-library.scm (postscript->pdf): set resolution to
10855         1200, so bitmap fonts aren't that ugly. 
10856
10857         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10858
10859         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10860         parent if we have a notehead. Fixes incorrect offsets when
10861         Paper_column is very wide in the X direction.
10862
10863         * input/regression/font-family-override.ly (Module): new file.
10864
10865         * scm/font.scm (make-pango-font-tree): new function.
10866
10867         * lily/beam.cc (before_line_breaking): remove warning about less
10868         than 2 visible stems. We still get a warning when there is only
10869         one stem.
10870
10871 2005-06-01  Werner Lemberg  <wl@gnu.org>
10872
10873         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10874         correctly.
10875
10876 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10877
10878         * lily/slur-scoring.cc (generate_avoid_offsets): new
10879         function. Generate avoid offsets once per slur.
10880
10881         * lily/slur.cc (add_extra_encompass): add dependency to
10882         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10883
10884         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10885         too. Fixes inf error with added bass notes.
10886
10887         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10888         argument anymore.
10889
10890         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10891
10892         * input/tutorial/lbook-latex-test.tex: add line length test.
10893
10894         * scripts/lilypond-book.py (set_default_options): new
10895         function. Call this before dissecting snippets, so linewidth
10896         settings reach the snippets.
10897
10898 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10899
10900         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10901
10902 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10903
10904         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10905
10906 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10907
10908         * stepmake/aclocal.m4: More autopackage friendliness.
10909
10910 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10911
10912         * Documentation/index.html.in: remove link to LSR.
10913
10914         * Documentation/user/global.itely: remove duplicate
10915         "dedication" \header{} section.
10916
10917 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10918
10919         * VERSION (PACKAGE_NAME): release 2.5.27.
10920
10921         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10922         too. Plugs memory leak.
10923
10924         * make/lilypond.fedora.spec.in (Group): remove
10925         lilypond-pdfpc-helper.
10926
10927         * scripts/GNUmakefile (SEXECUTABLES): remove
10928         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10929
10930         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10931         'typewriter family.
10932
10933         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10934         memory leak.
10935
10936         * lily/parser.yy (score_body): don't clone Score, that's done in
10937         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10938
10939         * lily/score-engraver.cc (derived_mark): new function.
10940         (initialize): unprotect Paper_score. This fixes a memory leak.
10941
10942         * lily/score-performer.cc (derived_mark): new function.
10943
10944         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10945
10946         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10947         spurious warning.
10948
10949         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10950         serif.
10951
10952 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10953
10954         * configure.in (reloc_b): Add --enable-relocation.
10955
10956 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10957
10958         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10959
10960         * input/regression/alignment-order.ly: add Staff example.
10961
10962 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10963
10964         * po/fr.po: update.
10965
10966 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10967
10968         * Documentation/index.html.in: add link to LSR.
10969
10970 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10971
10972         * scm/define-stencil-commands.scm (Module): new file. Register all
10973         allowed stencil expression heads in a central place.
10974
10975         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10976         ly:make-stencil
10977
10978         * lily/stencil-expression.cc (all_stencil_heads): registering
10979         stencil expressions.
10980
10981         * lily/stencil-interpret.cc: new file. Stencil expression
10982         interpreting.
10983
10984         * input/xiao-haizi-guai-guai.ly: move file back.
10985
10986 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10987
10988         * Documentation/user/advanced.itely, converters.itely,
10989         instrument-notation.itely, lilypond-book.itely: misc small
10990         changes.
10991
10992 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10993
10994         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10995
10996         * make/lilypond.fedora.spec.in: Fix source url.
10997
10998         * cygwin: Update from mingw patches.
10999
11000         * scm/editor.scm (editor-command-template-alist): Use jedit
11001         -reuseview (Bertalan), add uedit (Patrick Huberts).
11002
11003         * input/xiao-hai-zi-guai-guai.ly: Rename from
11004         xiao-haizi-guai-guai.ly.
11005
11006         * input/*: Reindent, do not use TAB.
11007
11008         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
11009         white background.
11010
11011 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
11012
11013         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
11014         numerical overflow error.
11015
11016 2005-05-29 Laura Conrad <lconrad@laymusic.org>
11017         
11018         * abc2ly.py: fix to syntax error in multi-part output.
11019
11020 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11021
11022         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
11023         with disappearing span bars when alignAboveContext is active
11024
11025         * lily/property-iterator.cc (check_grob): use is-grob?
11026         object-property. Fixes crash-key-sig-font-size.ly. 
11027
11028 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11029
11030         * lily/bar-line.cc (print): don't round barlines; this produces
11031         odd aliasing effects in Acroread.
11032
11033         * lily/timing-engraver.cc (process_music): robustness fix.
11034
11035         * lily/context-def.cc (filter_engravers): bugfix.
11036
11037 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11038
11039         * lily/lilypond.rc.in: Add ly-icon.
11040
11041         * lily/GNUmakefile: 
11042         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
11043         rules.
11044
11045 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11046
11047         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
11048
11049         * ps/music-drawing-routines.ps: 
11050
11051         * scm/output-ps.scm: remove draw ez_ball.
11052
11053         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
11054         EasyNotation context definition.
11055
11056         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
11057         Text_interface and color for making easy note heads.
11058
11059         * lily/stencil.cc (with_color): new function.
11060
11061         * ps/music-drawing-routines.ps: remove draw_zigzag_line
11062
11063         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
11064         output routine. Zigzag now works in SVG too.
11065
11066         * scm/output-tex.scm (filledbox): idem.
11067
11068         * scm/output-svg.scm (filledbox): idem.
11069
11070         * scm/output-ps.scm (lily-def): remove horizontal-line. 
11071
11072         * lily/lookup.cc (horizontal_line): use draw-line. 
11073
11074         * lily/system-start-delimiter.cc: remove old staff bracket code.
11075
11076         * mf/feta-haak.mf: further tweaks.
11077
11078         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
11079
11080         * mf/feta-generic.mf: include feta-haak.
11081
11082         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
11083
11084         * scm/framework-ps.scm (write-preamble): only load fonts if their
11085         filename is a string. 
11086
11087 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11088
11089         * scm/output-svg.scm (circle): support circle.
11090         (bracket): stub for bracket.
11091
11092         * scripts/lilypond-book.py (main): make sure --psfonts warning is
11093         correct.
11094
11095 2005-05-26  Graham Percival  <gperlist@shaw.ca>
11096
11097         * Documentation/user/lilypond.tely, advanced-notation.itely,
11098         basic-notation.itely, instrument-notation.itely, global.itely,
11099         introduction.itely, tutorial.itely: rearranging, editing,
11100         clean-up.
11101
11102         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
11103         for compiling on FreeBSD.
11104
11105 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11106
11107         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
11108         otf files.
11109
11110         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
11111         bugfixes.
11112
11113         * VERSION: 2.5.26 released.
11114
11115         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
11116
11117 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
11118
11119         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
11120         if printpagenumber is false.
11121
11122 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11123
11124         * lily/font-config.cc (init_fontconfig): comment out FontConfig
11125         cache warning.
11126
11127         * lily/tie.cc (print): support dotted ties.
11128         
11129 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11130
11131         * scm/define-grobs.scm (all-grob-descriptions): switch off
11132         debugging
11133         (all-grob-descriptions): Arpeggio has Y-extent.
11134
11135         * scm/define-music-properties.scm (all-music-properties): document
11136         length-callback and start-callback as "read-only".
11137
11138         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
11139         length-callback after creation. 
11140
11141         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
11142         compressmusic -> compressMusic.
11143
11144         * ly/music-functions-init.ly (oldaddlyrics): idem.
11145
11146         * lily/parser.yy: NewLyricCombineMusic ->
11147         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
11148
11149 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
11150
11151         * ly/Welcome_to_LilyPond.ly: typo.
11152
11153 2005-05-24  Graham Percival  <gperlist@shaw.ca>
11154
11155         * Documentation/user/lilypond.tely: move changing-defaults to be
11156         before global issues.
11157
11158         * Documentation/user/basic-notation.itely: move Transpose section
11159         here from advanced/Other.
11160
11161         * Documentation/user/changing-defaults.itely,
11162         advanced-notation.itely: move Fonts to advanced, edit.
11163
11164 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11165
11166         * lily/parser.yy (bare_int): remove rule.  From now on, we require
11167         # before negative integers.
11168
11169 2005-05-23  Graham Percival  <gperlist@shaw.ca>
11170
11171         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
11172
11173         * Documentation/user/lilypond.tely: change Unified index to
11174         LilyPond index.
11175
11176         * Documentation/user/advanced-notation.itely,
11177         instrument-notation.itely: editing.
11178
11179 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
11180
11181         * scm/lily.scm (lilypond-all): Bugfix: return failed.
11182
11183         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
11184
11185 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11186
11187         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
11188         ly:port-move.  Needs to be stderr-specific on mingw.
11189         Run fixcc.
11190
11191 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11192
11193         * lily/general-scheme.cc (ly:port-move): Remove.
11194
11195         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
11196         windows.
11197
11198         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
11199         variables.  This eliminates the need for a gs.bat wrapper, which
11200         opens a console.
11201
11202         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
11203         * scm/lily.scm (running-from-gui?): 
11204         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
11205         artifact of not compiling with -mwindows.
11206
11207         * scm/editor.scm: Define PLATFORM.
11208
11209 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11210
11211         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
11212         can start to cut & paste lilypond-book fragments.  
11213
11214         * scm/define-music-types.scm (music-descriptions): remove
11215         UntransposableMusic
11216
11217 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11218
11219         * scm/output-ps.scm (glyph-string): remove / before CIDs.
11220
11221 2005-05-20  Graham Percival  <gperlist@shaw.ca>
11222
11223         * Documentation/user/instrument-notation.itely: remove *Engraver.
11224
11225         * Documentation/user/advanced-notation.itely: edit, rearrange.
11226
11227 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11228
11229         * scm/output-ps.scm (glyph-string): take cid? argument. Use
11230         findresource iso. findfont for CID CFF fonts.
11231
11232         * VERSION (PACKAGE_NAME): release 2.5.25
11233
11234         * ly/Welcome_to_LilyPond.ly: add  \version
11235
11236 2005-05-20  Graham Percival  <gperlist@shaw.ca>
11237
11238         * Documentation/user/programming-interface.itely: move
11239         \displayMusic into its own section.
11240
11241         * Documentation/user/basic-notation.itely: finish editing.
11242
11243 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11244
11245         * flower/file-path.cc (find): don't throw away file_name.dir, but
11246         append to it. Fixes \include with directories.
11247
11248         * flower/include/file-path.hh (class File_path): don't derive from
11249         Array<String>.
11250
11251         * flower/include/file-name.hh (class File_name): remove to_str0()
11252
11253         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
11254         Hara_kiri_engraver in separate file.
11255
11256         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
11257         translation went wrong. Fixes vertically translated slurs.
11258
11259 2005-05-19  Graham Percival  <gperlist@shaw.ca>
11260
11261         * Documentation/user/basic-notaton.itely: editing.
11262
11263 2005-05-18  Graham Percival  <gperlist@shaw.ca>
11264
11265         * Documentation/user/macros.itexi, basic-notation.itely:
11266         add @commonprop (commonly used properties) macro.
11267
11268 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11269
11270         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
11271
11272         * scripts/lilypond-book.py (invokes_lilypond): new function
11273         (main): only run fontextract if invokes_lilypond() is true.
11274
11275         * lily/function-documentation.cc (ly_add_function_documentation):
11276         duh, use !=
11277
11278         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
11279
11280         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
11281
11282         * scm/lily.scm (running-from-gui?): lowercase Darwin.
11283
11284         * lily/function-documentation.cc (ly_add_function_documentation):
11285         use scm_hash_table_p() for checking.
11286
11287 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11288
11289         * Documentation/user/advanced-notation.itely (Text scripts):
11290         Change nonexisting @internalsref{Text markup} to @ref{Text
11291         markup}.  Change @internalsref{Text script} to
11292         @internalsref{TextScript}.
11293
11294         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
11295
11296 2005-05-17  Graham Percival  <gperlist@shaw.ca>
11297
11298         * Documentation/user/tutorial.itely, basic-notation.itely,
11299         changing-defaults.itely: remove duplicate cindex entries
11300         that appear on the same page.
11301
11302         * scm/define-grobs.scm: change default padding for TextSpanner.
11303
11304         * Documentation/topdocs/AUTHORS.texi: update email address.
11305
11306         * Documentation/user/global.itely: add info about \include.
11307
11308 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11309
11310         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
11311         when running-from-gui.
11312
11313         * scm/editor.scm (get-editor): Add platform defaults.
11314
11315         * scm/backend-library.scm (postscript->pdf): Typo.
11316
11317 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11318
11319         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
11320
11321         * lily/font-config.cc (init_fontconfig): add warning about cache.
11322
11323 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11324
11325         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
11326
11327 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
11328
11329         * lily/horizontal-bracket.cc (print): Take care of the direction
11330         property so brackets above the stave point downwards. 
11331
11332         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
11333         for HorizontalBracket so it doesn't end up within the stave.
11334
11335 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11336
11337         * lily/GNUmakefile (default): Typo.
11338
11339         * scm/lily.scm (PLATFORM): Export.
11340
11341         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
11342         load-font-via-GS, ttftool or fopencookie is broken on windows.
11343         
11344         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
11345         -dSAFER, that is broken on windows.
11346
11347 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11348
11349         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
11350         for FlexLexer.h
11351
11352         * scripts/lilypond-invoke-editor.scm: remove stray -
11353
11354 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
11355
11356         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
11357         Fixes deprecation warning.
11358
11359         * flower/include/string.icc (to_string): Only inline if
11360         -DSTRING_UTILS_INLINED.
11361
11362         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
11363         name.  Remove windows comment.
11364
11365         * scm/editor.scm (slashify): New function.
11366         (get-editor-command): Use it.
11367         (get-command-template): Do not alter editor command if
11368         environment value includes `%(file)s' magic.
11369
11370         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
11371         (dissect-uri): Use it.
11372         (unquote-uri): Bugfix.
11373
11374 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11375
11376         * scm/framework-ps.scm (write-preamble): add TTF rule.
11377
11378         * Documentation/topdocs/README.texi (Top): remove note about
11379         xdelta.
11380
11381         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
11382         requirement.
11383
11384         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
11385         function. Figure out where FlexLexer.h lives
11386
11387         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
11388         
11389 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11390
11391         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
11392         with Windows root in file name.
11393
11394         * scm/backend-library.scm (ly:system): Only redirect output (using
11395         system and shell, ugh) if /dev/null is writable.
11396
11397         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
11398         windows icon.
11399
11400         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
11401         on Mingw.
11402
11403         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
11404         click.
11405
11406         * flower/file-path.cc (is_dir, is_file): New function.  Actually
11407         use result of stat when available.
11408
11409         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
11410         absolute file name and root.
11411
11412         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
11413
11414         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
11415
11416         * flower/file-name.cc (slashify): Bugfix, do substitute if no
11417         slashes in file name.
11418
11419 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11420
11421         * Documentation/user/preface.itely (Preface): Run
11422         texinfo-all-menus-update.
11423
11424         * scm/editor.scm (get-editor-command): Bugfix: allow full
11425         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
11426
11427         * Documentation/pictures/lilypond-48.xpm: New file.
11428
11429         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
11430
11431         * ly/Welcome_to_LilyPond.ly: New file.
11432
11433         * lily/main.cc (main): Only identify if we have a terminal.
11434
11435         * scm/backend-library.scm (postscript->png)
11436         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
11437         non-/bin/sh).
11438
11439 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
11440
11441         * Documentation/topdocs/AUTHORS.texi: polish, update.
11442
11443 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11444
11445         * Documentation/user/preface.itely (Notes for version 2.6): new
11446         notes for 2.6
11447
11448         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
11449         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
11450         is not fully contained" warnings.
11451
11452         * lily/slur-scoring.cc (get_bound_info): remove warning.
11453
11454         * lily/staff-symbol-engraver.cc (process_music): start initial
11455         spanner in process_music(). This fixes overrides of StaffSymbol
11456         properties.
11457
11458         * scm/framework-pdf.scm (Module): remove.
11459
11460         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
11461
11462         * lily/ambitus-engraver.cc: formatting cleanups.
11463
11464         * mf/feta-solfa.mf (Module): remove.
11465
11466         * ChangeLog: more details about contributions.
11467
11468 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11469
11470         * lily/align-interface.cc (align_elements_to_extents): warn if
11471         called too early. Fixes: disappearing-staff-lines.ly
11472
11473         * VERSION (PACKAGE_NAME): release 2.5.24
11474
11475 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11476
11477         * stepmake/aclocal.m4: Typo.
11478
11479         * flower/string.cc (substitute): Take two strings or two
11480         characters.  Update callers.
11481
11482 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11483
11484         * flower/file-name.cc (File_name): Slashify.
11485
11486         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
11487
11488         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
11489
11490         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
11491
11492         * configure.in (gui_b): Use it.
11493
11494         * lily/lilypond.rc.in: New file.
11495
11496         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
11497
11498 2005-05-12  Graham Percival  <gperlist@shaw.ca>
11499
11500         * Documentation/user/advanced-notation.itely: edit of Text
11501         section; clarify text scripts vs. text markup.
11502
11503 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11504
11505         * lily/multi-measure-rest-engraver.cc
11506         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
11507         separation items on start. Fixes mm rests in start of score.
11508
11509         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
11510         don't access StaffSymbol if not there.
11511         Fixes: crash-staff-symbol-engraver.ly.
11512
11513         * lily/instrument-name-engraver.cc (class
11514         Instrument_name_engraver): data member first_. Create
11515         InstrumentName on start. 
11516
11517 2005-05-12  Graham Percival  <gperlist@shaw.ca>
11518
11519         * Documentation/user/instrument-notation.itely: add guitar
11520         position.
11521
11522         * Documentation/user/introduction.itely,
11523         Documentation/user/lilypond.tely,
11524         Documentation/user/tutorial.itely: begin pruning
11525         unused (duplicated) cindex entries and misc cleanup.
11526
11527 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
11528
11529         * input/test/volta-chord-names.ly: Bring the explanation up to
11530         date.
11531
11532 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
11533
11534         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
11535         Specify `@documentencoding utf-8' for html, ignore warnings.
11536
11537 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
11538
11539         * THANKS: Added bughunters.
11540
11541 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
11542
11543         * lily/main.cc: update help string for `lilypond -H'.
11544
11545         * po/fi.po: update.
11546         
11547 2005-05-10  Graham Percival  <gperlist@shaw.ca>
11548
11549         * Documentation/user/advanced-notation.itely: minor fixes.
11550
11551 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11552
11553         * scm/editor.scm: New module.
11554
11555         * scm/lily.scm (gui-main): Use it.
11556
11557         * scm/framework-gnome.scm (spawn-editor): Use it.
11558
11559         * scripts/lilypond-invoke-editor.scm: Use it in new script.
11560
11561 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11562
11563         * scm/framework-ps.scm (load-font-via-GS):  new function.
11564
11565         * lily/pango-font.cc (pango_item_string_stencil): add support for
11566         CID keyed font.
11567
11568         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
11569
11570 2005-05-10  Graham Percival  <gperlist@shaw.ca>
11571
11572         * Documentation/user/basic-notation.itely: add @ref.
11573
11574         * Documentation/user/advanced-notation.itely: add example
11575         of 5/8 beaming.
11576
11577 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11578
11579         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
11580
11581         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
11582         going through ps2pdf wrappers.
11583
11584 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
11585
11586         * Documentation/user/instrument-notation.itely: petrucci note
11587         heads: updated docu
11588
11589         * input/regression/note-head-style.ly: updated regression test;
11590         indentation fixes
11591
11592         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
11593         heads as default
11594
11595         * mf/parmesan-heads.mf: minor editing; use musicological names
11596         (rather than optical description) as note head names
11597
11598         * scm/output-lib.scm: complete petrucci heads
11599
11600 2005-05-09  Pal Benko  <benkop@freestart.hu>
11601
11602         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
11603         heads, but bigger)
11604
11605 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11606
11607         * lily/main.cc (main_with_guile): Remove no files check.
11608
11609         * lily/main.cc (ly:usage): Export to Scheme.
11610
11611         * scm/lily.scm (no-files-handler): New function.
11612
11613         * scm/lily.scm (lilypond-main): Use it.
11614
11615         * configure.in (gui_b): Add mbrtowc checking.
11616         Resurrect [utf8/]wchar.h checking.
11617
11618 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11619
11620         * Documentation/user/advanced-notation.itely (Metronome marks):
11621         Add link to the program reference for MetronomeMark
11622
11623         * Documentation/user/lilypond-book.itely (An example of a
11624         musicological document): Correct the example using psfonts 
11625
11626 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
11627
11628         * po/fi.po: update after a lesson how to update entries against
11629         source.
11630         
11631         * po/TODO: document the lesson.
11632
11633 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11634
11635         * configure.in (gui_b): remove wcrtomb checking.
11636
11637         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
11638         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
11639
11640 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11641
11642         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
11643         keep Scheme expressions and strings unmodified when doing the
11644         conversion to postfix notation for slurs and beams. Should
11645         hopefully solve most related conversion problems. 
11646
11647         * Documentation/user/lilypond-book.itely : Clarify and correct how
11648         to call dvips with -h psfonts.
11649
11650 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11651
11652         * Documentation/user/instrument-notation.itely (Entering lyrics):
11653         Typo.  Fixes build.
11654
11655 2005-05-09  Graham Percival  <gperlist@shaw.ca>
11656
11657         * Documentation/user/lilypond-book.itely: document PSFONTS file.
11658
11659         * Documentation/user/lilypond.tely, lilypond-book.itely,
11660         tutorial.itely: change references to 2.5.x to 2.6.x.
11661
11662         * Documentation/user/instrument-notation.itely: clarified \addlyrics
11663         vs \lyricmode.
11664
11665         * Documentation/user/invoking.itely: remove old info about
11666         lilypond-profile.
11667
11668         * Documentation/topdocs/INSTALL.texi: remove old info about
11669         lilypond-profile, add warning about needing international fonts
11670         to build docs.
11671
11672 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11673
11674         * lily/include/grob-info.hh (class Grob_info): make data member
11675         private. Changes throughout.
11676
11677         * input/regression/alignment-order.ly: new file. 
11678
11679         * lily/vertical-align-engraver.cc (acknowledge_grob): read
11680         alignAboveContext and alignBelowContext
11681
11682 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11683
11684         * lily/pfb.cc (LY_DEFINE): add cast.
11685
11686         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11687         matches .otf
11688         (write-preamble): warn about unknown fonts.
11689
11690         * lily/pfb.cc (Module): new function ly:otf->cff
11691
11692         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11693         (get_otf_table): new function.
11694
11695 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11696
11697         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11698         iso. ps2png.
11699
11700 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11701
11702         * po/fi.po: apply second round of update.
11703
11704 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11705
11706         * scm/x11-color.scm (make-x11-color-handler): don't use
11707         #\sp. Apparently doesn't work on all platforms. 
11708
11709 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11710
11711         * Documentation/user/advanced-notation.itely, putting.itely,
11712         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11713
11714 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11715
11716         * VERSION (PACKAGE_NAME): release 2.5.23
11717
11718 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11719
11720         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11721         convert to utf-8.
11722
11723         * THANKS: Add translators for this release, convert to utf-8.
11724
11725         * mf/GNUmakefile (MFTRACE_FLAGS):
11726         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11727         outdir as option (WAS: hardcoded).
11728
11729 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11730
11731         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11732         finished_span_
11733
11734         * THANKS: add Hans Forbrich.
11735
11736         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11737
11738         * Documentation/user/basic-notation.itely (Staff symbol): document
11739         start/stop staff. Reference to ossia.ly
11740
11741         * input/test/ossia.ly: new example using stop and startStaff.
11742
11743         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11744         in other words, don't create "|" barline at start of the score.
11745         (start_translation_timestep): don't set whichBar for start of score.
11746
11747         * input/regression/staff-halfway.ly: use new functionality.
11748
11749         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11750         start and stop staff based on events.
11751
11752         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11753
11754         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11755
11756 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11757
11758         * Documentation/user/programming-interface.itely (How markups work
11759         internally ): remove \encoding reference.
11760
11761 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11762
11763         * scripts/convert-ly.py: Attempt to do a smarter update of 
11764         text markups from versions < 1.9.0 with arbitrary nesting.
11765
11766 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11767
11768         * po/fi.po: convert to utf-8, and update.
11769
11770 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11771
11772         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11773
11774         * lily/*.cc: more <? >? to min/max changes
11775
11776         * lily/include/interpretation-context-handle.hh: rename
11777         Interpretation_context_handle to Context_handle.
11778
11779 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11780
11781         * input/regression/GNUmakefile (local_delete): use `find` together 
11782         with `xargs` to avoid too long argument-lists in cmd line.
11783
11784 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11785
11786         * Documentation/user/introduction.itely: updates "About this manual".
11787
11788         * Documentation/user/advanced-notation.itely,
11789         invoking.itely: minor fixes.
11790
11791 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11792
11793         * COPYING: add font exception. Update FSF address. 
11794
11795         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11796         should be taken without child context.
11797
11798         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11799
11800         * scm/define-markup-commands.scm (triangle): new command, as
11801         robust replacement for unicode Delta/Triangle.
11802
11803 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11804
11805         * ps/music-drawing-routines.ps: add fillp argument.
11806
11807         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11808
11809         * lily/font-config.cc (init_fontconfig): don't add cff/
11810
11811         * VERSION (PACKAGE_NAME): release 2.5.22
11812
11813         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11814
11815         * lily/grace-engraver.cc (consider_change_grace_settings): use
11816         is_alias(). Fixes problem with CueVoice grace notes. 
11817
11818         * lily/simultaneous-music-iterator.cc (construct_children): call
11819         Music_iterator::quit() for iterators that start out invalid. This
11820         fixes indefinitely continuing contexts.
11821
11822         * buildscripts/substitute-encoding.py: new file
11823
11824         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11825         missing @end 
11826
11827         * scripts/lilypond-book.py (write_if_updated): print file name.
11828
11829         * Documentation/user/basic-notation.itely (Explicitly
11830         instantiating voices): idem.
11831
11832         * Documentation/user/advanced-notation.itely (Text spanners):
11833         remove stray { } 
11834
11835         * lily/context.cc (default_child_context_name): the default child
11836         is now first in accepts_list_.
11837
11838         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11839         \defaultchild to all relevant contexts.  This fixes:
11840         drums-pitch.ly.
11841
11842         (Probably also fixes similar problems with ancient
11843         transcriptions getting CueVoices instead of the desired voices.)
11844  
11845         * lily/context-def.cc (get_default_child): new function.
11846         (get_accepted): place default child in front of list.
11847
11848         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11849
11850         * lily/include/context-def.hh (struct Context_def): add
11851         default_accept_
11852
11853 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11854
11855         * scm/define-grobs.scm: remove "remove-first" line, since
11856         the absent property is set to #f anyway.
11857
11858         * Documentation/user/basic-notation.itely,
11859         advanced-notation.itely, instrument-notation.itely: minor
11860         fixes.
11861
11862         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11863
11864         * Documentation/user/advanced-notation.itely,
11865         changing-defaults.itely: consolidate Text stuff in
11866         advanced notation.
11867
11868         * Documentation/user/global.itely: better docs for \header.
11869
11870         * Documentation/user/putting.itely: new chapter; placeholder
11871         for future expansion.
11872
11873         * Documentation/user/examples.itely: moved "suggestions for
11874         writing LP files" section into putting.itely.
11875
11876         * Documentation/user/lilypond.itely: added new chapter,
11877         fixed the short table of contents.
11878
11879 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11880
11881         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11882         infinity for unfeasible beams.
11883
11884         * make/lilypond.fedora.spec.in (Group): idem.
11885
11886         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11887
11888         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11889
11890         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11891         fonts directly.
11892
11893         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11894
11895         * mf/GNUmakefile: remove all CFF rules.
11896
11897         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11898
11899         * lily/open-type-font-scheme.cc (LY_DEFINE):
11900         new function ly:otf-font-table-data.
11901         (LY_DEFINE): new function otf-font?
11902
11903 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11904
11905         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11906         ($(outdir)/Fontmap.lily): idem.
11907
11908         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11909         for PFAEmmentaler-XXX.pfa. 
11910
11911         * Documentation/user/music-glossary.tely (accidental): NL
11912         translation of accidental.
11913
11914 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11915
11916         * flower/include/international.hh: Bugfix: include "string.hh".
11917
11918         * lily/include/mingw-compatibility.hh: New file.
11919
11920         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11921
11922         * configure.in: Search for mingw wcrtomb library.
11923
11924 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11925
11926         * scripts/convert-ly.py: Bug fix
11927
11928         * Documentation/user/changing-defaults.itely (Common tweaks):
11929         Added example where the context has to be specified explicitly
11930         (MetronomeMark). 
11931
11932 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11933
11934         * scripts/lilypond-book.py (ly_options): set timing to #f for
11935         notime option.
11936
11937         * scripts/convert-ly.py (conv): typo.
11938
11939         * flower/*.cc: remove <? and >?
11940         
11941         * lily/*.cc: remove <? and >?
11942
11943         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11944         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11945         editor.
11946
11947 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11948
11949         * lily/part-combine-engraver.cc: add space to variable list.
11950
11951 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11952
11953         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11954         remove-first to false (matches docs)
11955
11956         * Documentation/user/advanced-notation.itely: corrected docs
11957         concerning remove-first.
11958
11959 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11960
11961         * lily/part-combine-engraver.cc: make sure that the relevant
11962         properties are included in the documentation.
11963
11964 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11965
11966         * Documentation/user/lilypond-book.itely: Bernard's docs
11967         for \betweenLilyPondSystem.
11968
11969 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11970
11971         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11972         remarks.
11973
11974 2005-04-28  Pal Benko  <benkop@freestart.hu>
11975
11976         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11977         only on vertical lines of flexa shape, and use a constant
11978         thickness value for horizontal lines (patch slightly modified by
11979         Jürgen Reuter)
11980
11981         * lily/include/mensural-ligature.hh: make 2 comments clearer
11982
11983 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11984
11985         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11986         to need_extra_horizontal_space; bugfix: use class scope to avoid
11987         global namespace pollution
11988
11989         * Documentation/user/instrument-notation.itely (ligatures): added
11990         comment on possible future syntax change and how to work around
11991
11992         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11993         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11994         intervals (fixes agnus dei example)
11995
11996         * Documentation/user/instrument-notation.itely (white mensural
11997         ligatures): selected a more illustrative example
11998
11999 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
12000
12001         * Documentation/index.html.in: specify utf-8 charset in meta content.
12002
12003 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12004
12005         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
12006         empty 2nd page for single page.
12007
12008         * scm/lily.scm: remove p&c definitions.
12009
12010         * po/zh_TW.po (Module): new translation.
12011
12012         * lily/lily-guile.cc (ly_chain_assoc): remove.
12013
12014         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
12015         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
12016
12017 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12018
12019         * lily/beaming-info.cc: remove infinity_i
12020
12021         * scripts/abc2ly.py (out_filename): fix thinko with \version.
12022
12023 2005-04-26  Graham Percival  <gperlist@shaw.ca>
12024
12025         * Documentation/user/basic-notation.itely,
12026         instrument-notation.itely, advanced-notation.itely,
12027         changing-defaults.itely: minor fixes.  Added docs
12028         for colors to advanced-notation.itely.
12029
12030         * Documentation/user/advanced-notation.itely: fixed compile
12031         problem and added Bernard's x11-color doc patch.
12032
12033 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
12034
12035         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
12036         alright this time round.
12037
12038 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12039
12040         * Documentation/topdocs/INSTALL.texi (Top): idem.
12041
12042         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
12043
12044         * VERSION (MAJOR_VERSION): release 2.5.21
12045
12046         * scm/output-ps.scm (grob-cause): bugfix.
12047
12048 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
12049
12050         * cygwin/*: Update.
12051
12052         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
12053         stuff.
12054
12055         * scm/output-ps.scm (grob-cause): Bugfix.
12056
12057         * scm/lily.scm (ly:load): Remove x11-color.
12058
12059         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
12060         quote executable, fixes getting version from program --with
12061         --options.
12062         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
12063         $ac_exeect.
12064
12065         * Documentation/user/GNUmakefile: Only build music-glossary with
12066         rendered lilypond snippets during web.
12067
12068 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12069
12070         * po/de.po: update.
12071
12072         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
12073
12074 2005-04-22  Laura Conrad <lconrad@laymusic.org>
12075  
12076         * scripts/abc2ly:
12077         second title line append with punctuation dash character;
12078         encode abc2ly python strings in utf-8
12079        
12080 2005-04-21  Laura Conrad <lconrad@laymusic.org>
12081
12082         * scripts/abc2ly fix chords (again)
12083  
12084 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
12085
12086         * scm/x11-color.scm: new file
12087         All x11 color names can be accessed with:
12088         #(x11-color 'ColorName),
12089         #(x11-color "ColorName") or:
12090         #(x11-color "color name")
12091         If the x11 color name is not recognised then it defaults
12092         to black
12093
12094         * scm/lily.scm: amended to call scm/x11-color.scm
12095
12096 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12097
12098         * Documentation/user/invoking.itely (Reporting bugs): comment out
12099         reference to online PNG bug repository.
12100
12101 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
12102
12103         * lily/translator-scheme.cc (ly:translator-property): Remove.
12104         Update callers.
12105
12106         * lily/context-scheme.cc (ly:context-now): Move from translator.
12107         Update callers.
12108
12109 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12110
12111         * input/regression/grid-lines.ly (skips): refine example.
12112
12113         * scm/define-context-properties.scm
12114         (all-user-translation-properties): doc autoBeamCheck
12115
12116         * input/regression/grid-lines.ly (Module): new file.
12117
12118         * lily/grid-point-engraver.cc (Module): new file.
12119
12120         * lily/grid-line.cc (Module): new file.
12121
12122         * lily/grid-line-span-engraver.cc (Module): new file.
12123
12124         * lily/grid-line-interface.cc (Module): new file.
12125
12126 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
12127
12128         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
12129         missing parameter, actualy cdr through list.  Actually return a
12130         list with ENTRY removed (was '()).
12131
12132         * scripts/convert-ly.py: Update.  Print warning if file cannot be
12133         opened.
12134         (do_conversion): Fix printing of continuation comma.
12135
12136         * Documentation/user/advanced-notation.itely (Beam formatting):
12137         Remove refbugs about compound time and mixed duration.
12138
12139         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
12140         modulo moments explicitely.
12141
12142         * lily/moment.cc (operator %): New function.
12143
12144         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
12145
12146         * lily/translator-scheme.cc (ly:translator-now,
12147         ly:translator-property): New function.
12148
12149         * scm/auto-beam.scm (default-auto-beam-check): New function.
12150
12151         * lily/auto-beam-engraver.cc (test_moment): Use it.
12152
12153         * flower/rational.cc (operator %): Bugfix.
12154
12155 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
12156
12157         * scripts/abc2ly: Bugfix
12158
12159 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12160
12161         * python/fontextract.py (write_extracted_fonts): bugfix, too many
12162         %'s on EndFont comment.
12163
12164         * lily/ledger-line-spanner.cc: some more words of explanation.
12165
12166 2005-04-20  John Williams <williams@tni.com>  
12167         
12168         * scripts/lilypond-book.py: htmlquote bugfix.
12169         Allow snippets to be given distinct filenames.
12170         Allow the default alt text to be overridden.
12171
12172 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
12173
12174         * ly/performer-init.ly: Bugfix
12175
12176         * THANKS: Added bughunters.
12177
12178 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
12179
12180         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
12181
12182         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
12183         position (was: use modulo measure length).
12184
12185         * configure.in (no gui_b): Remove optional gtk+ requirement.
12186
12187 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12188
12189         * Documentation/user/basic-notation.itely (Pitches): add
12190         LedgerLineSpanner.
12191
12192         * lily/dynamic-engraver.cc (process_music): set right bound to
12193         script if present. Else, do not set.
12194         (acknowledge_grob): only set right bound of finished spanner to
12195         note column if no other bound is set.
12196
12197         * python/lilylib.py (make_ps_images): switch back to png16m.
12198         
12199 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
12200
12201         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
12202         writing up to date file.  Add dvips usage suggestion.
12203
12204         * scripts/convert-ly.py: Fix error message.
12205         Print usage if no files on command line.
12206         (usage): Add example usage.
12207
12208         * input/test/compound-time.ly: New file.
12209
12210         * input/test/circle.ly: New file.
12211
12212         * Documentation/topdocs/NEWS.tely: Use them.
12213
12214         * input/test/boxed-stencil.ly: Remove \score.
12215
12216         * buildscripts/mf-to-table.py (base): Add .log dependency.
12217
12218         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
12219         pfa's.  Add .log dependency
12220
12221         * scm/define-markup-commands.scm (lower): New command.
12222
12223         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
12224         make it default.
12225
12226 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12227
12228         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
12229         also to finished cresc as right bound. This fixes:
12230         skip-string-decresc.ly
12231
12232         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
12233         relative_coordinate if extent is empty.
12234
12235         * lily/stem.cc (width_callback): determine correct extent if flag
12236         is not there. This fixes slur-no-flag.ly
12237
12238         * lily/grace-engraver.cc (consider_change_grace_settings): new
12239         function.
12240         (initialize): also consider_change_grace_settings() on
12241         initialization. Fixes large grace notes at start of score.
12242
12243         * lily/break-align-interface.cc (do_alignment): don't translate if
12244         total_extent is empty.
12245
12246         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
12247
12248 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12249
12250         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
12251         with slash.
12252
12253 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12254
12255         * stepmake/aclocal.m4: Remove tfm_path.
12256
12257 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12258
12259         * scm/music-functions.scm (markup-expression->make-markup): fix
12260         bug with cons arguments of markup commands.
12261         (music->make-music): fix music expression property list building
12262
12263 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12264
12265         * aclocal.m4: Massage package names.
12266
12267         * SCons updates.
12268
12269 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12270
12271         * VERSION (PACKAGE_NAME): release 2.5.20
12272
12273         * lily/stem.cc (calc_stem_info): add minimum Y extent of
12274         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
12275
12276         * lily/percent-repeat-engraver.cc (try_music): add measure before
12277         next_moment to future processing moment. Fixes:
12278         percent-repeat-mm-rest.ly
12279         (process_music): don't add moment for 2nd time.
12280
12281         * input/regression/repeat-percent.ly: add mmrests as extra test.
12282
12283         * lily/axis-group-engraver.cc (acknowledge_grob): read
12284         keepAliveInterfaces to decide what to kill.
12285
12286         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
12287         percent-repeat-interface to keepAliveInterfaces. This fixes
12288         percent-repeat-harakiri.
12289
12290 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12291
12292         * SCons updates.
12293
12294 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12295
12296         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
12297
12298         * aclocal.m4: remove --enable-tfm-path configure option
12299
12300         * input/test/ancient-font.ly (lowerStaff): clef name errors.
12301
12302         * scm/backend-library.scm (postscript->png): newline after
12303         finishing command.
12304
12305         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
12306         (LY_DEFINE): ly:paper-score-paper-systems: new function 
12307
12308         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
12309
12310         * lily/score.cc (default_rendering): use Music_output too.
12311
12312         * input/test/chord-names-languages.ly (Module): rename file.
12313
12314         * lily/text-spanner.cc: add bound-padding.
12315
12316         * lily/paper-book.cc (systems): accept Paper_score
12317         iso. Paper_system vector. 
12318
12319         * input/regression/line-arrows.ly: new file.
12320
12321         * lily/paper-score.cc (process): run get_paper_systems() only once.
12322
12323         * lily/line-spanner.cc (line_stencil): add arrows.
12324
12325 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
12326
12327         * lily/line-interface.cc (make_arrow): new function. 
12328         (arrows): idem.
12329
12330 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
12331
12332         * input/test/chord-names-german.ly: update for italian/french
12333         chords.
12334         
12335         * Documentation/user/instrument-notation.itely (Printing chord
12336         names): update.
12337
12338 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12339
12340         * lily/include/paper-score.hh (class Paper_score): remove unused
12341         prototypes.
12342
12343         * lily/book.cc (process): add -COUNT to midi output.
12344
12345         * lily/score.cc (book_rendering): remove outname argument
12346         (book_rendering): return list of Music_outputs. 
12347
12348         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
12349
12350         * lily/book.cc (process): loop over Music_outputs returned from
12351         Score::book_rendering().
12352
12353         * lily/*.cc (width_callback): remove spurious "unused" warnings
12354         for assert (axis==[XY]_AXIS); 
12355
12356         * lily/include/music-output.hh (class Music_output): smobify class.
12357
12358         * lily/include/paper-score.hh (class Paper_score): make members
12359         private.
12360
12361         * lily/performance.cc (process): return #f iso. #<undefined>. This
12362         prevents #<undefined> leaking into GUILE-userspace.
12363
12364 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12365
12366         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
12367
12368 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
12369
12370         * scm/chord-name.scm : support for italian and french
12371         chords names.
12372
12373         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
12374         a space defined by chordPrefixSpacer when the root name is
12375         direclty followed by a prefix.
12376
12377         * ly/engraver-init.ly : chordPrefixSpacer       
12378         * scm/define-context-properties.scm : chordPrefixSpacer
12379         * ly/property-init.ly : italianChords, frenchChords 
12380
12381 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12382
12383         * mf/feta-din.mf: Remove.
12384
12385         * mf/GNUmakefile (fontdir): Bugfix.
12386
12387         * mf/SConstruct: Some updates.
12388
12389         * SConstruct: Require pkg-config.
12390         (test_program): Bugfix for double digit version compares, use
12391         integer (not string-) compare.
12392         Optionally require gs 8.14.
12393
12394         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
12395
12396         * lily/*: s/ifdef HAVE_*/if have/.
12397
12398         * SConstruct (test_lib): New function.  Update pkg-config and some
12399         other requirements.
12400
12401         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
12402         freetype, pangof2t.
12403
12404 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12405
12406         * po/lilypond.pot, ...: Update using bison-CVS.
12407
12408         * python/lilylib.py (make_ps_images): Fixo.
12409
12410 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12411
12412         * python/lilylib.py (make_ps_images): typo.
12413
12414         * configure.in (gui_b): make bison optional.
12415
12416         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
12417
12418 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
12419
12420         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
12421         with one parameter can be defined in a LaTeX file when processed
12422         by lilypond-book this will be evaluated between the systems of
12423         a multi-system score. The parameter is the number of systems processed.
12424
12425 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12426
12427         * python/lilylib.py (make_ps_images): Escape newline.
12428
12429         * Documentation/user/music-glossary.tely: Run
12430         texinfo-all-menus-update.
12431
12432 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12433
12434         * scm/lily-library.scm (old-relative-not-used-message)
12435         (version-not-seen-message): Add input-file-name-location to message.
12436
12437         * lily/parser.yy (lilypond): Add token aliases.
12438
12439         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
12440         not confuse with alteration.
12441         (alteration): Add.
12442
12443 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12444
12445         * python/lilylib.py (make_ps_images): use -dEPSCrop
12446
12447         * VERSION (PACKAGE_NAME): release 2.5.19 
12448
12449         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
12450         only put xrefs in info documentation.
12451
12452         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
12453         .pdf rule to tex-rules.make.
12454
12455         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
12456         from -systems.* output.
12457
12458         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
12459         directly, remove -$(PAGESIZE) target.
12460
12461         * input/test/embedded-postscript.ly: update.
12462
12463 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12464
12465         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
12466
12467         * Documentation/user/changing-defaults.itely (Font selection):
12468         document font-name.
12469
12470         * input/regression/font-name.ly: show Pango fonts for
12471         font-name. Update example. 
12472
12473         * lily/pango-select.cc (properties_to_pango_description): don't
12474         convert symbol font-size to number, but use to lookup.
12475
12476         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
12477
12478         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
12479         (NAME . FILE-NAME) tuples for font descriptions. 
12480         (write-preamble): display BeginFont DSC comments.
12481
12482         * python/fontextract.py (write_extracted_fonts): new file. Extract
12483         font resources from a PS file.
12484
12485         * scripts/lilypond-book.py (option_definitions): --psfonts option.
12486         (Compile_error.process_include): do_file returns chunks.
12487
12488         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
12489
12490         * make/lysdoc-targets.make: .texi is .PRECIOUS
12491
12492         * scripts/lilypond-book.py (write_if_updated): new function.
12493
12494 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12495
12496         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
12497
12498 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12499
12500         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
12501
12502         * input/regression/markup-syntax.ly: remove \score.
12503
12504         * scm/define-markup-commands.scm (draw-circle): add fill argument
12505
12506         * scm/stencil.scm (make-circle-stencil): add fill argument
12507
12508         * ps/music-drawing-routines.ps: add fill argument.
12509
12510         * ly/performer-init.ly: add CueVoice to MIDI too.
12511
12512         * ps/music-drawing-routines.ps: new routine BeginEPSF /
12513         EndEPSF.
12514
12515         * input/regression/markup-eps.ly: new file.
12516
12517         * scm/framework-ps.scm (write-preamble): change order: vars should
12518         be inited before procedures.
12519
12520         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
12521         for EPS files.
12522
12523         * scm/define-markup-commands.scm (epsfile): add epsfile command.
12524
12525 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12526
12527         * configure.in (gui_b): add check for ghostscript 8.15
12528
12529 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12530
12531         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
12532         start of line. Fixes cresc-after-newline.ly
12533
12534         * lily/source-file.cc (file_line_column_string): use get_column().
12535
12536 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12537
12538         * lily/source-file.cc (get_column): utf-8 support for column numbers.
12539
12540 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12541
12542         * lily/*: use message () iso progress_indication () for messages.
12543         Revise/uniformise user messages.
12544
12545         * flower/warn.cc (progress_indication): New function.
12546         (message): Use it.  Fixes newline problems.
12547
12548         * config.make.in (webdir): Sort out install dirs.
12549
12550         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
12551
12552         * python/lilylib.py (command_name): Bugfix.
12553         (make_ps_images):
12554
12555 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
12556
12557         * lily/main.cc: --help says what types of backends are availabe
12558
12559 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12560
12561         Fix ./VERSION dependency, and without need to reconfigure.
12562
12563         * lily/main.cc (setup_paths): Update.
12564
12565         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
12566
12567         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
12568
12569         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
12570         Add \line for some simplistic cases.
12571
12572         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
12573
12574 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12575
12576         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
12577         to compile LY files (useful for adding eg. "-I" args)
12578         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
12579         2Gnome command for gnome backend.
12580         (LilyPond-command-formatgnome): call the 2Gnome command. key
12581         binding: C-c C-g
12582
12583 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12584
12585         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
12586         depend on all PNG images.
12587
12588 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12589
12590         * GNUmakefile.in: Bugfix: also link .map files.
12591
12592 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12593
12594         * scm/music-functions.scm (music->make-music): generate 
12595         a (make-music ...) sexpr from a music expression.
12596         (display-scheme-music): use guile pretty printer to display the
12597         make-music sexpr.
12598
12599 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12600
12601         * ly/engraver-init.ly: reindent.
12602         Add CueVoice.
12603
12604         * scm/music-functions.scm (music-pretty-string): handle moments
12605         too.
12606         (music-pretty-string): only print non-empty lists.
12607         (cue-substitute): create CueVoice context, which has smaller type.
12608
12609         * lily/moment-scheme.cc (LY_DEFINE): new methods
12610         ly:moment-grace-{numerator,denominator}
12611
12612         * lily/context-handle.cc: remove quit() method. 
12613
12614         * lily/font-config.cc (init_fontconfig): be verbose about font path.
12615         (init_fontconfig): success is 0, not !0
12616
12617 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12618
12619         * mf/feta-nummer-code.mf (code): add plus glyph.
12620
12621         * lily/tie.cc (print): idem.
12622
12623         * lily/slur.cc (print): don't use thickness property for
12624         slur shape-thickness.
12625
12626         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
12627         while adding stencils.
12628
12629         * scm/define-markup-commands.scm (with-color): with-color markup
12630         command.
12631         (whiteout): new markup command 
12632         (filled-box): new markup command
12633
12634 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12635
12636         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
12637         test for PDF docs.
12638
12639         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
12640         PFAAybabtu-Regular.  Fixes feta font in PDFs.
12641         
12642         Notes for tetex-3.0 make web:
12643            psclean.map: s/uhv8a/uhvr8a/
12644            config.ps add:
12645                 p +psfonts_t1.map
12646                 p +psclean.map
12647                 p +typeface.map
12648
12649 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12650
12651         * scm/music-functions.scm (music-pretty-string): fix bug with
12652         string argument.
12653
12654 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12655
12656         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
12657
12658 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12659
12660         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
12661         only process options if they're there.
12662         (write_file_map): add version-seen? to snippet-map.ly
12663
12664 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12665
12666         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
12667         formatting cleanups.
12668
12669         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
12670         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
12671
12672 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12673
12674         * scm/framework-ps.scm (ps-font-command): don't hash, just use
12675         name directly.
12676
12677         * lily/main.cc (setup_paths): either add mf/out to search path or 
12678         fonts/{otf,type1,etc}
12679         
12680         * lily/font-config.cc (init_fontconfig): either add mf/out to
12681         FontConfig or fonts/{otf,type1,etc}
12682
12683         * GNUmakefile.in: don't put mf/ link in share/ dir.
12684
12685         * lily/staff-spacing.cc: move same-direction-correction to
12686         note-spacing-interface
12687
12688         * scm/lily.scm (lilypond-main): use variable argument count for
12689         exception handler.
12690
12691         * lily/font-config.cc (init_fontconfig): add operator pacification
12692         message.
12693
12694         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12695
12696         * buildscripts/gen-emmentaler-scripts.py (i): generate
12697         PFAEmmentaler as well.
12698
12699         * scm/framework-ps.scm (munge-lily-font-name): new function
12700         (write-preamble): hack: insert PFA equivalent of CFF into
12701         .PS. This makes LilyPond output printable on normal PS printers
12702         again.
12703
12704         * buildscripts/gen-emmentaler-scripts.py (i): generate
12705         PFAEmmentaler.pfa aswell.
12706
12707 2005-04-06  John Williams <williams@tni.com>  
12708         
12709         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12710         
12711 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12712
12713         * scm/page-layout.scm (default-page-make-stencil): always combine
12714         the header stencil, even if empty. This prevents the body text to
12715         reach up to the margins.
12716
12717         * po/rw.po (Module): new file, for Kinyarwanda.
12718
12719         * input/test/spacing-optical.ly (Module): new file.
12720
12721         * lily/staff-spacing.cc: add same-direction-correction
12722
12723 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12724
12725         * Documentation/user/introduction.itely (Engraving): Comment-out
12726         non-existent file.
12727
12728 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12729
12730         * scm/define-grob-properties.scm (all-user-grob-properties): add
12731         same-direction-correction
12732
12733         * VERSION: release 2.5.18
12734
12735 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12736
12737         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12738         dereferencing.  Fixes make web.
12739
12740         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12741         errno.h.
12742
12743         * Documentation/user/: Fix links.
12744
12745 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12746
12747         * lily/text-interface.cc (Module): rename from text-item.cc
12748
12749         * input/regression/apply-output.ly (texidoc): function naming fix.
12750
12751         * lily/time-signature-performer.cc (derived_mark): new function.
12752
12753         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12754
12755         * scripts/lilypond-book.py (find_linestarts): new function.
12756         (find_toplevel_snippets): keep track of line numbers.
12757
12758         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12759         all key changes.
12760
12761         * ly/declarations-init.ly (partCombineListener): use
12762         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12763
12764         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12765
12766 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12767
12768         * lily/text-item.cc: Fix link.
12769
12770         * Documentation/user/changing-defaults.itely (Changing defaults):
12771         Fix programs reference links.
12772
12773         * Documentation/user/music-glossary.tely: Convert to utf-8.
12774
12775 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12776
12777         * make/lilypond-vars.make: remove TEXMF from variables.
12778         remove DEB_BUILD pk font variables.
12779         remove GUILE_LOAD_PATH
12780         remove TeX memory vars.
12781
12782 2005-04-04  Werner Lemberg  <wl@gnu.org>
12783
12784         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12785
12786 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12787
12788         * ps/lilyponddefs.ps: remove reencode-font
12789
12790         * lily/simple-spacer.cc (add_columns): also compare
12791         directly. Column rank doesn't distinguish between broken and
12792         unbroken columns. This fixes large spaces before time sig changes.
12793
12794         * Documentation/user/point-and-click.itely: document ly:set-option.
12795
12796         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12797         point_and_click_global is set.
12798
12799         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12800         ly:set-option argument.
12801
12802 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12803
12804         * GNUmakefile.in: Include symlinks in webball.
12805
12806         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12807         source dir for split and non-split manuals.
12808
12809         * Documentation/user/*y: Fix @uref/@inputfile links for
12810         split/non-split HTML documents.
12811
12812         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12813         .ps.gz.
12814         
12815 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12816
12817         * GNUmakefile.in: Add newline.
12818
12819 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12820
12821         * tex/lilyponddefs.tex: use color instead of xcolor
12822         * scm/output-tex.scm: minor editing
12823
12824 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12825
12826         * scm/music-functions.scm (display-scheme-music): pretty printer
12827         for music expressions.
12828
12829 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12830
12831         * buildscripts/install-info-html.sh (index_file): Fix link.
12832
12833 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12834
12835         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12836
12837         * Documentation/index.html.in: Add size estimates with some big pages.
12838
12839         * Documentation/user/tutorial.itely (Running LilyPond for the
12840         first time): Add/replace some @rglos links.  TODO: add more
12841         @rglos links in tutorial, test non-intrusiveness (.css).
12842
12843         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12844         annoying's indication of referencing external document.
12845
12846         * Documentation/user/GNUmakefile: Split version of glossary too.
12847         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12848         links, not only for html.
12849
12850         * Documentation/user/introduction.itely: Fix some links for other
12851         than html, do not use `here' as link name.
12852
12853 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12854
12855         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12856         @glossaryref.
12857
12858 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12859
12860         * scm/page-layout.scm (default-page-make-stencil): only add header
12861         if existing and not empty. Fixes spurious programming error.
12862
12863         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12864
12865 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12866
12867         * scm/output-tex.scm: implement {re,}setcolor
12868         * tex/lilyponddefs.tex: use color package
12869
12870 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12871
12872         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12873         additions to website.
12874
12875         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12876
12877         * Documentation/user/macros.itexi: Fix @usermanref html links in
12878         split documents: use @inforef.
12879
12880 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12881
12882         * Documentation/user/programming-interface.itely: minor fix.
12883
12884         * Documentation/user/advanced-notation.itely: added info to
12885         Metronome markings.
12886
12887 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12888
12889         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12890         use box-stencil.  Remove y-padding argument.
12891         (make-stencil-circler): New function.
12892
12893         * buildscripts/lilypond-words.py (F): 
12894         * elisp/SConscript (a): 
12895         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12896         * vim/SConscript (a): 
12897         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12898
12899         * lily/general-scheme.cc: Build fix.
12900
12901         * scm/markup.scm:
12902         * input/regression/markup-scheme.ly: 
12903         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12904
12905         * scm/stencil.scm (make-circle-stencil): New function.
12906
12907         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12908         name (was cicle).  Update callers.
12909         (circle): New markup command, similar to box.
12910
12911         * scm/stencil.scm (circle-stencil): New function.
12912
12913 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12914
12915         * configure.in: Detect libutf8/wchar.h variant.
12916
12917         * stepmake/aclocal.m4: Modify shared size test.
12918
12919 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12920
12921         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12922
12923 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12924
12925         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12926         
12927         * VERSION (PACKAGE_NAME):  release 2.5.17
12928
12929 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12930
12931         * scm/backend-library.scm (postscript->png): Fix comment and png
12932         message.
12933
12934         * GNUmakefile.in (link-tree): Fix locales.
12935
12936 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12937
12938         * lily/stencil-scheme.cc (LY_DEFINE): change to
12939         ly:stencil-aligned-to, non mutating.
12940
12941         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12942
12943         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12944
12945         * lily/quote-iterator.cc (derived_mark): call
12946         Music_wrapper_iterator::derived_mark() too.
12947
12948         * lily/grace-engraver.cc (derived_mark): change signature, add
12949         const.
12950
12951 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12952
12953         * SConstruct (symlink): 
12954         * GNUmakefile.in (link-tree): Add scripts to prefix.
12955
12956         * lily/general-scheme.cc (ly:effective-prefix): New function.
12957
12958         * scm/backend-library.scm (postscript->png): Use it.
12959
12960 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12961
12962         * lily/paper-score.cc (process): don't delete grobs after
12963         producing stencils. 
12964
12965         * scm/part-combiner.scm (determine-split-list): switch off
12966         debugging info.
12967
12968         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12969         if available.
12970
12971         * scm/define-context-properties.scm
12972         (all-user-translation-properties): add stringNumberOrientations.
12973
12974         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12975         so fingering and string-numbers are separately controlled.
12976
12977 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12978
12979         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12980         not use debugging.
12981
12982 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12983
12984         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12985
12986         * config.hh.in: add HAVE_FONTCONFIG.
12987
12988         * Documentation/user/instrument-notation.itely (String number
12989         indications): new node.
12990
12991         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12992
12993         * lily/new-fingering-engraver.cc (add_string): new function. 
12994         (acknowledge_grob): accept string-number-event as well.
12995
12996         * scm/define-markup-commands.scm (circle): new markup command.
12997
12998         * scm/output-lib.scm (print-circled-text-callback): new function.
12999
13000         * lily/GNUmakefile: move ifeq after include stepmake.make.
13001
13002 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13003
13004         * config.make.in (HAVE_LIBKPATHSEA_SO):
13005         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
13006
13007         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
13008         add KPATHSEA_LIBS.
13009
13010         * debian/watch: 
13011         * debian/control: Update.
13012
13013 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13014
13015         * input/test/title-markup.ly (spaceTest): remove.
13016
13017         * input/test/embedded-tex.ly (Module): remove.
13018
13019         * input/test/music-box.ly: use 'name property, not ly:music-name.
13020
13021         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
13022
13023         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
13024
13025 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13026
13027         * Documentation/topdocs/INSTALL.texi (Top): Remove information
13028         about xdeltas.  Add information about CVS.
13029
13030         * scm/lily.scm (lilypond-main): Fix invocation of handler,
13031         gracefully handle failed files.
13032
13033         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
13034
13035         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
13036         small fixes.
13037
13038         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
13039         No unnecessarily specific i18n messages.  Remove stray `1'.
13040
13041 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13042
13043         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
13044         documentencoding
13045
13046         * scm/documentation-lib.scm (texi-file-head): set utf-8
13047         documentencoding.
13048
13049         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
13050         Delta, not the Symbol one. 
13051
13052         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
13053         for the .map file.
13054
13055         * Documentation/topdocs/INSTALL.texi (Top): add running
13056         requirement as compilation requirement.
13057
13058 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13059
13060         * buildscripts/mutopia-index.py (headertext): add h1 header and
13061         utf-8 charset meta field.
13062
13063         * input/GNUmakefile: prune example list.
13064
13065         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
13066         options.
13067
13068         * lily/slur-scoring.cc (get_base_attachments): only look at stem
13069         extent for visible stems.
13070
13071         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
13072
13073 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13074
13075         * Documentation/topdocs/INSTALL.texi (Top): Updates.
13076
13077         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
13078
13079 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13080
13081         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
13082         pass inf/nan into slur scoring.
13083
13084         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
13085         page.
13086
13087         * scripts/abc2ly.py (dump_voices): use alphabet().
13088
13089 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
13090         
13091         * mf/GNUmakefile (depth): use $(FONTFORGE). 
13092
13093 2005-03-27 Matthias Neeracher <neeracher@mac.com>
13094         
13095         * flower/include/virtual-methods.hh: simplify. Patch by
13096
13097 2005-03-25  John Williams <williams@tni.com>  
13098
13099         * scripts/lilypond-book.py (main): add png for HTML too, guess
13100         only if necessary. 
13101
13102 2005-03-25  Graham Percival  <gperlist@shaw.ca>
13103
13104         * Documentation/topdocs/INSTALL.texi: now recommends
13105         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
13106
13107         * Documentation/user/basic-notation.itely,
13108         Documentation/user/tutoria.itely: warn about
13109         only one (phrasing) slur at once.
13110
13111 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
13112
13113         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
13114
13115 2005-03-23  Graham Percival  <gperlist@shaw.ca>
13116
13117         * Documentation/user/basic-notation.itely: fixed info about
13118         ending a (de)cresc.
13119
13120         * Documentation/user/lilypond-book.itely: fixed
13121         lilypond-book filter example and warned about not doing
13122         --filter and --process at the same time.
13123
13124 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
13125
13126         * lily/parser.yy (bass_number),
13127         Documentation/user/instrument-notation.itely (Figured bass): 
13128         Add the possibility to use text markup in figured bass. 
13129
13130 2005-03-19  Graham Percival  <gperlist@shaw.ca>
13131
13132         * Documentation/user/global.itely: added info about naming
13133         identifiers and breakbefore.
13134
13135         * Documentation/user/invoking.itely: added info about batch
13136         processing files with convert-ly, removed references to TeX
13137         in the jail section.
13138
13139         * Documentation/user/examples.itely: possibly fixed piano
13140         dynamics.
13141
13142         * Documentation/user/advanced-notation.itely: added info
13143         about removing other types of Staff.
13144
13145         * Documentation/user/instrument-notation.itely: possibly
13146         fixed piano staff line switch.
13147
13148         * Documentation/user/changing-defaults.itely: added info
13149         about using normal font in titles.
13150
13151 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13152
13153         * VERSION (PATCH_LEVEL): release 2.5.16
13154
13155         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
13156         explicitly.
13157
13158 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
13159
13160         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
13161         whitespace.
13162
13163         * python/lilylib.py (make_ps_images):
13164         * scm/backend-library.scm (postscript->pdf, postscript->png):
13165         Quote file name.  Use format rather than string-append juggling.
13166
13167 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13168
13169         * python/lilylib.py (make_ps_images): add x to -g argument. 
13170
13171         * lily/key-performer.cc (create_audio_elements): don't use
13172         scm_eval_string. Check for minor 3rd directly.
13173   
13174         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
13175         (sarabandeCelloGlobal): key is D minor, not F major.
13176
13177 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
13178
13179         Fix truncated --png output (Peter Danenberg).
13180         
13181         * python/lilylib.py (make_ps_images):
13182         * scripts/ps2png.py (copyright): Grok --papersize option.
13183
13184         * scm/backend-library.scm (postscript->png): Add parameter
13185         PAPERSIZE.  Update callers.
13186
13187         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
13188         Fixes symbol placement.
13189
13190         * lily/spanner.cc: 
13191         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
13192         <libc-extension.hh>).
13193
13194 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
13195
13196         * Nitpick run.
13197
13198         * buildscripts/fixcc.py: Update.
13199
13200         Builddir run fixes.
13201
13202         * HACKING (datadir): Add VERSION.
13203
13204         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
13205         higher up.
13206
13207 2005-03-15  Werner Lemberg  <wl@gnu.org>
13208
13209         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
13210         diagonal stem doesn't become thinner.
13211
13212 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
13213
13214         * buildscripts/fixcc.py: Fixes (Werner).
13215
13216 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13217
13218         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
13219         Emmentaler/Aybabtu.
13220
13221         * GNUmakefile.in: fix lilypond-words path.
13222
13223         * po/tr.po: update to 2.3.21
13224
13225         * lily/new-fingering-engraver.cc (position_scripts): take priority
13226         from head position.
13227
13228         * input/regression/finger-chords-order.ly (texidoc): new file.
13229
13230 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13231
13232         * make/ly-rules.make: 
13233         * stepmake/aclocal.m4: 
13234         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
13235
13236         * buildscripts/fixcc.py (rules): Leave space after operator.
13237
13238 2005-03-14  Werner Lemberg  <wl@gnu.org>
13239
13240         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
13241         top of the glyph with smooth curve.
13242
13243 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13244
13245         * Documentation/user/global.itely (Page layout): remove
13246         printpagenumber.
13247
13248 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
13249
13250         * input/regression/mensural-ligatures.ly: new file (with examples
13251         compiled by Pal Benko).
13252
13253         * Documentation/user/instrument-notation.itely: Bugfix: yet some
13254         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
13255         musicglyph access.  Many small beautifications in ancient
13256         examples.
13257
13258         * input/test/divisiones.ly: fixed indentation; small
13259         beautifications
13260
13261         * ly/engraver-init.ly: added FIXME comment
13262
13263         * scripts/lilypond-book.py,
13264         Documentation/user/lilypond-book.itely: added music fragment
13265         option "packed" to lilypond-book
13266
13267         * Documentation/user/instrument-notation.itely: Bugfix: added
13268         missing LedgerLineSpanner color setting in several places.  Added
13269         music fragment option "packed" to VaticanaContext example.
13270
13271 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13272
13273         * scm/define-grobs.scm (all-grob-descriptions): switch off
13274         Hyphen_spanner::set_spacing_rods 
13275
13276         * lily/lyric-hyphen.cc (print): add padding between syllable and
13277         hyphen.
13278         (print): shorten hyphen in tight situations (determine using
13279         minimum-length)
13280
13281         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
13282         0.4pt.
13283
13284 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
13285
13286         * ly/titling-init.ly (bookTitleMarkup): Refinements.
13287
13288         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
13289         header/footer markings for regression-test.
13290
13291         * scm/backend-library.scm (output-scopes, header-to-file): Move
13292         from framework-tex.scm.
13293
13294         * scm/framework-ps.scm (output-framework)
13295         (output-preview-framework):
13296         * scm/framework-eps.scm (output-classic-framework)
13297         (output-framework): Use it.  Fixes collated files.
13298
13299 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
13300
13301         * input/sakura-sakura.ly: 
13302         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
13303
13304         * buildscripts/guile-gnome.sh: Update.
13305
13306         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
13307
13308         * mf/aybabtu.pe.in: Capitalize Aybabtu.
13309
13310 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13311
13312         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
13313         culprit: always exit the loop if we find a rod, even if it has
13314         distance < 0. 
13315
13316         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
13317         algorithm.
13318
13319         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13320         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
13321
13322         * scm/output-svg.scm (dashed-line): new  function body.
13323         
13324         * GNUmakefile.in: create .htaccess.
13325
13326 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
13327
13328         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
13329
13330 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13331
13332         * VERSION (PACKAGE_NAME): release 2.5.15
13333
13334         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
13335
13336         * scm/framework-svg.scm (output-framework): put scaling in
13337         document header. Apply scaling only once.
13338         (output-framework): dump page size in px, not mm. 
13339
13340         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
13341         from font-size.
13342
13343         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13344         ly:outputter-output-scheme, new function.
13345
13346         * scm/output-svg.scm (pango-description-to-svg-font): new function
13347
13348 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13349
13350         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
13351         target.
13352
13353         * input/typography-demo.ly: new file.
13354
13355 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13356
13357         * Documentation/user/global.itely (File structure): Add markup blocks
13358         to toplevel expressions.
13359         (Multiple movements, Creating titles): Add markup blocks.
13360
13361         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
13362         <libc-extension.hh>).
13363
13364         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
13365
13366         * flower
13367         * lily
13368         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
13369
13370 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13371
13372         * lily/accidental.cc: special bboxes for natural. 
13373
13374         * mf/feta-toevallig.mf: make stems heavier.
13375
13376         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
13377         texts as well.
13378
13379         * mf/feta-klef.mf: revise. 
13380
13381         * mf/feta-schrift.mf: make thinning of accent less pronounced.
13382
13383         * mf/feta-klef.mf: add rounded curve at top. 
13384         make thinnib a little heavier.
13385
13386 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13387
13388         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
13389
13390         * buildscripts/fixcc.py: New file.
13391
13392         * input/regression/utf8.ly: Update Debian font description.
13393
13394 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13395
13396         * stepmake/aclocal.m4: Fix test.
13397
13398 2005-03-09  Graham Percival  <gperlist@shaw.ca>
13399
13400         * Documentation/user/invoking.itely: added Sebastino Vigna's
13401         docs for the --jail option.
13402
13403 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13404
13405         * lily/stem.cc (print): only produce stemlets if there are no
13406         noteheads on this stem.
13407
13408         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
13409         don't crash on stemlet (visible stem without heads).
13410
13411         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
13412         unbroken situations. 
13413
13414         * scm/output-lib.scm (center-invisible): new function.
13415
13416         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
13417         wishes to determine loose column space.
13418
13419         * lily/font-config.cc (init_fontconfig): add
13420         fonts/{otf,type1,cff}  to path.
13421
13422         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
13423
13424         * mf/GNUmakefile (Module): install all fonts under otf/
13425
13426         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
13427         replace /fonts/otf/ by /ps/ 
13428
13429         
13430 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13431
13432         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
13433
13434         * lily/book.cc (process): Oops, add score_.header_.
13435
13436         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
13437
13438         * lily/parser.yy: Handle toplevel and book texts as score.
13439
13440         * scm/page-layout.scm (default-page-make-stencil):
13441         Bugfix: (page-properties rename.
13442
13443         * scm/backend-library.scm (ly:system): Typo.
13444
13445 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13446
13447         * stepmake/stepmake/executable-targets.make (installexe): don't
13448         strip installed executables
13449
13450         * lily/font-select.cc (get_font_by_design_size): revert
13451         pango_description_string as well.
13452
13453         * lily/system.cc (set_loose_columns): put loose column just left
13454         of next column.
13455
13456         * lily/include/group-interface.hh (extract_grob_array): rename
13457         from Pointer_group_interface__extract_grobs
13458
13459         * input/regression/ledger-line-minimum.ly (texidoc): new file.
13460
13461         * lily/ledger-line-spanner.cc (set_spacing_rods): new
13462         function. Keep ledgered note heads at a minimum distance.
13463         Introduce minimum-length-fraction
13464         (print): introduce length-fraction property.
13465
13466 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13467
13468         * tex/GNUmakefile: remove latin1.enc rules.
13469
13470 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13471
13472         * scm/titling.scm: Typo.
13473
13474         * input/regression/score-text.ly: Really add.
13475
13476         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
13477
13478 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13479
13480         * lily/open-type-font-scheme.cc:  new file.
13481
13482 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13483
13484         * scm/titling.scm (layout-extract-page-properties): Rename from
13485         page-properties.  Update callers.
13486
13487         * lily/lexer.ll (Lily_lexer):
13488         * lily/parser.yy: Junk lyric_markup state.
13489
13490         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
13491
13492         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
13493         Add texts parameter.
13494
13495 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13496
13497         * lily/lexer.ll (lyric_markup): New mode.
13498         (Lily_lexer::push_lyric_markup_state): New method.
13499         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
13500
13501         * lily/parser.yy (book_body):
13502         (toplevel_expression): Grok \markup texts.
13503
13504         * lily/score-scheme.cc (ly:music-scorify): 
13505         * scm/lily-library.scm (collect-music-for-book): Take texts
13506         parameter.
13507
13508         * lily/score.cc (texts_): New member.
13509
13510         * lily/paper-book.cc (systems): Format score texts.
13511
13512         * score-text.ly: New file.
13513
13514         * ttftool/SConscript:
13515         * kpath-guile/SConscript: New file.
13516
13517         * lily/SConscript:
13518         * SConstruct: Update.
13519
13520 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13521
13522         * VERSION (PACKAGE_NAME): release 2.5.14
13523
13524 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13525
13526         * lily/main.cc: Add dummy xgettext markers.
13527
13528 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13529
13530         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
13531         requirements
13532
13533         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
13534         executable is < 40k
13535
13536         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
13537         hack.
13538
13539 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13540
13541         * flower/libc-extension.cc:
13542         * flower/include/libc-extension.hh: [Open]BSD simply cast
13543         cookie/funopen declarations.
13544
13545         * stepmake/aclocal.m4: Check for libkpathsea.so.
13546
13547         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
13548         dl_kpse_find_file.
13549
13550 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13551
13552         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
13553         (open_library): alternative for static library.
13554
13555 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13556
13557         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
13558
13559         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
13560
13561         Drop run-time dependency on teTeX.
13562
13563         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
13564
13565         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
13566         KPATHSEA_LIBS in LIBS.
13567         (STEPMAKE_DLOPEN): New function.
13568
13569         * lily/font-config.cc (init_fontconfig): Use dir for directory,
13570         not path.
13571
13572         * flower/file-path.cc (directories): Rename from paths, as this
13573         return an array of directories (a single path).
13574
13575 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13576
13577         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
13578
13579         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
13580         new ly:kpathsea-find-file
13581
13582         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
13583
13584         * kpath-guile/GNUmakefile: new file
13585
13586         * buildscripts/gen-emmentaler-scripts.py (i): generate
13587         emmentaler-X.fontname as well.
13588
13589         * buildscripts/ps-embed-cff.py: new script
13590
13591         * scm/lily-library.scm: remove ps-embed-cff.
13592
13593         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
13594         font loading. 
13595
13596         * scm/font.scm (add-music-fonts): load dynamics/numbers through
13597         fontconfig as well.
13598
13599         * lily/font-config.cc (init_fontconfig): add cff/ too.
13600
13601         * ly/generate-embedded-cff.ly: capitalize.
13602
13603         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
13604         so as to register the pango font.
13605
13606         * lily/font-config.cc (init_fontconfig): add
13607         prefix/{otf,type1,mf/out} to fontconfig path.
13608
13609         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
13610         overrides all. 
13611
13612         * configure.in (gui_b): remove ec mftrace check
13613
13614         * config.hh.in: use lilypond-Major.Minor as data directory.
13615
13616         * scm/framework-ps.scm (dump-page): use output-units for landscape.
13617
13618         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
13619         name.
13620
13621 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13622
13623         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
13624         error messages.
13625
13626         * flower/libc-extension.cc:
13627         * flower/include/libc-extension.hh: [Open]BSD fixes for
13628         cookie/funopen declarations.
13629
13630 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13631
13632         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
13633         emmentaler.
13634
13635         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
13636         lcrm10.
13637
13638         * scm/define-markup-commands.scm (fontsize): new markup
13639         command. Also set baseline-skip
13640
13641 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
13642         
13643         * lily/main.cc (do_chroot_jail): paranoia security for webserver
13644         use.
13645
13646 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13647
13648         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
13649
13650         * lily/pdf.cc: remove PDF related files
13651
13652 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13653
13654         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
13655         <hamamatsu@gmx.de>
13656
13657 2005-03-05  Graham Percival  <gperlist@shaw.ca>
13658
13659         * Documentation/user/advanced-notation.itely: first draft
13660         of reorg done.
13661
13662         * Documentation/user/global.itely: fixed (sub)section
13663         bits of MIDI.
13664
13665 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13666
13667         * cygwin/mknetrel (extras): Bufix (Bertalan).
13668
13669         * Documentation/user/basic-notation.itely (Chords): @ref fix.
13670         * Documentation/user/instrument-notation.itely (Introducing chord
13671         names): Compile fix: must have unique name.
13672
13673 2005-03-02  Graham Percival  <gperlist@shaw.ca>
13674
13675         * Documentation/user/instrument-notation.itely: reorg.
13676
13677 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13678
13679         * scm/output-gnome.scm:
13680         * scm/output-svg.scm: Fix font scaling.
13681
13682 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13683
13684         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
13685         what link to use best.
13686
13687         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
13688         * Documentation/user/tutorial.itely (Automatic and manual beams):
13689         Fix @ref.
13690
13691         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13692         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13693         * scm/framework-gnome.scm (tweak): Use it.
13694
13695 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13696
13697         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13698
13699         * scm/output-ps.scm (white-text): reinstate white-text
13700
13701 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13702
13703         * scm/output-ps.scm (offset-add): Remove.
13704
13705         * scm/lily-library.scm (offset-flip-y): New function.
13706         * scm/framework-gnome.scm (tweak): Use it.
13707
13708         * scm/output-gnome.scm (grob-cause): Add parameter.
13709
13710         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13711         * scm/output-ps.scm (url-link): Move.
13712         (white-text): Warn user about brokenness.
13713
13714         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13715         wrt ghostscript.
13716
13717 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13718
13719         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13720         if body length smaller than measure length.
13721
13722         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13723         for Y.
13724
13725         * ly/titling-init.ly (tagline): put default tagline in \paper
13726
13727 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13728
13729         * lily/kpath.cc: 
13730         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13731
13732         * scm/lily-library.scm (version-not-seen-message): New function.
13733         * ly/init.ly: Use it.
13734
13735         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13736         breaks as progess.
13737
13738         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13739         whitespace with l10n message.
13740
13741         * scm/framework-tex.scm (convert-to-ps):
13742         (convert-to-dvi): Do not use overly specific l10n messages.
13743
13744         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13745
13746         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13747         merge stderr with stdout.  
13748
13749 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13750
13751         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13752         Neeracher).
13753
13754 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13755
13756         * Documentation/user/instrument-notation.teily: moved
13757         \arpeggio to Basic.
13758
13759         * Documentation/user/advanced-notation.itely: Articulation to
13760         Basic, a bunch of stuff from Basic moved to Advanced.
13761
13762         * Documentation/user/basic.itely: swapped various sections,
13763         reorganized Basic.
13764
13765 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13766
13767         * flower/memory-stream.cc: 
13768         * flower/libc-extension.cc: Remove obsolete #undefs.
13769
13770         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13771         more carefully.
13772
13773 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13774
13775         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13776         dependency.
13777
13778         * VERSION (PACKAGE_NAME): release 2.5.13
13779
13780         * GNUmakefile.in (web-ext): don't ship ps.gz
13781
13782         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13783         stdout
13784
13785 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13786
13787         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13788         without libintl.  Now it compiles too.
13789
13790 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13791
13792         * Documentation/user/basic-notation.itely,
13793         instument-notation.itely, advanced-notation.itely:
13794         split up contents of notation.itely.
13795
13796         * Documentation/user/notation.itely: file removed.
13797
13798         * Documentation/user/invoking.itely, converters.itely:
13799         moved convert-ly info to invoking.itely.
13800
13801         * Documentation/user/global.itely, changing-defaults.itely,
13802         sound-output.itexi: moved global settings, file layout, and
13803         sound into global.itely.
13804
13805         * Documentation/user/sound-output.itexi: file removed.
13806
13807         * Documentation/user/lilypond.tely: removed links to
13808         notation.itely and sound.itely.
13809
13810 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13811
13812         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13813
13814         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13815  
13816         * THANKS: add sponsor.
13817
13818         * scm/define-markup-commands.scm (with-url): new markup command.
13819
13820         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13821         tagline.
13822         
13823         * scm/output-tex.scm (url-link): stub.
13824
13825         * scm/output-ps.scm (url-link): new function.
13826
13827         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13828         ly:set-point-and-click
13829
13830 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13831
13832         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13833         based on pdf-viewer setting.
13834
13835         * scm/framework-ps.scm (write-preamble): Find and set preferred
13836         pdf-viewer.
13837
13838 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13839
13840         * Documentation/user/point-and-click.itely: update for PDF point &
13841         click.
13842
13843         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13844         editors based on EDITOR setting.
13845
13846 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13847
13848         * scm/*: Oops, more grand 2005 replace bits.
13849
13850 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13851
13852         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13853
13854         * scm/output-ps.scm (grob-cause): point & click support for
13855         PostScript
13856
13857 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13858
13859         * lily/input-scheme.cc (LY_DEFINE): rename to
13860         ly:input-file-line-column
13861
13862 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13863
13864         * Documentation/user/examples.itely: small fix from Steve Doonan.
13865
13866         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13867
13868         * THANKS: added Yuval Harel.
13869
13870         * Documentation/user/{various}: inserted two spaces after a period.
13871
13872         * Documentation/user/lilypond.tely: added framework for reorg.
13873
13874         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13875         advanced-notation.itely, global.itely: new files, placeholder for
13876         future reorg.
13877
13878 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13879
13880         * Documentation/user/notation.itely: revamped Polyphony section
13881         
13882 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13883
13884         * Documentation/user/lilypond-book.itely (Music fragment options):
13885         doc fontload.
13886
13887         * Documentation/user/changing-defaults.itely (Text encoding): add
13888         fontload option to utf8 include
13889
13890         * scripts/lilypond-book.py (compose_ly): add fontload option
13891
13892         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13893         force-eps-font-include option.
13894
13895         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13896         black triangle
13897
13898         * Documentation/user/invoking.itely (Editor support): remove
13899         lilypond-latex section.
13900
13901         * scripts/lilypond-latex.py (Module): remove script.
13902
13903         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13904         overwrite .log. 
13905
13906         * lily/main.cc: remove -m, --no-layout
13907
13908         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13909         to define. We don't want to override fprintf everywhere.
13910
13911 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13912
13913         * cygwin/lilypond.hint: 
13914         * cygwin/README.in: Update dependencies.
13915
13916         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13917         Bugfix: do not pollute CPPFLAGS, LIBS.
13918
13919         * cygwin/mknetrel (extras): Cross compile fixes.
13920
13921         * ttftool/util.c: 
13922         * ttftool/ttfps.c: 
13923         * ttftool/ps.c: #include libc-extension.hh
13924
13925         * flower/include/libc-extension.hh:
13926         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13927         wrapper using funopen.
13928         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13929         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13930
13931         * config.hh.in:
13932         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13933         (AC_CHECK_HEADERS): Add libio.h
13934
13935         * scripts/convert-ly.py: Uniformize, internationalize.
13936         (2.5.2): Remove fatal encoding rule.
13937         (2.5.13): Handle latin1 encoding gracefully.
13938
13939 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13940
13941         * HACKING: Fix line breaks.
13942
13943 2005-02-23  Werner Lemberg  <wl@gnu.org>
13944
13945         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13946         contains those two files.
13947
13948 2005-02-21  Werner Lemberg  <wl@gnu.org>
13949
13950         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13951         to improve overlap removal process.
13952
13953         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13954         left and right ending.  This ensures better overlapping.
13955         Update all callers.
13956         ("lineprall"): Don't use draw_gridline to get better overlapping.
13957
13958 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13959
13960         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13961
13962         * Documentation/topdocs/NEWS.tely (Top): oops.
13963
13964 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13965
13966         * HACKING: new file.
13967
13968         * input/regression/utf8.ly (portuguese): added a portuguese example
13969         to show latin1 accents.
13970
13971 2005-02-21  Pal Benko  <benkop@freestart.hu>
13972
13973         * lily/mensural-ligature-engraver.cc:
13974         * lily/mensural-ligature.cc:
13975         * lily/include/mensural-ligature.hh: new algorithm implemented
13976
13977         * scm/define-grob-properties.scm: join-left killed (add-join may
13978         be used); join-left-amount changed to join-right-amount
13979
13980 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13981
13982         * Documentation/user/notation.itely: small but urgent fix.
13983
13984 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13985
13986         * lily/duration-scheme.cc: bugfix: correct parameters to
13987         SCM_ASSERT_TYPE.
13988
13989         * THANKS: added Pal.
13990
13991         * Documentation/user/notation.itely: bugfix: unTeXified
13992         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13993         "timesig.*x/y" -> "timesig.*xy".
13994
13995 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13996         
13997         * VERSION (PACKAGE_NAME): release 2.5.12
13998
13999 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14000
14001         * ly/engraver-init.ly: set tieWaitForNote to #t by default
14002
14003         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
14004
14005         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
14006
14007         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
14008
14009 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14010
14011         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
14012         latin1..utf-8.
14013
14014         * input/regression/stanza-number.ly:
14015         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
14016
14017         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
14018
14019 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14020
14021         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
14022         NEWS. Refer to website for older news.  
14023
14024         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
14025         .HTML. This should be done for specific servers only.
14026
14027         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
14028         .ly image examples.
14029
14030         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
14031         in layer 0 too.
14032
14033         * scm/define-context-properties.scm
14034         (all-user-translation-properties): add tieWaitForNote
14035
14036         * scm/define-grobs.scm (all-grob-descriptions): add
14037         Tie_column::before_line_breaking
14038
14039         * lily/tie.cc (get_column_rank): new function
14040
14041         * lily/tie-column.cc (before_line_breaking): new function.
14042         (werner_directions): take into account ties that start on
14043         different columns.  
14044
14045         * lily/score-engraver.cc (set_columns): move add_column() so we
14046         have column rank available.
14047
14048         * lily/tie.cc (get_column_rank): new function.
14049
14050         * input/regression/utf8.ly (japanese): add japanese lyrics.
14051
14052         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
14053
14054         * THANKS: add Steve D
14055
14056         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
14057         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
14058
14059 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
14060
14061         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
14062         to show harmonic notes
14063         * scm/define-markup-commands.scm: in \markup-by-number
14064         "dots-dot" -> "dots.dot" to show dotted notes
14065
14066 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14067
14068         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
14069
14070         * flower/memory-stream.cc (writer): new file.
14071
14072         * configure.in: add endian test.
14073
14074 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
14075
14076         * Documentation/user/examples.itely: small
14077         simplification/beautification
14078
14079         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
14080         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
14081         notation manual.
14082
14083         * lily/mensural-ligature.cc: bugfix: another few victims of the
14084         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
14085
14086         * ly/gregorian-init.ly: commit some experimental code for hi-level
14087         ligature input language lying around here for several months.
14088
14089         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
14090         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
14091
14092         * lily/vaticana-ligature-engraver.cc: bugfix: another few
14093         "x-y-z"->"x.y.s-z" fixes.
14094
14095 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14096
14097         * scm/framework-pdf.scm (scm): new file
14098
14099         * lily/include/pdf.hh (class Pdf_file): new file.
14100
14101         * lily/pdf.cc (write_trailer): new file.
14102
14103 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
14104
14105         * input/regression/color.ly: new file
14106
14107         * lily/stencil.cc (interpret_stencil_expression):
14108         when a color expression is encountered: save current color,
14109         process the rest of the expression, and restore previous color.
14110
14111         * lily/system.cc (get_line): check all grobs for color property and
14112         prepare the stencil scheme expressions for further processing.
14113         Fix layer-loop.
14114
14115         * scm/define-grob-properties.scm: introduce the color property.
14116
14117         * scm/output-lib.scm: color helper functions.
14118
14119         * scm/output-ps.scm: introduce setcolor/resetcolor.
14120
14121 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
14122
14123         * ly/*.ly, input/regression/*.ly: Added missing \version
14124         statements in some files.
14125
14126 2005-02-15  Graham Percival  <gperlist@shaw.ca>
14127
14128         * Documentation/user/notation.itely: minor editing.
14129
14130         * Documentation/user/converters.itely: updated convert-ly bugs.
14131
14132         * Documentation/user/lilypond-book.itely: add info about using
14133         feta characters in latex.
14134
14135 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14136
14137         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
14138
14139 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14140
14141         * scm/define-grob-properties.scm (all-user-grob-properties):
14142         removed 'dashed property.
14143
14144 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14145
14146         * scm/lily.scm (define-safe-public): new macro for defining
14147         variables that can be used in --safe mode. Use it in *.scm
14148         instead of manually setting safe-objects in safe-lily.scm.
14149
14150 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14151         
14152         * lily/slur.cc: Slur-dash patch by Bertalan.
14153
14154         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
14155
14156         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
14157
14158 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
14159
14160         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
14161
14162 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14163
14164         * mf/GNUmakefile: teTeX-3.0 install fix.
14165
14166         * Cygwin patch from Bertalan.
14167
14168         * stepmake/stepmake/metafont-rules.make: Remove bashism.
14169
14170 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14171
14172         * GNUmakefile.in: 
14173         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
14174
14175         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
14176         2.0.x compatibility.
14177
14178 2005-02-08  Werner Lemberg  <wl@gnu.org>
14179
14180         * mf/feta-din-code.mf: Format; clean up code.
14181         Replace `---' with `--' plus explicit path directions.
14182         (linethickness#, stafflinethickness#): Remove.
14183         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
14184         ("dynamic s"): Improve shape.
14185         ("dynamic p"): Improve shape.
14186         Replace `draw' with better outline approximation.
14187         ("dynamic r"): Improve shape.
14188         Don't call `fill' and `draw' at the same time.
14189
14190 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14191
14192         * SConstruct (symlink):
14193         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
14194         build fix: add enc symlink.
14195
14196         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
14197
14198         Support for DESTDIR besides prefix=/foo
14199
14200         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
14201
14202         * stepmake/stepmake/*.make:
14203         * */GNUmakefile:
14204         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
14205
14206         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
14207
14208         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
14209         mawk in fontforge (date) test.
14210
14211 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14212
14213         * scm/font.scm (make-century-schoolbook-tree): add NCS as
14214         font-family=roman. Add Luxi Sans as sans
14215
14216 2005-02-07  Graham Percival  <gperlist@shaw.ca>
14217
14218         * Documentation/user/notation.itely: add warning about
14219         percent repeats and Voice contexts.
14220
14221         * Documentation/user/lilypond-book.itely: clarified the
14222         necessity of dvips -u arguments.
14223
14224 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
14225
14226         * THANKS: Added a bunch of bug hunters.
14227
14228 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14229
14230         * scm/framework-ps.scm (output-preview-framework): bugfix.
14231
14232         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
14233         o/ for chord modifier..
14234
14235         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
14236
14237         * lily/drum-note-performer.cc:  remove unused (thanks Michael
14238         Welsh Duggan). 
14239
14240 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
14241
14242         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
14243
14244         * ly/titling-init.ly: Do not also print intstrument in header on
14245         first page.  Do not print page number on first and only page.
14246
14247 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14248
14249         * input/regression/*.ly: remove old-relative everywhere
14250
14251         * lily/music-sequence.cc (simultaneous_relative_callback): do
14252         what-if analysis on copy, not on original. Fixes old-relative
14253         compatibility.
14254
14255         * scm/backend-library.scm (postscript->png): space before
14256         --verbose.
14257         
14258 2005-02-05  Werner Lemberg  <wl@gnu.org>
14259
14260         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
14261         is defined.
14262
14263         * mf/feta-alphabet.mf: Define `staffsize#'.
14264         Include `feta-params.mf'.
14265         s/staffheight/design_size/.
14266
14267         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
14268
14269         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
14270
14271         * mf/feta-nummer-code.mf: Reformatted.
14272         (draw_six): Use outline intersection to avoid a self-intersecting
14273         path.
14274         ("Numeral comma"): Fix serious outline glitches.  This slightly
14275         changes the glyph shape.
14276         ("Numeral dash"): Use `draw_rounded_block'.
14277         ("Numeral dot"): Use `drawdot'.
14278         ("Numeral 1"): Assure identical tangent directions for the
14279         intersection points of paths.  The glyph shape improvement is only
14280         visible at very high magnifications.
14281         ("Numeral 2"): Use `solve' macro to make the lower right part of
14282         the glyph outline touch the x axis exactly.  This changes the
14283         glyph shape.
14284         Minor fixes for better overlap removal support.
14285         ("Numeral 4"): Make lefter corner `rounder'.
14286         ("Numeral 5"): Assure identical tangent directions for the
14287         intersection points of paths.  This improves the glyph shape at
14288         high magnifications.
14289         ("Numeral 7"): Use `solve' macro to make the upper right part of
14290         the glyph outline touch the metrics box exactly.  This changes the
14291         glyph shape.
14292         Avoid corner in the upper left part of the glyph (causing a minor
14293         shape change).
14294
14295         * mf/feta-ital-*.mf: Removed.  Unused.
14296
14297 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14298
14299         * VERSION (PATCH_LEVEL): release 2.5.11
14300
14301         * input/regression/fill-line-test.ly: new file.
14302
14303         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
14304         emmentaler name, eg. emmentaler-23. 
14305
14306 2005-02-04  Christian Hitz  <chhitz@gmx.net>
14307
14308         * scm/scm/define-markup-commands.scm (fill-line): rework for better
14309         alignment with centered texts
14310
14311         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
14312         list of paddings
14313
14314 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14315
14316         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
14317
14318         * lily/note-column.cc (translate_rests): call flush_extent_cache()
14319         of parents when translating rests. Fixes: c-chord-rest.ly 
14320
14321         * lily/include/dimension-cache.hh (struct Dimension_cache): add
14322         dimension_callback_ member.
14323
14324         * lily/grob.cc (flush_extent_cache): new function. Force recompute
14325         of extents.
14326
14327 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
14328
14329         * all but lily/*: The grand 2004/2005 replace.
14330
14331 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14332
14333         * lily/*: add space after ,  
14334
14335         * scm/music-functions.scm (has-request-chord): don't use
14336         ly:music-name anywhere. Fixes <<\\>> notation. 
14337
14338         * scm/define-markup-commands.scm (box): use font-size for
14339         padding. Fixes boxed-rehearsal-marks.ly
14340
14341         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
14342         identifier definition too, so foo = \lyrics { ...   } bar = #1
14343         doesn't complain about "bar" being LYRICS_STRING.
14344
14345         * lily/paper-def.cc (find_pango_font): new routine; Store
14346         pango_fonts in hash tab too. This is necessary for retrieving
14347         Pango_fonts::physical_font_tab() later on.
14348  
14349         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
14350         crash if psname is null.
14351
14352         * lily/lily-guile.cc (ly_hash2alist): new function
14353
14354         * Documentation/user/changing-defaults.itely (Text encoding):
14355         rewrite. 
14356
14357         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
14358         -> font_filename mapping.
14359
14360         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
14361         ly_pango_font_physical_fonts
14362
14363         * scm/framework-ps.scm (supplies-or-needs): extract names from
14364         physical Pango_fonts.
14365
14366         * utf8.ly: new file.
14367
14368 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14369
14370         * Documentation/user/changing-defaults.itely (Page layout): add
14371         doco about systemSeparatorMarkup.
14372
14373         * scm/page-layout.scm (default-page-make-stencil): add-to-page
14374         function.
14375         (default-page-make-stencil): insert system separators.
14376
14377         * scm/define-markup-commands.scm (hcenter): add
14378         (beam): add.
14379
14380 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14381
14382         * scm/output-ps.scm (ez-ball): reinstate ez notation.
14383
14384 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
14385
14386         * lily/main.cc: Spell backend consistently.  Sort options.
14387
14388 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14389
14390         * scripts/lilypond-book.py (Module): revert @include.
14391         
14392 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
14393
14394         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
14395         Bugfix: @include .tex (not .texi).  Small cleanups.
14396
14397         * stepmake/bin/add-html-footer.py (i18n): New function.
14398
14399 2005-01-31  Werner Lemberg  <wl@gnu.org>
14400
14401         * mf/feta-nummer.mf: Removed.  Unused.
14402
14403 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14404
14405         * lily/ : 2004 -> 2005 s&r
14406
14407         * scm/file-cache.scm (cached-file-contents): add file. Read each
14408         file only once.
14409
14410         * scm/font.scm (add-pango-fonts): change order. Medium weight is
14411         now default.
14412
14413         * VERSION: release 2.5.10
14414         
14415         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
14416
14417         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
14418
14419         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
14420         that both X and Y extents of bbox are non-nil.
14421
14422 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14423
14424         * scm/chord-name.scm (alteration->text-accidental-markup): change
14425         - to . 
14426
14427         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
14428
14429         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
14430
14431         * Documentation/user/invoking.itely (Invoking lilypond): add note
14432         about EPS backend.
14433
14434         * scm/framework-eps.scm: new file: create per-system/per-page EPS
14435         files for inclusion in lilypond-book document.
14436
14437         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
14438
14439         * input/tutorial/lbook-texi-test.texi: new file.
14440
14441         * scm/safe-lily.scm (safe-objects): add
14442         {begin,end}-of-line-(in)?visible as safe.
14443  
14444 2005-01-30  Graham Percival  <gperlist@shaw.ca>
14445
14446         * Documentation/user/changing-defaults.itely: fixed example
14447         of (dynamics).
14448
14449 2005-01-29  Graham Percival  <gperlist@shaw.ca>
14450
14451         * lily/main.cc: fix info about -o=FILE.
14452
14453 2005-01-29  Werner Lemberg  <wl@gnu.org>
14454
14455         * mf/feta-toevallig.mf ("Natural"): Completely changed the
14456         construction to assure smooth transition from straight to curved
14457         lines.
14458
14459 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14460
14461         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
14462         stencils.
14463
14464         * ps/lilyponddefs.ps: add start-page, start-system doesn't
14465         translate to top of page. Fixes alignment problems of
14466         lilypond-generated EPS files.
14467
14468 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14469
14470         * scm/part-combiner.scm (analyse-spanner-states): trigger on
14471         crescendo-end as well, since Decrescendo maybe ended with Stop
14472         Crescendo.). Fixes: partcombine-diminuendo.ly
14473
14474         * scm/script.scm (default-script-alist): swap portato symbols.
14475
14476         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
14477
14478         * lily/paper-outputter-scheme.cc (LY_DEFINE):
14479         ly:outputter-port. New function.
14480
14481         * scm/framework-ps.scm (output-classic-framework): dump a
14482         -systems.texi too
14483         (output-classic-framework): dump multiple systems on an "infinite"
14484         page EPS including fonts. 
14485
14486         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
14487         .eps files for both texi and tex formats. Use PNG coming from
14488         lilypond.
14489         
14490 2005-01-28  Graham Percival  <gperlist@shaw.ca>
14491
14492         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
14493
14494         * scripts/lilypond-latex.py: fix info about -o=FILE.
14495
14496 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14497
14498         * ly/generate-embedded-cff.ly: write .cff.ps files.
14499
14500         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
14501
14502         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
14503         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
14504
14505 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
14506
14507         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
14508
14509 2005-01-28  Werner Lemberg  <wl@gnu.org>
14510
14511         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
14512         macros.
14513         (draw_bulb): Improved.
14514
14515         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
14516         metapost bug.
14517         (draw_pedal_P): Use soft_end_penstroke.
14518         (draw_pedal_d): Use soft_start_penstroke.
14519
14520         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
14521         path.
14522         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
14523         doesn't change the glyph shape.
14524
14525         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
14526         changing the shape) to avoid fontforge warnings.
14527
14528         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
14529         soft_end_penstroke and fix glyph shape.
14530
14531 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14532
14533         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
14534
14535 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14536
14537         * scm/define-markup-commands.scm (line): filter out empty stencils
14538         from line command.
14539
14540         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
14541         amount.
14542
14543 2005-01-27  Graham Percival  <gperlist@shaw.ca>
14544
14545         * Documentation/user/notation.itely: added info about what
14546         \voiceFoo does.  Also rewrote warning about marks at
14547         a line break.
14548
14549         * Documentation/user/changing-defaults.itely: added info
14550         about putting dynamics in parenthesis and brackets.
14551
14552 2005-01-27  Werner Lemberg  <wl@gnu.org>
14553
14554         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
14555
14556 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14557
14558         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
14559         portato-direction.ly
14560
14561         * lily/beam.cc (consider_auto_knees): add beam height to
14562         threshold. Fixes: knee-multiple-beam.ly
14563
14564         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
14565         pedal line spanners. Fixes: instrument-center-pedal.ly
14566
14567         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
14568         if encountering barline. Fixes: auto-beam-repeat.ly
14569
14570 2005-01-26  Werner Lemberg  <wl@gnu.org>
14571
14572         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
14573         overlapping.
14574
14575         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
14576         with inflections for the 1/2 sharp glyph.
14577
14578         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
14579         connection between `t' and `r'.
14580         Unify bulb with the rest of `r' to avoid grazing outlines which
14581         confuses the overlap removal algorithm of fontforge.
14582
14583         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
14584         inflections.
14585         (draw_cross): Fix shape to have uniform thickness in corners.
14586
14587         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
14588         to avoid an uneven number of self-intersections; this confuses
14589         fontforge.
14590         Fix a slight bug in the shape at left bottom (which is visible only
14591         at high magnifications).
14592         `Center' the stem horizontally to avoid overlapping.
14593
14594 2005-01-24  Werner Lemberg  <wl@gnu.org>
14595
14596         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
14597         to `asis'.
14598         (fet_begingroup): Save group name in string `feta_group'.
14599         (fet_endgroup): Updated.
14600         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
14601
14602         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
14603
14604         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
14605         in metapost.
14606
14607 2005-01-24  Graham Percival  <gperlist@shaw.ca>
14608
14609         * Documentation/user/notation.itely: really minor editing.
14610
14611 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14612
14613         * Documentation/user/examples.itely: minor editing.
14614
14615         * Documentation/user/changing-defaults.itely: minor editing.
14616
14617         * Documentation/user/notation.itely: clarified info on polyphony
14618         and \addlyrics.
14619
14620 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14621
14622         * scm/output-gnome.scm: 
14623         * scm/output-svg.scm:
14624         * scm/lily-library.scm (font-name-style): Update font name
14625         kludging for fontconfig use.
14626
14627 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
14628
14629         * scm/define-markup-commands.scm: Document right-align and
14630         larger markup commands. Remove "TODO" from the topmost comment
14631         "each markup function should have a doc string." More consistent
14632         use of new-lines.
14633
14634 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14635
14636         * Documentation/user/changing-defaults: removed info about
14637         copyright symbol, since it's likely to change soon.
14638         Added info about betweensystemspace.
14639
14640         * Documentation/user/notation.itely: minor fixes.
14641
14642         * Documentation/user/lilypond.tely,
14643         Documentation/user/music-glossary.tely: changed copyright
14644         date to 2005 instead of 2004.
14645
14646         * input/test/volta-chord-names.ly: added old example back.
14647
14648 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14649
14650         * mf/feta-beugel.mf: use design size 20 (not 15).
14651
14652         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
14653         change name to aybabtu completely
14654
14655 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14656
14657         * buildscripts/gen-emmentaler-scripts.py (outdir): add
14658         design_size to fontname
14659
14660 2005-01-19  Werner Lemberg  <wl@gnu.org>
14661
14662         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
14663         mf/feta-schrift.mf: s/p/pat/ if a path variable.
14664
14665         * mf/feta-autometric.mf (set_char_box): Add code which emits
14666         specials for mf2pt1 if run with metapost.
14667         (to_bp): New macro for mf2pt1.
14668
14669 2005-01-18  Graham Percival  <gperlist@shaw.ca>
14670
14671         * Documentation/user/changing-defaults: added info on
14672         creating a copyright symbol.
14673
14674 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14675
14676         * VERSION: release 2.5.9
14677         
14678 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
14679
14680         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14681
14682         * Documentation/user/notation.itely: Document
14683         score-override-auto-beam-setting Fix documentation for
14684         revert-auto-beam-setting.
14685
14686 2005-01-18  Werner Lemberg  <wl@gnu.org>
14687
14688         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14689         (procset): New function to define a procset resource.
14690         (ps-embed-pfa): New function to define a font resource.
14691         (setup): New function to define a `Setup' environment.
14692         (preamble): Use new functions.
14693
14694         * ps/lilypond.defs (init-lilypond-parameters): New function to
14695         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14696
14697 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14698
14699         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14700
14701 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14702
14703         * scm/define-markup-commands.scm: Change number->markletter-string
14704         to take two arguments (vector number). Add number->mark-alphabet-vector
14705         and markalphabet markup command.
14706
14707         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14708         format-mark-alphabet, format-mark-box-barnumbers and
14709         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14710
14711 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14712
14713         * Documentation/user/examples.itely: add SATB automatic piano
14714         reduction template.
14715
14716         * Documentation/user/notation.itely: added info about changing
14717         partcombine texts.  Also adds examples of alternate lyrics.
14718
14719         * Documentation/user/changing-defaults.itely: added warning
14720         about \RemoveEmptyStaffContext overriding previous changes.
14721
14722 2005-01-17  Werner Lemberg  <wl@gnu.org>
14723
14724         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14725         feta-alphabet*.
14726
14727 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14728
14729         * python/lilylib.py (make_ps_images): don't do final showpage for
14730         multi-page documents.
14731         
14732         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14733
14734 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14735
14736         * Documentation/user/lilypond.tely: changed order of appendices;
14737         unified index should be last.
14738
14739         * Documentation/user/notation.itely: add example of key signatures
14740         and info about Staff.printKeyCancellation.
14741
14742 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14743
14744         * lily/include/repeated-music.hh (class Repeated_music): change
14745         into "namespace" class.
14746
14747         * lily/event.cc: remove Key_change_event.
14748
14749         * lily/include/transposed-music.hh (class Transposed_music): remove.
14750
14751         * lily/transposed-music.cc: remove
14752
14753         * lily/include/relative-music.hh: remove.
14754
14755         * lily/include/music-sequence.hh (struct Music_sequence): change
14756         into "namespace" class.
14757
14758         * lily/untransposable-music.cc (Module): remove
14759
14760         * lily/include/un-relativable-music.hh (Module): remove
14761
14762         * lily/include/untransposable-music.hh (Module): remove
14763
14764         * lily/include/music-list.hh (Module): remove file
14765
14766         * lily/un-relativable-music.cc: remove file.
14767
14768 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14769
14770         * lily/parser.yy: Compile fix.
14771
14772 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14773
14774         * lily/include/music.hh (class Music): unvirtualize transpose().
14775
14776         * lily/sequential-music.cc: remove file.
14777
14778         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14779
14780         * lily/slur-scoring.cc (get_best_curve): only switch on
14781         DEBUG_SLUR_SCORING for non NDEBUG builds.
14782
14783         * lily/include/music.hh (class Music): replace Music::start_mom()
14784         by start-callback property
14785
14786         * lily/include/grace-music.hh: remove file. 
14787
14788         * lily/stem.cc (height): robustness fix.
14789
14790         * lily/time-scaled-music.cc: remove file.
14791
14792         * lily/include/music.hh (class Music): include SCM init argument.
14793         (class Music): replace Music::get_length() virtual by
14794         length-callback property everywhere.
14795
14796         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14797
14798         * mf/GNUmakefile: don't install *list.ly
14799
14800 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14801
14802         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14803
14804 2005-01-12  Werner Lemberg  <wl@gnu.org>
14805
14806         This patch addresses the following problems in the feta sources
14807         files which contribute to the fetaXX fonts.
14808
14809         . Many fixes for rasterization at low resolutions (consistent use of
14810           `vround' and `hround', integer shift values for paths, applying
14811           `eps' for mirrored paths, use of `define_whole_pixels' and
14812           friends, etc.) -- while this probably looks like a waste of time
14813           it has revealed deficiencies in some glyph shapes.  See comment at
14814           the end of feta-params.mf how vertical symmetry is achieved.
14815
14816         . The `---' operator has been replaced everywhere with `--'; this
14817           both improves and considerably reduces the font size after
14818           conversion with mf2pt1.
14819
14820         These change aren't explicitly mentioned below since virtually all
14821         glyphs are affected.
14822
14823         Other notable differences:
14824
14825         . Glyphs from feta-accordion.mf now have charboxes around the
14826           outline.
14827
14828         . Fixed incorrect charbox for `accDot'.
14829
14830         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14831
14832         . Fixed position of the bow in the `upprall' glyph and its siblings.
14833
14834         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14835           dependent on the staff line thickness to avoid touching the middle
14836           staff line at smaller sizes.
14837
14838         . Largely extended output for feta-testXX: Where useful, glyphs
14839         are shown both between and on staff lines.
14840
14841
14842         * mf/feta-params.mf (staff_space_rounded,
14843         stafflinethickness_rounded, linethickness_rounded,
14844         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14845         Update all code which uses them where appropriate.
14846         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14847         New variables used to control rasterization at low resolutions.  Set
14848         to zero if feta code is processed with metapost.
14849
14850         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14851         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14852         (flare_path): Updated.
14853         Make it work with `filldraw' (but only circular pens).
14854         (hfloor, vfloor, hceiling, vceiling): New macros.
14855
14856         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14857         Use `draw' again in mf mode to have good pixel dropout control.
14858         Fix intersection points of horizontal lines with circle.
14859         ("accDot"): Fix parameters for set_char_box.
14860         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14861         control.
14862
14863         * mf/feta-banier.mf: Updated.
14864
14865         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14866         testing.
14867         (undraw_inside_ellipse): Remove `center' argument.  Update all
14868         callers.
14869         (draw_brevis): New macro, called by "Brevis notehead".
14870         (draw_whole_triangle_head): New macro, called by "Whole
14871         trianglehead".
14872         (draw_small_triangle_head): Use `filldraw'.
14873
14874         * mf/feta-eindelijk.mf: Remove useless global group.
14875         Updated.
14876
14877         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14878         `filldraw'.
14879
14880         * mf/feta-pendaal.mf: Updated.
14881
14882         * mf/feta-puntje.mf: Updated.
14883
14884         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14885         less points.
14886         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14887         dropout control.
14888         ("Varied Coda"): Use `draw_block'.
14889         (draw_comma): Fix typo.
14890         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14891         pixel dropout control.
14892
14893         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14894         position of bow.
14895
14896         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14897         sizes.
14898
14899         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14900         testing.
14901         (draw_meta_sharp): Much simplified.
14902         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14903
14904         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14905
14906 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14907
14908         * Documentation/user/notation.itely (Ancient rests): Fix typo
14909         (thanks Anthony)
14910
14911 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14912
14913         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14914
14915         * lily/main.cc (setup_paths): Add cff.
14916
14917         * mf/GNUmakefile (foe): Include actual target %.cff.
14918         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14919
14920 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14921
14922         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14923         suffix for main_input_b_.
14924
14925         * scm/music-functions.scm (toplevel-music-functions):
14926         precompute music lengths for music expressions.  
14927
14928 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14929
14930         * lily/include/input.hh (class Input): new `end_' slot for end of
14931         input. Renamed defined_str0_ to start_.
14932
14933         * lily/input.cc (Input): Add Input::Input (Input const &) and
14934         remove Input::Input (Source_file*, char const *). Use the new
14935         slots.
14936         (set_location): method used by bison to propagate input
14937         locations (YYLLOC_DEFAULT).
14938         (end_line_number, end_column_number, step_forward): new methods
14939         
14940         * lily/input-scheme.cc (ly:input-both-locations): new function,
14941         similar to ly:input-location, but also return the end line and
14942         column.
14943
14944         * lily/include/includable-lexer.hh: 
14945         * lily/includable-lexer.cc: 
14946         * lily/include/lily-lexer.hh (class Lily_lexer): 
14947         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14948         Includable_lexer to Lily_lexer, in order to update lexloc (the
14949         yylloc), a new slot of Lily_lexer.
14950         (here_input, LexerError): simplify by using the lexloc slot (aka
14951         yylloc)
14952
14953         * lily/lexer.ll: #define yylloc to use input locations (it may
14954         be useless here?). Fixed the #embedded_scm rule (step the location
14955         forward in order to skip the sharp sign before parsing the scheme
14956         expression)
14957
14958         * lily/include/lily-parser.hh (class Lily_parser): 
14959         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14960         here_input()
14961         (parser_error): overload for more precise locations of errors.
14962
14963         * lily/parser.yy (YYLTYPE): set location type to Input
14964         (YYLLOC_DEFAULT): use Input::set_location()
14965         (yylex): add the YYLTYPE* location parameter.
14966         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14967         Give an Input parameter to THIS->parser-error() for more accurate
14968         messages.
14969
14970 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14971
14972         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14973
14974         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14975         on BEAMQUANTING for non-NDEBUG builds.
14976
14977         * lily/stem.cc (head_count): performance: avoid String::String()
14978         inside oft called function.
14979
14980 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14981
14982         * Documentation/user/examles.itely: attempted fix for broken
14983         string quartet template.
14984
14985         * Documentation/user/notation.itely: remove unnecessary broken
14986         link.
14987
14988 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14989
14990         * VERSION (PACKAGE_NAME): release 2.5.7
14991
14992 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14993
14994         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14995         mf-nowin for teTeX-3.0.  Backportme.
14996
14997         * scm/output-svg.scm (utf8-string): New function.
14998
14999         * scm/output-gnome.scm (utf8-string): New function.
15000         (otf-name-mangling): Remove.
15001
15002         * lily/pango-font.cc (Pango_font): Use font string iso font
15003         filename for utf8-text.
15004
15005         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
15006         name.
15007
15008 2005-01-08  Graham Percival  <gperlist@shaw.ca>
15009
15010         * Documentation/user/notation.itely: add info about
15011         Staff.extraNatural = ##f in Pitches section.  Also
15012         fixed some minor issues in the Vocal music section.
15013
15014 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15015
15016         * scm/output-ps.scm (white-text): comment out Helvetica font,
15017         which is broken for my GS install.
15018
15019         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
15020         which provides a tighter bbox.
15021
15022         * scm/define-grobs.scm (all-grob-descriptions): remove all
15023         extra-offsets from definitions.
15024
15025 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
15026
15027         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
15028         add tuning for 4-string bass and some common 4/5-string banjo
15029         tunings.  New function (four-string-banjo) turns a 5-string tuning
15030         into a 4-string tuning.  New function
15031         (fret-number-tablature-format-banjo) computes correct fret numbers
15032         on 5-string banjos.
15033
15034         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
15035         Add beam correction to TabVoice.
15036
15037         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
15038         using bold font; makes tabs more readable.
15039
15040 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15041
15042         * lily/font-select.cc (get_font_by_design_size): don't make
15043         Modified_font_metric; this causes trouble, since we don't know the
15044         font magnification from inside Pango_font::text_stencil()
15045
15046         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
15047
15048         * Documentation/user/notation.itely (The Lyrics context): comment out
15049         broken {Small ensembles} link.
15050
15051         * scm/framework-svg.scm (output-framework): change calling convention.
15052
15053         * lily/object-key-dumper-scheme.cc: new file.
15054
15055         * lily/object-key-undumper-scheme.cc: new file.
15056
15057         * lily/tweak-registration-scheme.cc: new file.
15058
15059         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
15060
15061         * Documentation/user/examples.itely (String quartet): uncomment
15062         broken example.
15063
15064         * lily/font-config.cc: new file.
15065
15066 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
15067
15068         * scm/output-svg.scm: 
15069         * scm/output-gnome.scm: s/bigcheese/emmentaler.
15070
15071         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
15072
15073 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
15074
15075         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
15076         Add headers.
15077
15078         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
15079
15080 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15081
15082         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
15083
15084         * lily/include/main.hh: lose _b hungarian suffixes for global
15085         variables.
15086
15087         * lily/include/lily-guile-macros.hh: new file.
15088
15089         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
15090
15091         * lily/general-scheme.cc: new file. 
15092
15093         * lily/font-select.cc (get_font_by_design_size): retrieve
15094         PangoFont for (designsize . "pango-descr") entries.
15095
15096         * lily/lily-parser-scheme.cc: new file.
15097
15098         * lily/output-def-scheme.cc: new file.
15099
15100         * lily/paper-book-scheme.cc: new file.
15101
15102         * lily/duration-scheme.cc (LY_DEFINE): new file.
15103
15104         * lily/pitch-scheme.cc:  new file.
15105
15106         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
15107
15108 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15109
15110         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
15111
15112 2005-01-06  Graham Percival  <gperlist@shaw.ca>
15113
15114         * Documentation/user/notation.itely: minor editing.
15115
15116         * Documentation/user/changing-defaults: minor editing.
15117
15118         * Documentation/user/examples.itely: add template for
15119         string quartet part extraction; demonstrates tag.
15120
15121 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
15122
15123         * Documentation/user/notation.itely: documents
15124         format-mark-box-letters and format-mark-box-numbers
15125
15126         * scm/define-context-properties.scm: change comment.
15127
15128 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15129
15130         * scm/framework-ps.scm (output-classic-framework): new function:
15131         dump systems as separate .eps files (without fonts) and write a
15132         single collecting .tex file.
15133
15134 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
15135
15136         * Documentation/user/notation.itely (Setting simple songs):
15137         Correct several errors in the equivalent formulation of
15138         \addlyrics. 
15139         (The Lyrics context): Corrected link to the SATB example.
15140
15141 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15142
15143         * scm/lily.scm (completize-formats): new function
15144         (postprocess-output): new function
15145
15146         * lily/paper-book.cc (classic_output): change calling
15147         convention. Give basename as first argument. 
15148         remove Paper_book::post_processing().
15149
15150         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
15151
15152 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15153
15154         * lily/paper-outputter.cc (LY_DEFINE): new function
15155         ly:outputter-close.
15156
15157         * lily/main.cc: change --format,-f to --backend,-b
15158
15159         * lily/include/main.hh: rename format to backend.
15160
15161         * scm/translation-functions.scm (format-mark-box-numbers): add.
15162         patch by Erlend Aasland
15163
15164 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15165
15166         * lily/pango-font.cc (text_stencil): dump string as
15167         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
15168
15169 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
15170
15171         * configure.in (gui_b): Remove handy developer-only
15172         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
15173         CVS source installations (but break other non-default but correct
15174         PKG_CONFIG_PATH setups), as this is no longer developer-only.
15175
15176         * SConstruct: 
15177         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
15178         compatibility (backportme).
15179
15180         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
15181
15182 2005-01-03  Werner Lemberg  <wl@gnu.org>
15183
15184         Prepare glyph shapes for mf2pt1 conversion.
15185
15186         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
15187         (accDiscant, accFreebase, accStdbase): Replace `draw' with
15188         `penstroke'.
15189         (accDot): Use `drawdot'.
15190         (accBayanbase): Replace `draw' with `draw_gridline'.
15191         (print_penpos): Moved to feta-macros.mf.
15192         (accOldEE): Replace `filldraw' with `penstroke'.
15193         Replace `draw' with `penstroke' and `drawdot'.
15194
15195         * mf/feta-banier.mf: Code clean-up.
15196         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
15197         `fill'.
15198
15199         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
15200
15201         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
15202         paremeter to control drawing of labels.  Update all callers.
15203
15204         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
15205         (new_bulb): Return a bulb as a single path.  To do that, it now
15206         takes some more parameters.  Updated all callers.
15207         (draw_gclef): Major clean-up.  `draw' has been replaced with
15208         `penstroke', unnecessary outlines have been removed.
15209         Remove (unused) gnome-canvas code.
15210
15211         * mf/feta-macros.mf (print_penpos): New macro (from
15212         feta-accordion.mf).
15213         Other minor fixes.
15214
15215         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
15216         ("Pedal dot"): Use `drawdot'.
15217         (draw_pedal_P): Add parameter to control drawing of labels.  Update
15218         all callers.
15219         Fix shape at top.
15220         (draw_pedal_e): Add parameter to control drawing of labels.  Update
15221         all callers.
15222         (draw_pedal_d): Add parameter to control drawing of labels.  Update
15223         all callers.
15224         Revert drawing direction.
15225
15226         * mf/feta-schrift.mf (draw_fermata): Use single path.
15227         (draw_short_fermata): Replace `filldraw' with `fill'.
15228         (draw_long_fermata, draw_very_long_fermata): Replace calls to
15229         `draw_rounded_block' with a single path.
15230         ("Thumb"): Draw full circle instead of mirroring segments.
15231         (draw_accent): New macro.
15232         ("> accent", "espr"): Use it.
15233         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
15234         ("open (unstopped)"): Draw full circle instead of mirroring
15235         segments.
15236         (draw_vee): Removed.
15237         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
15238         ("Downbow"): Replace calls to `draw_rounded_block' with a single
15239         path.
15240         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
15241         partial pieces drawn with `fill' -- these do still overlap with the
15242         stem of the `t' but just once, not multiple times so that fontforge
15243         can handle it gracefully.
15244         Change other parts of the glyph so that fontforge's overlapping
15245         algorithm reliably works.
15246         (draw_heel): Replace `draw' with `fill'.
15247         (draw_toe): Use `draw_accent' instead of `draw_vee'.
15248         ("Flageolet"): Replace `draw' with `penstroke'.
15249         ("Segno"): Replace `filldraw' with `penstroke'.
15250         Replace `draw' with `drawdot'.
15251         ("Coda"): Replace `fill' with `penstroke', using a single path.
15252         ("Varied Coda"): Use less overlapping paths.
15253         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
15254         single path.
15255
15256         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
15257         group to better control the `labels' command.
15258         Rename argument to `offset' and use it actually.  Update all
15259         callers.
15260         Replace `filldraw' with `fill'.
15261         ("mordent", "prallmordent", "upmordent", "downmordent",
15262         "lineprall"): Replace `draw' with `draw_gridline'.
15263         ("upprall", "downprall"): Replace `draw' with `fill'.
15264
15265         * mf/feta-timesig.mf: Formatting.
15266
15267         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
15268         to...
15269         ("Flat"): Here.
15270         (draw_paren): Move code to draw labels to...
15271         ("Right Parenthesis"): Here.
15272
15273 2005-01-02  Graham Percival <gperlist@shaw.ca>
15274
15275         * Documentation/user/notation.itely: add example of \setTextDecresc
15276         and \setTextDim.
15277
15278 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
15279
15280         * scm/define-markup-commands.scm :  fix glyph-strings of
15281         accidentals and \note-by-number
15282
15283 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15284
15285         * VERSION: 2.5.6 released.
15286         
15287         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
15288
15289         * input/regression/new-markup-scheme.ly: oops. font-family=music
15290         -> font-encoding fetaMusic.  
15291
15292         * lily/main.cc: put default to PS.
15293
15294         * lily/tfm.cc: idem.
15295
15296         * lily/afm.cc: idem.
15297
15298         * lily/include/modified-font-metric.hh (struct
15299         Modified_font_metric): remove coding_scheme() method.
15300
15301         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
15302
15303         * scripts/convert-ly.py (conv): crash on encountering \encoding.
15304
15305         * input/les-nereides.ly: convert to utf8
15306
15307         * lily/modified-font-metric.cc (text_dimension): idem.
15308
15309         * lily/parser.yy (TODO): idem.
15310
15311         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
15312
15313         * lily/lexer.ll: remove encoding
15314
15315         * scm/framework-ps.scm (output-variables): separately scale the
15316         page to mm 
15317
15318         * lily/pango-font.cc (Pango_font): fix scaling.
15319
15320         * lily/font-metric.cc (design_size): design_size returns a
15321         dimension now as well.
15322
15323 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15324
15325         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
15326         brace generation. 
15327
15328         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
15329
15330 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
15331
15332         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
15333         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
15334
15335 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15336
15337         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
15338         in first run as well.
15339
15340         * scm/paper.scm (layout-set-staff-size): use text-font-size in
15341         dimension less points (ie. 12 = 12 point)
15342
15343         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
15344
15345         * lily/all-font-metrics.cc (find_pango_font): set description_
15346
15347         * lily/pango-font.cc (text_stencil): export size as well.
15348         (text_stencil): fix scaling and extents box.
15349
15350 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15351
15352         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
15353
15354         * Documentation/user/invoking.itely (Invoking lilypond): document
15355         texstr
15356
15357         * scripts/convert-ly.py (conv): add ancient rules.
15358
15359         * scm/clef.scm (c0-pitch-alist): replace - with .
15360
15361         * scripts/lilypond-book.py (process_snippets): add texstr support.
15362
15363         * scm/framework-texstr.scm (header): change extension to .textmetrics
15364
15365         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
15366         -f tex.
15367
15368         * lily/text-metrics.cc: new file.
15369         (try_load_text_metrics): new function
15370
15371         * lily/include/text-metrics.hh: new file.
15372
15373 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15374
15375         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
15376         ly_scheme_function to ly_lily_module_constant.
15377
15378         * lily/modified-font-metric.cc (text_dimension): try
15379         lookup_tex_text_dimension() first.
15380
15381         * lily/tfm.cc: new function ly:load-text-dimensions
15382
15383 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15384
15385         * scm/output-texstr.scm (text): use \lilygetmetrics
15386
15387         * scm/framework-texstr.scm (header): dump in new format.
15388
15389         * tex/lilypond-tex-metrics: new file.
15390         
15391 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
15392
15393         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
15394         mapping.
15395         (index_to_charcode): New method.
15396
15397         * scm/output-ps.scm (glyph-string): 
15398         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
15399
15400 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
15401
15402         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
15403         implement fully, need FONT to get to charcode.
15404
15405         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
15406
15407         * scm: Cleanups.
15408
15409         * Documentation/user/changing-defaults.itely: Fix internalsrefs
15410         {Tunable context properties},
15411         {All layout objects},
15412         {Music definitions}.
15413
15414 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15415
15416         * VERSION: release 2.5.5
15417         
15418         * lily/main.cc: use TeX as default output format.
15419
15420         * flower/file-path.cc (find): try to open directly as well, so we
15421         find absolute path files. 
15422
15423         * lily/pango-select.cc: new file.
15424
15425         * scm/framework-ps.scm: remove all encoding code. 
15426         load pfb/pfa for PangoFont too.
15427         
15428         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
15429
15430 2004-12-22  Werner Lemberg  <wl@gnu.org>
15431
15432         Prepare glyph shapes for mf2pt1 conversion.
15433
15434         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
15435
15436         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
15437         (define_triangle_shape): Use it to replace `draw' with `fill' and
15438         `unfill'.  Update all callers.
15439         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
15440         (draw_cross): Ditto.
15441         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
15442         Use penrazor for better conversion with mf2pt1.
15443         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
15444         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
15445         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
15446         draw_la_head, draw_ti_head): Replace `filldraw' with
15447         `fill'.  Update all callers.
15448
15449 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15450
15451         * lily/paper-book.cc (output): revert: only allow a single output
15452         format.
15453
15454         * lily/include/pango-font.hh: new file.
15455
15456         * lily/pango-font.cc: new file.
15457
15458         * lily/font-metric.cc (text_stencil): new routine
15459
15460         * lily/all-font-metrics.cc (find_pango_font): new routine.
15461
15462         * lily/include/font-metric.hh (struct Font_metric): add
15463         text_stencil()
15464
15465         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
15466
15467 2004-12-22  Werner Lemberg  <wl@gnu.org>
15468
15469         Prepare glyph shapes for mf2pt1 conversion.
15470
15471         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
15472
15473         * mf/feta-toevallig.mf: Formatting.
15474         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
15475         ("Natural"): Fix paths to allow better postprocessing.
15476         (draw_meta_flat): Use `z3l' as additional point in path to get
15477         better conversion with mf2pt1.
15478         Other minor cleanups.
15479         ("3/4 Flat"): Add auxiliary points and modify path to replace
15480         `draw' with `fill'.
15481         ("Double Sharp"): Mirror path segments instead of picture elements
15482         to get a single outline.
15483         Modify path to replace `filldraw' with `fill'.
15484
15485 2004-12-22  Graham Percival  <gperlist@shaw.ca>
15486
15487         * input/test/unfold-all-repeats.ly: added file back.
15488
15489         * Documentation/user/notation.itely,
15490         Documentation/user/programming-interface.itely
15491         Documentation/user/changing-defaults.itely: fixed misc broken
15492         links to input/test/ files.
15493
15494 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15495
15496         * tex/texinfo.tex: Update.  We should not be distributing this,
15497         but since we do, use latest version.
15498
15499         * Documentation/user/macros.itexi: Comment-out \fetaflat,
15500         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
15501         macros for feta glyphs.
15502
15503 2004-12-22  Graham Percival  <gperlist@shaw.ca>
15504
15505         * Documentation/user/changing-defaults.itely: fix index for set.
15506
15507         * Documentation/user/converters.itely: added convert-ly bugs list
15508         from CVS.
15509
15510 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15511
15512         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
15513         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
15514         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
15515         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
15516
15517         * mf/GNUmakefile (pfa_warning): Use less broken check.
15518
15519         * python/lilylib.py (setup_environment): Remove cruft from
15520         GS_FONTPATH.
15521
15522         * configure.in: Bump mftrace requirement to 1.1.1.
15523
15524 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
15525
15526         * scm/output-svg.scm (beam): Use polygon.
15527
15528         * scm/lily-library.scm: Bugfix.
15529
15530         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
15531
15532         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
15533
15534 2004-12-19  Werner Lemberg  <wl@gnu.org>
15535
15536         Prepare glyph shapes for mf2pt1 conversion.
15537
15538         * mf/feta-eindelijk: Some formatting.
15539         (multi_rest_x, multi_beam_height): Removed.  Unused.
15540         ("Quarter rest"): Use `intersectiontimes' to create a single
15541         outline.
15542         (rest_crook): Removed.  Unused.
15543         (draw_rest_bulb): Return path (without filling).  Update callers.
15544         Simplified.
15545         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
15546         "128th rest"): Simplify `pat'.
15547         Create single outline.
15548
15549 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15550
15551         * mf/GNUmakefile (ALL_GEN_FILES):
15552         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
15553
15554         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
15555         function.
15556
15557 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15558
15559         * scm/output-texstr.scm (placebox): add routine
15560
15561         * VERSION (PACKAGE_NAME): release 2.5.4
15562
15563         * scm/framework-texstr.scm (output-framework): new file.  
15564
15565         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
15566         processing.
15567
15568         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
15569
15570         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
15571         rule.
15572
15573         * configure.in (gui_b): bump mftrace requirement to 1.1.0
15574
15575         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
15576
15577         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
15578
15579 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15580
15581         * scm/framework-svg.scm (dump-page): Implement landscape.
15582
15583 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15584
15585         * lily/main.cc (setup_paths): Add svg to search path.
15586
15587         * scm/output-svg.scm:
15588         * scm/framework-svg.scm: Add pageSet.  Update.
15589         (dump-fonts): New function.
15590         (output-framework): Use it.
15591
15592         * mf/GNUmakefile: 
15593         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
15594
15595 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15596
15597         * tex/lilyponddefs.tex: comment out new ifpdf code.
15598
15599 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15600
15601         * GNUmakefile.in: 
15602         * SConstruct (symlink): Replace afm by otf.
15603
15604         * scm/framework-gnome.scm (gnome-main): Remove invocation of
15605         ly:pango-add-afm-decoder.
15606
15607         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
15608
15609 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15610
15611         * scm/output-ps.scm (new-text): don't access t glyph for getting
15612         space dimension.
15613
15614         * ly/init.ly: warn about \version
15615
15616         * lily/lexer.ll: set version-seen?
15617
15618 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15619
15620         * scm/output-svg.scm (string->entities): Update.
15621
15622 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15623
15624         * lily/main.cc (setup_paths): replace afm by otf for path. 
15625
15626         * lily/pangofc-afm-decoder.cc: remove.
15627
15628         * lily/include/pangofc-afm-decoder.hh: remove.
15629
15630         * scm/framework-scm.scm (output-framework): new file.
15631
15632         * mf/GNUmakefile: remove SAUTER_FONTS.
15633         remove SVG/sodipodi hacks.
15634
15635         * scm/lily-library.scm (stderr): move stderr.
15636
15637         * mf/GNUmakefile: remove AFM support.
15638
15639         * buildscripts/mf-to-table.py (base): remove AFM support.
15640
15641         * lily/open-type-font.cc (design_size): use design_size
15642
15643 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
15644
15645         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
15646
15647 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15648
15649         * mf/GNUmakefile: Generate combined aybabtu info.
15650         * mf/aybabtu.pe.in (i): Load it.
15651
15652         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
15653         are not symbols.
15654
15655         * lily/include/open-type-font.hh (count): New method.
15656
15657         * mf/aybabtu.pe.in: Typo.
15658
15659         * Documentation/user/out/lilypond-internals.nexi (Scheme
15660         functions): Typo.
15661
15662         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
15663
15664 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15665
15666         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
15667         subfonts.
15668
15669         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
15670
15671         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
15672         (tex-font-command-raw): new function.
15673
15674         * lily/include/virtual-font-metric.hh (Module): remove file
15675
15676         * lily/virtual-font-metric.cc (Module): remove file.
15677         
15678
15679         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15680         (get_indexed_char): read bbox from lily table if present.
15681
15682 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15683
15684         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15685         aybabtu.subfonts
15686
15687         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15688         global glyphname. Enables more than 64 glyphs in the OTF.
15689
15690 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15691
15692         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15693         braces.
15694
15695         * lily/open-type-font.cc (design_size): Use 12 as default for
15696         design size.
15697
15698         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15699
15700         * mf/GNUmakefile: Generate aybabtu.
15701
15702         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15703
15704 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15705
15706         * scm/lily-library.scm (char->unicode-index): Remove.
15707
15708         * scm/output-gnome.scm (text): Bugfix for plain string input.
15709         Updates.
15710
15711         * scm/output-svg.scm (svg-font): Add weight to font selection.
15712
15713 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15714
15715         * Documentation/topdocs/INSTALL.texi (Top): Point to
15716         buildscripts/out/clean-fonts instead of
15717         buildscripts/clean-fonts.sh. 
15718
15719 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15720
15721         * input/regression/figured-bass.ly: attempt to clarify text.
15722
15723         * Documentation/user/notation.tely: add cindex for tag, attempt to
15724         add figured bass example.
15725
15726         * Documentation/user/changing-defaults: basic editing.
15727
15728 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15729
15730         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15731
15732         * lily/open-type-font.cc (LY_DEFINE): new function
15733         ly:font-sub-fonts
15734
15735         * lily/include/font-metric.hh (struct Font_metric): new method
15736         sub_fonts()
15737
15738         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15739         . with - in add.stem.
15740         
15741 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15742
15743         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15744         and fetaDynamic.
15745
15746         * lily/rest.cc (glyph_name): Change - to . .
15747
15748         * scm/output-gnome.scm (text): Hello world, again.
15749
15750         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15751
15752         * lily/modified-font-metric.cc (index_to_charcode): New method.
15753
15754         * lily/include/font-metric.hh (index_to_charcode): New function.
15755
15756         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15757         new function.
15758         (ly:font-glyph-to-index): Remove.
15759
15760 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15761
15762         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15763
15764         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15765
15766         * lily/open-type-font.cc (load_scheme_table): new function
15767
15768         * lily/dots.cc (print): replace - 
15769
15770         * lily/open-type-font.cc (attachment_point): new function.
15771         (load_table): read LILC table
15772
15773         * buildscripts/gen-bigcheese-scripts.py (Module): new
15774         file. Generate FF scripts.
15775
15776         * mf/feta-din10.mf: idem.
15777
15778         * mf/feta-nummer10.mf: remove mf files.
15779
15780         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15781
15782 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15783
15784         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15785
15786         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15787         compatibility.
15788
15789 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15790
15791         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15792         design-size and units_per_EM.
15793
15794         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15795
15796 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15797
15798         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15799         does not crash fontforge.
15800
15801         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15802         PUA.
15803
15804 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15805
15806         * scm/framework-ps.scm (ps-embed-cff): new function.
15807
15808         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15809
15810 2004-12-12  Werner Lemberg  <wl@gnu.org>
15811
15812         * mf/bigcheese.pe.in: Add PUA mapping.
15813         Don't create Type 42 but bare CFF font.
15814
15815 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15816
15817         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15818         within canvas boundaries.
15819
15820         * mf/merge.pe.in: Set font names, version, license GPL.
15821
15822         * make/substitute.make: Add FONTFORGE.
15823
15824         * config.make.in (FONTFORGE): Add.
15825
15826         * configure.in (gui_b): Use PATH_PROG for fontforge.
15827
15828 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15829
15830         * scm/define-markup-commands.scm: add baseline-skip to info
15831         about \column.
15832
15833 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15834
15835         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15836
15837         * scm/output-gnome.scm (named-glyph): Use it.
15838
15839         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15840
15841         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15842         (upper_string, lower_string, reverse_string): Remove.
15843
15844         * configure.in (fontforge): Reinstate version check.
15845
15846         * ly/engraver-init.ly: Fix clef glyph names.
15847
15848         * lily/time-signature.cc (special_time_signature): Fix fraction
15849         glyph names.
15850
15851 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15852
15853         * mf/merge.pe: new file.
15854
15855         * lily/freetype.cc: new file.
15856
15857         * lily/include/open-type-font.hh (class Open_type_font): new file.
15858
15859         * lily/include/freetype.hh: new file.
15860
15861         * lily/open-type-font.cc: new file.
15862
15863         * lily/all-font-metrics.cc (find_otf): new function.
15864
15865 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15866
15867         * lily/time-signature.cc (special_time_signature): Fix.
15868
15869         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15870         GTK2 before checking for pango.  Fixes -fgnome.
15871
15872         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15873         Scheme name.
15874
15875         * scm/define-markup-commands.scm:
15876         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15877
15878         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15879
15880         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15881         date versions.  Fixes configure.
15882         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15883         argument.
15884
15885 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15886
15887         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15888         names in .enc
15889
15890         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15891
15892 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15893
15894         * Documentation/user/changing-defaults.itely: add info about
15895         make-dynamic-script
15896
15897         * Documentation/user/notation.itely: add link in dynamics to
15898         section about make-dynamic-script.
15899
15900 2004-12-09  Christian hitz  <chhitz@gmx.net>
15901
15902         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15903
15904 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15905
15906         * buildscripts/mf-to-table.py (parse_logfile): use . for
15907         concatting name and group.
15908         (parse_logfile): use M for Minus (negative.)
15909
15910         * lily/include/type-swallow-translator.hh
15911         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15912
15913         * lily/*.cc: cosmetics around = sign.
15914
15915         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15916         lyric spacing on the penultimate column.
15917
15918 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15919
15920         * configure.in:
15921         * lily/accidental-placement.cc:
15922         * lily/bar-line.cc:
15923         * lily/beam-concave.cc:
15924         * lily/beam-quanting.cc:
15925         * lily/beam.cc:
15926         * lily/bezier-bow.cc:
15927         * lily/bezier.cc:
15928         * lily/break-align-interface.cc:
15929         * lily/custos.cc:
15930         * lily/dimension-cache.cc:
15931         * lily/dot-column.cc:
15932         * lily/font-metric.cc:
15933         * lily/font-select.cc:
15934         * lily/gourlay-breaking.cc:
15935         * lily/grob-property.cc:
15936         * lily/grob.cc:
15937         * lily/lily-guile.cc:
15938         * lily/line-spanner.cc:
15939         * lily/lookup.cc:
15940         * lily/lyric-extender.cc:
15941         * lily/lyric-hyphen.cc:
15942         * lily/mensural-ligature.cc:
15943         * lily/midi-def.cc:
15944         * lily/misc.cc:
15945         * lily/note-collision.cc:
15946         * lily/note-column.cc:
15947         * lily/note-head.cc:
15948         * lily/paper-outputter.cc:
15949         * lily/percent-repeat-item.cc:
15950         * lily/rest-collision.cc:
15951         * lily/side-position-interface.cc:
15952         * lily/simple-spacer.cc:
15953         * lily/slur-configuration.cc:
15954         * lily/slur-scoring.cc:
15955         * lily/slur.cc:
15956         * lily/spaceable-grob.cc:
15957         * lily/spacing-spanner.cc:
15958         * lily/spanner.cc:
15959         * lily/staff-symbol-referencer.cc:
15960         * lily/stem.cc:
15961         * lily/stencil.cc:
15962         * lily/system-start-delimiter.cc:
15963         * lily/system.cc:
15964         * lily/text-item.cc:
15965         * lily/tie.cc:
15966         * lily/tuplet-bracket.cc:
15967         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15968         <cmath> beacause isinf/isnan is undefined in <cmath>
15969
15970 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15971
15972         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15973
15974 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15975
15976         * VERSION: release 2.5.3
15977         
15978 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15979
15980         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15981
15982 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15983
15984         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15985
15986         * lily/note-head.cc (internal_print): always try the "s" head if
15987         u/d not found.
15988
15989         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15990
15991 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15992
15993         * mf/parmesan-heads.mf (overdone_heads): typos.
15994
15995 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15996
15997         * lily/parser.yy (markup): in markups, { .. } without command
15998         before are also flattened, ie \line must be explicitely used.
15999
16000         * Documentation/user/changing-defaults.itely:
16001         * Documentation/user/notation.itely: 
16002         * input/wilhelmus.ly: 
16003         * input/regression/instrument-name-markup.ly: 
16004         * input/regression/markup-score.ly: 
16005         * input/regression/new-markup-scheme.ly: 
16006         * input/regression/new-markup-syntax.ly: 
16007         * input/test/coriolan-margin.ly: use \line in markups where
16008         appropriate
16009         
16010 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
16011
16012         * scm/new-markup.scm (map-markup-command-list): helper function
16013         used in parser.yy to map markup commands on a markup list.
16014
16015         * lily/parser.yy: get rid off < > in markups by treating { } as
16016         real lists.
16017
16018         * lily/lexer.ll: remove < > from markup lexer mode.
16019
16020         * scripts/convert-ly.py (conv): add rule for converting 
16021         \markup < > to \markup { }
16022
16023         * ly/titling-init.ly: 
16024         * input/test/coriolan-margin.ly: 
16025         * input/regression/new-markup-syntax.ly: 
16026         * input/regression/new-markup-scheme.ly: 
16027         * input/regression/multi-measure-rest-text.ly: 
16028         * input/regression/markup-stack.ly: 
16029         * input/regression/markup-score.ly: 
16030         * input/regression/instrument-name-markup.ly: 
16031         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
16032         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
16033         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
16034         * input/wilhelmus.ly: 
16035         * Documentation/user/notation.itely: 
16036         * Documentation/user/music-glossary.tely: 
16037         * Documentation/user/changing-defaults.itely: change < > to { } in
16038         markups
16039
16040 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16041
16042         * lily/accidental-placement.cc (position_accidentals): shortcut if
16043         no accidentals to place.
16044
16045 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
16046
16047         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
16048         typo s/ly:dimension ?/ly:dimension?/
16049
16050         * input/regression/lily-in-scheme.ly: 
16051         * input/regression/music-function.ly: 
16052         * ly/spanners-init.ly (assertBeamSlope): 
16053         * scm/music-functions.scm (def-grace-function): add the paper
16054         argument to music function definitions.
16055
16056 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16057
16058         * lily/moment.cc (LY_DEFINE):
16059         ly:moment-main-{denominator,numberator}, new function.
16060
16061         * lily/score-engraver.cc (typeset_all): assign to column on basis
16062         of axis-group-parent-X setting.
16063
16064         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
16065         add_element() on basis of axis-group-parent-Y setting.
16066
16067         * lily/grob.cc: add axis-group-parent-{XY} properties.
16068
16069         * input/regression/spacing-stick-out.ly: new file.
16070
16071         * lily/simple-spacer.cc (add_columns): use binary search for
16072         setting column rods. Changes O(n^2) to O(n log(n)) for
16073         constructing spacing problem from columns.
16074         (add_columns): read allow-outside-line to make sure no texts stick
16075         out.
16076         (solve): Simple_spacer::is_active() only determines
16077         satisfies_constraints_ for non-ragged typesetting.
16078
16079         * lily/simultaneous-music.cc (to_relative_octave): only set
16080         old_relative_used if return pitch actually changed.
16081
16082         * scm/define-context-properties.scm
16083         (all-user-translation-properties): change to match implementation.
16084
16085         * python/lilylib.py: Replace re.match by re.search and adds "-c
16086         showpage" to the gs command line (Johannes Schindelin)
16087
16088         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
16089         before processing. Prevents crash when inf is in the extent.
16090
16091         * scm/define-markup-commands.scm (note-by-number): add "s" to
16092         "noteheads-" glyphname.
16093  
16094         * lily/parser.yy (Generic_prefix_music): supply parser argument to
16095         music function as well.
16096         
16097 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16098
16099         * VERSION: release 2.5.2
16100
16101         * Documentation/user/changing-defaults.itely (Creating titles):
16102         add breakbefore variable.
16103
16104         * lily/paper-book.cc (set_system_penalty): new function. Set
16105         penalty_ based on breakBefore setting
16106
16107         * lily/context-specced-music-iterator.cc (construct_children):
16108         interpret special context id $uniqueContextId 
16109
16110         * lily/context.cc (create_unique_context): new method. Move
16111         creation of unique (\new) contexts into interpreting phase. This
16112         makes
16113
16114           foo= \new Staff ..
16115           << \foo \foo >>
16116
16117         produce 2 staves.
16118         
16119
16120         * scm/define-music-properties.scm (all-music-properties): add
16121         quoted-voice-direction
16122
16123         * ly/music-functions-init.ly: killCues function.
16124
16125         * scm/music-functions.scm (cue-substitute): move creation of voice
16126         contexts further to the back. 
16127
16128 2004-11-25  Werner Lemberg  <wl@gnu.org>
16129
16130         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
16131         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
16132
16133 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
16134
16135         * buildscripts/guile-gnome.sh: Fixed typo.
16136
16137 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16138
16139         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
16140
16141         * scripts/abc2ly.py (dump_slyrics): add ord(). 
16142
16143         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
16144         to regular engraver. 
16145
16146 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16147
16148         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
16149
16150 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
16151
16152         * scm/define-markup-commands.scm (fill-line): Typo.
16153
16154         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
16155         and newer.
16156
16157 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
16158
16159         * ly/dynamic-scripts-init.ly: Fixed typo.
16160
16161 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16162
16163         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
16164         note-head, to have different attachment points for up and down.
16165
16166         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
16167
16168         * mf/feta-generic.mf (else): remove solfa.
16169
16170         * mf/feta-bolletjes.mf (tishape): remove unicode test.
16171
16172         * scm/define-context-properties.scm
16173         (all-user-translation-properties): add shapeNoteStyles property.
16174
16175         * lily/shape-note-heads-engraver.cc (process_music): new file.
16176
16177         * lily/event.cc (transpose): call Event::transpose() for
16178         transposing the tonic.
16179
16180 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
16181
16182         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
16183         Unicode/OpenType and AFM.
16184
16185         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
16186
16187 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16188
16189         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
16190
16191         * lily/context.cc (Context): unprotect key from ctor.
16192
16193         * scm/stencil.scm (stack-lines): return empty-stencil if argument
16194         is '()
16195         (stack-stencils): idem.
16196
16197         * Documentation/user/changing-defaults.itely (Creating titles):
16198         document new title layout options.
16199
16200         * lily/parser.yy (lilypond_header_body): copy previous
16201         $globalheader if present.
16202
16203         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
16204         ly:module-copy
16205         
16206         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
16207
16208         * scm/titling.scm: remove old titling functions
16209
16210         * lily/stencil.cc (translate): remove absolute dimension.
16211
16212         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
16213         via markup.
16214
16215         * scm/page-layout.scm (marked-up-headfoot): create header/footer
16216         field from user-supplied markup
16217
16218         * scm/define-markup-commands.scm (on-the-fly): new markup
16219         command. Enter SCM markup procedure directly in Scheme.
16220         (fromproperty): new markup command. Read markup from props argument.
16221
16222         * scm/titling.scm (marked-up-title): create title via
16223         user-specified markup. 
16224
16225         * scm/define-markup-commands.scm (column): remove empty stencils
16226         from column.
16227
16228         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
16229         not have side-effect of creating variable stub.
16230
16231         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
16232
16233 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
16234
16235         * scm/encoding.scm (coding-alist): 
16236         * scm/font.scm (add-ec-fonts):
16237         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
16238         Extended-TeX-Font-Encoding---Latin.
16239
16240         * lily/side-position-interface.cc (general_side_position): Add
16241         actual offset to error message (avoid constant error messages).
16242
16243         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
16244         block.
16245
16246         * lily/font-select.cc (select_encoded_font)
16247         (get_font_by_mag_step, get_font_by_design_size): 
16248         * lily/modified-font-metric.cc (Modified_font_metric): 
16249         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
16250
16251         * scm/encoding.scm (coding-alist): Add fetaDynamic.
16252         (read-encoding-file): Bugfix: do not require space after bracket.
16253
16254         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
16255         these do not exist.
16256
16257 2004-11-20  Graham Percival  <gperlist@shaw.ca>
16258
16259         * Documentation/user/notation.itely: added info about typesetting
16260         boxed bar numbers.
16261
16262 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16263
16264         * flower/interval.cc (T_to_string): gcc4 fixes.
16265
16266         * scm/define-markup-commands.scm (fill-line): use
16267         stack-stencils. This fixes problems with putting already centered
16268         stencils in a line.
16269
16270         * VERSION: release 2.5.1
16271
16272         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
16273
16274 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16275
16276         * input/example-[1-3].ly: simplify.
16277
16278         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
16279
16280         * scm/output-ps.scm (new-text): new function. Use glyphshow to
16281         show glyphs.
16282
16283         * scm/encoding.scm (decode-byte-string): new function.
16284
16285         * scripts/convert-ly.py (conv): add warning about
16286         set-global-staff-size.
16287
16288         * Doxyfile: add. 
16289
16290         * scripts/convert-ly.py (conv): add raggedlastbottom rule
16291         (conv): warn for TextSpanner split.
16292         (conv): warn for textheight.
16293
16294 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
16295
16296         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
16297         building the documentation, info with images are installed.
16298         (final-install): Fix description.  Mention sourcing of login
16299         scripts (instead of running).
16300
16301 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
16302
16303         * Debian lmodern support.  Note that LilyPond will issue warnings
16304         
16305             no such encoding: "FontSpecific"
16306
16307           The font selection mechanism wants to get the encoding from the
16308           font itself, but the idea of lmodern is that it is usable with
16309           different encodings, ie, Lily should get the encoding from the
16310           font tree, rather than the font itself.  This would require some
16311           more work.
16312         
16313         * configure.in: Test for and accept lmodern if EC fonts not found.
16314
16315         * scm/framework-tex.scm (font-load-command): TeX font name
16316         mangling for latin1 encoded cork-lm fonts.
16317         (convert-to-ps): Load lm.map if available.
16318
16319         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
16320         available.
16321
16322         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
16323
16324         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
16325         available.
16326
16327         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
16328         path for absolute file name, that is silly.
16329
16330         * lily/score-engraver.cc (initialize): 
16331
16332         * Documentation/user/GNUmakefile (local-install-info): Invoke
16333         install-info --remove first.
16334
16335         * #include cleanup (Andreas Scherer).
16336
16337 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
16338
16339         * input/test/script-abbreviations.ly: fix typos.
16340
16341 2004-11-17  Werner Lemberg  <wl@gnu.org>
16342
16343         * python/lilylib.py (options_help_str): Support pretty-printing of
16344         newlines in fourth element of option description.
16345
16346         * scripts/lilypond-book.py (option_definitions): Use new lilylib
16347         feature.
16348         Sort options.
16349
16350         * Documentation/user/lilypond-book.itely: Finish update.
16351
16352 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
16353
16354         * Documentation/user/macros.itexi: Add comment about \command.
16355
16356         * Documentation/user/lilypond.tely:
16357         * Documentation/user/lilypond-book.itely: Fix names of lilypond
16358         and lilypond-book nodes, so that `info lilypond' visits the manual
16359         at top level, and `info lilypond-book' visits the lilypond-book
16360         section.
16361
16362         * Documentation/user/GNUmakefile (local-install-info): Fix rules
16363         and packager messages.
16364
16365         * lily/pangofc-afm-decoder.cc: Update test.
16366
16367 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
16368
16369         * scm/lily-library.scm (char->unicode-index): New function.
16370
16371         * scm/output-gnome.scm: 
16372         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
16373
16374         * Proper naming of file name throughout; s/filename/file[-_]name/.
16375
16376         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
16377
16378         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
16379
16380 2004-11-16  Werner Lemberg  <wl@gnu.org>
16381
16382         * scripts/lilypond-book.py: The Lord has commanded me to use only
16383         tabs for indentation.  Your humble servant obeys.
16384
16385 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
16386
16387         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
16388         including font, if LilyPond-feta font is only feta font in path.
16389
16390         * scm/output-gnome.scm (text): Revert to file name of font if font
16391         has no name.  Fixes ec font selection.
16392         (char): Bugfix: do not utf8 twice.  Fixes clefs.
16393
16394         * scm/framework-svg.scm:
16395         * scm/output-svg.scm: New file.  TODO: figure out how to
16396         do character by index in font.
16397
16398         * scm/output-sodipodi.scm: Remove.
16399
16400         * scm/output-ps.scm (stem): Remove.
16401
16402 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
16403
16404         * scm/output-gnome.scm (beam): New function.
16405         (slur): Round corners.
16406         (round-filled-box): Round corners.
16407
16408 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16409
16410         * scm/output-gnome.scm (beam): add function.
16411         (draw-line): new routine.
16412         (dashed-line): stub; call draw-line
16413         (polygon): new routine.
16414
16415 2004-11-15  Werner Lemberg  <wl@gnu.org>
16416
16417         * Documentation/user/lilypond-book.itely: Revise section on
16418         lilypond-book options.
16419         Other minor fixes.
16420
16421         * scripts/lilypond-book.py: Change indentation to 4.
16422         Minor formatting.
16423
16424 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16425
16426         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
16427         grobs that have tweaks specced.
16428         
16429 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
16430
16431         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
16432
16433 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
16434
16435         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
16436         actual char #, not 0 based index.
16437
16438         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
16439
16440         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
16441         Warning: do make -C mf clean.
16442
16443         * lily/context-property.cc: Compile fix.
16444
16445         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
16446         Grok ec-fonts, braces and dynamics.
16447
16448         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
16449
16450 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16451
16452         * lily/include/tweak-registration.hh: new file.
16453
16454         * lily/tweak-registration.cc: new file.
16455
16456         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
16457         saving tweaks.
16458
16459         * scm/output-gnome.scm (text): comment dribble.
16460
16461 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
16462
16463         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
16464
16465         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
16466         path-def before using.  Fixes muchtomany slurs in wrong places
16467         bug.
16468
16469 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16470
16471         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
16472
16473         * lily/include/object-key-undumper.hh (Module): new file.
16474
16475         * lily/object-key-undumper.cc (Module): New file. Deserialize
16476         keys. SCM bindings
16477
16478         * lily/object-key-dumper.cc (Object_key_dumper): idem.
16479         Provide SCM bindings.
16480
16481         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
16482         new file. Serialize object keys.
16483         
16484         * lily/object-key.cc (dump): new function.
16485         (as_scheme): new virtual function
16486         (undump): new function
16487         (undumpers): new table.
16488
16489         * lily/include/global-context.hh (Context): take \score key upon init.
16490
16491         * lily/object-key-dumper.cc (serialize_key): new file.
16492
16493         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
16494
16495         * lily/lily-lexer.cc: remove \quote.
16496
16497         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
16498
16499         * lily/context.cc (Context): take key argument in ctor.
16500         (create_context): new function
16501
16502         * lily/grob.cc (Grob): take key argument in ctor.  
16503
16504         * lily/lilypond-key.cc (do_compare): new file.
16505
16506         * lily/object-key.cc (Object_key): new file.
16507
16508         * lily/include/object-key.hh (class Object_key): new file.
16509
16510         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
16511
16512 2004-11-13  Graham Percival  <gperlist@shaw.ca>
16513
16514         * Documentation/user/lilypond-book.itely: add small warning about
16515         noindent default in lilypond-book.
16516
16517         * Documentation/user/converters.itely: add examples for convert-ly.
16518
16519         * Documentation/user/examples.itely: change version string in templates
16520         to 2.4.0.
16521
16522 2004-11-12  Karl Hammar  <karl@aspodata.se>
16523
16524         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
16525         cmdline, use xargs instead (backportme)
16526
16527 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
16528         
16529         * Documentation/user/: Numerous fixes in the user manual.
16530
16531 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16532
16533         * lily/parser.yy (re_rhythmed_music): search music expression for
16534         context-id, surround by \new Voice if not found. Fixes:
16535         addlyrics-second-staff.ly
16536
16537         * VERSION: 2.5.0 released.
16538         
16539 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
16540
16541         * Documentation/index.html.in: Fix url to one big page.  (backportme)
16542
16543         * Documentation/user/GNUmakefile: Separate rules for split and
16544         unsplit html documents.  Remove perl massaging.  (backportme)
16545
16546 2004-11-11  Graham Percival  <gperlist@shaw.ca>
16547
16548         * Documentation/user/lilypond-book.itely: add short warning about
16549         \lilypond{} in LaTeX docs.
16550
16551 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
16552
16553         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
16554         found.  (backportme)
16555
16556         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
16557         version requirement.  (backportme)
16558
16559         * configure.in: Be explicit about old versions of
16560         ec-fonts-mtraced.  (backportme)
16561
16562         * lily/context-selector.cc (set_tweaks): New function.
16563         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
16564         web with -DTWEAK.
16565
16566         * Documentation/user/introduction.itely (Automated engraving):
16567         Remove fragment option.  Fixes web.
16568
16569         * lily/context-property.cc (make_item_from_properties):
16570         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
16571         #ifdef.
16572
16573         * scm/define-context-properties.scm
16574         (all-internal-translation-properties): Add tweakRank and tweakCount.
16575
16576         * lily/grob.cc: 
16577         * scm/define-grob-properties.scm (all-internal-grob-properties):
16578         Add tweak-rank and tweak-count.
16579
16580 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16581
16582         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
16583         New function.
16584         (text): Use them.
16585
16586         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
16587         animated/opaque grob dragging tweaks.
16588
16589         * buildscripts/guile-gnome.sh: Update.
16590
16591 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
16592
16593         * scm/define-grobs.scm (all-grob-descriptions): Added
16594         line-interface to the LigatureBracket object.
16595
16596 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16597
16598         * scm/framework-gnome.scm (item-event): Support non-animated mouse
16599         dragging tweaks.
16600
16601         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
16602
16603         * lily/context-selector.cc (store_context): New function.
16604
16605         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
16606         (store_grob): New function.
16607         (identify_grob): Add Moment parameter.
16608
16609         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
16610         exists.
16611
16612         * scm/framework-gnome.scm (save-tweaks): Write as alist.
16613
16614 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
16615
16616         * scm/framework-gnome.scm (item-event): Print grob id.
16617         (save-tweaks): New function.
16618         (tweak): New funtion.
16619         (item-event): Use it, bound to arrow keys.
16620
16621         * lily/context-property.cc (make_item_from_properties): Register grob.
16622         * lily/context.cc (add_context): Register context.
16623
16624         * lily/include/context-selector.hh:
16625         * lily/include/grob-selector.hh:
16626         * lily/context-selector.cc:
16627         * lily/grob-selector.cc: New file.
16628
16629 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16630
16631         * lily/slur.cc: add 'positions to interface
16632
16633         * lily/main.cc: reinstate PS as standard output format. 
16634
16635         * scm/framework-tex.scm (output-preview-framework): print systems
16636         up to first non title system.
16637
16638         * lily/grace-engraver.cc (start_translation_timestep): split
16639         scm_cadddr
16640         
16641 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16642
16643         * lily/quote-iterator.cc (Module): remove old quote-iterator
16644
16645         * scm/define-music-types.scm (music-descriptions): move
16646         NewQuoteMusic over QuoteMusic
16647
16648         * Documentation/user/notation.itely (Formatting cue notes): use
16649         \cueDuring.
16650
16651         * lily/new-quote-iterator.cc (quote_ok): new function.
16652
16653         * input/regression/quote-cue-during.ly: new file.
16654
16655         * input/regression/quote-grace.ly: new file.
16656
16657         * scm/define-context-properties.scm (Module): change definition of
16658         graceSettings
16659
16660         * lily/context-property.cc (Module): rename from
16661         translator-property.cc
16662
16663         * lily/context.cc (context_name_symbol): new function
16664
16665         * lily/grace-engraver.cc: new file. Set properties for grobs based
16666         on the grace-ness of now_moment().
16667
16668         * scm/music-functions.scm (add-grace-property): use list
16669         iso. vector for graceSettings
16670         remove set-{start,stop}-grace-properties. 
16671
16672         * lily/new-quote-iterator.cc (construct_children): set
16673         quote_outlet_ if no quoted-context-{id,type} specified.
16674
16675         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
16676
16677         * lily/parser.yy (command_element): remove \quote.
16678
16679         * ly/music-functions-init.ly (location): add quoteDuring music
16680         function. 
16681
16682         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
16683         optional semicolon. (backportme)
16684
16685 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16686
16687         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16688         need to link to GUILE et al.
16689
16690 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16691
16692         * scm/define-music-properties.scm (all-music-properties): add
16693         quoted-context-type, quoted-context-id.
16694
16695         * scm/lily.scm (type-check-list): new function.
16696         
16697         * scm/lily-library.scm: new file. Generic library routines.
16698
16699         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16700         parser.
16701
16702         * ly/music-functions-init.ly: add quoteDuring function.
16703
16704         * lily/include/music-iterator.hh (class Music_iterator): rename
16705         set_translator -> set_context
16706
16707         * lily/parser.yy (Generic_prefix_music_scm): add
16708         MUSIC_FUNCTION_SCM_SCM_MUSIC
16709
16710         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16711
16712         * scm/framework-tex.scm (header): sanitize TeX paper size.
16713         (backportme)
16714
16715 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16716
16717         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16718
16719         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16720
16721         * scm/framework-tex.scm (font-load-command): Use T1 if no
16722         font-encoding set.  (backportme)
16723
16724         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16725         exists before converting.  (backportme)
16726
16727         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16728         exists before converting.  (backportme)
16729         (convert-to-ps): Remove .ps file if it exists before
16730         converting.  (backportme)
16731
16732         * lily/lexer.ll: Remove extra progress newline, use present tense.
16733
16734         * scm/paper.scm (paper-alist): public.
16735         * scm/framework-tex.scm (convert-to-ps):
16736         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16737         command line.
16738
16739 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16740
16741         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16742
16743         * lily/recording-group-engraver.cc (derived_mark): mark
16744         now_events_. (backportme)
16745
16746 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16747
16748         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16749
16750         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16751         invoking latex. (backportme.)
16752
16753         * lily/stem.cc (off_callback): center stems for all rest stems.
16754
16755 2004-11-05  Werner Lemberg  <wl@gnu.org>
16756
16757         * Documentation/user/lilypond.tely: Add more guidelines for writing
16758         lilypond texinfo documents.
16759
16760 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16761
16762         * Documentation/index.html.in: remove <hr>.
16763
16764         * THANKS: change 2.3 to 2.4.
16765
16766 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16767
16768         * scm/output-gnome.scm: More fontconfig comment.
16769
16770 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16771
16772         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16773         <package> directory in $(builddir)/share according with
16774         PACKAGE_NAME defined in the VERSION file.
16775
16776 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16777
16778         * lily/beam.cc (rest_collision_callback): use local beam
16779         multiplicity.
16780
16781         * input/regression/stem-stemlet.ly: new file.
16782
16783         * lily/stem.cc (add_head): store rests as well.
16784
16785         * scm/define-grob-properties.scm (all-user-grob-properties): add
16786         stemlet-length
16787
16788         * lily/stem.cc: store rests as well.
16789         
16790         * input/regression/new-slur.ly: mention forcing.
16791
16792 2004-11-04  Werner Lemberg  <wl@gnu.org>
16793
16794         * Documentation/user/*: A new round of layout fixes and document
16795         structure cleanup.
16796
16797 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16798
16799         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16800
16801 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16802
16803         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16804
16805 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16806
16807         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16808
16809         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16810
16811         * lily/main.cc (main): Invoke identify.
16812
16813         * scm/lily.scm (postscript->pdf): Remove progress newline.
16814         Write progress to stderr.
16815
16816         * lily/paper-book.cc (output): Remove progress newline.
16817
16818         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16819         gettext on user messages, and remove whitespace.
16820
16821         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16822
16823         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16824         argv[0] (Thomas Scharkowski).
16825
16826         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16827         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16828         for ec-fonts-mtraced.
16829
16830         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16831         --srcdir build (Bertalan).
16832
16833         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16834         headers and library too (Laura Conrad).
16835
16836         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16837         package for guile too (Laura Conrad).
16838
16839         * lily/main.cc (usage): Typo.
16840
16841 2004-11-02  Werner Lemberg  <wl@gnu.org>
16842
16843         * Documentation/user/notation.ly: More fixes to improve appearance.
16844
16845         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16846         better output for multicolumn tables.
16847
16848 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16849
16850         * lily/main.cc (dir_info): Fixed typo in the printouts.
16851
16852 2004-11-01  Werner Lemberg  <wl@gnu.org>
16853
16854         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16855         of output.
16856         Set `per_line' to 2; replace hard-coded value with it.
16857
16858         * Documentation/user/*: Many fixes to improve appearance of
16859         printed manual.
16860
16861 2004-11-01  Werner Lemberg  <wl@gnu.org>
16862
16863         * Documentation/user/changing-defaults.itely,
16864         Documentation/user/notation.ly,
16865         Documentation/user/programming-interface.itely: Use @/.
16866         Fix formatting of some lilypond snippets and tables.
16867
16868         * scripts/lilypond-book.py (compose_ly): Provide useful default
16869         for LINEWIDTH in `override'.
16870
16871 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16872
16873         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16874
16875 2004-10-31  Werner Lemberg  <wl@gnu.org>
16876
16877         Resetting @exampleindent to `5' gives ugly results with texinfo's
16878         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16879         (if not quoting) to change @exampleindent only locally.
16880
16881         * scripts/lilypond-book.py (NOQUOTE): New variable.
16882         (output) [LATEX]: Remove AFTER and BEFORE.
16883         [TEXINFO]: Remove AFTER and BEFORE.
16884         Fix QUOTE and VERBATIM pattern.
16885         Add NOQUOTE pattern.
16886         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16887         and BEFORE.
16888         [output_texinfo]: Use NOQUOTE.
16889
16890 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16891
16892         * Documentation/user/changing-defaults.itely: clarify paper
16893         size commands with correct info.
16894
16895         * Documentation/user/lilypond-book.itely: add more docs for
16896         filename extensions.
16897
16898 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16899
16900         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16901         (PATCH_LEVEL): start 2.5.0.
16902
16903 #Local variables:
16904 #coding: utf-8
16905 #End:
16906