]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
dist emacs patches too.
[lilypond.git] / ChangeLog
1 2006-11-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * buildscripts/git-update-changelog.py: 
4         sort commits, and use .git-commits-done file.
5
6         * GNUmakefile.in: 
7         * elisp/GNUmakefile: 
8         dist emacs patches too.
9
10 2006-11-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
11
12         * scm/autochange.scm: 
13         autochange thinko.
14
15         * lily/context-def.cc: 
16         * lily/include/parse-scm.hh: 
17         * lily/include/smobs.hh: 
18         * lily/parse-scm.cc: 
19         * lily/prob.cc: 
20         * lily/program-option.cc: 
21         * scm/lily.scm: 
22         implement and use ASSERT_LIVE_IS_ALLOWED()
23
24         * ly/music-functions-init.ly: 
25         * scm/autochange.scm: 
26         set-part-combine fix for autochange.
27
28         * lily/include/lily-lexer.hh: 
29         * lily/include/lily-parser.hh: 
30         * lily/lily-lexer.cc: 
31         * lily/lily-parser-scheme.cc: 
32         * lily/lily-parser.cc: 
33         clear lexer scopes after parsing file. Plugs pseudo memory leak
34
35         * ly/declarations-init.ly: 
36         * ly/music-functions-init.ly: 
37         * scm/part-combiner.scm: 
38         Remove set-part-combine-listener. This plugs a memory leak.
39
40         * .gitignore: 
41         more ignores.
42
43         * mf/GNUmakefile: 
44         don't delete .scale.pfa; the FF script may not have read themyet. Fixes brace OTF bug
45
46         * .gitignore: 
47         ignore gcstat files.
48
49         * lily/part-combine-iterator.cc: 
50         don't allocate part combine events statically. Plugs small leak.
51
52         * lily/lily-parser-scheme.cc: 
53         plug memleak in case of failed files.
54
55         * lily/include/source.hh: 
56         * lily/source.cc: 
57         clean up Sources
58
59         * lily/lexer.ll: 
60         hi-bit ascii is also counted as alpha chars. This allows unicodeidentifiers, and fixes premature stop at accented char. (#134)
61
62         * lily/include/program-option.hh: 
63         * lily/program-option.cc: 
64         get_program_option() function
65
66         * ly/titling-init.ly: 
67         change naming: print-page-number becomescreate-page-number-stencil. This avoids nameclash withprint-page-number boolean, and fixes page number printing.
68
69         * lily/include/translator.hh: 
70         * lily/include/translator.icc: 
71         * lily/translator.cc: 
72         minor cleanups
73
74         * lily/figured-bass-engraver.cc: 
75         don't use ASSIGN_EVENT_ONCE for Figured_bass_engraver. Fixes #128.
76
77         * stepmake/stepmake/compile-vars.make: 
78         don't do -fPIC for mingw. Suppresses warning about unnecessary -fPIC
79
80 2006-11-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
81
82         * python/midi.c: 
83         init running_status
84
85         * python/midi.c: 
86         trim warning messages.
87
88         * configure.in: 
89         strip -Werror.
90
91         * input/regression/utf-8.ly: 
92         document utf-8 meaning of phrases.
93
94         * scm/define-markup-commands.scm: 
95         make \caps markup default to smallCaps
96
97         * lily/pango-font.cc: 
98         * lily/ttf.cc: 
99         use glyph indexing for glyph name .notdef
100
101 2006-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
102
103         * input/regression/utf-8.ly: Fix doc to match order of language
104         fonts.
105
106 2006-11-01  Joe Neeman  <joeneeman@gmail.com>
107
108         * lily/optimal-page-breaking.cc (try_page_spacing): don't average
109         page and line forces.
110
111 2006-11-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
112
113         * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
114
115 2006-10-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
116
117         * Documentation/user/GNUmakefile: 
118         don't use ImageMagick, use GS directly.
119
120         * mf/GNUmakefile: 
121         otf depends on otf-g?table. Fixes race condition in -j2 build.
122         (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
123
124         * mf/GNUmakefile: 
125         rm fontdir target.
126
127         * mf/GNUmakefile: 
128         remove .deb/.rpm downloading.
129
130         * buildscripts/git-update-changelog.py: 
131         bugfixes for git-update-changelog.py
132
133         * Documentation/user/GNUmakefile: 
134         remove .eps rules
135
136 2006-10-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
137
138         * input/regression/tie-semi-single.ly:
139         use position/direction from single tie case too. This fixes
140         overrides and defaults for single laissez-vibrer and repeat ties.
141
142         * buildscripts/git-update-changelog.py: 
143         only prepend header if one patch was successful.
144
145 2006-10-31  Jan Nieuwenhuizen  <janneke@gnu.org>
146
147         * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
148         stuff.  Remove cygwin packaging stuff.
149
150 2006-10-30  Jan Nieuwenhuizen  <janneke@gnu.org>
151
152         * python/convertrules.py (conv): Part 2 fixes vertical extent.
153
154         * input/test/vertical-extent.ly: Fix and elaborate on vertical
155         staff extent.  (Thanks Mats)
156
157 2006-10-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
158
159         * buildscripts/git-update-changelog.py (main): write .msg and cvs
160         command.
161
162         * scm/define-grobs.scm: 
163         separation-items have width
164         
165         * VERSION: 
166         bump version
167         
168         * .gitignore: 
169         * Documentation/topdocs/NEWS.tely: 
170         * lily/separating-group-spanner.cc: 
171         * lily/slur-engraver.cc: 
172         * lily/slur-scoring.cc: 
173         * scm/define-grobs.scm: 
174         * input/regression/slur-clef.ly:
175         add breakableSeparationItem to extra encompass for slurs. This
176         fixes slur/clef slur/key collisions etc. Should fix #49
177         
178         * lily/include/slur-scoring.hh: 
179         * lily/slur-scoring.cc: 
180         Use X of separation item as slur start. Fixes #120
181
182 2006-10-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
183
184         * buildscripts/git-update-changelog.py (changelog_body): don't
185         write committishes.
186
187         * lily/grob.cc: add avoid-slur
188
189 2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
190
191         * emacsclient.patch: 
192         * server.el.patch: 
193         move server/emacsclient to elisp/
194
195         * buildscripts/git-update-changelog.py (Commit.note_del_file):
196         apply patches too
197
198         * elisp/server.el.patch: 
199         move emacs patches.
200
201         * elisp/emacsclient.patch: 
202         emacsclient too.
203
204         * buildscripts/git-update-changelog.py: 
205         ignore ChangeLog
206
207         * .gitignore: 
208         update
209
210         * ChangeLog: 
211         * buildscripts/git-update-changelog.py: 
212         script to update ChangeLog with Git messages.
213
214         * lily/beam-engraver.cc: 
215         * input/regression/rest-pitched-beam.ly: 
216         don't set callback if staff-position set. Fixes #126.
217
218         * lily/bar-number-engraver.cc: 
219         * lily/beam.cc: 
220         * lily/fingering-engraver.cc: 
221         * lily/grob-property.cc: 
222         * lily/grob.cc: 
223         * lily/include/grob.hh: 
224         * lily/include/lily-guile-macros.hh: 
225         * lily/mark-engraver.cc: 
226         * lily/melody-engraver.cc: 
227         * lily/script-column.cc: 
228         * lily/tie-formatting-problem.cc: 
229         * lily/tie.cc: 
230         internal_get_property_data() using ly_symbol2scm()
231
232         * stepmake/stepmake/generic-targets.make: 
233         create .gitignore in outdir.
234
235         * .gitignore: 
236         new file.
237
238 2006-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
239
240         * input/test/vertical-extent.ly: 
241         * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
242
243 2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
244
245         * stepmake/bin/add-html-footer.py (compose): remove setgcos
246
247 2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
248
249         * GNUmakefile.in (install-help2man): install-help2man target. 
250
251 2006-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
252
253         * SConstruct (configure): Do not check for /bin/sh.
254
255 2006-10-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
256
257         * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
258         files.
259
260         * Documentation/topdocs/NEWS.tely (Top): add FretBoards example. 
261
262         * input/regression/fret-boards.ly: new file.
263
264         * po/de.po: new po courtesy translation team.
265
266         * scripts/lilypond-book.py (get_option_parser): add newline to doc
267         string.
268
269 2006-10-27  Mats Bengtsson  <mabe@drongo.s3.kth.se>
270
271         * ly/gregorian-init.ly (neumeDemoLayout): update
272         minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent 
273
274         * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
275         obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
276
277 2006-10-27  Erlend Aasland  <erlenda@gmail.com>
278
279         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
280         Yet another build fix.
281
282 2006-10-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
283
284         * SConstruct (lilypondprefix): use sorted() for list_sort()
285         indent 4
286
287 2006-10-26  Jan Nieuwenhuizen  <janneke@gnu.org>
288
289         * flower/SConscript: Unit test rules.
290
291         * flower/test-std.cc: Compile fix.
292
293 2006-10-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
294
295         * python/midi.c (pymidi_parse_track): warning fixes.
296
297         * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
298         include dot-column.hh
299
300 2006-10-26  Graham Percival  <gpermus@gmail.com>
301
302         * Documentation/user/{basic-, global}: minor changes from mailist.
303
304 2006-10-26  Erlend Aasland  <erlenda@gmail.com>
305
306         * scm/define-grobs.scm: trivial beautification
307
308         * lily/tie-performer.cc: no need to #include "pqueue.hh"
309
310         * lily/source-file.cc: put multibyte var inside #if clause
311
312         * scm/define-grob-interfaces.scm:
313         * scm/define-grob-properties.scm:
314         Build fix (string-fret-finger-combinations)
315
316         * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
317         lexer-gcc-3.1.sh
318
319         * Documentation/user/lilypond-book.itely: Build fix.
320
321 2006-10-26  Joe Neeman  <joeneeman@gmail.com>
322
323         * lily/system.cc (get_paper_system): 
324         * lily/paper-book.cc (systems): 
325         move most of the backwards compatibility stuff into
326         Paper_book::systems
327
328         * Documentation/topdocs/NEWS.tely: add 2 entries for the
329         page breaking stuff
330
331         * Documentation/user/page.itely: remove time-scaled-music
332         bug for the Page_turn_engraver
333
334         * lily/paper-book.cc (set_system_penalty): backwards
335         compatibility (breakbefore) for the old page breaker
336
337 2006-10-25  Graham Percival  <gpermus@gmail.com>
338
339         * Diocumentation/user/instrument-notation.itely: added more
340         info about stanzas; thanks Geoff!
341
342         * Documentation/user/ {basic, advanced}: small fixes from
343         mailist.
344
345         * THANKS: add some bug reporters.
346
347 2006-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
348
349         * scm/define-context-properties.scm (all-user-translation-properties):
350         noteToFretFunction: Add.
351
352         * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
353         fret-diagram-interface (WAS: fret-board-interface).  Fixes build.
354
355 2006-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
356
357         * flower/file-name.cc (dos_to_posix): Help std::string.copy with
358         trailing zero.
359
360         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
361         Remove bashism in delete.
362
363 2006-10-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
364
365         * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
366
367         * scm/translation-functions.scm (determine-frets-mf): flatten let*
368
369         * scm/define-context-properties.scm
370         (all-user-translation-properties): add maximumFretStretch property.
371
372         * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
373
374         * lily/source-file.cc (get_counts): use multibyte variable.
375
376         * scm/translation-functions.scm (determine-frets-mf): new
377         function: compute fret numbers. 
378
379         * scm/output-lib.scm (string-frets->description) new function.
380         (fret-board::calc-stencil): new function
381
382         * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
383
384         * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob. 
385
386         * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
387
388         * lily/tab-note-heads-engraver.cc: cleanups.
389
390         * lily/fretboard-engraver.cc: new file
391
392         * ly/engraver-init.ly: add FretBoards context
393
394 2006-10-24  Joe Neeman  <joeneeman@gmail.com>
395
396         * lily/grob.cc (pure_relative_y_coordinate)
397         (pure_height): use the new call_pure_function stuff
398
399         * lily/grob-property.cc (call_pure_function): wrapper for the scheme
400         call-pure-function
401
402         * lily/side-position-interface.cc (pure_y_aligned_side): add an
403         optarg
404
405         * lily/simple-closure.cc (ly_eval_simple_closure): make
406         simple-closure evaluatable from scheme
407         (evaluate_with_simple_closure): make simple-closures pure-
408         evaluatable
409
410         * lily/slur.cc (pure_outside_slur_callback): new function
411
412         * ly/paper-defaults.ly: change default blank-page-force to 2 (this
413         fits in with previous changes that made the page forces much
414         smaller)
415
416         * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
417         and pure-Y-extent into this new function.
418         (pure-conversions-alist): add outside-slur-callback
419
420 2006-10-24  Mats Bengtsson  <mabe@drongo.s3.kth.se>
421
422         * Documentation/user/advanced-notation.itely (Instrument names):
423         Remove obsolete bug workaround for instrument names on piano
424         staff. 
425
426 2006-10-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
427
428         * Documentation/user/lilypond-book.itely (Integrating DocBook and
429         music): patch by Bertalan Fodor for docbook.
430
431         * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
432         of $(LILYPOND). Prevents lilypond run for .txt files.
433
434         * INSTALL.txt: gitness.
435
436         * .cvsignore: update to force gitness. 
437
438 2006-10-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
439
440         * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
441         detect suicide in nested tuplets.
442
443 2006-10-23  Werner Lemberg  <wl@gnu.org>
444
445         * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
446         typo in argument to FT_Get_X11_Font_Format.
447
448 2006-10-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
449
450         * stepmake/stepmake/po-vars.make: more gitness.
451
452         * flower/polynomial.cc (check_sol): no empty if bodies. 
453
454 2006-10-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
455
456         * stepmake/stepmake/po-vars.make: test change for GIT gateway.
457
458 2006-10-22  Jürgen Reuter  <reuter@ipd.uka.de>
459
460         * Documentation/user/examples.itely (Transcription of mensural
461         music): Added more comments in .ly source.  Suggest to remove
462         Forbid_line_break_engraver to allow line breaking at all bars.
463
464         * Documentation/user/instrument-notation.itely (Ancient
465         articulations): Updated @refbugs regarding episem.
466
467         * Documentation/user/instrument-notation.itely (Gregorian square
468         neumes ligatures): Added \augmentum dots.  Updated @refbugs
469         regarding \augmentum.
470
471         * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
472
473         * input/test/ligature-vaticana.ly: Added \augmentum dots.  Updated
474         comment.
475
476         * lily/vaticana-ligature-engraver.cc: Added TODO comment for
477         \augmentum dots.
478
479         * ly/gregorian-init.ly: Added \augmentum macro.
480
481 2006-10-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
482
483         * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
484
485         * lily/pango-font.cc (pango_item_string_stencil): use
486         FT_Get_X11_Font_Format()
487
488 2006-10-22  John Mandereau  <john.mandereau@free.fr>
489
490         * po/fr.po: update translation.
491
492 2006-10-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
493
494         * VERSION (PATCH_LEVEL): bump version
495
496         * input/regression/horizontal-bracket-break.ly: new file.
497
498         * scm/define-grobs.scm (all-grob-descriptions): calc
499         connect-to-neighbor. 
500
501         * lily/horizontal-bracket.cc (make_bracket): support
502         connect-to-neighbor.  Fix #118
503
504         * VERSION: release 2.9.26-2
505
506         * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
507
508         * VERSION (PACKAGE_NAME): release 2.9.26
509
510         * buildscripts/output-distance.py (test_basic_compare): add
511         multipage test.
512         (FileLink.multi_img_cell): new function, glob multi-page png
513         images.
514
515 2006-10-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
516
517         * po/lilypond.pot: update.
518
519         * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
520
521         * Documentation/user/global.itely (File structure): remove
522         \addqoute remark.
523
524         * lily/parser.yy (FIXME): remove ADDQUOTE
525
526         * Documentation/user/global.itely (Extracting fragments of
527         notation): new node, about clip systems.
528
529         * Documentation/user/lilypond-book.itely (Many quotes of a large
530         score): ref to clip systems.
531
532         * Documentation/user/instrument-notation.itely (Entering lyrics):
533         add note about lyric ties and required font.
534
535         * lily/open-type-font.cc (glyph_list): format errors.
536
537         * Documentation/user/programming-interface.itely (Scheme
538         procedures as properties): more doco on simple-closure and scheme
539         callbacks.
540         (Input variables and Scheme): use lilypond[verbatim], document
541         dummy statement.
542
543         * Documentation/user/page.itely (Displaying spacing): use \book
544         explicitly, so arrows show .
545         (Line breaking): add note about Forbid_line_break_engraver
546
547         * Documentation/user/tweaks.itely (Common tweaks): also set length
548         to prevent tie squeezing. 
549         (Default files): use @var{}
550
551         * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
552         (Generating LilyPond files): add FOMUS.
553
554 2006-10-20  Joe Neeman  <joeneeman@gmail.com>
555
556         * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
557         Y-offset for TextScript and Script
558
559         * lily/text-engraver.cc (make_item): 
560         * lily/script-engraver.cc (make_script_from_event):
561         remove call to Side_position_interface::set_axis since all scripts
562         now have this set by default
563
564         * lily/context.cc: 
565         * lily/prob.cc: use variables
566
567 2006-10-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
568
569         * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
570         at typography, rather analyse stream event duration. 
571
572         * Documentation/user/page.itely (Page formatting): set a6 paper
573         for system separator example.
574         
575         * lily/arpeggio.cc (Module): idem.
576
577         * lily/accidental-placement.cc: add script-priority property.
578
579         * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
580
581         * lily/ttf.cc (print_trailer): if all else fails: use
582         glyphIndexXXXX as glyph name. Fixes #117.
583
584         * lily/pango-font.cc (pango_item_string_stencil): only use cmap
585         entry if cmap contains glyph.
586         (get_index_to_charcode_map): remove from Pango_font class, use
587         global filename -> font mapping.
588         (get_glyph_index_name): new function.
589         (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
590         only for TTF. 
591
592         * scripts/lilypond-book.py (main): use -deps-box-padding=-3
593
594         * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
595         a number.
596
597         * scm/define-grob-properties.scm (all-user-grob-properties):
598         remove outdated doc. Fixes #116
599
600         * lily/completion-note-heads-engraver.cc (process_music): always
601         clone input events; otherwise we may overwrite input 'duration
602         property. Fixes #115.
603
604         * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
605         scm_t_int32 != int
606
607         * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
608         anchor. Fixes #114
609
610         * VERSION (PATCH_LEVEL): bump version.
611
612 2006-10-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
613
614         * lily/engraver.cc (internal_make_grob): use variables.
615
616         * flower/string-convert.cc (dec2double): clean-up warnings. 
617
618         * configure.in (CXXFLAGS): add -Werror.
619
620         * VERSION (PACKAGE_NAME): release 2.9.25
621
622 2006-10-18  Joe Neeman  <joeneeman@gmail.com>
623
624         * lily/simple-spacer.cc (get_line_forces): test for non-fitting
625         line even if we precede a forced break.
626
627         * lily/optimal-page-breaking.cc (try_page_spacing): square line
628         forces too. Make page-spacing weight default to 10 because the
629         changes to vertical springs decreased the page force/line force
630         proportions. Also, take the average of line force and page force
631         instead of just the sum.
632
633         * lily/constrained-breaking.cc (initialize): make the stiffness
634         of the vertical springs depend on the height of the system. This
635         prevents pages with only a few large systems from getting huge
636         forces
637
638         * Documentation/user/page.itely (Page formatting): document the
639         change in default page-spacing-weight
640
641         * lily/include/constrained-breaking.hh: initialise bottom_padding_
642
643 2006-10-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
644
645         * input/typography-demo.ly (melody): remove superfluous slur.
646
647         * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
648         add piano-pedal-script-interface
649
650 2006-10-18  Bertalan Fodor  <lilypondtool@organum.hu>
651
652         * scripts/lilypond-book.py: DocBook support.
653
654 2006-10-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
655
656         * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
657         Y-alignment code.
658         (stop_translation_timestep): set bound to currentMusicalColumn if
659         not set yet. Fixes #102
660
661         * lily/piano-pedal-bracket.cc: formatting.
662
663         * input/test/engraver-one-by-one.ly (MyStaff): reformat.
664
665         * lily/piano-pedal-align-engraver.cc: new class
666         Piano_pedal_align_engraver. Handle side-positioning Y-alignment
667         for piano pedals.  
668
669 2006-10-18  Heikki Junes  <hjunes@gmail.com>
670
671         * po/fi.po: Update Finnish translation (before the next release).
672
673 2006-10-17  Joe Neeman  <joeneeman@gmail.com>
674
675         * lily/system.cc (get_paper_system): reinstate the backwards-
676         compatible page breaking for the old page breaker.
677
678 2006-10-17  Erik Sandberg  <mandolaerik@gmail.com>
679         
680         * lily/recording-group-engraver.cc: removed
681
682         * lily/context.cc, lily/translator-group.cc: Don't touch
683         Context::implementation_ if it's null
684
685 2006-10-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
686
687         * scm/paper.scm: only use left-margin if defined.
688
689         * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
690
691         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
692
693         * lily/new-fingering-engraver.cc: stringFingerOrientations ->
694         strokeFingerOrientations
695
696         * lily/script-column.cc (row_before_line_breaking): also handle
697         accidentals and arpeggios in horizontal script stacking.
698
699         * lily/script-row-engraver.cc (acknowledge_accidental_placement):
700         new function.
701
702         * input/regression/script-stack-horizontal.ly: trim.
703
704 2006-10-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
705
706         * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
707         'text property too.
708
709         * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
710         'text if string argument.
711
712         * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
713
714         * scm/define-context-properties.scm
715         (all-user-translation-properties): change to strokeFingerOrientations
716
717 2006-10-16  Erik Sandberg  <mandolaerik@gmail.com>
718
719         * lily/parser.yy: remove debug output
720
721 2006-10-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
722
723         * ly/paper-defaults.ly: set left/right margin.
724
725         * scm/paper.scm (set-paper-dimensions): use left-margin and
726         right-margin for computing linewidth.
727
728         * Documentation/topdocs/NEWS.tely (Top): idem.
729
730         * input/regression/lyric-tie.ly (texidoc): use vowels for tied
731         lyrics example.
732
733         * scm/define-markup-commands.scm (tied-lyric): increase negative
734         space: space syllables tighter.
735
736         * VERSION (PATCH_LEVEL): bump version.
737
738         * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
739         Ax paper sizes. 
740
741 2006-10-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
742
743         * COPYING: further clarification
744
745         * VERSION: release 2.9.24
746
747         * input/regression/script-stack-horizontal.ly: add version.
748
749         * scm/lily-library.scm (list-join): use fold-right. Fixes #112
750
751         * input/regression/lyric-tie.ly (texidoc): use different words.
752
753         * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
754
755 2006-10-15  Erik Sandberg  <mandolaerik@gmail.com>
756
757         * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
758         macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
759         
760 2006-10-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
761
762         * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4; 
763
764         * Doxyfile: remove file.
765
766         * scm/define-grob-interfaces.scm (string-finger-interface): add
767         string-finger-interface
768
769         * lily/general-scheme.cc (LY_DEFINE): move
770         ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[] 
771
772         * Documentation/topdocs/NEWS.tely (Top): add note for
773         string-finger feature.
774
775         * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
776         property.
777
778         * scm/output-lib.scm (string-finger::calc-text): read 'digit
779         instead of 'text
780
781         * input/regression/script-stack-horizontal.ly: new file.
782
783         * ly/engraver-init.ly: add Script_row_engraver.
784
785         * lily/script-column.cc (order_grobs): refactor: separate axis
786         independent code.
787         (row_before_line_breaking): new function.
788
789         * lily/script-row-engraver.cc (Script_row_engraver): new file.
790
791         * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
792
793 2006-10-14  Jürgen Reuter  <reuter@ipd.uka.de>
794
795         * Documentation/user/instrument-notation.itely: Cleanup: Remove
796         annoying skip notes from mensural ligature example.  Update
797         @refbugs for ligatures and mensural ligatures.
798
799         * lily/coherent-ligature-engraver.cc,
800         lily/include/coherent-ligature-engraver.hh,
801         lily/mensural-ligature-engraver.cc,
802         lily/vaticana-ligature-engraver.cc: Revise code for item
803         reparentizing.  There should now be less programming_error
804         messages.
805
806         * lily/mensural-ligature-engraver.cc: Improve placement of dots.
807
808         * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
809         Maintenance bugfix: Don't create empty Stencil (), but empty box
810         instead.  This fix should eliminate some programming_error
811         messages.
812
813         * ly/engraver-init.ly (MensuralStaff): Set default accidental
814         style.
815
816         * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
817         \layout block _before_ score.
818
819 2006-10-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
820
821         * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
822
823         * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
824
825 2006-10-13  Erlend Aasland  <erlenda@gmail.com>
826
827         * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
828
829 2006-10-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
830
831         * VERSION (PATCH_LEVEL): bump version.
832
833         * COPYING: clarify exception note.
834
835         * lily/main.cc: remove remark about "COPYING".
836
837         * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
838         system-count starts at 0 for each clip-region. Change name to
839         FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
840         layout block, per score.
841
842 2006-10-13  Erik Sandberg  <mandolaerik@gmail.com>
843
844         * lily/input-smob.cc: add equal_p for Input
845
846         * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
847         function
848
849         * lily/parser.yy: MY_MAKE_MUSIC sets music origin
850
851         * lily/prob.cc: Add equal_p predicate for Prob
852
853         * lily/translator.cc: small cleanup
854
855         * scm/document-music.cc: use data from translator listener
856         registration to generate documentation for event classes
857
858         * lily/*: Eliminate accept arg of ADD_TRANSLATOR
859         
860         * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
861         
862 2006-10-13  Jan Nieuwenhuizen  <janneke@gnu.org>
863
864         * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
865
866 2006-10-12  Jan Nieuwenhuizen  <janneke@gnu.org>
867
868         * Documentation/topdocs/INSTALL.texi: Thinko.
869
870         * .cvsignore: Update.
871
872         * lexer-gcc-3.1.sh: Remove.
873
874         * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
875         Update anonymous cvs access.  Remove comment about gcc 3.0.4.
876
877 2006-10-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
878
879         * VERSION: release 2.9.23
880
881         * lily/paper-column-engraver.cc (stop_translation_timestep): also
882         typecheck barnumber.
883
884         * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
885
886         * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
887
888         * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
889
890         * input/regression/clip-systems.ly (Notes): new file. 
891
892         * scm/lily.scm (define-scheme-options): add clip-systems option.
893
894         * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
895         function
896         (dump-stencil-as-EPS): move bbox calculation from previous
897         dump-stencil-as-EPS
898         (output-framework): use -dclip-systems 
899
900         * scm/lily-library.scm (filtered-map): new function
901
902         * scm/framework-ps.scm (clip-system-EPS): new function.
903         (clip-system-EPSes): new function.
904
905         * lily/paper-column.cc: add rhythmic-location to interface
906
907         * scm/define-grob-properties.scm (all-user-grob-properties): add
908         rhythmic-location property.
909
910         * scm/clip-region.scm: new file: rhythmic-location data type and
911         system-clipped-x-extent function.
912
913         * ly/init.ly: use (scm clip-region)
914
915         * lily/paper-column-engraver.cc (stop_translation_timestep): set
916         rhythmic-location for paper column grobs.
917
918         * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
919
920 2006-10-12  Jürgen Reuter  <reuter@ipd.uka.de>
921
922         * ly/engraver-init.ly: Remove obsolete comment on
923         Bar_number_engraver.
924
925         * Documentation/user/instrument-notation.itely: Tune Ancient
926         Articulations figure, such that the episem actually shows.
927
928         * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
929         fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
930
931         * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
932         cleanup.
933
934 2006-10-12  Graham Percival  <gpermus@gmail.com>
935
936         * Documentation/user/ {some}: minor edits that were lost somehow.
937
938 2006-10-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
939
940         * VERSION (PACKAGE_NAME): bump version.
941
942         * input/regression/lyric-tie.ly (texidoc): new file.
943
944         * Documentation/topdocs/NEWS.tely (Top): add new feature.
945
946         * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
947
948         * scm/define-markup-commands.scm (tied-lyric): new function: split
949         string along ~ and reattach with U+203F (tie character) and
950         negative space.
951
952         * scm/output-lib.scm (lyric-text::calc-text): new function.
953
954         * lily/lyric-engraver.cc (process_music): don't set 'text.
955
956         * scm/output-lib.scm (string-finger::calc-text): new function
957         (lyric-text::print): new function.
958
959         * lily/new-fingering-engraver.cc (add_fingering): refactor; make
960         generic for fingering & string number. Use for string-finger. 
961
962         * scm/define-music-types.scm (music-descriptions): add
963         StringFingerEvent
964
965         * lily/fingering-engraver.cc (listen_string_finger): new function
966
967         * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
968
969         * scm/define-context-properties.scm
970         (all-user-translation-properties): add stringFingerOrientations
971
972 2006-10-11  Jürgen Reuter  <reuter@ipd.uka.de>
973
974         * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
975         ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
976
977         * lily/dots.cc: Added style property for dots.
978
979         * mf/parmesan-heads.mf: Fix typo in comment.
980
981         * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
982         adding longa head to feta font and removing obsolete default
983         mapping scheme code.
984
985 2006-10-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
986
987         * scm/output-lib.scm (fingering::calc-text): use origin
988         event-property, not music-property.
989
990         * lily/lilypond.rc.in: spell my name correctly.
991
992 2006-10-10  Joe Neeman  <joeneeman@gmail.com>
993
994         * lily/grob.cc (pure_height): only add minimum-Y-extent if we
995         already have a non-empty extent. Fixes estimation for Hara-kiri
996         staves.
997
998 2006-10-09  Jürgen Reuter  <reuter@ipd.uka.de>
999
1000         * ly/gregorian-init.ly: Simplify definition of \episemInitium and
1001         \episemFinis.
1002
1003         * lily/ligature-engraver.cc: Remove unused #include.
1004
1005         * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
1006         Bugfix: remove method check_for_prefix_loss(Item *) from global
1007         namespace to avoid namespace pollution.
1008
1009 2006-10-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1010
1011         * VERSION: release 2.9.22
1012
1013         * ly/generate-documentation.ly: update option name.
1014
1015         * lily/dynamic-text-spanner.cc (print): revert fix.
1016
1017         * scm/define-grob-interfaces.scm
1018         (trill-pitch-accidental-interface):
1019         add trill-pitch-accidental-interface
1020
1021         * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1022         dereference if it's really a duration.
1023
1024         * lily/figured-bass-engraver.cc (process_music): clear spanner if
1025         useBassFigureExtenders is not set.
1026         (listen_bass_figure): record as new event if
1027         useBassFigureExtenders not set. Fixes #103.
1028
1029         * scm/stencil.scm (circle-stencil): don't center stencil argument,
1030         instead: move circle. Fixes #107.
1031
1032         * scm/define-grobs.scm (all-grob-descriptions): set
1033         allow-loose-spacing for PaperColumn and
1034         NonMusicalPaperColumn. Kludge for #110.
1035
1036         * lily/spaceable-grob.cc: add allow-loose-spacing property.
1037
1038         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1039         allow-loose-spacing property.
1040
1041         * scm/define-markup-commands.scm (postscript): gsave & grestore
1042         around embedded PS. Do setlinewidth too. Fixes  #109.
1043
1044 2006-10-08  Jürgen Reuter  <reuter@ipd.uka.de>
1045
1046         * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1047         code.  This patch fixes ligature brackets that were not at all
1048         engraved any more.
1049
1050 2006-10-08  Graham Percival  <gpermus@gmail.com>
1051
1052         * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1053
1054         * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1055
1056         * scm/define-context-properties.scm: clarified docs (bug 91).
1057
1058         * Documentation/user/basic-notation.itely: document volta brackets
1059         not aligning (bug 63).
1060
1061         * Documentation/user/ global.itely invoking.itely: ignore or
1062         add warnings about texstr.
1063
1064 2006-10-08  John Mandereau  <john.mandereau@free.fr>
1065
1066         * po/fr.po: update translation.
1067
1068         * po/: update msgids.
1069
1070 2006-10-08  Jan Nieuwenhuizen  <janneke@gnu.org>
1071
1072         * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1073
1074 2006-10-08  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1075
1076         * Documentation/user/page.itely (Two-pass vertical spacing): add
1077         documentation for two-pass spacing technique.
1078
1079 2006-10-06  Graham Percival  <gpermus@gmail.com>
1080
1081         * Documentation/user/convert-ly.txt: new file; new
1082         storage place for this file (moved from bugs/ CVS).
1083
1084 2006-10-06  Jürgen Reuter  <reuter@ipd.uka.de>
1085
1086         * lily/note-head.cc: Fixed programming_error message.
1087
1088 2006-10-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1089
1090         * scm/define-grobs.scm (pure-conversion): move pure-callback
1091         further into body.
1092
1093         * scm/script.scm (default-script-alist): set avoid-slur for turn,
1094         marcato, stopped, thumb.
1095
1096 2006-10-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1097
1098         * lily/completion-note-heads-engraver.cc (process_music): don't
1099         skimp on memory usage.
1100
1101         * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1102         stems too. Fixes #5
1103
1104         * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1105         parenthesis item. This fixes premature Y-extent triggering. Fixes
1106         issue #95. 
1107  
1108         * VERSION (PATCH_LEVEL): bump version.
1109
1110 2006-10-04  Graham Percival  <gpermus@gmail.com>
1111
1112         * Documentation/user/advanced-notation.itely: added
1113         info about instrument names for piano or other contexts,
1114         thanks Marcus!
1115
1116 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1117
1118         * mf/feta-bolletjes.mf (solfa_quarter_width): use
1119         solfa_base_notewidth as unit for non-DO-notes too.
1120
1121         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1122
1123         * VERSION: release 2.9.21
1124
1125         * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1126         override.
1127
1128 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1129
1130         * python/lilylib.py (progress): Minor fix.
1131
1132 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1133
1134         * lily/note-name-engraver.cc: doc engraver.
1135
1136         * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1137
1138         * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1139
1140         * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1141         by callback.
1142
1143         * lily/stem-engraver.cc (make_stem): don't set duration-log
1144
1145         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1146         write snippet-names binary.
1147
1148         * python/lilylib.py (system): use os.system for mingw32
1149
1150         * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1151         to $PATH.
1152
1153         * scm/backend-library.scm: update email address.
1154
1155         * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1156         example.
1157
1158         * scm/define-grobs.scm (all-grob-descriptions): use callback to
1159         calc dot count.
1160
1161         * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1162         handle dot creation separately.
1163
1164         * lily/tab-note-heads-engraver.cc (process_music): idem.
1165
1166         * lily/drum-note-engraver.cc (process_music): idem.
1167
1168         * lily/note-heads-engraver.cc (process_music): idem.
1169
1170         * lily/rest-engraver.cc: don't set duration-log.
1171
1172         * scm/output-lib.scm (string-number::calc-text): new function.
1173         (note-head::calc-duration-log): new function.
1174
1175         * lily/fingering-engraver.cc (make_script): remove 'text setting.
1176
1177         * scm/output-lib.scm (fingering::calc-text): new function.
1178
1179 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1180
1181         * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1182          and include-eps-font -> include-eps-fonts
1183
1184 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1185
1186         * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1187
1188         * lily/timing-translator.cc: list properties.
1189         (start_translation_timestep): update internalBarNumber too.
1190
1191         * scm/define-context-properties.scm
1192         (all-user-translation-properties): add internalBarNumber.
1193
1194         * input/regression/spacing-no-note.ly: new file.
1195
1196         * buildscripts/output-distance.py (link_file): verbosity for OSError.
1197
1198         * lily/book.cc: #include cleanup.
1199
1200         * lily/include/lily-guile-macros.hh: add assert to
1201         scm_or_str2symbol(SCM).
1202
1203         * VERSION (PATCH_LEVEL): bump version.
1204
1205         * lily/spacing-spanner.cc (musical_column_spacing): handle
1206         musical->nonmusical spacing case, where there is no spacing
1207         wish. Fixes issue #61.
1208
1209         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1210         (pango_item_string_stencil): use logical rect horizontally (to
1211         preserve spaces), ink_rect vertically (for time signatures).
1212
1213         * lily/font-metric.cc (word_stencil): new interface function
1214
1215         * input/regression/utf-8-mixed-text.ly: new file.
1216
1217         * lily/percent-repeat-engraver.cc (listen_percent): remove
1218         spurious warning.
1219
1220         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1221         non-dynamic scripts. Fixes #30.
1222
1223         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1224
1225         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1226
1227         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1228         SCM_UNDEFINED for non-existent data.
1229
1230         * lily/side-position-interface.cc (general_side_position): allow
1231         optional current_offset argument for chaining, so combinations of side-position
1232         and outside slur callback don't add up.  Fixes issue #92.
1233
1234         * lily/pango-font.cc (pango_item_string_stencil): use
1235         logical_rect. This prevents spaces after words from disappearing,
1236         issue #72.
1237         
1238         * VERSION: release 2.9.20
1239
1240 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1241
1242         * scm/define-grob-properties.scm (all-user-grob-properties):
1243         mention stencil as user settable.
1244
1245 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
1246
1247         * Documentation/user/page.itely (Page formatting): 
1248         document auto-first-page-number
1249
1250         * lily/page-breaking.cc (find_chunks_and_breaks): 
1251         * lily/paper-score.cc (calc_breaking): Follow changes to the
1252         Constrained_breaking interface
1253
1254         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1255         here backwards, as an optimisation
1256         (initialize): new function; move most of the code in resize () here
1257         (combine_demerits): cache ragged_right_
1258         (Constrained_breaking): constructor now takes the Paper_score
1259
1260 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
1261         
1262         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1263         avoid parser lookahead for 0-ary functions.
1264
1265         * lily/translator.cc: Extract event classes from
1266         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1267
1268 2006-10-02  Heikki Junes  <hjunes@gmail.com>
1269
1270         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1271         KBabel fix tool.
1272
1273 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1274
1275         * scm/layout-page-layout.scm (page-breaking-wrapper): new
1276         function. Call the page breaking function selected in the
1277         `page-breaking' \paper variable, then the post processing function
1278         chosen using the `page-post-process' \paper variable.
1279         (line-height): new function. Return the height of a system.
1280         (line-minimum-position-on-page): new function. Return the position
1281         of a system on page (using the previous line position), only
1282         considering between system padding.
1283         (stretchable-line?): new function. Says whether a line can be
1284         stretched (ie. is not a title nor a single staff system).
1285         (page-maximum-space-left): new function. Computes space left on a
1286         page, when all systems are separated by their padding.
1287
1288         * lily/page-breaking.cc (breaking::make_pages): Move page post
1289         processing function call to page breaking wrapper (common to all
1290         page breakers).
1291
1292         * lily/paper-book.cc (book::pages): call the page breaking
1293         wrapper, instead of the page breaker directly
1294
1295         * ly/paper-defaults.ly: Add \paper variables for page breaking
1296         wrapper and page post processing function. Make
1297         `write-page-layout' value depend on the 'dump-tweaks option. Add a
1298         `system-maximum-stretch-procedure' variable for holding a function
1299         computing the maximum stretch a system allows.
1300
1301         * scm/layout-page-dump.scm (write-page-breaks): computes the
1302         stretch to apply to systems on a page to minimize left
1303         space. Dump this stretch length.
1304
1305         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1306         the system-stretch property of the tweak data to stretch the
1307         system.
1308         (includePageLayoutFile): Void function which includes the
1309         generated page-layout file if it exists and if the page layout
1310         dumping is not asked.
1311         (scoreTweak): if the score tweak named by the argument exists,
1312         return it.
1313
1314 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
1315
1316         * lily/page-spacing.cc (compress_lines, uncompress_solution):
1317         handle correctly the case where there are multiple \noPageBreaks
1318         in a row.
1319
1320 2006-09-30  Laura Conrad <lconrad@laymusic.org>
1321
1322         * abc2ly.py adds segno (S) and Coda (O) to articulations.
1323         
1324         * abc2ly.py fix so that entering " -- " will translate to a -- in
1325         the lilypond instead of a " - - "
1326         
1327 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1328
1329         * lily/align-interface.cc: fix typo
1330
1331         * lily/dynamic-text-spanner.cc (print): Add a special case for
1332         trill spanner right sides. 
1333
1334         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1335
1336         * lily/align-interface.cc (get_extents_aligned_translates): add
1337         support for padding variable.
1338
1339         * lily/break-align-interface.cc (self_align_callback): oops: use
1340         loop variable in guard.
1341
1342         * input/regression/repeat-percent-grace.ly: new file.
1343
1344         * lily/percent-repeat-engraver.cc (start_translation_timestep):
1345         remember first currentCommandColumn of a grace run. Fixes issue 70.
1346
1347         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1348         move class definition to CC file.
1349
1350         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1351
1352         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1353         measure-long  repeats.
1354
1355         * flower/include/international.hh: include stdarg.h
1356
1357 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
1358
1359         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1360         put_systems_on_pages to return an empty result, we need to assign
1361         demerits properly in that case.
1362         (put_systems_on_pages): Make the number of pages depend on the
1363         evenness of page_number. Add auto-first-page-number.
1364         (calc_subproblem): ensure that the page-number is even for the
1365         left-hand page. Warn if the first page-turn doesn't fit onto the
1366         first (right-hand) page.
1367
1368         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1369         (min_page_count): make this publicly accessible
1370         (min_page_count): fix a bug when there are forced page breaks that
1371         was introduced when I made this loop run backwards
1372         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1373         replace space_systems_on_min_pages with these two. The logic in
1374         space_systems_on_min_pages was getting too convoluted and is better
1375         contained in page-turn-page-breaking.
1376
1377         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1378         conditional
1379         (breakable_column): typo
1380
1381         * lily/source-file.cc (get_line): fix off-by-one error
1382         and clean up some of the logic
1383
1384 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
1385
1386         * lily/page-breaking.cc (make_pages): honour the first-page-number
1387         property
1388
1389 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1390
1391         * VERSION (PACKAGE_NAME): bump version.
1392
1393 2006-09-26  Pal Benko  <benko.pal@gmail.com>
1394
1395         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1396         (the latter is the same as petrucci-f which is kept for compatibility)
1397
1398 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
1399         
1400         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1401
1402 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1403
1404         * lily/global-context.cc (run_iterator_on_me): break out of loop
1405         if moment doesn't increase.
1406
1407         * scm/define-grob-properties.scm (all-user-grob-properties): add
1408         forced property.
1409
1410         * lily/accidental.cc (after_line_breaking): read forced property.
1411
1412         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1413         property.
1414
1415         * input/regression/accidental-forced-tie.ly:  new file.
1416
1417 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1418
1419         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1420
1421         * lily/figured-bass-engraver.cc: only listen to rest events if
1422         ignoreFiguredBassRest is not set.
1423
1424         * scm/define-context-properties.scm
1425         (all-user-translation-properties): add ignoreFiguredBassRest property
1426
1427 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
1428
1429         * lily/paper-book.cc (get_system_specs):
1430         (set_system_penalty): fix breakbefore.
1431         We used to set a penalty on the system after the break, now we
1432         set a permission on the system before the break
1433
1434         * lily/grob-property.cc: add scm debugging hooks into
1435         property modification
1436
1437         * lily/context-property.cc:
1438         * lily/engraver.cc:
1439         rename make_foo_from_properties to internal_make_foo and
1440         move it from context-property.cc to a member function of
1441         Engraver.
1442         
1443         * lily/include/lily-guile-macros.hh:
1444         overload ly_symbol2scm macro so that there is no more need
1445         to use internal_foo
1446
1447         * lily/volta-repeat-iterator.cc:
1448         * lily/tweak-engraver.cc:
1449         * lily/tuplet-bracket.cc:
1450         * lily/span-bar-engraver.cc:
1451         * lily/script-engraver.cc:
1452         * lily/prob-scheme.cc:
1453         * lily/pointer-group-interface.cc:
1454         * lily/parser.yy:
1455         * lily/grob-scheme.cc:
1456         * lily/grob-property.cc:
1457         * lily/context.cc:
1458         * lily/context-property.cc:
1459         * lily/break-substitution.cc:
1460         * lily/break-align-engraver.cc:
1461         * lily/axis-group-interface.cc:
1462         * lily/align-interface.cc:
1463         remove calls to internal_FOO
1464
1465         * lily/system-start-delimiter-engraver.cc:
1466         * lily/parenthesis-engraver.cc:
1467         * lily/accidental-engraver.cc:
1468         remove calls to make_foo_from_properties
1469
1470 2006-09-23  Graham Percival  <gpermus@gmail.com>
1471
1472         * Documentation/user/programming-iterfaces.itely: fix
1473         def-music-function -> define-music... leftover.
1474
1475 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
1476
1477         * lily/page-spacing.cc (min_page_count): by running the loop
1478         backwards, we can calculate ragged_last properly.
1479
1480 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1481
1482         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1483         printfirst-page-number -> print-first-page-number
1484
1485         * python/convertrules.py: corresponding rule.
1486
1487         * Documentation/user/page.itely (Page formatting): Document the
1488         default values of all page layout parameters. 
1489
1490 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
1491
1492         * lily/lexer.ll: remove limitation on music function arity. New
1493         mode extratoken, which inserts extra EXPECT_* tokens after
1494         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1495
1496         * lily/parser.yy: Change grammar for music function accordingly.
1497
1498         * lily/include/lily-parser.hh: New method get_state, new member
1499         hidden_state. Works around a problem when parser fetches
1500         MUSIC_FUNCTION token but not the following EXPECT_* token.
1501
1502         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1503         remove try_music
1504
1505         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1506         references to Music; use ASSIGN_EVENT_ONCE everywhere
1507
1508         * lily/grob-info.cc: junk *music_cause
1509
1510         * lily/music.cc: copy eventified articulations to stream event
1511
1512         * lily/part-combine-iterator.cc: Cleanup using enums
1513
1514         * lily/translator-group.cc: Junk OldMusicEvent, and associated
1515         methods
1516
1517         * lily/include/engraver.hh: Junk music.hh include
1518
1519         * lily/stream-event.cc: Changed constructors
1520
1521 2006-09-21  Graham Percival  <gpermus@gmail.com>
1522
1523         * Documentation/user/tweaks.itely (Fitting music onto fewer
1524         pages): change settings to avoid warning messages.
1525
1526 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1527
1528         * Documentation/user/tweaks.itely (Fitting music onto fewer
1529         pages): Add between-system-space setting. 
1530
1531 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1532
1533         * lily/accidental-placement.cc (calc_positioning_done): don't
1534         trigger Y-extent calculation too early. Use pure_height instead.
1535
1536         * lily/scale.cc (LY_DEFINE): new file. 
1537
1538 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
1539
1540         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1541         that happen at the start of a score: having a zero-length
1542         chunk was messing up min_system_count calculations.
1543
1544         * lily/source-file.cc (get_line): lower_bound, not
1545         binary_search. Fixes problem where point-and-click would
1546         always point to the first line.
1547
1548 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1549
1550         * lily/accidental-placement.cc (calc_positioning_done): also put
1551         stems into accidental support. 
1552
1553         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1554         event_ detected.
1555
1556         * scm/script.scm (default-script-alist): avoid-slur and
1557         slur-padding for portato script.
1558
1559         * lily/stem-tremolo.cc (translated_stencil): new function. 
1560         (height): use new function. Fixes tremolos on whole notes.
1561
1562         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1563         slur found.
1564
1565 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1566
1567         * scripts/abc2ly.py (try_parse_comment): idem.
1568
1569         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1570         bar_string iso. string.find()
1571
1572         * lily/*.cc: idem.
1573
1574         * lily/slur.cc (get_curve): always use scm_is_pair() looping
1575         scheme lists.  
1576
1577 2006-09-18  Graham Percival  <gpermus@gmail.com>
1578
1579         * Documentation/user/basic-notation.itely: add bug
1580         warning about ties and octavation/clef.
1581
1582 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1583
1584         * VERSION (PACKAGE_NAME): release 2.9.18
1585
1586 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
1587
1588         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1589         figure out midi file names right here.
1590         
1591 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1592
1593         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1594
1595         * scm/backend-library.scm: option naming:  gs-font-load*s*
1596
1597         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1598         include-eps-fonts
1599
1600 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
1601
1602         * scm/define-music-types.scm (music-descriptions): remove
1603         BreakEvent and fix {Page,Line}{Break,Turn}Event so
1604         Music::to_event doesn't complain.
1605
1606         * lily/accidental-placement.cc (ape_compare):
1607         * lily/semi-tie.cc (compare): 
1608         * lily/note-column.cc (shift_compare): replace by XXX_less
1609
1610         * lily/tie-formatting-problem.cc (set_chord_outline): 
1611         * lily/tie-column.cc (calc_positioning_done): 
1612         * lily/system.cc (post_processing)
1613         (get_paper_system): 
1614         * lily/stem.cc (note_head_positions)
1615         (calc_positioning_done): 
1616         * lily/spanner.cc (do_break_processing)
1617         (find_broken_piece): 
1618         * lily/span-bar.cc (print): 
1619         * lily/semi-tie-column.cc (calc_positioning_done): 
1620         * lily/rest-collision.cc (calc_positioning_done): 
1621         * lily/program-option.cc (get_help_string): 
1622         * lily/note-collision.cc (get_clash_groups):
1623         * lily/new-fingering-engraver.cc (position_scripts):
1624         * lily/keyword.cc (Keyword_table):
1625         * lily/hara-kiri-group-spanner.cc (request_suicide):
1626         * lily/grob-pq-engraver.cc (stop_translation_timestep):
1627         * lily/accidental-placement.cc (calc_positioning_done):
1628         (stagger_apes):
1629         * lily/beam.cc (get_beam_segments):
1630         * lily/grob-array.cc (remove_duplicates):
1631         use new vector_sort
1632         
1633         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1634         ragged-last-bottom = ##f (test the new page breaker)
1635
1636         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1637
1638         * scm/define-context-properties.scm
1639         (all-internal-translation-properties): remove properties that
1640         were used to communicate page-turn stuff to the paper-column
1641         engraver.
1642
1643         * lily/lily-guile.cc (robust_scm2string): new function
1644
1645         * lily/paper-column-engraver.cc: Clean up page turn stuff
1646
1647         * lily/page-turn-engraver.cc: Re-write the page turn logic here
1648         instead of cluttering up paper-column-engraver.cc
1649
1650 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1651
1652         * scm/layout-page-dump.scm (scm): export utility function names,
1653         to allow user writing cutsom dumping functions.
1654
1655         * scm/layout-page-layout.scm: export utility function names to
1656         enable custom page breaking function writing. Tabify.
1657         (line-next-space): use ?-suffix only for predicates
1658         (page-maximum-space-to-fill): new function. Return the space
1659         between first and bottom system of a page, to give to
1660         space-systems.
1661         (space-systems): use a space-to-fill argument (for instance as
1662         computed by page-maximum-space-to-fill) instead of computing
1663         internaly this space with the page height. That way, the caller
1664         can adjust the space to use.
1665         (make-page-from-systems, walk-paths): compute space to fill before
1666         calling space-systems.
1667
1668 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1669
1670         * scm/script.scm (default-script-alist): set paddings for every
1671         type here, increase for portato mark.
1672
1673         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
1674         -dinclude-eps-fonts
1675
1676 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1677
1678         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1679         use spanner::set-spacing-rods
1680
1681         * lily/note-column.cc: reformat.
1682
1683         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1684         step positioning for note/rest combinations.
1685
1686         * input/regression/rest-note-collision.ly: new file.
1687
1688         * scm/define-grobs.scm (all-grob-descriptions): add
1689         springs-and-rods
1690
1691         * flower/include/std-vector.hh: switch off again.
1692
1693         * VERSION (PATCH_LEVEL): bump to 2.9.18
1694
1695         * flower/include/std-string.hh: idem.
1696
1697         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1698
1699 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1700
1701         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1702         PianoStaff. 
1703
1704 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
1705
1706         * Documentation/user/page.itely: update page breaking documentation
1707
1708 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
1709
1710         * lily/note-collision.cc (calc_positioning_done): only access
1711         first head if available.
1712
1713         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1714
1715         * scm/framework-ps.scm (output-preview-framework): use new name.
1716
1717         * lily/program-option.cc (internal_set_option): use new names.
1718
1719         * Documentation/user/SConscript (lilypond_book_flags): update -d
1720         variable names.
1721
1722         * Documentation/user/lilypond-book.itely (Inserting LilyPond
1723         output into other programs): new variable names.
1724
1725         * scm/lily.scm (define-scheme-options): uniformize var names.
1726
1727         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1728         tuplets_ is non-empty before popping.
1729
1730 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
1731
1732         * lily/spanner.cc (find_broken_piece): 
1733         * lily/spacing-spanner.cc (get_columns): 
1734         * lily/source-file.cc (get_line): 
1735         * lily/simple-spacer.cc (get_column_description): 
1736         * lily/keyword.cc (lookup): 
1737         use the new binary search.
1738
1739         * flower/include/std-vector.hh: replace binary_search with
1740         a more STL-like version
1741
1742 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
1743
1744         * lily/tie-performer.cc: remove unused last_event_ property.
1745         (class Tie_performer): add now_tied_heads_ property for
1746         partially-tied heads.
1747         (acknowledge_audio_element): when adding an Audio_note, put the
1748         note in now_tied_heads_ if the audio note is partially tied.
1749         (stop_translation_timestep): always include entries in
1750         now_tied_heads_ in heads_to_tie_.
1751
1752         * lily/drum-note-performer.cc (process_music): look for tie-events
1753         in the articulations; pass to Audio_note constructor.
1754
1755         * lily/note-performer.cc (process_music): look for tie-events in
1756         the articulations; pass to Audio_note constructor.
1757
1758         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1759         constructor.
1760
1761         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1762         include initializer in constructor.
1763
1764 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
1765
1766         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1767         unless they are breakable. This fixes discrepancies between the forces
1768         calculated here and the forces calculated in get_line_configuration.
1769
1770         * lily/grob.cc (pure_relative_y_coordinate): fix some
1771         mis-estimation that was happening with piano staves.
1772
1773         * lily/constrained-breaking.cc (resize): don't choke if we get a
1774         measure that won't fit on a line.
1775         (combine_demerits): don't consider uniformity when ragged
1776
1777         * lily/page-spacing.cc (solve): why the f* were there two of these?
1778         (calc_subproblem): properly handle the case where a system is taller
1779         than the page.
1780
1781         * lily/system.cc (get_paper_system): ensure that all the permissions
1782         and penalties are passed to the paper systems.
1783
1784         * lily/page-breaking.cc (create_system_list): support system-count.
1785
1786         * scm/define-grobs.scm (pure-print-callbacks): add
1787         ly:script-interface::print
1788
1789         * lily/page-spacing.cc (min_page_count): fix calculation of min
1790         pages if we are ragged and there are non-zero springs.
1791
1792         * scm/layout-page-layout.scm: if the pure-height estimates are under
1793         the real height, allow space-systems to ignore padding if it is
1794         needed in order to fit the systems on one page
1795
1796         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1797         ragged properties
1798         (solve): fix performance problem. Make sure we always get at least
1799         one solution
1800
1801         * lily/page-breaking.cc (make_pages): include write-page-breaks
1802         and page-stencil
1803
1804         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1805
1806         * scm/define-grobs.scm: add the new slur-callback
1807         fix pure-relevant to not exclude grobs whose extent is already
1808         calculated
1809
1810         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1811         page breaker
1812
1813         * lily/slur.cc (pure_height): new callback to estimate the height
1814         of a slur
1815
1816 2006-09-02  Graham Percival  <gpermus@gmail.com>
1817
1818         * Documentation/user/invoking.itely: small update on
1819         MacOS X notes; thanks Trevor!
1820
1821 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1822
1823         * VERSION (MY_PATCH_LEVEL): release 2.9.17
1824
1825         * lily/lexer.ll: accept EOF in all states.
1826
1827         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1828
1829         * lily/source-file.cc (Source_file): always 0-terminate character
1830         array, to prevent Flex from barfing.
1831
1832         * lily/global-context.cc (get_output): robustness: don't crash if
1833         no Score context found.
1834
1835         * lily/include/book.hh (class Book): idem.
1836
1837         * lily/include/context-def.hh (struct Context_def): idem.
1838
1839         * lily/include/score.hh (class Score): don't derive from Input.
1840
1841         * lily/book.cc (Book): add a copy ctor. 
1842
1843         * buildscripts/output-distance.py (FileLink.calc_distance): count
1844         orphans in distance too.
1845
1846         * python/midi.c (midi_parse_track): robustness: don't read past
1847         end of string.
1848
1849         * ly/performer-init.ly: add Control_track_performer, move
1850         Tempo_performer and Time_signature_performer to Score.        
1851
1852         * lily/score-performer.cc (acknowledge_audio_elements): override
1853         from base class: add to audio-columns
1854
1855         * lily/control-track-performer.cc (add_text): new file: generate
1856         the control track.
1857
1858         * lily/performance.cc: move output_header_track to
1859         Control_track_performer ()
1860
1861         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1862
1863         * lily/include/midi-item.hh (class Midi_channel_item): insert
1864         class into hierarchy, for items that can have a channel setting. Dehungarify.
1865
1866         * lily/include/performer.hh (class Performer): remove
1867         play_element();  move functionality into announce/acknowledge.
1868
1869         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1870
1871         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1872         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
1873
1874 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
1875
1876         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1877         ambituses.
1878
1879         * lily/all-font-metrics.cc: remove TFM support.
1880
1881         * lily/include/tfm.hh: remove TFM support, TFM reader.
1882
1883         * lily/include/binary-source-file.hh: remove Binary_source_file.
1884
1885 2006-08-27  Graham Percival  <gpermus@gmail.com>
1886
1887         * Documentation/topdocs/NEWS.itely: add @c marker for
1888         stuff I've processed.
1889
1890         * Documentation/user/ various: info from NEWS.
1891
1892 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
1893
1894         * lily/paper-column-engraver.cc (finalize): Oops, this change
1895         should have gone in on 2006-08-23
1896
1897 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
1898
1899         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1900         quotes to quote arguments. Fixes Windows problem.
1901
1902         * python/lilylib.py (progress): idem
1903
1904 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1905
1906         * scripts/musicxml2ly.py: fix for importing
1907         minor key signatures from MusicXML.  (Phillip Kirlin)
1908
1909 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
1910
1911         * python/musicxml.py: 
1912         (Attributes.get_key_signature): now correctly retrieves mode from 
1913         MusicXML. 
1914
1915 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1916
1917         * lily/parser.yy (output_def_body): take ownership of identifier
1918         back to C++.
1919
1920         * Documentation/user/advanced-notation.itely (Metronome marks):
1921         update use of \tempo in \midi.
1922
1923         * VERSION: release 2.9.16
1924         
1925 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
1926
1927         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1928         web partially)
1929
1930 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1931
1932         * input/regression/tie-chord-partial.ly: clarify example.
1933
1934         * scm/define-music-properties.scm (all-music-properties): remove
1935         untied.
1936
1937         * ly/music-functions-init.ly: remove \untied.
1938
1939         * lily/tie-engraver.cc (struct Head_event_tuple): store both
1940         stream events and music events.
1941         (stop_translation_timestep): search acknowledged heads for
1942         tie-event.
1943
1944         * input/regression/tie-chord-partial.ly: new file.
1945
1946         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1947         for \char markup command.
1948
1949         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1950
1951         * scm/define-music-types.scm (music-descriptions): consistency:
1952         Use solo-{one,two}-event iso. solo-[12]-event.
1953
1954         * lily/part-combine-engraver.cc (process_music):
1955         Use solo-{one,two}-event iso. solo-[12]-event.
1956
1957         * ly/declarations-init.ly (partCombineListener): add Timing as
1958         alias
1959
1960         * flower/std-string.cc (string_copy): use copy ()
1961
1962         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1963
1964 2006-08-24  Graham Percival  <gpermus@gmail.com>
1965
1966         * Documentation/user/changing-defaults.itely, global.itely,
1967         lilypond-book.itely, page.itely: minor changes from mailist.
1968
1969 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1970
1971         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1972         snippet-map
1973
1974         * scm/define-context-properties.scm
1975         (translator-property-description): robustness: detect type errors
1976         in property definitions.
1977
1978         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1979         after getting it from SCM. 
1980
1981         * lily/smobs.cc (protect_smob): switch off fancy smob protection
1982         for now. 
1983
1984         * lily/include/performer.hh (class Performer): strip get_tempo()
1985         method.
1986
1987         * lily/midi-def.cc: strip file.
1988
1989         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1990
1991         * lily/include/context-def.hh (struct Context_def): use
1992         VIRTUAL_COPY_CONSTRUCTOR().
1993
1994         * lily/source-file.cc: smobification.
1995
1996         * lily/include/source-file.hh (class Source_file): smobify
1997         Source_file. Trim redundant members.
1998
1999         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
2000         clones after creation. This plugs a huge memory leak.
2001
2002         * python/convertrules.py (FatalConversionError.sub_tempo):
2003         complete rule for \midi{ \tempo }
2004
2005         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
2006
2007         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2008
2009 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
2010
2011         * input/regression/optimal-page-breaking-hstretch.ly: test for
2012         ragged-last-bottom also
2013
2014         * lily/paper-column-engraver.cc (finalize): make the end of a score
2015         breakable by default. This is to balance out a change in behaviour
2016         of the page-turn-breaker which no longer makes the end of a score
2017         breakable.
2018
2019         * lily/paper-book.cc (pages): set the systems_ once the pages are
2020         broken
2021
2022         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2023         Page_breaking interface.
2024
2025         * lily/page-breaking.cc (class Page_breaking): make the interface
2026         more consistent and provide abstractions for dealing with
2027         Line_divisions.
2028
2029         * lily/optimal-page-breaking.cc (solve): use a more straightforward
2030         algorithm. Use the new interface to Page_breaking.
2031
2032         * lily/page-spacing.cc: better support for ragged-bottom and
2033         ragged-last-bottom
2034
2035 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2036
2037         * python/convertrules.py (conv): warning on \tempo{}
2038
2039         * ly/performer-init.ly: set tempoWholesPerMinute.
2040
2041         * ly/midi-init.ly: remove \midi
2042
2043         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2044         MIDI tempo.
2045
2046         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2047         tempoUnitDuration for determining what to print.
2048
2049         * lily/lyric-extender.cc: typo.
2050
2051         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2052
2053         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2054         function.
2055
2056         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2057
2058         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2059         eps-pad-boxes is set.
2060
2061         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2062
2063         * THANKS: update sponsors.
2064
2065         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2066
2067         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2068
2069         * input/regression/tie-chord-untied.ly: new file.
2070
2071         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2072
2073         * scm/define-music-properties.scm (all-music-properties): add
2074         'untied property.
2075
2076         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2077         than .ly.txt.
2078         (headertext_nopics): sanitize no-examples text.
2079
2080         * scm/page.scm (make-page-stencil): don't rely on extents of
2081         page-stencil. This fixes spurious space around .EPS files produced
2082         with the EPS backend.
2083
2084 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
2085
2086         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2087
2088         * lily/hara-kiri-engraver.cc (process_music): remember
2089         keepAliveInterfaces after processing \set
2090
2091         * lily/lyric-extender.cc (print): support left/right-padding for
2092         extenders.
2093
2094         * scm/documentation-generate.scm (string-append): revert lilypond/
2095         path, doc why.
2096
2097 2006-08-20  Graham Percival  <gpermus@gmail.com>
2098
2099         * Documentation/user/lilypond.tely: clarification to
2100         license presentation (not to actual license).
2101
2102         * Documentation/user/basic-notation.itely,
2103         instrument-notation.itely: minor changes.
2104
2105         * input/ {regression, test}/+.ly: clarification to
2106         text (you can click on examples).  Thanks, Mats!
2107
2108         * input/manual/bar-lines.ly: adds ||: repeats.
2109
2110 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2111
2112         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
2113
2114         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2115
2116         * Documentation/user/lilypond.tely: strip lilypond/ from info
2117         links, rename to category LilyPond
2118
2119         * lily/pango-font.cc (description_string): new function.
2120
2121         * VERSION: release 2.9.15
2122
2123         * lily/spacing-engraver.cc (stop_translation_timestep): use
2124         Dscho's fix for spacing spanner. 
2125
2126         * scm/define-music-types.scm (music-descriptions): use
2127         apply-output-event for ApplyOutputEvent
2128
2129         * lily/output-property-engraver.cc (listen_apply_output): rename
2130         from listen_layout_instruction.
2131
2132         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2133         function protect()
2134
2135 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2136
2137         * scm/lily.scm (lilypond-all): option read-file-list: substitute
2138         commandline args with contains, split by \n.
2139
2140         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2141         write snippet-names file, call with -dread-file-list. Fixes
2142         command limitations on 64-bit systems.
2143
2144         * input/regression/stencil-color-rotation.ly: new file.
2145
2146         * lily/include/translator.hh (struct Acknowledge_information):
2147         revert: don't use Protected_scm in global objects, as GUILE can't
2148         handle gc_unprotect from automated destructors on MacOS X.
2149  
2150         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2151         color, not the original stencil. Fixes combinations of
2152         color/transparency/rotation. 
2153
2154         * scripts/lilypond-book.py (main): add --formats=eps for
2155         texinfo/latex.
2156
2157         * lily/spacing-engraver.cc (stop_translation_timestep): don't
2158         crash if spacing_ is nonexistent.
2159
2160 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
2161
2162         * scripts/lilypond-book.py (output): Remove obsolete(!?)
2163         \catcode`\@=12 in the LaTeX output.
2164
2165 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2166
2167         * scm/define-music-types.scm (music-descriptions):
2168         use sustain-event iso. sustain-pedal-event.
2169
2170 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
2171
2172         * scripts/convert-ly.py: honour the -n command-line switch
2173
2174 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
2175
2176         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2177         break specification.
2178
2179 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
2180
2181         * Documentation/user: convert-ly the user manual
2182
2183 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2184
2185         * stepmake/aclocal.m4: version check patch (thanks MWD)
2186
2187         * ly/music-functions-init.ly: robustness. Don't crash if
2188         currentBarNumber is not a number.
2189
2190         * VERSION (PATCH_LEVEL): bump.
2191
2192 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2193
2194         * stepmake/aclocal.m4: better version check; handle fooX.Y
2195         binaries too.
2196
2197         * ly/performer-init.ly: instrument name fixup.
2198
2199         * input/manual/chord-names-jazz.ly (banterProperties):
2200         instrumentName update
2201
2202         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2203
2204         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2205
2206         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2207         function. Use hash tables to check membership.
2208
2209         * lily/general-scheme.cc (LY_DEFINE): new function.
2210
2211         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2212
2213         * lily/include/translator.hh (struct Acknowledge_information): add
2214         Protected_scm
2215
2216         * ly/music-functions-init.ly: change name to BreathingEvent
2217
2218         * input/regression/*.ly: apply it.
2219
2220         * python/convertrules.py (conv): better instrumentName conversion
2221         rule.
2222
2223         * scm/define-music-types.scm (music-descriptions): add
2224         line-break-event to LineBreakEvent music
2225
2226         * lily/music.cc (to_event): don't crash if music type not set.
2227
2228         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2229         spacing not set.
2230
2231         * lily/spacing-engraver.cc (stop_translation_timestep): set
2232         spacing for proportional notation too.
2233
2234         * scm/translation-functions.scm (format-bass-figure): inspect
2235         stream-event.
2236
2237         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2238
2239 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
2240
2241         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2242
2243         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2244
2245         * scm/layout-page-layout.scm (make-page-from-systems): new function
2246         (optimal-page-breaks): use the new page-breaking calling convention
2247
2248         * scm/define-context-properties.scm (all-user-translation-properties):
2249         add revokePageTurns
2250
2251         * lily/paper-column-engraver.cc (stop_translation_timestep): add
2252         revokePageTurns  functionality. If there is a special barline within
2253         the breakable region, break there instead of at the end of the region.
2254
2255         * lily/paper-book.cc (pages): use the new page-breaking calling
2256         convention
2257
2258 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
2259
2260         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2261
2262         * scripts/lilypond-book.py: insert \sourcefileline command in
2263         output, so lilypond error messages refer to the spot in the
2264         original .lytex / .itely sourcefile.
2265
2266 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2267
2268         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2269         space to next column for distance to fixed col.
2270
2271         * VERSION (PACKAGE_NAME): release 2.9.14
2272
2273         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2274         if no accidental.
2275
2276         * lily/accidental-engraver.cc (process_acknowledged): don't create
2277         accidental for trill span event. This fixes spurious accidentals
2278         on trills.
2279
2280 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
2281
2282         * scm/define-grob-properties.scm (all-user-grob-properties):
2283         Clarify documentation of side-axis and direction. Thanks to Paul
2284         for the inspiration.
2285
2286         * lily/bar-line.cc: Add documentation for "||:" also in the
2287         interface documentation.
2288
2289 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2290
2291         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2292
2293         * lily/paper-column.cc (set_system): new function.
2294
2295         * lily/spacing-engraver.cc (stop_translation_timestep): store
2296         SpacingSpanner refs in Paper_column.
2297
2298         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2299         compute loose clique spacing using GraceSpacing/SpacingSpanner.
2300
2301 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2302
2303         * lily/beam-engraver.cc (listen_beam): add method for
2304         Grace_beam_engraver too.
2305
2306 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
2307
2308         * python/convertrules.py: Fix indentation bug that broke
2309         conversion of files older than 1.3.117.
2310         Fix escape error in the description for 2.9.6.
2311
2312 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
2313
2314         * lily/*-engraver.cc: convert all try_music functions to listen_*
2315         functions.
2316
2317         * lily/piano-pedal-engraver.cc: some additional cleanups: use
2318         enums to represent pedal types, and calculate more data statically.
2319
2320         * scm/part-combiner.scm (recording-group-emulate): create a
2321         softcoded substitute for recording-group-engraver.cc.
2322
2323         * lily/music.cc: make a common transpose function for events and
2324         music
2325
2326         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2327         ManualMelismaEvent, and obsoletes Melisma_translator.
2328
2329 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2330
2331         * input/test/instrument-name-align.ly: update version.
2332
2333 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
2334
2335         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2336         Doc the --pdf flag to lilypond-book.
2337
2338 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2339
2340         * Documentation/topdocs/NEWS.tely (Top): add description.
2341
2342         * input/regression/tuplet-full-length-note.ly: add file.
2343
2344         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2345         always store axis group.
2346
2347 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2348
2349         * input/regression/instrument-switch.ly: new file.
2350
2351         * lily/instrument-switch-engraver.cc (process_music): new file.
2352
2353         * ly/engraver-init.ly: add Instrument_switch_engraver
2354
2355         * ly/music-functions-init.ly: \instrumentSwitch
2356
2357         * scm/define-context-properties.scm
2358         (all-user-translation-properties): add instrumentCueName
2359
2360         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2361
2362 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2363
2364         * ly/music-functions-init.ly: music function \transposition.
2365
2366         * lily/parser.yy (command_element): softcode \transposition.
2367
2368         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2369         (process_music): oops.
2370
2371         * lily/instrument-name-engraver.cc (start_spanner): new
2372         function. Create spanner when property changes.
2373         (stop_spanner): new function.
2374
2375         * python/convertrules.py (conv): add rule.
2376
2377         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2378         shortInstrumentName iso. instr.
2379
2380         * scm/output-ps.scm (dashed-line): add phase argument to
2381         dashed-line.
2382
2383         * lily/bar-line.cc (dashed_bar_line): new function.
2384         (compound_barline): support \bar "dashed". 
2385
2386         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2387         --output=DIR to DIR/BASE if it is a dir. 
2388
2389         * flower/file-name.cc (file_part): new function
2390         (dir_part): new function
2391
2392         * lily/lily-parser-scheme.cc (LY_DEFINE): 
2393
2394         * DEDICATION: update
2395
2396 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
2397
2398         * lily/instrument-name-engraver.cc: formatting.
2399
2400         * python/convertrules.py (conv): bugfix for \epsfile.
2401
2402 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
2403
2404         * lily/grob.cc:
2405         
2406         * lily/gourlay-breaking.cc: Oops, these should have been included
2407         in my last commit
2408
2409 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2410
2411         * scripts/*.py (program_name): cleanup relocation snippets.
2412
2413         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2414
2415 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
2416
2417         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2418         page-breakable by default
2419
2420         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2421         correctly calculated for a single-system page
2422
2423         * scm/lily-library.scm (interval-sane?): also check that the first number is no
2424         bigger than the second number
2425
2426         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2427         acknowledge that we aren't satisfying constraints)
2428
2429         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2430         non-Items
2431
2432         * lily/grob.cc (pure_height): add minimum-Y-extent
2433
2434         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2435         ragged
2436
2437         * lily/constrained-breaking.cc: convert code to use new Matrix class
2438         (get_best_solution): new function
2439
2440         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2441         is a page with no systems
2442
2443 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2444
2445         * VERSION (PACKAGE_NAME): release 2.9.13
2446
2447         * scm/define-grobs.scm (all-grob-descriptions): remove stray
2448         assignment.
2449
2450 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
2451
2452         * Documentation/topdocs/NEWS.tely (Top): doc new features.
2453
2454         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2455         function.
2456
2457         * scm/define-grob-properties.scm (all-user-grob-properties):
2458         remove grace-space-factor.
2459
2460         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2461         grace-spacing-interface
2462         (spacing-options-interface): add.
2463
2464         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2465
2466         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2467
2468         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2469         GraceSpacing object.
2470
2471         * lily/note-spacing.cc: fix prop list formatting
2472
2473         * lily/beaming-pattern.cc (de_grace): new function. Sensible
2474         beaming for grace notes too.
2475
2476         * input/regression/spacing-grace.ly: update.
2477
2478         * lily/grace-spacing-engraver.cc: new file.
2479
2480         * lily/spacing-spanner.cc: add strict-grace-spacing.
2481
2482 2006-07-20  Graham Percival  <gpermus@gmail.com>
2483
2484         * lily/parser.yy: compile fix.
2485
2486 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2487
2488         * scm/define-grobs.scm (all-grob-descriptions): typo.
2489
2490         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2491         .eps extension from includegraphics.
2492
2493         * scripts/lilypond-book.py (main): add support for --pdf. 
2494
2495         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2496         callback to compute common shortest duration.
2497         (set_springs): typo.
2498
2499         * scm/define-grob-properties.scm (all-user-grob-properties): add
2500         strict-grace-spacing.
2501
2502         * lily/spacing-determine-loose-columns.cc (is_loose_column):
2503         support float_grace_columns_.
2504
2505         * lily/spacing-options.cc (init_from_grob): new file.
2506
2507         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2508
2509         * input/regression/spacing-loose-grace.ly: new file.
2510
2511         * Documentation/topdocs/NEWS.tely (Top): document new feature.
2512
2513         * lily/tuplet-engraver.cc (struct Tuplet_description): read
2514         tupletFullLengthNote too. Choose right bound depending on value.
2515
2516         * input/regression/tuplet-full-length-note.ly: new file.
2517
2518 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
2519
2520         * lily/*-performer.cc: Converted try_music to listen_*
2521
2522         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2523         as a stream-event internally. Introduce event_cause (), deprecate
2524         music_cause ().
2525
2526         * scm/define-music-types.scm: Removed BusyPlayingEvent
2527         
2528 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
2529
2530         * Documentation/user/advanced-notation.itely (Font selection):
2531         Document how to get a list of available fonts using 'lilypond
2532         -dshow-available-fonts blabla'.
2533
2534 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2535
2536         * GNUmakefile.in: filter lily-XXX.pdf files.
2537
2538         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2539
2540         * scm/define-grob-properties.scm (all-internal-grob-properties):
2541         remove delta-pitch. Use delta-position everywhere.
2542
2543         * scm/output-lib.scm (fall::print): use new order.
2544
2545         * scm/output-ps.scm (path): reorder arguments.
2546
2547         * scm/output-svg.scm (path): support for path primitive.
2548
2549         * input/regression/bend-after.ly: new file.
2550
2551         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2552         recipe for eps -> pdf conversion.
2553
2554 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
2555
2556         * lily/parser.yy, lily/lexer.ll: added some simplifications by
2557         Angelo Contardi.
2558
2559 2006-07-19  Graham Percival  <gpermus@gmail.com>
2560
2561         * input/manual/screech-boink.ly: moved to here.
2562
2563         * input/screech-boink.ly: deleted.
2564
2565         * scm/define-grob-properties.scm: clarify doc string.
2566
2567 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2568
2569         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2570
2571         * scm/output-ps.scm (path): define path.
2572
2573         * scm/define-stencil-commands.scm
2574         (ly:register-stencil-expression): add path.
2575
2576         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2577
2578         * ly/engraver-init.ly: add Fall_engraver
2579
2580         * lily/parser.yy (music_function_event): allow musicfunction
2581         without music arg as music_function_event.
2582
2583         * lily/grob-scheme.cc (LY_DEFINE):
2584         ly:grob-robust-relative-extent. New function.
2585
2586         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2587
2588         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2589
2590         * scm/output-lib.scm (fall::print): new function
2591
2592         * lily/fall-engraver.cc (stop_fall): new file.
2593
2594         * ly/music-functions-init.ly: alphabetise.
2595
2596         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2597         base.
2598
2599 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2600
2601         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2602
2603         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2604         doc pdftex usage.
2605
2606         * lily/translator-group.cc (connect_to_context): non const error message.
2607
2608         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2609
2610         * scm/paper.scm (internal-set-paper-size): define landscape to #f
2611         if unset.
2612
2613         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
2614
2615         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2616
2617         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2618         systems.pdftex too.
2619
2620         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2621
2622         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2623
2624         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2625
2626         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2627
2628         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2629
2630         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
2631
2632 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2633
2634         * scm/layout-page-layout.scm: Define module, tidy code, use more
2635         functions iso. a single big one.
2636
2637         * scm/layout-page-dump.scm: move page dump functions used in two
2638         pass spacing to this file. Define module.
2639
2640         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2641          (separate module)
2642
2643         * ly/paper-defaults.ly: use module layout-page-layout.
2644
2645 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
2646
2647         * lily/music.cc: Revised MusicEvent event class. It now contains
2648         event data directly instead of encapsulating it in music. The
2649         previously used class is renamed to OldMusicEvent.
2650
2651         * lily/stream-event.cc: Stream events are now probs.
2652         
2653         * lily/translator-group.cc, lily/translator.cc: Translators can
2654         now listen directly to stream events, by using macros
2655         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2656
2657         * lily/arpeggio-engraver.cc: Converted to use new event system
2658
2659         * THANKS: Corrected spelling mistake.
2660
2661 2006-07-12  Graham Percival  <gpermus@gmail.com>
2662
2663         * Documentation/user/SConscript, make/lilypond-vars.make,
2664         input/GNUmakefile: doc build looks in input/manual instead
2665         of input/test/
2666
2667         * input/manual/ GNUmakefile, SConscript: build files for
2668         input/manual/
2669
2670         * input/test/ various: some files moved to input/manual/ 
2671
2672         * Documentation/user/basic-notation.itely: small updates;
2673         thanks Kieren and Charles!
2674
2675 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2676
2677         * VERSION (PACKAGE_NAME): release 2.9.11
2678
2679         * Documentation/topdocs/NEWS.tely (Top): update prop value 
2680
2681         * Documentation/user/basic-notation.itely (Tuplets): new property
2682         value.
2683
2684 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2685
2686         * python/convertrules.py (conv): tweaks. 
2687
2688         * VERSION (PATCH_LEVEL): bump version.
2689
2690         * python/convertrules.py (conv): add rule for
2691         tupletNumberFormatFunction.
2692
2693         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2694         tupletNumberFormatFunction.
2695
2696         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2697         text through 'text callback.
2698
2699         * lily/time-scaled-music-iterator.cc (construct_children): copy
2700         tweaks generated events.
2701
2702         * scm/define-context-properties.scm
2703         (all-user-translation-properties): remove tupletNumberFormatFunction
2704
2705         * lily/tuplet-engraver.cc (process_music): don't read
2706         tupletNumberFormatFunction
2707
2708         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2709         function.
2710
2711 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
2712
2713         * lily/global-context-scheme.cc: Separated ly:run-translator into
2714         smaller pieces.
2715
2716         * lily/score-engraver.cc, lily/score-performer.cc,
2717         scm/define-context-properties.scm: Make paper/midi output
2718         accessable as a context property.
2719
2720         * lily/score-translator.cc, lily/score-context.cc: Removed.
2721
2722 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
2723
2724         * scm/ps-to-png.scm (Module): 
2725         * scm/framework-tex.scm (Module): 
2726         * scm/framework-ps.scm (Module): 
2727         * scm/backend-library.scm (Module): 
2728         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2729         "dDEVICEHEIGHTPOINTS".
2730
2731 2006-07-04  Graham Percival  <gpermus@gmail.com>
2732
2733         * Documentation/user/ various: general improvements to
2734         "working with lilypond files" section.
2735
2736 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
2737
2738         * lily/sequential-iterator.cc: Change the default get_music_list
2739         to read elements-callback music property
2740
2741         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2742         processing of multimeasure rests. Softcoded
2743         sequential-music-iterator.
2744
2745         * lily/sequential-music-iterator.cc: Removed.
2746
2747 2006-06-28  Graham Percival  <gpermus@gmail.com>
2748
2749         * Documentation/user/basic-notation.itely: clarify \repeatTie.
2750
2751 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
2752
2753         * lily/parser.yy: Wrap non-post-events in EventChords before
2754         assigning them to identifiers.
2755
2756 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
2757
2758         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2759         gives correct vertical placement of \bar ":" in all staff
2760         sizes. Thanks Martial!
2761
2762 2006-06-26  Graham Percival  <gpermus@gmail.com>
2763
2764         * Documentation/user/invoking.itely : minor update from mailist.
2765
2766 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
2767
2768         * lily/ various: Introduce stream events of types Prepare,
2769         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2770         ChangeContext, SetProperty, RevertProperty, Override and Revert.
2771
2772         * lily/global-context*.cc: Time is now -inf before iteration
2773         starts.
2774
2775         * lily/include/context.hh: Removed unique_, init_
2776
2777         * Documentation/topdocs/NEWS: Make the feathered beam example
2778         avoid triggering a bug.
2779
2780 2006-06-24  Graham Percival  <gpermus@gmail.com>
2781
2782         * Documentation/user/ various: small additions from mailist.
2783
2784 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
2785
2786         * ly/performer-init.ly: Add some missing links in the context
2787         hierarchy for MIDI output. There are probably some more missing!
2788
2789 2006-06-21  Graham Percival  <gpermus@gmail.com>
2790
2791         * Documentation/user/ various: minor spelling fixes;
2792         thanks Dave Luttinen!
2793
2794         * Documentation/user/ various: small clarifications;
2795         thanks Anthony Youngman!
2796
2797 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2798
2799         * po/fr.po: add \n appropriately.
2800
2801         * lily/lexer.ll: remove ? from version-seen?  
2802
2803 2006-06-19  John Mandereau  <john.mandereau@free.fr>
2804
2805         * po/fr.po; update translation, by Jean-Charles Malahieude and
2806         John Mandereau.
2807
2808 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2809
2810         * THANKS: add Markus Schneider.
2811
2812         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2813         Staff_symbol_engraver
2814
2815         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2816         replace staff_engraver
2817
2818         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2819         spanner.
2820
2821         * lily/staff-collecting-engraver.cc
2822         (acknowledge_end_staff_symbol): new function
2823
2824         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
2825
2826         * lily/staff-collecting-engraver.cc
2827         (acknowledge_end_staff_symbol): new function.
2828
2829         * lily/main.cc: switch on relocation by default.
2830
2831 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2832
2833         * lily/spacing-spanner.cc (musical_column_spacing): set
2834         compound_fixed_note_space to 0.0. Document why.
2835
2836         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2837         range of inverse_hooke_
2838         (Simple_spacer): init completely.
2839         (fits): const
2840         (get_line_configuration): don't use cols.resize(); it introduces
2841         initialized data.
2842
2843         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
2844
2845         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2846
2847         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2848         try. Divide by beatlength.
2849
2850         * input/regression/beaming-ternary-metrum.ly: update doc.
2851         add beatLength hack.
2852
2853         * scm/music-functions.scm (make-time-signature-set): add
2854         standard-beat-grouping. 
2855
2856 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2857
2858         * input/regression/tie-whole.ly: new file.
2859
2860         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2861         cross center of note head in case of invisible stem. 
2862
2863 2006-06-16  Graham Percival  <gpermus@gmail.com>
2864
2865         * Documentation/user/ various: small fixes from mailist.
2866
2867 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2868
2869         * lily/breathing-sign.cc (offset_callback): idem.
2870
2871         * lily/align-interface.cc (align_to_fixed_distance): remove
2872         hungarian suffix.
2873
2874         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2875         x%2==0.
2876
2877 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2878
2879         * VERSION (PACKAGE_NAME): release 2.9.9
2880
2881         * ly/lilypond-book-preamble.ly: add \version
2882
2883 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
2884
2885         * scripts/lilypond-book.py (PREAMBLE_LY): include
2886         lilypond-book-preamble.ly
2887
2888         * lily/stem.cc (get_beaming): return max of 0 and
2889         scm_ilength. Fixes slurring from/to beams.
2890
2891         * ly/lilypond-book-preamble.ly: new file.
2892
2893         * lily/slur.cc: add inspect-index feature.
2894
2895 2006-06-13  Graham Percival  <gpermus@gmail.com>
2896
2897         * Documentation/user/tutorial.itely: trivial fix.
2898
2899 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
2900
2901         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2902         all non-event music in the parser via MAKE_SYNTAX.
2903
2904         * lily/parser-scheme.cc: Add ly:parser-error function
2905
2906         * scm/paper.scm: fix typo
2907
2908 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
2909
2910         * THANKS: add RT.
2911
2912         * lily/font-config.cc (init_fontconfig): add warning if cache_file
2913         is null.
2914
2915         * buildscripts/output-distance.py (test_compare_signatures):
2916         timing routines.
2917         (read_signature_file): use new signature format.
2918
2919         * scm/stencil.scm (write-system-signature): simpler signature
2920         format.
2921
2922         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2923         for beamed case. 
2924
2925         * lily/note-spacing.cc (stem_dir_correction): don't inspect
2926         stem_end_position, but estimate instead. 
2927
2928         * lily/tuplet-bracket.cc (calc_positions): look at
2929         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2930         brackets narrower than beams. 
2931
2932         * lily/lexer.ll: set version-seen? even if version is
2933         INVALID. 
2934
2935         * lily/rest.cc (y_offset_callback): bugfix: decide position
2936         override based on scm_is_number(). Fixes \rest on center staff
2937         line. 
2938
2939         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2940         patterns for 16th triplets.
2941
2942 2006-06-10  Graham Percival  <gpermus@gmail.com>
2943
2944         * Documentation/user/ page.itely, global.itely: editing
2945         and reorg.
2946
2947         * Documentation/user/ various: findex -> funindex.
2948
2949 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
2950
2951         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2952         insert extra tuplet events.
2953
2954 2006-06-10  Graham Percival  <gpermus@gmail.com>
2955
2956         * Documentation/user/programming-interfaces.itely: add
2957         info from NEWS.
2958
2959         * python/convertrules.py: add annotatefoo -> annotate-foo
2960         rules.
2961
2962         * Documentation/user/global.itely: start editing.
2963
2964         * Documentation/user/page.itely: major editing, new spacing
2965         docs.
2966
2967 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
2968
2969         * scm/define-markup-commands.scm (wordwrap-markups): use
2970         output-def 'line-width if undefined.
2971
2972         * HACKING: trim outdated info.
2973
2974 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
2975
2976         * scm/define-grobs.scm (all-grob-descriptions): Add
2977         line-spanner-interface to all grobs that already have
2978         text-spanner-interface or dynamic-text-spanner-interface
2979
2980         * scm/page.scm: Rename annotate{headers,systems,page}->
2981         annotate-*
2982
2983         * input/regression/page-spacing.ly,
2984         input/regression/page-layout-manual-position.ly: idem
2985
2986 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2987
2988         * lily/line-spanner.cc: cleanup property list.
2989
2990         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2991         generator expressions (2.3 compat). 
2992
2993 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
2994
2995         * lily/vertical-align-engraver.cc: Make sure that the
2996         align{Above,Below}Context properties are included in the automatic
2997         documentation.
2998
2999 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
3000
3001         * scm/paper-system.scm (paper-system-annotate): also annotate the
3002         estimated pure-Y-extent
3003
3004         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
3005
3006         * lily/system.cc (break_into_pieces): set the estimated height
3007         of each child system
3008
3009         * lily/stem.cc (pure_height): new pure-Y-extent callback
3010
3011         * lily/staff-symbol-referencer.cc (callback): don't destroy
3012         the staff-position property
3013
3014         * lily/hara-kiri-group-spanner.cc (request_suicide): split
3015         consider_suicide into two functions
3016
3017         * lily/constrained-breaking.cc (resize): use the new pure
3018         callbacks to estimate the height of a system
3019
3020         * lily/axis-group-interface.cc (pure_group_height): new
3021         side-effect-free VerticalAxisGroup height-callback
3022
3023         * lily/align-interface.cc (get_extents_aligned_translates):
3024         split align_elements_to_extents into two functions
3025         (get_pure_child_y_translation): new function
3026
3027         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3028
3029         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3030
3031         * lily/paper-score.cc: cache break_indices and columns
3032
3033         * lily/side-position-interface.cc: new pure-Y-extent callbacks
3034         
3035 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
3036
3037         * lily/font-config.cc (init_fontconfig): do the init if
3038         cache_file, but don't look at cache_file.
3039
3040         * input/regression/quote-tie.ly: new file.
3041
3042         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3043         to Head_event_tuple, so we deal gracefully with ties on
3044         cue-endings.
3045
3046         * lily/pango-font.cc (pango_item_string_stencil): type correctness
3047         for FcChar8*
3048
3049 2006-06-08  Graham Percival  <gpermus@gmail.com>
3050
3051         * input/test/ smart-transpose.ly, reverse-music.ly:
3052         \applyMusic to music functions update, thanks Michael!
3053
3054 2006-06-07  Graham Percival  <gpermus@gmail.com>
3055
3056         * input/test/ add-staccato.ly, add-text-script.ly,
3057         unfold-all-repeats.ly, music-box.ly: \applyMusic to
3058         music functions update, thanks to Michael Meixner.
3059
3060         * Documentation/user/music-glossary.tely: small fix
3061         from Francisco.
3062
3063         * Documentation/user/ various: minor additions from mailist.
3064
3065         * Documentation/user/lilypond.tely, basic-notation.itely:
3066         small test of @funindex.  (works here)
3067
3068         * input/test/font-table.ly: reduce size to partially
3069         de-ugly version in manual.
3070
3071         * Documentation/user/page.itely: new file (split former
3072         "global issues" into "page settings" and "non-musical
3073         output".
3074
3075         * Documentation/user/ various: fix @ref{}s to match
3076         new chapter names (above).
3077
3078 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3079
3080         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3081
3082 2006-06-06  Graham Percival  <gpermus@gmail.com>
3083
3084         * Documentation/user/advanced-notation.itely: add example
3085         for segno/coda on barline.
3086
3087         * tex/texinfo.tex: merge from upstream.
3088
3089 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
3090
3091         * scripts/lilypond-book.py (process_snippets): Argument fix.
3092
3093         * SConstruct:
3094         * buildscripts/builder.py:
3095         * lily/SConscript: 
3096         * mf/SConscript: 
3097         * Documentation/user/SConscript:  More SCons fixes.
3098
3099 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
3100
3101         * lily/font-config.cc (init_fontconfig): Only initialize if
3102         global cache_file is found.
3103
3104 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
3105
3106         * ly/music-functions-init.ly: Updated \overrideProperty to use the
3107         new \applyOutput.
3108
3109 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3110
3111         * VERSION (PACKAGE_NAME): release 2.9.8
3112
3113         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3114         function. Delay ledger modifying ledgered grobs to
3115         stop_translation_timestep(), to ensure that we're ledgering
3116         according to the new spanner.
3117         (acknowledge_staff_symbol): don't check for non-NULL
3118         staff_sym->get_bound()
3119
3120         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3121         creation.
3122
3123         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3124         pictures too.
3125
3126         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3127         directly from srcdir/stepmake/aclocal.m4
3128         
3129         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3130         disting MISC files.
3131
3132         * lily/simple-spacer.cc (get_column_desc): desc -> description.
3133
3134 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
3135
3136         * lily/simple-spacer.cc (get_line_configuration): add
3137         keep-inside-line rods
3138         (struct Column_desc): add constructor
3139         (struct Rod_desc): add constructor
3140         (get_line_forces): check for forced page breaks here too
3141
3142         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3143         support/elements cycles between InstrumentNames and AxisGroups
3144
3145 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3146
3147         * config.make.in (METAFONT): remove MAKEINFO_VERSION
3148
3149         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3150         make-txt-files target.
3151
3152         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3153         make-txt-files target.
3154
3155         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3156
3157         * stepmake/stepmake/generic-vars.make (distdir): create dist in
3158         top-build-dir.
3159
3160 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
3161
3162         * Documentation/user/instrument-notation.itely,
3163         input/regression/breathing-sign-ancient.ly,
3164         input/test/divisiones.ly: Removed redundant property settings for
3165         vaticana contexts.
3166
3167         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3168         fix lyrics alignment problems.  They are implemented now as scheme
3169         functions that add the appropriate unicode char to the first lyric
3170         event rather than adding a separate lyric event.  Minor edit of
3171         comments.
3172
3173 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3174
3175         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3176         pollute src dir with built .txt files, but install directly from
3177         Documentation/topdocs/out/
3178
3179         * buildscripts/output-distance.py
3180         (ComparisonData.create_html_result_page): put version/directories
3181         in table header.
3182
3183         * Documentation/topdocs/NEWS.tely (Top): document spacing section
3184         feature.
3185
3186         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3187         Patch by Karl Hammar
3188         
3189         * buildscripts/readlink.py: add  file.
3190         Patch by Karl Hammar
3191
3192 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
3193
3194         * lily/tuplet-number.cc (print): prevent stencil from being
3195         garbage collected.
3196
3197 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3198
3199         * scm/stencil.scm (write-system-signature): explicitly 
3200         -well, superfluously- close output port.
3201
3202         * buildscripts/output-distance.py (main): oops. Add extra argument.
3203
3204 2006-06-05  Graham Percival  <gpermus@gmail.com>
3205
3206         * Documentation/user/music-glossary.tely: clarified example
3207         from Francisco Vila, thanks!
3208
3209 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3210
3211         * input/regression/spacing-section.ly: new file.
3212
3213         * lily/input.cc (programming_error): new function.
3214
3215         * lily/spacing-engraver.cc (try_music): new function. Accept
3216         spacing-section-event
3217
3218         * lily/spacing-spanner.cc (set_springs): take slices of all
3219         columns for spacing.
3220
3221         * lily/include/paper-column.hh (class Paper_column): add
3222         Paper_column::compare.
3223
3224         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3225
3226         * scm/define-music-types.scm (music-descriptions): add
3227         SpacingSectionEvent
3228
3229         * lily/music-iterator.cc (report_event): use programming_error for
3230         sending non-event error.
3231
3232         * lily/input.cc (programming_error): new function
3233
3234         * buildscripts/output-distance.py (main): use compare-XXX for
3235         compare files.
3236         (main): --threshold option, default at 0.30
3237
3238         * output-distance.py (main): add --threshold option.
3239
3240 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3241
3242         * scm/paper-system.scm (paper-system-annotate): fix problem when
3243         annotating an empty system
3244
3245 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
3246
3247         * GNUmakefile.in: reinstate old web tar/copying.
3248
3249 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3250
3251         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3252         nothing changes. (Erik S) 
3253
3254         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3255         count. (Erik S)
3256
3257 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3258
3259         * scm/define-markup-commands.scm (whiteout): do not force
3260         foreground color of argument markup to black.
3261
3262         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3263         the left of the arrow, instead of below the arrow name, so that,
3264         when two little arrows are vertically stacked, their dimensions
3265         and name should not overlap. Add a color key parameter.
3266
3267         * scm/paper-system.scm (paper-system-annotate): Annotate
3268         next-space+next-padding instead of next-space. Annotate space
3269         between next-padding and next-space+padding, respectively, and
3270         following system extent and refpoint-Y-extent. Use colors.
3271
3272         * scm/page.scm (annotate-page): translate annotations slightly to
3273         the right.
3274
3275 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3276
3277         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3278         fix for x-staff slurs. Thanks Joe!
3279
3280         * buildscripts/output-distance.py
3281         (SystemLink.output_expression_change_count): keep track of changed
3282         details, and dump in details html page.
3283  
3284         * input/regression/figured-bass-staff.ly: add note about setting
3285         properties in Staff context.
3286
3287         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3288         add slurs and ties to support too.
3289
3290         * buildscripts/output-distance.py (main): set dest_dir
3291         argument. Add --max-count option.
3292
3293 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
3294
3295         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
3296         shortcuts for special unicode chars that are useful in chant
3297         notation.  Revised exisiting and added new comments.
3298
3299 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3300
3301         * make/mutopia-rules.make: remove duplicate recipe.
3302
3303 2006-06-02  Werner Lemberg  <wl@gnu.org>
3304
3305         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3306         Add support for U+0132 (IJ) and U+0133 (ij).
3307
3308 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3309
3310         * buildscripts/output-distance.py (FileLink): new class. collect
3311         info systems from one .ly file. 
3312         (FileLink.link_files_for_html): further tweaks.
3313
3314 2006-06-02  Graham Percival  <gpermus@gmail.com>
3315
3316         * tex/texinfo.tex: partial fix for @funindex.
3317
3318         * Documentation/user/macros.tely: uncomment @funindex (doesn't
3319         break anything).
3320
3321 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3322
3323         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3324
3325         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3326         @example too. Backportme.
3327
3328 2006-06-02  Graham Percival  <gpermus@gmail.com>
3329
3330         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3331         from Werner Lemberg.
3332
3333 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
3334
3335         * Documentation/user/music-glossary.tely: additional spanish
3336         updates and a lyrics fix in an example.
3337
3338 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
3339
3340         * scm/define-grob-properties.scm: Previous patch contained
3341         spurious line from another patch not yet committed.  Fixed.
3342
3343         * scm/define-grob-properties.scm: Add missing doc strings for
3344         ancient notation.
3345
3346 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3347
3348         * buildscripts/output-distance.py
3349         (ComparisonData.write_text_result_page): separate the scores, sort
3350         by geo_score.
3351
3352         * scm/framework-eps.scm (output-classic-framework): start at 1 for
3353         system signatures.
3354
3355         * buildscripts/output-distance.py (me_path): use argv[0] for
3356         sys.path extension
3357         (ComparisonData.img_cell): use colored borders.
3358
3359         * scm/stencil.scm (write-system-signature): escape newlines too.
3360         (write-system-signature): use (1,-1) interval for empty interval
3361
3362 2006-01-01  Graham Percival  <gpermus@gmail.com>
3363
3364         * Documentation/user/music-glossary.tely: Spanish updates
3365         from Francisco Vila.
3366
3367         * Documentation/user/lilypond-book.itely: addition from
3368         Vaclav Smilauer.
3369
3370         * Documentation/user/ various: edits, small additions
3371         from mailist, etc.
3372
3373 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
3374
3375         * GNUmakefile.in (tree-lib-prefix-current):
3376         (tree-share-prefix-current): Use version number in tree, add
3377         `current' symlinks.
3378
3379 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3380
3381         * GNUmakefile.in: write VERSION, again.
3382
3383         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3384         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3385
3386         * stepmake/aclocal.m4: robuster version detection.
3387
3388         * buildscripts/output-distance.py
3389         (ComparisonData.create_html_result_page): copy only if file
3390         exists, fixup src paths.
3391
3392         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3393
3394 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
3395
3396         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3397         Another datarootdir reto.
3398
3399         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3400         available.  This should be moved to postinstall-lilypond-doc.
3401
3402 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3403
3404         * GNUmakefile.in: simplify local-WWW-post. 
3405         remove -type l from find.
3406
3407         * buildscripts/output-distance.py (ComparisonData.compare_trees):
3408         fixes. Don't follow symlinks.
3409         (ComparisonData.create_html_result_page): remove previous results.
3410         insert ../python in path.
3411
3412         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3413
3414 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
3415
3416         * config.make.in (datadir): Add datarootdir to silence autoconf.
3417
3418         * stepmake/aclocal.m4: Update for autoconf-2.59d.
3419
3420 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
3421
3422         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3423
3424         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3425         slash beams too wide.
3426
3427 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3428
3429         * VERSION: release 2.9.7
3430         
3431 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
3432
3433         * lily/relocate.cc (read_relocation_dir): Do not blindly
3434         dereference DIR.
3435
3436 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3437
3438         * lily/parser.yy: replace THIS by PARSER
3439
3440         * Documentation/index.html.in: add link to test-results.html page.
3441
3442         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3443
3444         * scm/translation-functions.scm (format-bass-figure): translate
3445         digits over 10 to the left
3446
3447         * scm/define-markup-commands.scm (translate-scaled): new markup.
3448
3449         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3450         7 glyph. 
3451
3452         * ly/engraver-init.ly: add Figured_bass_engraver
3453
3454         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3455
3456         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3457
3458         * lily/score-engraver.cc (announce_grob): only note START announces.
3459
3460         * lily/include/engraver-group.hh (Translator_group):
3461         acknowledge_hash_table_ is now drul.
3462
3463         * lily/engraver.cc (announce_end_grob): new method.
3464
3465         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3466
3467         * lily/translator-dispatch-list.cc (create): take start_end argument.
3468
3469         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3470         acknowledge_static_array_ to drul
3471
3472         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3473
3474         * scm/define-grob-interfaces.scm
3475         (bass-figure-alignment-interface): add bass-figure-alignment-interface
3476
3477         * scm/define-grobs.scm (all-grob-descriptions): add
3478         BassFigureAlignmentPositioning
3479
3480         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3481         number stays up to date. Backportme.
3482
3483 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
3484
3485         * Documentation/user/basic-notation.itely (Bar lines): Document
3486         the "||:" bar type. 
3487
3488 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
3489
3490         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3491
3492         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3493         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
3494         build.
3495
3496         * Resurrect `scons lily' build.
3497
3498         * SConstruct (symlink_tree): Bugfix: link
3499         music-drawing-routines.ps to file iso directory.
3500
3501         * lily/SConscript: Remove kpath-guile from LIBS.
3502
3503         * SConstruct (libdir_package_version): Typo.
3504         (configure): Comment-out fontforge for lack of fontforge.pc .
3505         Also add libdir* to environment.
3506
3507 2006-05-30  Graham Percival  <gpermus@gmail.com>
3508
3509         * Documentation/user/ various: minor additions from mailist and
3510         editing.
3511
3512 2006-05-30  Paco <fravd@ya.com>
3513
3514         * Documentation/user/music-glossary.tely: numerous corrections and
3515         some new translations.
3516
3517 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3518
3519         * BackportmeStart.
3520         
3521         * buildscripts/output-distance.py
3522         (ComparisonData.create_html_result_page): new routine: summarise
3523         results in HTML page with images. 
3524         (ComparisonData.create_text_result_page): create summary text files too.
3525
3526         * GNUmakefile.in (web-ext): package .signature files too. They
3527         compress well. 
3528
3529         * scm/stencil.scm (write-system-signature): typo.
3530
3531         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3532
3533         * scm/stencil.scm (write-system-signature): better escaping.
3534         only write signature for music systems, not for markup systems.
3535
3536         * scm/framework-ps.scm (output-framework): dump-signatures support
3537         for plain output.
3538
3539         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3540
3541         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3542         for -dno-point-and-click
3543
3544         * lily/grob.cc (get_print_stencil): don't read
3545         point_and_click_global to determine whether to set grob-cause.
3546
3547 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3548
3549         * buildscripts/output-distance.py (main): new function.
3550         (ComparisonData): new class.
3551
3552         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3553         careful with generating new LedgerLineSpanners.
3554
3555         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3556
3557         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3558         context. This fixes double ledger lines in output. 
3559
3560         * lily/system.cc (get_paper_system): remove 3 layer limit.
3561
3562         * buildscripts/output-distance.py (SystemLink.distance): new
3563         file. Compare signatures.
3564
3565         * python/safeeval.py (SafeEval.visitUnarySub): new file.
3566
3567         * lily/grob-array.cc (remove_duplicates): rename from
3568         uniq(). Sort before calling uniq() so it actually works.
3569
3570 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3571
3572         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3573         \version from lilypond file snippet.
3574         (Lilypond_file_snippet.ly): oops. typo.
3575         (find_toplevel_snippets): urgh. again.
3576
3577         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3578         prevent duplicated broken items in output.
3579
3580         * scm/framework-eps.scm (output-classic-framework): only dump if
3581         dump-signatures is set.
3582
3583         * scm/lily.scm (define-scheme-options): add dump-signatures option.
3584
3585         * scm/stencil.scm (write-system-signature): new routine: write
3586         python parseable signature of a separate paper system.
3587         BackportmeEnd.
3588         
3589 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
3590
3591         * lily/stanza-number-engraver.cc (process_music): use is_markup()
3592         iso is_string().
3593         include header.
3594
3595 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
3596
3597         * translator-group.cc: send music events to engravers in
3598         non-bottom contexts.
3599
3600         * tuplet-engraver.cc: process tuplet brackets in correct order.
3601
3602 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3603
3604         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3605         arg 2 might point us to a new binary (patch by Karl Hammar)
3606         
3607 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3608
3609         * VERSION (PACKAGE_NAME): release 2.9.6
3610
3611         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
3612
3613         * Documentation/user/*.itely: 2nd
3614         attempt: replace funindex -> findex globally.
3615
3616 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3617
3618         * input/no-notation/display-lily-tests.ly: fix \applyOutput
3619         test. Add \break, \pageBreak, \pageTurn, etc, tests.
3620
3621         * scm/define-music-display-methods.scm: display methods for
3622         breaks. Fix \applyOutput.
3623
3624 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3625
3626         * Documentation/user/macros.itexi: comment out funindex expansion. 
3627
3628         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3629         everywhere.
3630
3631         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3632         Karl Hammar. Backportme.
3633  
3634         * Documentation/user/advanced-notation.itely (Balloon help): idem.
3635
3636         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3637
3638         * Documentation/user/programming-interface.itely (Running a
3639         function on all layout objects): idem.
3640
3641         * Documentation/user/introduction.itely (Automated engraving):
3642         update \applyOutput syntax
3643
3644         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3645         remove debugging hook.
3646
3647         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3648         expansion. 
3649
3650         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3651
3652         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3653         TEXI2DVI_FLAGS to texi2dvi invocation. 
3654
3655 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
3656
3657         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3658         works. More work is done by iterator now, and engraver has been
3659         very much simplified.
3660
3661         * lily/translator-group.cc: try_music is now invoked through a
3662         listener
3663
3664         * lily/*-iterator.cc: Massive cleanups. Junked
3665         try_music_in_children globally. Renamed try_music to report_event,
3666         and made that method descend to a bottom context automatically.
3667
3668         * lily/event-iterator.cc: New file.
3669
3670         * lily/output-property-iterator.cc,
3671         lily/old-lyric-combine-music-iterator.cc: Removed.
3672
3673         * python/convert-rules.py: Modified the syntax for \applyOutput.
3674
3675 2006-05-23  Graham Percival  <gpermus@gmail.com>
3676
3677         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3678         creation.
3679
3680         * Documentation/user/ various: stuff that might have helped
3681         to fix the pdf creation, plus some minor doc additions.
3682
3683         * Documentation/user/changing-defaults.itely: remove @b from
3684         @b{ @internasref{foo}}; this breaks texi2dvi -E.
3685
3686 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3687
3688         * lily/beaming-pattern.cc (beamify): deal with negative start
3689         moments for beaming patterns.
3690
3691 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3692
3693         * lily/beaming-info.cc (beamify): new function: read beatLength
3694         and beatGrouping from context. 
3695
3696         * input/regression/beam-beat-grouping.ly (Module): new file.
3697
3698         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3699
3700         * lily/beam.cc (get_beam_segments): generate events for
3701         max_connect_ case too.
3702         (get_beam_segments): read Stem::max-beam-connect.
3703
3704         * input/regression/beam-single-stem.ly: new file.
3705
3706         * lily/stem.cc (set_beaming): use #f as signaling value for
3707         beamcount 0.
3708
3709         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3710
3711         * lily/beam.cc (set_beaming): read clip-edges property.
3712         (calc_direction): don't suicide for single stem.
3713
3714         * lily/beaming-info.cc (best_splitpoint_index): take bool*
3715         argument, remove 1<<15 hack. Remove clip_edges() 
3716
3717         * lily/hairpin.cc (print): only do padding for nonmusical bounds
3718
3719 2006-05-21  Graham Percival  <gpermus@gmail.com>
3720
3721         * Documentation/user/basic-notation.itely: reorg.
3722
3723         * Documentation/user/ various: minor fixes.
3724
3725 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
3726
3727         * lily/stencil-expression.cc (register_stencil_head): opps, append
3728         to cdr of static SCM object.
3729
3730 2006-05-19  Graham Percival  <gpermus@gmail.com>
3731
3732         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3733         update framework for command index.  DOC WRITERS: use @funindex
3734         instead of @cindex @code{}.
3735
3736         * Documentation/user/ various: replace @cindex @code{} => @funindex
3737
3738 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
3739
3740         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3741         case positions is set manually. 
3742
3743 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
3744         
3745         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3746         rules to Scheme.
3747
3748 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
3749
3750         * Documentation/user/changing-defaults.itely (Contexts explained):
3751         use absolute dimension for @image.
3752
3753         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3754         out image for illustration too.
3755         ($(outdir)/%.png): add more png <-> eps rules. 
3756
3757 2006-05-17  Graham Percival  <gpermus@gmail.com>
3758
3759         * Documentation/user/ various: remove trailing whitespace, cosmetic
3760         change to reduce changes produced by diff.
3761
3762 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
3763
3764         * lily/main.cc (do_chroot_jail): correctness tweak.
3765
3766         * python/lilylib.py (system): import subprocess in system () only.
3767
3768         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3769
3770         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3771         variable. Backportme.
3772
3773 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
3774         
3775         * lily/parser.yy: Change all syntax rules of type Music to SCM type
3776
3777 2006-05-17  Werner Lemberg  <wl@gnu.org>
3778
3779         * lily/lexer.ll (init_signature_has_table): Add
3780         `scm-scm-music-music'.
3781
3782         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3783         (Generic_prefix_music_scm): Add rule for it.
3784
3785         * lily/quote-iterator.cc (Quote_iterator::process): Handle
3786         `quoted-transposition' property.
3787
3788         * ly/music-functions-init.ly (transposedCueDuring): New function.
3789
3790         * scm/define-music-properties.scm (all-music-properties): Updated.
3791
3792         * Documenation/topdocs/NEWS.itely: Document it.
3793
3794 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
3795
3796         * python/lilylib.py (system): move import subprocess to system()
3797         definition. 
3798
3799         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3800
3801         * VERSION (PATCH_LEVEL): release 2.9.5
3802         
3803         * Documentation/topdocs/INSTALL.texi (Top): update versions and
3804         build instructions. 
3805
3806         * ly/engraver-init.ly: switch on hairpinToBarline by default.
3807
3808 2006-05-16  Graham Percival  <gpermus@gmail.com>
3809
3810         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3811
3812         * Documentation/user/ various: minor fixes.
3813
3814 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
3815
3816         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3817
3818 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
3819
3820         * Documentation/user/advanced-notation.itely (Instrument names):
3821         Modified obsolete instruction on how to move instrument names away
3822         from the staves. Hmm, at second thought the bug probably has been
3823         solved, so the full bug description should probably be removed.
3824
3825 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
3826
3827         * lily/dynamic-engraver.cc (typeset_all): hang ending on
3828         currentCommandColumn. 
3829
3830         * lily/hairpin.cc (print): also add padding for non-neighbor
3831         hairpin bounds.
3832
3833         * scm/define-context-properties.scm
3834         (all-user-translation-properties): add hairpinToBarline
3835
3836         * input/regression/hairpin-to-barline.ly: new file.
3837
3838         * lily/context.cc (internal_send_stream_event): thinko fix.
3839
3840         * lily/tie.cc (set_default_control_points): robustness fix.
3841
3842         * python/musicxml.py (Part.interpret): don't complain about
3843         incomplete measures.
3844
3845         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3846         new music if last_event_chord() returned None.
3847
3848         * python/musicxml.py (Part.interpret): skip back over chord notes.
3849
3850 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
3851         
3852         * lily/percent-repeat-engraver.cc, lily/parser.yy,
3853         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3854         lily/slash-repeat-engraver.cc,
3855         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3856         iterator sends PercentEvents
3857
3858         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3859         rework tuplets: send start/stop events to engraver
3860
3861         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3862         dispatchers event-source and events-below to Context
3863         
3864 2006-05-15  Graham Percival  <gpermus@gmail.com>
3865
3866         * Documentation/user/README.txt: update info for doc writers.
3867
3868         * Documentation/user/programming-interface.itely: integrate
3869         Nicolas' fixes for chapter rewrite.
3870
3871         * Documentation/user/ various: minor fixes.
3872
3873 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
3874
3875         * lily/clef-engraver.cc: cleanup.
3876
3877         * Documentation/user/GNUmakefile: dist context-example.eps too.
3878
3879         * lily/key-engraver.cc (create_key): use
3880         explicitKeySignatureVisibility for cancellation too. 
3881
3882         * lily/font-config.cc (init_fontconfig): don't close file if
3883         f==NULL. 
3884
3885 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
3886
3887         * Documentation/topdocs/NEWS.tely: niente and rotation news
3888
3889 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
3890
3891         * lily/include/stencil.hh
3892         * lily/stencil.cc (rotate): new function. Makes it possible
3893         to rotate a stencil around a given offset.
3894
3895         * lily/grob.cc (get_print_stencil): add rotation support
3896
3897         * lily/stencil-interpret.cc (interpret_stencil_expression):
3898         add rotation support
3899
3900         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3901
3902         * scm/define-grob-properties.scm: add 'rotation property
3903
3904         * scm/define-markup-commands.scm: add rotate markup command
3905         
3906         * scm/output-ps.scm: add rotation support in PostScript backend
3907
3908         * scm/output-svg.scm: add rotation support in SVG backend
3909
3910 2006-05-13  Graham Percival  <gpermus@gmail.com>
3911
3912         * Documentation/user/music-glossary.itely: French correction.
3913
3914         * Documentation/user/programming-interface.itely: major
3915         new docs, some reorg, some info from Nicolas.
3916
3917         * Documentation/user/ various: small fixes.
3918
3919 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
3920
3921         * Documentation/user/programming-interface.itely (Markup
3922         programmer interface): Remove duplicate text.
3923
3924 2006-05-12  Graham Percival  <gpermus@gmail.com>
3925
3926         * Documentation/user/context-example.eps: new file.
3927
3928         * Documentation/user/changing-defaults.itely: set up file to
3929         use eps image.
3930
3931         * Documentation/user/programming-interface.itely: changes
3932         from mailist.
3933
3934 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
3935
3936         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3937
3938 2006-05-11  Graham Percival  <gpermus@gmail.com>
3939
3940         * Documentation/user/programming-interface.itely: first round of
3941         editing and merging emails from Nicolas.
3942
3943         * Documentation/user/scheme-tutorial: minor edit.
3944
3945 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
3946
3947         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3948         XML attributes.
3949         (Xml_node.message): use it.
3950
3951         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
3952         oops. Add duration argument.
3953
3954 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
3955
3956         * lily/paper-column-engraver.cc (make_columns):
3957         * scm/define-grobs.scm: Revert my previous change and set the default
3958         in define-grobs.scm instead.
3959
3960 2006-05-09  Graham Percival  <gpermus@gmail.com>
3961         
3962         * Documentation/user/changing-defaults.itely: general editing,
3963         info about \set and \override.
3964
3965         * Documentation/user/tweaking.itely, advanced-notation.itely:
3966         fixes from Dave Luttinen, thanks!
3967
3968 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
3969
3970         * lily/paper-column-engraver.cc (make_columns): By default, a column
3971         needs to be breakable.
3972
3973 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
3974
3975         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3976         Attributes methods
3977         (musicxml_time_to_lily): idem
3978         (musicxml_key_to_lily): idem
3979         (instrument_drumtype_dict): dict for supported drumtypes.
3980         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3981         moments and pending mm rests
3982         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3983         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3984         (musicxml_voice_to_lily_voice): add mode change.
3985         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3986         speed and less memory usage (factor 5 to 10).
3987         (convert): write -defs.ly  and driver file separately so people
3988         can script their own part extraction.
3989
3990         * python/musicxml.py (minidom_demarshal_node): new function:
3991         separate minidom handling.
3992         (lxml_demarshal_node): new function: support lxml.etree too.
3993         (Xml_node.message): new function: verbose error message, with XML
3994         path to offending node.
3995         (Attributes.get_measure_length): sane interface to MusicXML attributes.
3996         (Part_list.generate_id_instrument_dict): new method: collect
3997         instrument names, to be able to set drum_type.
3998         (Part.interpret): handle underfull measures
3999         (Part.interpret): assign instrument names.
4000
4001         * python/musicexp.py (Output_printer.close): new method
4002         (MusicWrapper.print_ly): new class: support other modes,
4003         eg. \drummode
4004         (BarCheck.print_ly): new class. Support bar checks, with comments
4005         and fancy barchecks. 
4006         (NoteEvent.__init__): also set drum_type for drum notes.
4007         (MultiMeasureRest.lisp_expression): dump mm rests.
4008
4009         * lily/paper-column-engraver.cc (stop_translation_timestep): set
4010         line-break-permission if forbidBreak is not set.
4011
4012 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
4013
4014         * scm/define-context-properties.scm:
4015         * scm/define-grob-properties.scm:
4016         * scm/define-grobs.scm:
4017         * scm/define-music-display-methods.scm:
4018         * scm/define-music-properties.scm:
4019         * scm/define-music-types.scm:
4020         * scm/music-functions.scm:
4021         * ly/declarations-init.ly:
4022         * lily/include/constrained-breaking.hh:
4023         * lily/system.cc:
4024         * lily/spaceable-grob.cc:
4025         * lily/simple-spacer.cc:
4026         * lily/paper-score.cc:
4027         * lily/paper-column.cc:
4028         * lily/paper-column-engraver.cc:
4029         * lily/item.cc:
4030         * lily/gourlay-breaking.cc:
4031         * lily/constrained-breaking.cc:
4032         * python/convertrules.py:
4033         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4034         "page-break-penalty" and "line-break-permission".
4035         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4036         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4037
4038         * lily/bar-engraver.cc:
4039         * lily/beam-engraver.cc:
4040         * lily/forbid-break-engraver.cc:
4041         * lily/ligature-engraver.cc:
4042         * lily/paper-column-engraver.cc:
4043         * lily/percent-repeat-engraver.cc:
4044         * lily/score-engraver.cc:
4045         * lily/score-engraver.hh:
4046         * lily/paper-column-engraver.hh:
4047         Inter-engraver communication regarding line breaks is done through context
4048         properties (Score.forbidBreak) instead of function calls.
4049
4050 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
4051
4052         * VERSION (PACKAGE_NAME): release 2.9.4
4053
4054 2006-05-08  Graham Percival  <gpermus@gmail.com>
4055
4056         * Documentation/user/working.itely: proofreading from Dave
4057         Luttinen, thanks.
4058
4059         * Doucmentation/user/README.txt: updated with manual style info.
4060
4061         * Documentation/user/ various: trim linewidth to 78 chars.
4062
4063 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
4064
4065         * scm/define-grob-properties.scm (all-internal-grob-properties):
4066         remove chord-tremolo property.
4067
4068         * lily/beam.cc (get_beam_segments): don't use stem position as
4069         base for broken ends.
4070
4071 2006-05-06  Graham Percival  <gpermus@gmail.com>
4072
4073         * Documentation/user/putting.itely: proofreading from Dave
4074         Luttinen, thanks!
4075
4076         * Documentation/user/ various: more reorg and clarifications.
4077
4078 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
4079
4080         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4081
4082         * ly/music-functions-init.ly: new function featherDurations
4083
4084         * lily/beam.cc: read grow-direction for feathered beaming.
4085
4086         * Documentation/topdocs/NEWS.tely (Top): typo.
4087
4088 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
4089
4090         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4091         tremolo beams.
4092
4093 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
4094         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4095         used by music streams.
4096
4097         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4098         lily/stream-event.cc, lily/stream-event-scheme.cc,
4099         lily/listener.cc, lily/scheme-listener.cc,
4100         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4101         lily/include/stream-event.hh, lily/include/listener.hh,
4102         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4103         Created data structures for music streams.
4104         
4105 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
4106
4107         * lily/beam.cc (get_beam_segments): new function. Reorganise the
4108         construction of a beam. 
4109         (print): rewrite. 
4110
4111         * flower/include/std-vector.hh (default_compare): use only one comparison.
4112
4113         * scm/define-markup-commands.scm (note-by-number): remove debug display.
4114         (note-by-number): further attachment fixes.
4115
4116         * scm/lily-library.scm (ordered-cons): new function.
4117         (interval-index): new function
4118
4119         * lily/note-head-scheme.cc (LY_DEFINE): new file.
4120
4121         * lily/note-head.cc (get_stem_attachment): new function.
4122
4123         * scm/define-markup-commands.scm (note-by-number): read 'style
4124         property. 
4125
4126         * input/regression/markup-note.ly: show note-head style option.
4127
4128         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4129         triangle head.
4130
4131 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
4132
4133         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4134
4135         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4136
4137         * lily/include/constrained-breaking.hh: GCC 4 fix.
4138
4139 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
4140
4141         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4142         Replace it with functions get_line_forces and get_line_configuration.
4143         (class Simple_spacer): Make data private.
4144         Rewrite compression algorithm to be faster and simpler.
4145
4146         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4147         * lily/gourlay-breaking.cc (solve):
4148         * lily/constrained_breaking.cc (space_line):
4149         Change it to the new simple-spacer code.
4150
4151         * lily/paper-score.cc (get_paper_systems):
4152         (Paper_score):
4153         (process):
4154         Delay breaking the systems until they are requested.
4155         (find_break_indices):
4156         Use vsize for indices.
4157         (calc_breaking):
4158         Move the "Calculating line breaks" message here.
4159
4160         * lily/system.cc (pre_processing):
4161         Move the "Calculating line breaks" message away from here.
4162         (break_into_pieces):
4163         Allow multiple calls to this function in sequence (with touching-but-
4164         not-overlapping breakpoints).
4165
4166         * lily/constrained-breaking.cc:
4167         Replace most of the get_XXXX functions with get_line_details.
4168         Only calculate the force for each line. Calculate configurations only
4169         for the lines we will actually use.
4170         Replace cols_ with lines_.
4171
4172 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4173
4174         * mf/GNUmakefile (depth): remove FC_FIND.
4175
4176         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4177
4178         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4179
4180         * scm/framework-ps.scm (write-preamble): new function.
4181         (write-preamble): load mac fonts via fondu, even if gs-font-load
4182         is set.
4183
4184 2006-05-03  Werner Lemberg  <wl@gnu.org>
4185
4186         * mf/GNUmakefile (FC_FIND): Fix typo.
4187
4188 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
4189
4190         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4191
4192 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
4193
4194         * stepmake/aclocal.m4: run python-config for crosscompiling
4195         flags. 
4196
4197         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4198         -f png for HTML, TEXINFO formats. 
4199
4200         * input/tutorial/lbook-html-test.html: new file.
4201
4202         * lily/include/tie-formatting-problem.hh (class
4203         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4204         [column, direction]. This fixes laissez vibrer ties.
4205  
4206         * flower/include/tuple.hh (struct Tuple2): new file.
4207
4208         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4209         $(FCMATCH), only if $(NCSB_DIR) not set. 
4210
4211         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4212
4213         * config.make.in (DOCUMENTATION): set FCMATCH.  
4214
4215         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
4216
4217 2006-05-03  Graham Percival  <gpermus@gmail.com>
4218
4219         * Documentation/user/ various: final round of reorg.
4220
4221         * Documentation/user/instrument-notation.itely: some more
4222         fixes from Eduardo, thanks!
4223
4224 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
4225
4226         * VERSION (PACKAGE_NAME): release 2.9.3
4227
4228         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4229
4230         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4231
4232 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
4233
4234         * scm/define-grob-properties.scm (all-user-grob-properties):
4235         Correct typo, thanks to Eduardo.
4236
4237 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
4238
4239         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4240
4241         * buildscripts/lilypond-words.py (F): indent fix.
4242
4243         * input/regression/tie-arpeggio-collision.ly: new file.
4244
4245         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4246         function: store outlines per column rank.
4247
4248         * lily/include/tie-configuration.hh (class Tie_configuration): add
4249         column_ranks_ to specification and configuration, to distinguish
4250         between ties for different heads in arpegiated chords.
4251
4252         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4253
4254         * *.py: more 4 space indents.
4255
4256         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4257
4258 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
4259
4260         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4261
4262 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
4263
4264         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4265
4266         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
4267
4268         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4269
4270 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4271
4272         * python/convertrules.py (conv): indent 4 for python files.
4273
4274 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
4275
4276         * Documentation/user/changing-defaults.itely (Creating contexts):
4277         Clarify \new semantics.
4278
4279 2006-04-28  Graham Percival  <gpermus@gmail.com>
4280
4281         * Documentation/user/ various: major new sections in the
4282         Learning manual, slight reorg elsewhere.
4283
4284 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
4285
4286         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
4287
4288         * scm/framework-ps.scm (output-framework): remove PageMedia
4289
4290 2006-04-27  Graham Percival  <gpermus@gmail.com>
4291
4292         * Documentation/user/ tweaks.itely, working.itely: new
4293         files, being more advanced "learning manual" chapters.
4294
4295         * Documentation/user/ tutorial, putting, lilypond: reorg.
4296
4297 2006-04-26  Graham Percival  <gpermus@gmail.com>
4298
4299         * input/regression/lyric-combine-polyphonic.ly: fixed test
4300         (no more "can't find context `one'" error).
4301
4302 2006-04-25  Joe Neeman <joeneeman@gmail.com>
4303
4304         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4305
4306         * input/regression/stem-tremolo.ly: add 2 more whole note examples
4307         
4308 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4309
4310         * lily/relocate.cc (read_relocation_dir): new function.
4311
4312 2006-04-26  Graham Percival  <gpermus@gmail.com>
4313
4314         * Documentation/user/instrument-notation.itely: a few more fixes
4315         from Eduardo, thanks!
4316
4317         * Documentation/user/README.txt: new file; contains info on
4318         style that used to be in lilypond.tely.
4319
4320         * Documentation/user/ various: first round of doc reorg.
4321
4322         * Documentation/user/baer-flat-bw.png: remove alpha bit from
4323         graphic; this probably causes problems on some pdf
4324         viewers, notably Adobe Acrobat.
4325
4326 2006-04-24  Graham Percival  <gpermus@gmail.com>
4327
4328         * Documentation/user/instrument-notation.itely: many alterations
4329         to Vocal music, from Eduardo Viera.
4330
4331 2006-04-23  Graham Percival  <gpermus@gmail.com>
4332
4333         * Documentation/user/instrument-notation.itely: fix \new
4334         instead of \context problem.
4335
4336 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4337
4338         * lily/relocate.cc (expand_environment_variables): new function.
4339         (read_line): id.
4340         (read_relocation_file): id.
4341
4342         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
4343
4344 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
4345
4346         * ly/engraver-init.ly: remove old comments from TabVoice
4347
4348 2006-04-20  Graham Percival  <gpermus@gmail.com>
4349
4350         * Documentation/user/instrument-notation.itely: added Erlend's
4351         latest doc patch, thanks!
4352
4353 2006-04-19  Erlend Aasland <erlenda@gmail.com>
4354
4355         * lily/include/slur.hh:
4356         * lily/slur.cc:
4357         * lily/phrasing-slur-engraver.cc:
4358         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4359         acknowledge_extra_object () from Phrasing_slur_engraver:: and
4360         Slur_engraver:: and putting it in
4361         Slur::auxiliary_acknowledge_extra_object ().
4362
4363         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4364
4365         * lily/note-collision.cc: fix a comment
4366
4367 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
4368
4369         * stepmake/bin/add-html-footer.py: fix footer position in
4370         generated html files: before </body> and </html> tags.
4371
4372 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
4373
4374         * scripts/GNUmakefile: revert last "fix", which rather broke make.
4375         Earlier successive `make' commands finally compiled ok.
4376
4377         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4378
4379 2006-04-18  Erlend Aasland <erlenda@gmail.com>
4380
4381         * lily/include/stem-tremolo.hh:
4382         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4383         callers.
4384
4385         * lily/lookup.cc:
4386         * lily/include/lookup.hh: add rotated_box ()
4387
4388 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
4389
4390         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
4391         been generated. Fixes "can't get `--help'" bug after make clean.
4392
4393         * THANKS: alphabetize contributors.
4394
4395 2006-04-17  Graham Percival  <gpermus@gmail.com>
4396
4397         * Documentation/user/instrument-notation.itely: added Erlend's
4398         tabs and banjo doc patch.  Thanks!
4399
4400 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
4401
4402         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4403
4404         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4405
4406         * scm/output-lib.scm: add some more predefined string tunings.
4407
4408         * Documentation/user/instrument-notation.itely: and doc them.
4409
4410 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
4411
4412         * ly/engraver.ly: Remove obsolete comments.
4413
4414         * ly/gregorian-init.ly: Define default layout block.
4415
4416         * input/puer-fragment.ly: Updated and extended.
4417
4418 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4419
4420         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4421         pdf conversion behaviour.
4422
4423         * flower/file-name.cc (dir_name)
4424         (get_working_directory): Move from relocate.cc.
4425
4426         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4427         
4428         * lily/relocate.cc: Encapsulate sys/stat.h in
4429         HAVE_STAT_H.
4430
4431 2006-04-14  Graham Percival  <gpermus@gmail.com>
4432
4433         * Documentation/user/ various: small updates from Cameron
4434         and Juergen, thanks!
4435
4436         * Documentation/user/ various: small updates of my own.
4437
4438         * THANKS: 2.7 -> 2.8.
4439
4440 2006-04-11  Graham Percival  <gpermus@gmail.com>
4441
4442         * scm/define-context-properties.scm: typo.
4443
4444         * Documentation/user/ : many more small updates.
4445
4446 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
4447
4448         * scm/define-music-types.scm: disposed "docme".
4449
4450 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
4451
4452         * lily/hairpin.cc: make niente circles a bit smaller.
4453
4454 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
4455
4456         * mf/GNUmakefile: remove redundant mftrace check. Also remove
4457         get-pfa and get-*-fonts targets.
4458
4459 2006-04-10  Graham Percival  <gpermus@gmail.com>
4460
4461         * THANKS, Documentation/user/ basic-notation, advanced-notation,
4462         music-glossary, programming-interface: more minor fixes
4463         from mailist.
4464
4465         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4466
4467         * scm/define-context-properties.scm: another old \property update.
4468         This time tested for compiling!
4469
4470 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
4471
4472         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4473
4474 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4475
4476         * scm/define-context-properties.scm (all-user-translation-properties): 
4477         * Documentation/user/global.itely (Page formatting): Compile fix.
4478
4479 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
4480
4481         * Documentation/user/advanced-notation.itely (Polymetric
4482         notation): Update the example to use the "+" symbol and add link
4483         to input/test/compound-time.ly.
4484
4485 2006-04-08  Graham Percival  <gpermus@gmail.com>
4486
4487         * scm/define-grob-properties.scm: clarify docs for #'direction.
4488
4489         * scm/define-context-properties.scm: update old \property override.
4490
4491         * Documentation/user/ advanced-notation, global, lilypond-book:
4492         more minor doc updates.
4493
4494 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
4495
4496         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4497
4498         * scm/backend-library.scm (search-gs): oops.
4499
4500 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
4501
4502         * scripts/lilypond-book.py (output): use base, not filename for href.
4503
4504         * scm/backend-library.scm: only look for gs.
4505
4506         * scripts/lilypond-book.py (output): fix printfilename.
4507
4508         * lily/parser.yy (music_function_musicless_prefix): fold together
4509         definitions of signature (SCM*) (Music|post_event|chord_body_element)
4510
4511         * lily/slur.cc (print): only set font-size if not set yet.
4512
4513         * lily/slur-configuration.cc (add_score): improved layout of debug
4514         scoring output.
4515
4516 2006-04-05  David Feuer  <David.Feuer@gmail.com>
4517
4518         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4519         (draw_circle): Hopefully fixed regression.
4520         Improved documentation for several procedures.
4521         
4522 2006-03-04  Werner Lemberg  <wl@gnu.org>
4523
4524         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4525
4526 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
4527
4528         * scripts/musicxml2ly.py (bindir): add dynamic
4529         relocation. 
4530
4531 2006-04-04  Graham Percival  <gpermus@gmail.com>
4532
4533         * Documentation/user/ basic-notation, advanced-notation, putting,
4534         instrument-notation, invoking, lilypond, THANKS: another ream of small
4535         fixes from the Doc Helpers.
4536
4537 2006-04-03  David Feuer  <David.Feuer@gmail.com>
4538
4539         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4540
4541         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4542
4543         * Cleaned up interfaces between PostScript and Scheme, and moved
4544         computations from PostScript to Scheme:
4545
4546         * music-drawing-routines.ps
4547         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
4548         with stroke_and_fill throughout.
4549         (euclidean_length, print_letter, draw_box): Deleted unused
4550         procedures.  If someone needs draw_box, implement it using
4551         draw_round_box; don't duplicate code.
4552         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4553         Refactored/cleaned up interfaces.
4554         (mark_URI): Moved.
4555
4556         * output-ps.scm: reordered arguments to PostScript functions to
4557         match new interfaces
4558         (glyph-string): Rewrote glyph-string.
4559         (grob-cause): Replaced string-append with format.
4560         (repeat-slash): Rewrote to do computation here.
4561         (round-filled-box): Rewrote to do computation here.
4562
4563 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
4564
4565         * stepmake/stepmake/generic-targets.make: add cvs-clean target
4566
4567         * stepmake/stepmake/toplevel- targets.make: print help info about
4568         cvs-clean
4569
4570 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
4571
4572         * input/regression/hairpin-circled.ly: new file
4573
4574 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
4575
4576         * lily/hairpin.cc (print): add support for circled tip
4577
4578         * scm/define-grob-properties.scm: add circled-tip parameter
4579
4580         * scm/define-grobs.scm: init circled-tip to false
4581         
4582 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
4583
4584         * scm/music-functions.scm (quote-substitute): set
4585         iterators-ctor. 
4586
4587 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
4588
4589         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4590         BSTINPUTS. 
4591
4592         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4593
4594         * scm/output-ps.scm (glyph-string): revert cid selectfont.
4595
4596 2006-03-31  David Feuer  <david.feuer@gmail.com>
4597         
4598         * scm/framework-ps.scm:
4599         
4600         * scm/output-ps.scm: glyph-string now produces smaller, more
4601         readable, and probably faster PostScript.  Several findfont
4602         scalefont setfont instances changed to selectfont
4603         Hacked-up string-appends changed to formats.
4604
4605         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4606         
4607 2006-03-30  Graham Percival  <gpermus@gmail.com>
4608
4609         * scm/lily-library.scm: make "no version" warning message more polite.
4610
4611         * lily/music.cc: add double quotes to failed octave check.
4612
4613         * Documentation/user/ advanced-notation, changing-defaults,
4614         instrument-notation, invoking, music-glossary: whole bunch of minor
4615         fixes from mailist.
4616
4617 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
4618
4619         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4620         $(buildscriptdir) iso. depth.
4621
4622         * VERSION (PACKAGE_NAME): release 2.9.1
4623
4624 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4625
4626         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4627
4628         * VERSION (PATCH_LEVEL): bump version number.
4629
4630         * flower/include/guile-compatibility.hh (scm_from_uint32): add
4631         scm_from_uint32 ()
4632
4633         * lily/pango-font.cc (pango_item_string_stencil): use
4634         scm_from_uint32 ()
4635
4636         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4637         $(outdir)/emmentaler-%.svg): remove canary.
4638
4639         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4640         glyphnames if we have a ttf font.
4641
4642 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
4643
4644         * Documentation/user/advanced-notation.itely (Font selection):
4645         Corrected reference to the font-family-override.ly example.
4646
4647 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
4648         
4649         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4650         stem-tremolo object in the stem (or else the stem might not be
4651         long enough).
4652
4653 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4654
4655         * lily/ttf.cc (print_trailer): only print existing glyphs.
4656
4657 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
4658
4659         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4660         position the tremolo based on the position of the notehead.
4661
4662         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4663         notes and update the texidoc line with the new positioning rules.
4664         
4665 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4666
4667         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4668
4669         * scripts/lilypond-book.py (Module): set default for linewidth if
4670         preamble not found.
4671
4672 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4673
4674         * VERSION (PACKAGE_NAME): release 2.9.0.
4675
4676         * input/regression/stem-tremolo-position.ly: new file.
4677
4678         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4679
4680 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
4681
4682         * lily/stem-tremolo.cc (print): position
4683         the tremolo depending only on the end of the stem
4684         and not on the notehead
4685         (raw_stencil): center, on the middle staff line, the
4686         flag that is closest to the end of the stem (previously
4687         the bottom flag)
4688         (calc_width): add this callback to shorten a tremolo when
4689         it is beamed or it is stemup with a flag
4690         (style): add this callback to make a tremolo rectangular when
4691         it is beamed or it is stemup with a flag
4692         (rotated_box): this is like Lookup::beam but makes a rotated
4693         rectangle instead of a parallelogram
4694
4695         * lily/stem.cc (calc_stem_info): make sure the stem
4696         is long enough to fit the tremolo
4697         (calc-length): reduce the length of tremolo stems since the
4698         tremolo code is now capable of better positioning
4699
4700         * scm/define-grobs.scm: make calc_width the default beam-width
4701         callback for stem-tremolo and add the style callback
4702                 
4703 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4704
4705         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4706         case. 
4707
4708 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4709
4710         * lily/ttf.cc (make_index_to_charcode_map): restore old
4711         cmap. 
4712
4713 2006-03-28  Werner Lemberg  <wl@gnu.org>
4714
4715         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4716
4717 2006-03-28  Graham Percival  <gpermus@gmail.com>
4718
4719         * THANKS: update for 2.9, add section for Documentation helpers.
4720
4721         * Documentation/topdocs/NEWS.tely: compile fix.
4722
4723         * Documentation/user/ basic-notation, global, advanced-notation,
4724         examples.itely: minor fixes from mailist.
4725
4726 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
4727
4728         * mf/feta-bolletjes.mf: match width of solfa notes with normal
4729         note heads. 
4730
4731         * lily/ttf.cc (print_trailer): use it.
4732
4733         * lily/pango-font.cc (get_unicode_name): new function.
4734
4735         * lily/ttf.cc (make_index_to_charcode_map): move function from
4736         open-type-font.cc
4737         (print_trailer): substitute uniXXXX name if applicable. 
4738
4739         * lily/pango-font.cc (get_index_to_charcode_map): new function.
4740         (pango_item_string_stencil): use it to generate uniXXXX names.
4741
4742         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4743         note heads, for uniform widths in shape note output.
4744         (overdone_heads): hmm. remove them again.
4745
4746         * scripts/lilypond-book.py (output): add links to filenames.
4747
4748         * Documentation/topdocs/INSTALL.texi (Top): update versions.
4749
4750         * lily/note-collision.cc (get_clash_groups): only consider when
4751         Note_column::dir <> CENTER. 
4752
4753         * scripts/lilypond-book.py (get_option_parser): init output_name
4754         to ''. 
4755
4756 2006-03-24  Graham Percival  <gpermus@gmail.com>
4757
4758         * Documentation/topdocs/NEWS.tely: add @end itemize
4759
4760         * Documentation/user/ global, advanced-notation: minor
4761         stuff from mailist.
4762
4763 2006-03-23  Graham Percival  <gpermus@gmail.com>
4764
4765         * Documentation/user/ lilypond.tely, music-glossary,
4766         preface: housekeeping; 2005->2006, remove "notes for 2.6"
4767
4768 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
4769
4770         * mf/GNUmakefile: don't install .enc files.
4771
4772         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4773
4774         * VERSION (PATCH_LEVEL): bump to 2.9.0
4775
4776 2006-03-22  Graham Percival  <gpermus@gmail.com>
4777
4778         * Documentation/user/advanced-notation.itely: minor fixes
4779         from mailist.
4780
4781 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
4782
4783         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4784
4785         * branch lilypond_2_8
4786
4787 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
4788
4789         * scripts/lilypond-book.py (samefile): new function, for windoze
4790         compatibility.
4791
4792 2006-03-21  Graham Percival  <gpermus@gmail.com>
4793
4794         * ly/engraver-init.ly: add info about StaffGroup.
4795
4796 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
4797
4798         * input/regression/stem-direction-context.ly: idem.
4799
4800         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4801
4802         * THANKS: add Mats.
4803
4804         * input/regression/page-layout-twopass.ly: comment out \markup so
4805         tweak-file is left.
4806
4807         * lily/instrument-name-engraver.cc (finalize): add to instrument
4808         name global System. This also fixes chopped instrument names, but
4809         doesn't crash when there are slurs/beams.
4810
4811         * lily/slur-configuration.cc (add_score): disallow negative slur
4812         scores.
4813         
4814 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4815
4816         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4817
4818         * lily/instrument-name-engraver.cc (process_music): kludge: add
4819         InstrumentName spanner to axis group of left bound. Fixes chopped
4820         off instrument names in EPS images.
4821
4822         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4823
4824         * scripts/abc2ly.py (option_parser): update to 2.7.40
4825
4826 2006-03-20  Graham Percival  <gpermus@gmail.com>
4827
4828         * THANKS: move small doc contributors to SUGGESTIONS.
4829
4830         * Documentation/user/ basic-notation, advanced-notation,
4831         global: small changes from mailist.
4832
4833 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4834
4835         * Documentation/user/advanced-notation.itely (Text marks): update
4836         for new rehearsalMarkAlignSymbol convention.
4837
4838         * VERSION (PATCH_LEVEL): bump version.
4839
4840         * input/test/instrument-name-align.ly: new file.
4841
4842         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4843
4844         * input/test/instrument-name-align.ly: new file. Document how to
4845         align instrument names.
4846
4847         * lily/mark-engraver.cc: remove properties.
4848
4849         * scm/define-context-properties.scm
4850         (all-user-translation-properties): remove align symbol properties
4851         for barnumber/reh. mark.
4852
4853         * lily/break-align-interface.cc (self_align_callback): new
4854         interface, new function. Look at complete alignment. This handles
4855         tunable break alignments in case break-align-symbols are missing.
4856
4857         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4858
4859         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4860
4861         * python/convertrules.py (conv): mark/bar number alignment rule.
4862
4863         * lily/break-align-interface.cc (calc_positioning_done): also
4864         store offset from last visible break-alignment to its
4865         neighbor. This makes alignment on non-visible objects more reliable.
4866
4867         * po/lilypond.pot (Module): ran po-replace.
4868
4869         * input/regression/tie-single-manual.ly (Module): new file.
4870
4871         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4872         look at has_manual_position_.
4873         (from_ties): set has_manual_position_ if tie has staff-position set.
4874
4875         * lily/tuplet-bracket.cc (calc_positions): idem.
4876
4877         * lily/tuplet-number.cc (print): don't print tupletnumber if it
4878         doesn't span time.
4879
4880 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4881
4882         * scm/define-markup-commands.scm (smallCaps): new markup command
4883         for turning a text to small caps using smaller font size and upper
4884         casing.
4885
4886 2006-03-17  Graham Percival  <gpermus@gmail.com>
4887
4888         * Documentation/user/ examples, instrument-notation,
4889         advnaced-notation: minor fixes from mailist.
4890
4891 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4892
4893         * Documentation/user/tutorial.itely (First steps): change example
4894         to verbatim.  
4895
4896 2006-03-17  Graham Percival  <gpermus@gmail.com>
4897
4898         * Documentation/user/ examples, advanced: minor changes from mailist.
4899
4900         * THANKS: add Geoff Horton, for documentation stuff.
4901
4902 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4903
4904         * python/lilylib.py (system): revert have_select kludge.
4905
4906         * Documentation/user/tutorial.itely (Commenting input files):
4907         update version numbers in doc. 
4908
4909         * scm/define-grob-interfaces.scm (multi-measure-interface): add
4910         bound-padding to multi-measure-interface
4911
4912 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4913
4914         * input/test/engraver-example.ily: update version number.
4915
4916         * VERSION (PACKAGE_NAME): release 2.7.39
4917
4918         * lily/note-spacing.cc (get_spacing): heighten threshold where
4919         accidentals/arpeggios influence previous spacing fully.
4920
4921         * lily/rest.cc (y_offset_callback): only use direction if
4922         staff-position wasn't set before.
4923
4924         * lily/bar-number-engraver.cc: add support for
4925         barNumberAlignSymbol. 
4926         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4927
4928         * lily/pointer-group-interface.cc (set_ordered): new function. 
4929         (add_unordered_grob): new function.
4930
4931         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4932         to ordered, unless the opposite has been proved.  This fixes
4933         random reordering of large object groups across linebreaks,
4934         eg. beams.
4935
4936         * lily/main.cc (do_chroot_jail): printf format fix.
4937
4938         * lily/tie-formatting-problem.cc (generate_configuration):
4939         multiply y-shift for dot with direction.
4940  
4941         * scm/define-markup-commands.scm (note-by-number): put (magstep
4942         size) in y-attach too.
4943
4944         * Documentation/topdocs/NEWS.tely (Top): show override.
4945
4946         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4947         direction for stems.
4948         
4949 2006-03-15  Graham Percival  <gpermus@gmail.com>
4950
4951         * Documentation/user/ changing-defaults, global: minor
4952         fixes from mailist.
4953
4954 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4955
4956         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4957
4958         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4959         breakable items after uniformly stretched notes.
4960
4961         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4962         outline with outer edge of note heads. This prevents infinity
4963         problems with tied whole notes.
4964
4965         * scripts/lilypond-book.py (do_file): use os.popen
4966
4967         * python/convertrules.py (conv): add rule for Stem #'beamed-*
4968
4969 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
4970
4971         * Documentation/user/invoking.itely: Add ragged-right to bug report
4972         guidelines.
4973
4974 2006-03-14  Graham Percival  <gpermus@gmail.com>
4975
4976         * Documentation/user/global.itely: small fix from mailist.
4977
4978 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
4979
4980         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4981         file descriptor returned by tempfile.mkstemp() when writing
4982         to tmpfile and closing it. Solves problem with unlink(tmpfile)
4983         on mingw.
4984
4985 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4986
4987         * po/fi.po: newline bugfix.
4988
4989 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4990
4991         * scm/paper.scm (paper-alist): Rounding fixes.
4992
4993 2006-03-13  Graham Percival  <gpermus@gmail.com>
4994
4995         * Documentation/user/ changing-defaults, instrument-notation,
4996         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
4997
4998 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
4999
5000         * po/fi.po: update.
5001
5002 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5003
5004         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
5005         mailto: to http:// 
5006
5007         * python/lilylib.py (print_environment): move ps_page_count to
5008         lilypond-book.py
5009
5010 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5011
5012         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5013
5014         * scm/framework-ps.scm (embed-document): new function. Use to
5015         embed PFA files.
5016
5017         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5018
5019 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
5020
5021         * Documentation/user/instrument-notation.itely (Setting simple
5022         songs): Added \book{...} around the full example, so the separate
5023         markups are included in the printed example. 
5024
5025 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5026
5027         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5028         tmphandle.
5029
5030         * python/lilylib.py (system): rewrite system() using
5031         subprocess. Remove >& redirection trickery.
5032
5033 2006-03-11  Graham Percival  <gpermus@gmail.com>
5034
5035         * Documentation/user/ changing-defaults, global, scheme-tutorial,
5036         notation-appendices.itely: minor fixes from mailist.
5037
5038 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5039
5040         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5041         unsplit man also needs images.
5042
5043         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5044
5045         * VERSION (PACKAGE_NAME): 2.7.38 released.
5046
5047 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5048
5049         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5050         log in output dir.
5051
5052 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
5053
5054         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5055         respects the Score.skipTypesetting property.
5056         
5057 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5058
5059         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5060         Prolog. No %%EOF after CFF file.
5061
5062 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
5063         
5064         * lily/constrained-breaking.cc (get_max_systems): used to return a
5065         much too big value
5066         (combine_demerits): use pointers to reduce copying data
5067         (calc_subproblem): idem
5068         (get_page_penalty): add page turn penalties
5069         
5070 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5071
5072         * Documentation/user/invoking.itely (Invoking lilypond): better
5073         explanation of -e usage.
5074
5075         * lily/main.cc (main_with_guile): don't append to
5076         init_scheme_code_string
5077
5078         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5079
5080         * Documentation/user/invoking.itely: add note about MacOS X scripts.
5081
5082         * scripts/convert-ly.py (do_options): don't print help for
5083         --show-rules rule.
5084
5085         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5086         @code and @example. Update from texinfo.tex from CVS.
5087
5088 2006-03-08  Graham Percival  <gpermus@gmail.com>
5089
5090         * Documentation/user/scheme-tutorial.itely: clarifies distances
5091         measured in staff-spaces.
5092
5093 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5094
5095         * lily/slur.cc (outside_slur_callback): only calculate offsets if
5096         consider[k] is true.
5097
5098         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5099
5100         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5101         consider columns that have originals.  Unifies spacing for mm
5102         rests around line breaks.
5103
5104         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5105         (set_text_rods): idem.
5106         (calculate_spacing_rods): new function: share code between
5107         set_text_rods and set_spacing_rods.
5108         (set_text_rods): take extents of bounds into account.  
5109
5110 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5111
5112         * Documentation/user/basic-notation.itely (Writing music in
5113         parallel): don't use relative.
5114
5115 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5116
5117         * ly/music-functions-init.ly (Module): add shiftDurations
5118
5119         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5120
5121         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
5122
5123         * ly/engraver-init.ly: init vocalName to nil.
5124
5125 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
5126
5127         * scm/music-functions.scm (music->make-music): bugfix,
5128         KeyChangeEvents are now handled correctly.
5129
5130         * scripts/lilypond-book.py: Add --debug option.
5131
5132 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5133
5134         * python/lilylib.py: add tempfile.
5135
5136 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5137
5138         * VERSION (PACKAGE_NAME): release 2.7.37
5139
5140         * python/lilylib.py (ps_page_count): remove make_ps_images().
5141         (ps_page_count): remove mkdir_p
5142         (system): remove cleanup_temp.
5143         (exit): remove lilypond_version_(check)
5144         (error_log): remove pseudo_filter_p
5145         remove read_pipe
5146         remove cp_to_dir
5147         remove identify
5148
5149         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5150         use __main__
5151
5152         * lily/accidental-engraver.cc (make_standard_accidental): only add
5153         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5154
5155         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5156         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5157         Make incompatibilities.
5158
5159         * scm/output-ps.scm (grob-cause): replace backslashes by /
5160         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5161
5162 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5163
5164         * cygwin/GNUmakefile: Install fixes.
5165
5166         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5167
5168         * lily/note-head.cc (head::get_balltype): Compile fix.
5169
5170         * flower/file-name.cc (dos_to_posix): Flower string fix.
5171
5172 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5173
5174         * python/lilylib.py: pychecker cleanups.
5175
5176         * scripts/lilypond-book.py
5177         (Lilypond_snippet.output_print_filename): pychecker cleanups
5178
5179         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5180
5181         * python/lilylib.py (underscore): remove identify() , warranty()
5182
5183         * ps/music-drawing-routines.ps: change Border routine for GSView
5184         compatibility.
5185
5186         * lily/stem.cc (height): use quantize-positions.  This triggers
5187         set_stem_lengths, so scripts on beamed stems are handled correctly.
5188
5189         * lily/side-position-interface.cc (aligned_side): check if edges
5190         of script are inside staff. Fixes accent of edge of the staff.
5191
5192         * input/regression/staccato-pos.ly: more examples.
5193
5194         * stepmake/aclocal.m4 (depth): fix bashism.
5195
5196         * lily/lyric-combine-music-iterator.cc: move from
5197         new-lyric-combine-iterator.cc
5198         (process): add pending_grace_lyric_ member to delay lyrics on
5199         grace notes.
5200
5201         * lily/system-start-text.cc (print): suicide if we don't have any
5202         elements. Fixes hara kiri'd instrument names.
5203
5204         * scripts/mup2ly.py (Module): remove.
5205
5206 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5207
5208         * Documentation/user/global.itely (A single music expression):
5209         close @lilypond properly
5210
5211         * lily/volta-bracket.cc (modify_edge_height): change from
5212         after_line_breaking_callback. Suicide last bracket if appropriate.
5213  
5214         * python/lilylib.py: strip getopt support
5215
5216         * scripts/etf2ly.py (do_options): use optparse
5217
5218         * scripts/midi2ly.py: optparse, strip lilylib copy. 
5219
5220         * scripts/abc2ly.py (voices): use optparse.
5221
5222         * stepmake/stepmake/generic-vars.make: new function absdir.
5223
5224         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5225
5226         * scripts/lilypond-book.py (find_file): use global_options for
5227         include path
5228
5229         * scm/ps-to-png.scm (ps-page-count): prevent null characters
5230         entering C code.
5231
5232 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5233
5234         * python/lilylib.py (get_global_option): ughness for extracting
5235         global options from lilylib.
5236         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5237
5238         * scripts/lilypond-book.py (get_option_parser): use optparse for
5239         option handling.  Put options in global_options variable.
5240
5241 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
5242
5243         * Documentation/index.html.in: clarify.
5244
5245 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5246
5247         * scm/layout-page-layout.scm (write-page-breaks): add a
5248         music-system-heights property to the page layout output.
5249
5250         * scm/page.scm (make-page-stencil): take footer into account when
5251         computing the 'space-left page property
5252         (annotate-space-left): take footer into account when annonating
5253         space left.
5254
5255 2006-02-28  Graham Percival  <gpermus@gmail.com>
5256
5257         * Documentation/user/ advanced-notation, global: more (final)
5258         docs for music expressions, removed special fermatas.
5259
5260 2006-02-27  Graham Percival  <gpermus@gmail.com>
5261
5262         * Documentation/user/ basic-notation, global: minor changes
5263         from mailist.
5264
5265 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5266
5267         * scm/framework-ps.scm:         
5268         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5269         layer for inf? and nan? from framework-ps to lily-library.
5270
5271 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5272
5273         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5274         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5275
5276         * buildscripts/substitute-encoding.py (Module): remove file.
5277
5278         * mf/GNUmakefile: more PFA strippage.
5279
5280         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5281
5282         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5283         generation
5284
5285         * scm/framework-ps.scm: remove font name munging.
5286
5287         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5288
5289 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5290
5291         * scm/markup.scm (define-markup-command): change
5292         def-markup-command to define-markup-command
5293
5294         * scm/music-functions.scm (define-music-function): change
5295         def-music-function to define-music-function.
5296
5297         * python/convertrules.py (conv): rules for def-music-function
5298         and def-markup-commands
5299
5300         * Documentation/user/programming-interface.itely,
5301         input/no-notation/display-lily-tests.ly,
5302         input/regression/lily-in-scheme.ly,
5303         input/regression/markup-user.ly,
5304         input/regression/music-function.ly, input/regression/tie-chord.ly,
5305         scm/fret-diagrams.scm, ly/music-functions-init.ly,
5306         ly/gregorian-init.ly: use new macro names (define-music-function,
5307         define-markup-command).
5308
5309 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5310
5311         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
5312         (output): add comments to lp-book latex output.
5313
5314         * GNUmakefile.in (footifymail): use gmane address for webpage bug
5315         address.
5316
5317 2006-02-23  Graham Percival  <gpermus@gmail.com>
5318
5319         * Documentation/user/ tutorial, global: minor changes.
5320
5321 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5322
5323         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5324         blocks (for make 3.80)
5325
5326         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5327         \notemode so that user should not have to explicitely type it.
5328
5329         * scm/define-music-display-methods.scm: various
5330         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5331         constructs)
5332
5333         * input/no-notation/display-lily-tests.ly: new tests for
5334         \applyOutput and \applyContext
5335
5336 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5337
5338         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5339         changed it slightly so that the number of systems returned by
5340         solve () will be the same as the last value passed to resize
5341         (). I've also added more documentation, removed casts, fixed style
5342         problems and put in some recovery if constraints aren't satisfied."
5343
5344 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5345
5346         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5347         for emacs < 22 compatibility.
5348         (count-rexp): Use it.
5349         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5350         substring juggling (Milan Zamazal).
5351
5352 2006-02-23  Graham Percival  <gpermus@gmail.com>
5353
5354         * Documentation/user/ basic-notation, advanced-notation,
5355         global.itely, invoking.itely, tutorial,itely:
5356         minor fixes from mailist.
5357
5358         * scm/define-markup-commands.scm: improve docs of \filled-box.
5359
5360 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
5361
5362         * Documentation/index.html.in: changes concern the previous release.
5363
5364         * input/regression/+.ly: cultivate typographical terminology.
5365
5366 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5367
5368         * scm/define-grob-interfaces.scm (parentheses-interface): add
5369         padding to parentheses-interface.
5370
5371         * Documentation/user/GNUmakefile: remove $(CROSS) support from
5372         Documentation/user/GNUmakefile. Use --disable-documentation for that.
5373
5374         * VERSION (PATCH_LEVEL): release 2.7.36
5375
5376         * lily/slur.cc: add avoid-slur (ugh.)
5377         
5378         * lily/slur-configuration.cc (fit_factor): oops, skip point if
5379         intersection gets smaller. This fixes slurs over extreme points.
5380
5381         * lily/melody-engraver.cc (stop_translation_timestep): ignore
5382         stems with neutral-direction set.
5383
5384         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5385
5386         * lily/open-type-font.cc (load_table): format error.
5387
5388         * lily/change-iterator.cc (process): format fix.
5389
5390         * flower/include/international.hh (_f): idem.
5391
5392         * flower/include/std-string.hh: add format printf attribute.
5393
5394         * scm/define-grobs.scm (all-grob-descriptions): height of all
5395         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5396
5397         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5398         ambitus lines.
5399
5400         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5401
5402 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
5403
5404         * input/regression/: upgraded syntax for some files.
5405
5406         * THANKS: Add bughunters.
5407
5408 2006-02-22  Graham Percival  <gpermus@gmail.com>
5409
5410         * Documentation/user/ invoking.itely, advanced-notation.itely,
5411         global.itely: long-awaited "let's make chapter 10 not suck"
5412         update.  Rearrange chapter 10; now called "global issues",
5413         addresses file structure, etc.  Some info from other files
5414         moved into global.itely.
5415
5416 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5417
5418         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5419         catch trill-span-event notes.
5420
5421         * Documentation/user/examples.itely (Ancient notation templates): typo.
5422         (Jazz combo): typo.
5423
5424         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
5425
5426         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5427
5428         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5429
5430         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5431
5432         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5433         froum Laissez_vibrer_engraver.
5434
5435         * ly/declarations-init.ly (repeatTie): add \repeatTie
5436
5437         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5438
5439         * scm/define-grob-properties.scm (all-user-grob-properties): add
5440         head-direction property.
5441
5442         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5443         from_lv_ties. Take head direction argument.
5444
5445         * lily/semi-tie-column.cc: rename from
5446         laissez-vibrer-tie-column.cc. Rename class too.
5447
5448         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5449         class too.
5450
5451         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5452
5453         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5454         0 case.
5455         (find_breaks): idem.
5456
5457 2006-02-21  Graham Percival  <gpermus@gmail.com>
5458
5459         * Documentation/user/advanced-notation.itely: fixed make-moment]
5460         example.
5461
5462         * Documentation/user/basic-notation.itely: more clarification to
5463         transpose.
5464
5465 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5466
5467         * lily/include/constrained-breaking.hh (class
5468         Constrained_breaking): new file.
5469
5470         * lily/constrained-breaking.cc (resize): new file.
5471
5472         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5473
5474         * Documentation/user/advanced-notation.itely (Clusters): insert
5475         end ignore too.
5476
5477         * lily/tie-column.cc (calc_positioning_done): support for
5478         tie-score debugging
5479
5480         * lily/tie-formatting-problem.cc
5481         (generate_extremal_tie_variations): factor out.
5482         (score_ties_configuration): annotate all tie 
5483         (print_ties_configuration): new routine.
5484         (generate_configuration): nudge extremal ties outside of the head
5485         Y extents.
5486         (score_ties_configuration): oops. convert to staff-space before
5487         determining position symmetry.
5488
5489 2006-02-20  Graham Percival  <gpermus@gmail.com>
5490
5491         * Documentation/user/*-notation.itely: misc minor editing,
5492         shifting doc sections around.
5493
5494         * Documentation/user/*-notation-itely, global.itely,
5495         changing-defaults.itely: added new stuff from NEWS.
5496
5497 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
5498
5499         * po/fi.po: update.
5500
5501 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5502
5503         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5504         lilypond --verbose for lp-book.
5505
5506         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5507         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5508
5509         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5510         $(buildscript-dir) iso. absolute depth.
5511
5512         * buildscripts/genicon.py (dir): thinko.
5513
5514         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5515
5516 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
5517
5518         * scm/output-lib.scm: swap darkcyan/darkyellow
5519
5520         * THANKS: Add bughunters.
5521
5522 2006-02-19  Graham Percival  <gpermus@gmail.com>
5523
5524         * Documentation/user/programming-interfaces.itely: fixed example.
5525
5526         * Documentation/user/instrument-notation.itely: fix @{ @}.
5527
5528         * scm/script.scm: add avoid-slur for \open.
5529
5530 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5531
5532         * lily/tie-formatting-problem.cc (score_configuration): use
5533         sliding score for min-length. 
5534
5535         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5536         spaghetti for icons.
5537
5538         * buildscripts/genicon.py (program_name): new file.
5539
5540         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5541         in outline too.  
5542         (generate_configuration): for small ties, also look for collisions
5543         at Y + DIR*h + DELTA_Y.
5544         (get_variations): consider variation for dot positions too.
5545
5546         * lily/side-position-interface.cc (aligned_side): take abs for
5547         quantized rounded position. Fixes tenuto below staff.
5548
5549         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5550         markers when necessary.
5551
5552         * lily/program-option.cc (internal_set_option): add
5553         strict_infinity_checking option.
5554
5555         * scm/output-lib.scm (cyan): swap yellow and cyan.
5556
5557 2006-02-19  Graham Percival  <gpermus@gmail.com>
5558
5559         * darwin.patch: trivial linenumber update.
5560
5561         * Documentation/user/ {various}: `\context foo = named' changed
5562         to `\new foo = "name"' in docs.
5563
5564 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5565
5566         * scm/stencil.scm (annotate-y-interval): use it.
5567
5568         * scm/lily-library.scm (interval-sane?): new function.
5569
5570         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5571         tfm_checksum stuff.
5572
5573         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5574         common refpoint.
5575
5576         * flower/include/std-vector.hh (iterof): add iterof macro.
5577
5578         * lily/enclosing-bracket.cc (width): new function.
5579
5580         * lily/align-interface.cc (align_elements_to_extents): reinstate
5581         warning.
5582
5583 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
5584
5585         * Documentation/index.html.in: fix spelling: thankyous.
5586
5587 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5588
5589         * lily/lyric-hyphen.cc: typo.
5590
5591 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5592
5593         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5594         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5595         builds don't work. 
5596
5597         * VERSION: release 2.7.35
5598
5599         * lily/beam.cc (get_default_dir): oops. Take abs () for
5600         extremes[DOWN].
5601         (get_default_dir): use extreme position criterion only in absence
5602         of forced stem directions.
5603
5604         * VERSION (PATCH_LEVEL): bump VERSION.
5605
5606         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5607         dependencies. Necessary for -jX builds.  
5608
5609 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5610
5611         * lily/relocate.cc (setup_paths): Yet another const fix.
5612
5613 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5614
5615         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5616
5617         * lily/relocate.cc (setup_paths): oops.
5618
5619 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
5620
5621         * Documentation/index.html.in: order links: html before PDF.
5622
5623 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5624
5625         * lily/tie-column-format.cc (Module): remove.
5626
5627         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5628
5629         * lily/text-spanner.cc (print): idem.
5630
5631         * lily/dynamic-text-spanner.cc (print): only print line if longer
5632         than dash-period.
5633
5634         * lily/auto-change-iterator.cc (change_to): formatting.
5635
5636         * lily/beam.cc (get_default_dir): take extreme note head as input
5637         for stem direction.
5638
5639         * lily/tie.cc (get_default_dir): only look directions for visible
5640         stems. 
5641
5642         * lily/side-position-interface.cc (aligned_side): oops. Don't
5643         mutiply with direction. This fixes quantized (staccato, tenuto)
5644         scripts below notes.
5645
5646         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5647         direction. Fixes c-lyrics-center-align.ly
5648
5649 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5650
5651         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5652         constructor.
5653
5654         * lily/std-string.cc:
5655         * lily/include/std-vector.hh (split_string): Move and rename from
5656         lily/include/misc.hh, lily/misc.cc.  Update callers.
5657
5658 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5659
5660         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5661
5662 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5663
5664         * flower/test-file.cc: New file.
5665
5666         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5667         libraries.
5668
5669         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5670
5671 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5672
5673         * flower/include/file-storage.hh: remove file.
5674
5675         * lily/include/midi-item.hh (class Midi_track): idem.
5676
5677         * lily/include/source.hh (class Sources): idem.
5678
5679         * lily/include/performance.hh (class Performance): use vector
5680         iso. Cons<>
5681
5682         * flower/include/cons.hh (class Cons): remove file.
5683
5684         * flower/include/flower-proto.hh: remove template cruft.
5685
5686         * lily/include/font-metric.hh: use size_t not vsize for indices.
5687
5688         * flower/include/flower-proto.hh (Module): remove std-vector.hh
5689         from proto.
5690
5691         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5692
5693         * lily/include/paper-book.hh (class Paper_book):
5694         make get_system_specs() public.
5695
5696         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5697         the force=10000 case if we don't have a current-best. 
5698
5699         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5700         vsize 
5701
5702         * flower/include/flower-proto.hh: remove outdated templates.
5703
5704         * scm/page.scm: use annotate-spacing
5705
5706 2006-02-15  Graham Percival  <gpermus@gmail.com>
5707
5708         * scm/translation-functions.scm: circle patch from Erlend, thanks!
5709
5710         * THANKS: moved Erlend Aasland to contributors.
5711
5712 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5713
5714         * config.hh.in: remove HAVE_PANGO_16
5715
5716         * lily/tuplet-bracket.cc (calc_positions): multiply with
5717         staff-space for beam case. This fixes tuplets+beams on scaled
5718         staves.
5719
5720         * config.hh.in: remove all Kpathsea related defines.
5721
5722         * lily/dot-column.cc (side_position): reach stem via dots->
5723         head->stem. Inspect all stems for dot collisions. 
5724
5725         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5726         stem handling.
5727
5728         * lily/bar-number-engraver.cc (process_music): document function
5729         of whichBar.
5730
5731         * lily/score.cc (default_rendering): add pscore, not systems
5732         themselves.
5733
5734         * lily/paper-book.cc (get_system_specs): separate generation of
5735         titles and systems.
5736
5737         * flower/include/std-vector.hh: don't include config.hh
5738
5739 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5740
5741         * flower/include/std-vector.hh: Better wrapper compatibility with
5742         std::vector.
5743
5744         * flower/include/flower-proto.hh: Remove cheap forward declaration
5745         attempts.
5746
5747         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5748
5749 2006-02-14  Graham Percival  <gpermus@gmail.com>
5750
5751         * Documentation/user/invoking.itely: add warning about command line.
5752
5753 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5754
5755         * lily/include/lily-proto.hh: add Prob, rm Page.
5756
5757         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5758
5759         * VERSION: release 2.7.34
5760
5761         * lily/relocate.cc (framework_relocation): show canary if
5762         GHOSTSCRIPT_VERSION undefined.
5763
5764         * GNUmakefile.in: remove $(VERSION) symlink.
5765
5766         * lily/relocate.cc (setup_paths): add + 
5767
5768 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
5769
5770         * Documentation/index.html.in: specify sizes for all big HTML pages.
5771
5772 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5773
5774         * config.hh.in: remove @FRAMEWORKDIR@
5775
5776         * lily/system-start-text.cc (get_stencil): new file: separate out
5777         system-start-delimiter text support.
5778
5779         * input/**ly: replace \context with \new where appropriate.
5780         
5781         * THANKS: add Don.
5782
5783         * lily/slur-scoring.cc (get_base_attachments): use
5784         robust_relative_extent. This fixes problems with empty paper-columns. 
5785
5786 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5787
5788         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5789
5790         * scm/define-music-properties.scm (all-music-properties):
5791         create-new property.
5792
5793         * lily/context-specced-music-iterator.cc (construct_children):
5794         inspect 'create-new property iso. magical $uniqueContextId context
5795         id.
5796
5797         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5798
5799         * lily/context-key-manager.cc (Module): new file. Encapsulate
5800         object key generation.
5801
5802         * lily/include/context-key-manager.hh (Module): new file.
5803
5804 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5805
5806         * scm/define-grobs.scm (all-grob-descriptions): center instrument
5807         names vertically
5808
5809         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5810         options.
5811         (reloc_b): excise --enable-framework-dir
5812
5813         * lily/relocate.cc (framework_relocation): use getenv
5814         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5815
5816 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5817
5818         * flower/include/std-string.hh: 
5819         * flower/include/std-vector.hh: Finish std:: conversion; move
5820         flower extensions from std:: namespace.  Update users.
5821
5822         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5823         their expansion to vector<*>.  Update users.
5824
5825 2006-02-10  Graham Percival  <gpermus@gmail.com>
5826
5827         * Documentation/user/invoking.itely: add example to File structure.
5828
5829         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5830         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5831
5832 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5833
5834         * ly/paper-defaults.ly: typo.
5835
5836         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5837         set_parent() for parentheses. This will make it show up in bbox
5838         calculations.
5839
5840         * scm/output-lib.scm (parentheses-item::print): rewrite, using
5841         ly:grob-common* functions.
5842
5843         * lily/grob-scheme.cc (LY_DEFINE):
5844         ly:grob-common-refpoint-of-array: new function 
5845         ly:grob-common-refpoint: new function 
5846         ly:grob-relative-coordinate: new function 
5847
5848         * lily/instrument-name-engraver.cc (process_music): use
5849         Text_interface::is_markup(). This fixes \markup on instrument names.  
5850
5851         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5852         for ties and slurs.
5853
5854         * lily/slur.cc (print): idem.
5855
5856         * lily/tie.cc: add line-thickness for ties. 
5857
5858 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5859
5860         * scm/output-svg.scm: Document diversion from GNU coding standards
5861         as a workaround for a bug in Microsoft Internet Explorer.
5862
5863 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5864
5865         * lily/instrument-name-engraver.cc (process_music): use
5866         is_markup() iso. is_string()
5867
5868         * Documentation/user/changing-defaults.itely (Module): add menu entry.
5869
5870         * lily/percent-repeat-engraver.cc (process_music): only look at
5871         main_part_ for % repeats.
5872
5873         * lily/stem-tremolo.cc (get_beam_translation): new function.
5874         (calc_slope): new function.
5875         (height): don't use real slope.
5876
5877 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
5878
5879         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5880         new connect-to-neighbor, control-points and staff-padding
5881         properties to make ligature brackets showing up again.
5882
5883 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5884
5885         * VERSION: release 2.7.33
5886
5887         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5888         too many.
5889
5890         * Documentation/user/changing-defaults.itely (Difficult tweaks):
5891         remove applyOutput example.
5892         (Objects connected to the input): document \tweak, \parenthesize
5893
5894         * lily/relocate.cc (prefix_relocation): allow "current"
5895         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5896         changing VERSION in a lily tree less painful.
5897
5898         * input/regression/parenthesize.ly: new file. 
5899
5900         * scm/output-lib.scm (parenthesize-element): new function.
5901
5902         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5903
5904         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5905
5906         * lily/accidental-engraver.cc (make_standard_accidental): reroute
5907         cause: accidentals are caused by note heads, not note events. 
5908
5909 2006-02-08  Graham Percival  <gpermus@gmail.com>
5910
5911         * darwin.patch: small patch from Erlend, thanks!
5912
5913         * Documentation/user/basic-notation.itely: add stem-neutral example.
5914
5915         * Documentation/user/putting.itely: clarifications.
5916
5917 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5918
5919         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5920         note, add more guidelines to what should go into NEWS.
5921
5922         * input/sakura-sakura.ly: document how to override font.
5923
5924         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
5925
5926 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5927
5928         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5929
5930 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5931
5932         * scripts/convert-ly.py (lilypond_version_re_str): Move from
5933         convertrules.  Add explicit grouping, needed for python2.2.
5934
5935 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5936
5937         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5938
5939 2006-02-07  Graham Percival  <gpermus@gmail.com>
5940
5941         * Documentation/user/global.itely: fix line-width in (text) docs.
5942
5943         * Documentation/user/lilypond-book.itely: same.
5944
5945 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5946
5947         * VERSION (PACKAGE_NAME): release 2.7.32
5948
5949         * Documentation/topdocs/NEWS.tely (Top): document new variable
5950         naming.
5951
5952         * flower/include/array.icc (Message): remove file.
5953
5954         * flower/include/std-vector.hh: make sure vsize and VPOS are
5955         defined for binary_search_bounds().
5956
5957         * flower/std-string.cc (std): add to_string(long unsigned).
5958
5959         * configure.in (gui_b): excise std_string option.
5960         (gui_b): excise std_vector option.
5961
5962         * flower/string.cc (Module): excise flower array & string
5963
5964         * flower/include/std-string.hh: excise flower string.
5965
5966         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5967
5968         * python/convertrules.py (lilypond_version_re_str): require
5969         only numbers and dots in \version string.
5970
5971 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5972
5973         * lily/system-start-delimiter.cc (print): allow style = text too.
5974
5975         * lily/system-start-delimiter-engraver.cc
5976         (acknowledge_system_start_text): new function, also add add to
5977         support of system-start-text (instrument names). This fixes
5978         instrument names on piano staves.
5979
5980         * lily/instrument-name-engraver.cc: rewrite. Use
5981         system-start-delimiter approach. This save memory and cpu.
5982
5983         * scm/define-grobs.scm (all-grob-descriptions): remove
5984         instrument-name from break-alignment.
5985
5986         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5987
5988 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
5989
5990         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5991         jobserver going.
5992
5993         * configure.in (std_vector): On by default.
5994
5995         * lily/include/font-metric.hh:
5996         * lily/include/tfm-reader.hh: 
5997         * lily/include/spanner.hh: Use unsigned for indices and sizes.
5998         Update users.
5999
6000         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
6001
6002 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6003
6004         * VERSION (PACKAGE_NAME): 2.7.31
6005
6006         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
6007         EPS edge at 0, but take minimum with left-overshoot. This fixes
6008         cut off system start delims. 
6009
6010         * lily/instrument-name-engraver.cc (stop_translation_timestep):
6011         hack: add to axis group if not added yet. This fixes hara kiri'd
6012         piano staves.
6013
6014         * lily/hara-kiri-group-spanner.cc
6015         (force_hara_kiri_in_y_parent_callback): fix signatures.
6016
6017         * lily/hairpin.cc (print): check next hairpin to see whether or
6018         not to be continuing.
6019
6020 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
6021
6022         * Remove trailing whitespace from makefiles.
6023         
6024         * flower/include/std-vector.hh: Add binary_search_bounds workaround
6025         for earlier gcc.
6026
6027         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
6028
6029         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6030
6031         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6032
6033         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6034
6035         * configure.in: Use it.
6036
6037 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6038
6039         * scm/music-functions.scm (pitch-of-note): new function.
6040
6041         * ly/music-functions-init.ly: add \octave and \addquote
6042
6043         * lily/parser.yy (music_function_chord_body): softcode \octave.
6044         (lilypond_header): softcode \addquote
6045
6046 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6047
6048         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6049         array.hh, parray.hh at all.  Getting ready to flip the
6050         configure default.
6051
6052         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6053
6054         * lily/source-file.cc (file::get_line): Help binary_search_bounds
6055         a bit.
6056
6057         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6058
6059 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6060
6061         * flower/include/array.hh: typo. 
6062
6063 2006-02-02  Graham Percival  <gpermus@gmail.com>
6064
6065         * Documentation/user/advanced-notation.itely: doc "\#" in text.
6066
6067 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6068
6069         * flower/include/pqueue.hh: Derive from std::vector.
6070
6071         * flower/include/parray.hh: Conform to std::vector interface.
6072         Update users.
6073
6074 2006-02-02  Graham Percival  <gpermus@gmail.com>
6075
6076         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6077
6078 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6079
6080         * flower/file-path.cc (is_file): remove if 0 section.
6081
6082         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6083         selecting afii61352.
6084
6085 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6086
6087         * flower/include/std-vector.hh (boundary): Oops, reverse.
6088
6089         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6090         remove superfluous `d'.
6091
6092         * flower/include/std-vector.hh (boundary, top): Detach from class.
6093         Remove empty vector shell.
6094
6095         * flower/include/array.hh (reverse, swap): Detach from class.
6096         Update users.
6097         
6098         * flower/include/std-vector.hh
6099         * flower/include/array.hh (concat): Globally change to insert ().
6100
6101         * flower/include/std-vector.hh
6102         * flower/include/parray.hh
6103         * flower/include/array.hh (elem, elem_ref): Globally replace by
6104         at ().
6105
6106 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6107
6108         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6109
6110         * python/convertrules.py (FatalConversionError.sub_cxx_id):
6111         anticipate on identifier substitutions.
6112
6113 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6114
6115         * flower/include/std-vector.hh (insert): Remove, replace by
6116         std::vector interface.  Update callers.
6117
6118         * flower/include/array.icc (insert): Change signature to
6119         match std::vector interface.
6120         
6121         * flower/include/array.icc (vector_sort): Bugfix.
6122
6123 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6124
6125         * lily/parser.yy (output_def_head_with_mode_switch): new
6126         production. Result: dashes and underscores may be used in the
6127         \paper block.
6128
6129         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
6130
6131         * python/convertrules.py (conv): oops. One slash too much.
6132
6133 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6134
6135         * flower/include/std-vector.hh (sort): Remove, replace by
6136         ::vector_sort.  Update callers.
6137
6138         * flower/include/std-vector.hh (slice): Remove.  Update callers.
6139         (sort): Bugfix.
6140
6141         * flower/test-std.cc (vector_sort): New test.
6142
6143 2006-02-01  Graham Percival  <gpermus@gmail.com>
6144
6145         * Documentation/user/putting.itely: fixes from Erik.
6146
6147 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6148
6149         * flower/test-std.cc: Add simple unit test for vector migration.
6150
6151         * stepmake/stepmake/test*: Unit test support.
6152
6153         * flower/include/std-vector.hh (del): Remove.  Use erase (),
6154         update callers.
6155
6156         * flower/include/array.hh (begin, end): Add.
6157         (del, get): Remove.
6158
6159 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6160
6161         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6162         std::string not String. 
6163
6164         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6165         iso UINT_MAX.
6166
6167         * lily/prob.cc (Prob): copy type_ too.
6168
6169         * lily/lily-guile.cc (mangle_cxx_identifier): new
6170         function. Class_bla::foo_bar_[px] ->
6171         ly:class-bla::foo-bar[?!]. Changes throughout
6172
6173 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6174
6175         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6176
6177         * lily/beam.cc (calc_direction): take dir from visible stem in
6178         degenerate case.
6179
6180 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6181
6182         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6183         Fix -1, >=0 boundary checks for unsigned vsize.
6184
6185         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6186         loop for unsigned vsize.
6187
6188         * configure.in (--enable-std-vector): New option.
6189         (--enable-std-string): On by default.
6190
6191         * flower/include/std-vector.hh: New file.  Enable switch to
6192         std::vector, update client code.
6193
6194 2006-01-30  Graham Percival  <gpermus@gmail.com>
6195
6196         * scm/document-translation.scm: clarify "this context is also
6197         known as".  Thanks, Werner!
6198
6199         * Documentation/user/putting.itely: small fixes from Don Blaheta.
6200
6201         * Documentation/user/invoking.itely: small fix from Don.
6202
6203 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6204
6205         * scm/lily.scm (define-scheme-options): rename option
6206         preview-include-book-title to book-title-preview
6207         (define-scheme-options): move force-eps-font-include (from paper
6208         block) to eps-font-include -d option.
6209
6210         * VERSION (PATCH_LEVEL): release 2.7.30
6211
6212         * input/bach-schenker.ly (staffPiano): new file.
6213
6214         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6215
6216         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6217         credits to Nicolas.
6218
6219         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6220
6221         * ps/lilyponddefs.ps: remove start-system, stop-system,
6222         start-page fluff. This saves putting { } code on the stack, fixing
6223         stack overflows when including EPS files.
6224
6225 2006-01-29  Graham Percival  <gpermus@gmail.com>
6226
6227         * Documentation/user/putting.itely: minor fixes (comments on -devel).
6228
6229 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6230
6231         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6232
6233 2006-01-28  Graham Percival  <gpermus@gmail.com>
6234
6235         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6236
6237 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6238
6239         * input/mutopia/claop.py: Update.
6240
6241 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6242
6243         * input/regression/completion-heads.ly (texidoc): fix.
6244
6245         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6246
6247         * lily/tie-formatting-problem.cc
6248         (set_ties_config_standard_directions): use abs iso fabs for ints.
6249
6250         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6251
6252         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6253         little less than noteheight, to prevent overlaps in chords.
6254
6255         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6256         head, and fudge stem-attachment.
6257
6258         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6259
6260         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6261
6262 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6263
6264         * lily/main.cc (main): Debugging aid: catch exceptions.
6265
6266         * flower/std-string.cc (to_string): Robustification.  Fixes midi
6267         output with std::string.
6268
6269 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6270
6271         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6272
6273 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
6274
6275         * Fix -DSTRING_UTILS_INLINED.
6276
6277 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6278
6279         * VERSION (PATCH_LEVEL): release 2.7.29
6280
6281         * lily/relocate.cc (setup_paths): mingw uses std string too.
6282
6283         * lily/*.cc: various fixes for substr(ARG).
6284
6285         * lily/sustain-pedal.cc (print): 
6286
6287         * flower/file-name.cc (slashify): use std strings.
6288
6289         * flower/string-convert.cc: remove publib.h
6290
6291         * scm/define-markup-commands.scm (verbatim-file): new markup
6292         command \verbatim-file
6293
6294         * Documentation/topdocs/NEWS.tely: fixup URLs
6295
6296         * input/regression/alignment-vertical-manual-setting.ly (Module):
6297         new file.
6298
6299         * lily/align-interface.cc (align_elements_to_extents): overwrite
6300         translations with numbers in alignment-offsets from left bound
6301
6302         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6303         (page-translate-systems): new function: take into account Y-offset.
6304
6305         * Documentation/topdocs/NEWS.tely (Top): document new features.
6306
6307         * input/regression/page-layout-manual-position.ly (Module): new
6308         file.
6309
6310 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
6311
6312         * flower/file-path.cc (path::parse_path): Oops.
6313
6314         * Finish std::string interface.  For now, use std:: marker
6315         throughout for easy s/r.
6316
6317 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6318
6319         * Documentation/user/putting.itely (Score is a single musical
6320         expression): typo.
6321         (Score is a single musical expression): more typos.
6322
6323         * scm/page.scm (annotate-space-left): thinko.
6324         (annotate-page): more thinkos.
6325
6326 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6327
6328         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6329         for different \score blocks separately.
6330         (post-process-pages): put write-page-layout into paper block.
6331
6332         * lily/output-def.cc (get_parser): new file.
6333
6334         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6335         file.
6336
6337         * lily/include/output-def.hh (class Output_def): add parser_ member.
6338
6339         * input/regression/page-layout-twopass.ly (Module): new file.
6340
6341         * scm/lily.scm: remove cpp hack.
6342
6343         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6344
6345 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6346
6347         * GNUmakefile.in (c-clean): New target.
6348
6349         * flower/include/std-string.hh: String/std::string compatibility:
6350         Use NPOS for `not found' (iso -1), use ssize for length () and pos
6351         type.
6352
6353         * flower/rational.cc: 
6354         * flower/include/rational.hh: 
6355
6356         * flower/offset.cc: 
6357         * flower/include/offset.hh: 
6358
6359         * flower/interval.cc: 
6360         * flower/include/interval.hh: 
6361
6362         * flower/string-convert.cc: 
6363         * flower/include/string-convert.hh: Use std::string [interface].
6364         Update callers.
6365
6366 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
6367
6368         * Documentation/index.html.in: clean up.
6369
6370 2006-01-25  Graham Percival  <gpermus@gmail.com>
6371
6372         * Documentation/user/putting.itely: another new untested doc section.
6373
6374 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6375
6376         * scm/layout-page-layout.scm (write-page-breaks): write
6377         \spacingTweaks #ALIST. Handle grace timing.
6378
6379         * scm/: more imports.
6380
6381         * scm/page.scm (make-page): add footer/header.
6382         (annotate-space-left): revise: only take page argument.
6383         (layout->page-init): new function.
6384
6385         * scm/layout-page-layout.scm (write-page-breaks): preliminary
6386         version of the system/spacing/linebreak hack writing to the output
6387
6388         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6389         ly:make-prob.
6390
6391         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6392         ly:spanner-bound
6393
6394 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6395
6396         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6397
6398         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6399
6400         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6401         handling to page.scm
6402
6403         * lily/prob-scheme.cc (LY_DEFINE): new file.
6404         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6405
6406         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6407         prob functions.
6408
6409         * lily/music.cc (derived_mark): derive Music from Prob.
6410
6411         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6412
6413         * lily/prob.cc (Module): Implement Prob (Property Object), object
6414         with shared and r/w property alists.  
6415
6416         * lily/include/prob.hh (Module): new file. Declare Prob.
6417
6418         * flower/string.cc: remove is_empty().
6419
6420         * flower/include/string.hh (class String): remove String:: qualifier.
6421
6422         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6423         substitute appropriate functions.
6424
6425         * flower/include/string.hh (class String): remove to_str0 and
6426         is_empty(). S&R everywhere.
6427
6428 2006-01-23  Graham Percival  <gpermus@gmail.com>
6429
6430         * Documentation/user/basic-notation.itely: add hairpin
6431         after-linebreak tweak to commonprop.
6432
6433         * Documentation/user/putting.itely: added two new sections.
6434
6435 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6436
6437         * flower/international.cc: 
6438         * flower/include/international.hh: 
6439
6440         * flower/getopt-long.cc: 
6441         * flower/include/getopt-long.hh: Use std::string [interface].
6442         Update callers.
6443
6444         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6445
6446         * stepmake/stepmake/executable-rules.make: Add dependency on
6447         module libraries.
6448
6449 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
6450
6451         * flower/file-path.cc: 
6452         * flower/include/file-path.hh: Use std::string [interface].
6453         Update callers.
6454
6455         * flower/direction.cc: 
6456         * flower/axis.cc: Unused.  Remove.
6457
6458         * configure.in (--enable-std-string): New option.
6459
6460         * flower/std-string.cc: 
6461         * flower/include/std-string.hh: New file.
6462
6463         * flower/file-name.cc[STD_STRING]:
6464         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
6465
6466 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6467
6468         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
6469
6470         * scm/define-markup-commands.scm (with-dimensions):
6471         with-dimensions markup command.
6472
6473         * input/test/font-table.ly: use it.
6474
6475         * lily/open-type-font.cc (glyph_list): new function.
6476
6477         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6478
6479         * lily/ttf.cc: remove ly:font-glyph-list scheme function
6480
6481 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6482
6483         * ly/music-functions-init.ly (parallelMusic): new music function
6484         for parallel music entry.
6485
6486         * scm/define-music-properties.scm (all-music-properties): new
6487         'void music property
6488
6489         * scm/music-functions.scm (ly:music-message): make public, to be
6490         used in music function definitions
6491
6492         * scm/lily-library.scm (collect-music-for-book): discard music
6493         when the 'void property is set.
6494
6495 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6496
6497         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6498
6499         * mf/GNUmakefile: idem.
6500
6501         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6502
6503         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6504
6505         * Documentation/user/notation-appendices.itely (The Feta font):
6506         use it.
6507
6508         * input/test/font-table.ly: new file. Generate font table within lily.
6509
6510         * Documentation/user/notation-appendices.itely (The Feta font):
6511         use new font-table.ly file. 
6512
6513         * stepmake/stepmake/install-out-targets.make
6514         (local-install-outfiles): only create directory if
6515         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6516
6517 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6518
6519         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6520
6521         * VERSION (PACKAGE_NAME): release 2.7.28
6522
6523         * scm/framework-ps.scm (write-preamble): use it to pick exactly
6524         the right font from a Mac dfont.
6525         (write-preamble): don't forget directory, only look at files.
6526
6527         This fixes problems with TTF files in dfonts that don't match
6528         their PostScript names.
6529          
6530         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6531         PS name from TTF font.
6532
6533         * input/regression/tie-manual.ly: document new feature.
6534
6535         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6536
6537         * VERSION (MY_PATCH_LEVEL): bump to .28
6538
6539         * Documentation/user/basic-notation.itely (Ties): add tie examples
6540         refs.
6541
6542         * lily/tie-formatting-problem.cc (score_ties_configuration):
6543         symmetry penalties for outer ties.
6544
6545 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6546
6547         * lily/tie-formatting-problem.cc (generate_configuration) 
6548         (set_manual_tie_configuration): skip non-pair manual
6549         tie-configuration, so you can set individual ties as
6550
6551           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6552
6553         * input/regression/tie-chord.ly: use generateTiePattern to
6554         simplify file.
6555
6556         * lily/tie-formatting-problem.cc (peak_around): new function.
6557         (score_configuration): use sliding criterion for staff line collisions. 
6558         (score_configuration): idem for dot collisions.
6559         (generate_configuration): use separate stem_gap for gap to stem.
6560
6561         * lily/include/tie-formatting-problem.hh (struct Tie_details):
6562         separate penalty factors for x and y distance.
6563         (struct Tie_details): separate penalties for tip and center line collisions.
6564
6565 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
6566
6567         * lily/tie-formatting-problem.cc (generate_configuration): make
6568         large ties avoid stafflines in the horizontal section.
6569         (score_configuration): use softcoded penalties
6570         (score_aptitude): idem.
6571
6572         * lily/tie-helper.cc (from_grob): softcode tie details
6573
6574         * lily/staff-symbol-referencer.cc (on_staff_line): new function
6575
6576         * lily/staff-symbol-referencer.cc (on_line): rename from
6577         on_staffline 
6578
6579 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6580
6581         * ly/music-functions-init.ly: remove duplicate tag.
6582
6583         * lily/include/*.hh: GCC 4.1 fixes.
6584
6585 006-01-16  Erlend Aasland  <erlenda@gmail.com>
6586
6587         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6588
6589         * scm/define-music-types.scm: fix bug in desc. string
6590         for OverrideProperty
6591
6592 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
6593
6594         * scripts/lilypond-book.py: bugfix
6595
6596         * scm/define-music-types.scm: fix typos.
6597
6598 2006-01-14  Graham Percival  <gpermus@gmail.com>
6599
6600         * Documentation/user/ basic-notation.itely, global.itely,
6601         advanced-notation.itely, instrument-notation.itely: small
6602         additions (bugs and commonly tweaked properties).
6603
6604 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6605
6606         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6607         detection of mingw build.
6608         (MINGW_BUILD): opps.
6609
6610 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
6611
6612         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6613         i686-mingw32.
6614
6615 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6616
6617         * scm/music-functions.scm (skip->rest): add skip->rest
6618
6619 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6620
6621         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6622         explicitly.
6623
6624         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6625         config dirs. Aids debugging. 
6626         (display_config): also display config files.
6627
6628 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6629
6630         * VERSION: release 2.7.27
6631
6632         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6633         for determining bar size.
6634
6635         * lily/staff-symbol.cc (print): place lines at distance line-positions
6636
6637         * scm/define-grob-properties.scm (all-user-grob-properties): add
6638         line-positions.
6639
6640         * lily/staff-symbol.cc (height): new function.
6641
6642         * input/regression/staff-line-positions.ly:  new file.
6643
6644 2006-01-06  Graham Percival  <gpermus@gmail.com>
6645
6646         * input/test/add-staccato.ly: remove reference to old file.
6647
6648 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6649
6650         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6651         lilypond binary too.
6652
6653 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6654
6655         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6656
6657 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6658
6659         * scripts/midi2ly.py: Bugfix: Declare datadir.
6660
6661         * make/ly-rules.make:
6662         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6663         that seems to be gone). Fixes make web.
6664
6665         * The grand 2005-2006 replace.
6666
6667         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6668
6669 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6670
6671         * make/lilypond-vars.make: set LILYPOND_BINARY variable
6672         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6673         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6674         like -dgs-font-load.
6675
6676         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6677         remove absolute path to lilypond binary.
6678         
6679 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
6680
6681         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6682
6683 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6684
6685         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6686
6687         * mf/GNUmakefile: remove broken dvips map symlink.
6688
6689 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
6690
6691         * lily/main.cc: 
6692         * configure.in: Cosmetic fixes.
6693
6694 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
6695
6696         * Documentation/user/music-glossary.tely (Pitch names): Added
6697         Spanish pitch names and durations, thanks to Ernesto Gancedo
6698
6699 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6700
6701         * scm/lily.scm (define-scheme-options): use quasi-quote for option
6702         init. Fixes verbose printing of .scm files.
6703
6704         * stepmake/aclocal.m4: add spaces before - options.
6705         
6706 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6707
6708         * lily/relocate.cc (setup_paths): Bugfix: do not store result
6709         of path search in local block variable.
6710
6711 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6712
6713         * configure.in (NCSB_DIR): --enable-ncsb-dir
6714         (LINK_GXX_STATICALLY): denko.
6715
6716         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
6717
6718         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
6719         use locate to find c059033l.pfb. 
6720         
6721 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6722
6723         * lily/tie-formatting-problem.cc
6724         (problem::generate_base_chord_configuration): Use my_round (was
6725         round).
6726
6727         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6728         do not invoke mbrtowc.
6729
6730         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6731
6732 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6733
6734         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6735
6736 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
6737
6738         * Documentation/user/invoking.itely (svg): revise.
6739
6740 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6741
6742         * lily/lexer.ll: use sourcefilename iso. renameinput.
6743
6744 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6745
6746         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6747         <PostScriptName>.ttf instead of c059XXXttf.
6748
6749         * lily/program-option.cc (LY_DEFINE): special support for
6750         --verbose, so it works before option init too.
6751  
6752         * mf/GNUmakefile (local-install): oops.
6753
6754         * lily/lyric-hyphen.cc (print): oops.
6755
6756         * buildscripts/pfx2ttf.fontforge: new file.
6757         
6758         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6759         ($(outdir)/%.ttf): new rule. 
6760
6761         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6762         to LyricHyphen.
6763
6764         * lily/lyric-hyphen.cc (print): multiply hyphen height by
6765         font-size
6766
6767 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6768
6769         * VERSION: release 2.7.26
6770         
6771         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6772
6773 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6774
6775         * lily/font-config.cc (init_fontconfig): verbosity.
6776
6777         * THANKS: add Muziekacademie Lede. 
6778
6779         * scripts/musicxml2ly.py (print_voice_definitions): new function 
6780         (print_score_setup): new function
6781         (convert): read part definition to output staves properly.
6782
6783         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6784         Music_xml notes.
6785
6786         * python/musicexp.py (Output_printer.__init__): use _ in data
6787         members.
6788         (Output_printer.unformatted_output): new function: no formatting,
6789         but count braces.
6790         (Duration.get_length): remove isinstance() checks for
6791         Output_printer everywhere.
6792
6793         * input/regression/lyrics-bar.ly (texidoc): add
6794         Separating_line_group_engraver.
6795
6796 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
6797
6798         * lily/relocate.cc (framework_relocation): New function,
6799         factored from set_relocation ().
6800         (prefix_relocation): Rename from set_relocation ().
6801         (setup_paths): Use it.
6802
6803 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6804
6805         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6806         numbers. Patch by Erlend Aasland.
6807
6808 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6809
6810         * lily/font-config.cc (init_fontconfig): print warning if cache
6811         file is not existant.
6812
6813         * lily/main.cc: don't use #ifdef but #if
6814
6815 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6816
6817         * lily/grob-property.cc (internal_set_property): don't abort on
6818         calculation-in-progress.
6819
6820         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6821
6822         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6823         connect-to-neighbor property not connect-to-other
6824
6825         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6826         (LY_DEFINE): oops. don't forget protection.
6827
6828         * flower/parse-afm.cc (Module): strip AFM handling completely.
6829
6830         * lily/stencil-expression.cc: idem.
6831
6832         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6833
6834         * lily/function-documentation.cc (ly_add_function_documentation):
6835         use static member iso. Protected_scm
6836
6837         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6838
6839         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6840
6841 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6842
6843         * lily/relocate.cc (set_env_dir): New function.
6844         (set_relocation): Use it to fix setting PANGO_PREFIX.
6845
6846 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6847
6848         * input/regression/stem-direction-context.ly: remove rest.
6849
6850         * lily/melody-engraver.cc (process_music): restart for bar lines.
6851         (acknowledge_slur): restart for slurs.
6852
6853 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
6854
6855         * Documentation/user/invoking.itely: describe how to view SVG 
6856         output using Inkscape which replace embedded fonts with OTF fonts.
6857
6858 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6859
6860         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6861
6862 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6863
6864         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6865         comment.
6866
6867 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6868
6869         * VERSION (PACKAGE_NAME): release 2.7.25
6870
6871         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6872
6873         * input/regression/stem-direction-context.ly: new file.
6874
6875         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6876
6877         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6878         on rest.
6879
6880         * ly/engraver-init.ly: add Melody_engraver
6881
6882         * lily/beam.cc (calc_direction): use default-direction
6883         iso. get_default_direction()
6884
6885         * scm/define-grob-properties.scm (all-user-grob-properties): add
6886         default-direction property.
6887
6888         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6889
6890         * lily/stem.cc (calc_default_direction): remove
6891         Stem::get_default_direction, use default-direction with callback
6892         instead.
6893
6894         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
6895
6896         * lily/melody-engraver.cc: new file. Acknowledge stems for
6897         interpolated stem directions. 
6898
6899         * lily/melody-spanner.cc: new file. Interpolate stem directions.
6900
6901         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6902
6903         * lily/slur-configuration.cc (fit_factor): more robust check for
6904         point in curve X-extent.
6905
6906         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6907         (outside_slur_callback): check for 'outside avoidance.
6908
6909         * lily/slur-configuration.cc (score_extra_encompass): don't use
6910         bound->column() == avoid->column() for checking extents, as this
6911         doesn't work for accidentals. 
6912
6913         * lily/slur-engraver.cc (acknowledge_extra_object): remove
6914         DynamicText hardcoding.
6915
6916         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6917         crash if bound stem is NULL
6918
6919         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6920         pedals.
6921
6922 2005-12-22  Graham Percival  <gpermus@gmail.com>
6923
6924         * scm/define-markup-commands.scm: typo.  @code{\raise}
6925         => @code{\\raise}.
6926
6927         * darwin.patch: now used again, includes a
6928         required patch from fink.
6929
6930 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
6931
6932         * po/TODO: mention gtranslator along with kbabel.
6933         * po/fi.po: update translations.
6934
6935 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6936
6937         * lily/relocate.cc (setup_paths): Bugfix.
6938
6939 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6940
6941         * lily/slur-configuration.cc (score_extra_encompass): don't use
6942         "avoid" choice for avoid-slur.
6943
6944         * stepmake/bin/install.py (dest): don't create existing dir.
6945
6946 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6947
6948         * stepmake/bin/install.py: Remove file before copying.
6949
6950         * config.make.in: 
6951         * stepmake/aclocal.m4: Do not substitute INSTALL.
6952
6953 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6954
6955         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6956         depend on link-tree.
6957
6958         * lily/relocate.cc (setup_paths): only check path for non-absolute
6959         dir without directory part.
6960
6961         * flower/file-name.cc (is_absolute):  new method.
6962         (is_absolute): check root_ too.
6963
6964 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6965
6966         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6967         relocation code.  Oops, don't comment out too much.
6968
6969         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6970         iso itself.
6971
6972         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
6973         compile.
6974
6975 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6976
6977         * .cvsignore: Add install-sh.
6978
6979         * autogen.sh (srcdir): Typo.
6980
6981 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6982
6983         * autogen.sh (srcdir): urg. Touch install-sh.
6984
6985         * stepmake/bin/install-sh (Module): remove.
6986
6987         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6988
6989         * lily/include/relocate.hh: new file.
6990
6991         * lily/relocate.cc: new file. Contain relocation logic.
6992
6993         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6994         (main): read LILYPOND_VERBOSE as the first thing.
6995
6996         * stepmake/aclocal.m4: remove INSTALL variable.
6997
6998         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6999         separate target for making font symlinks.
7000         (documentation-dir): use $(if $(findstring )) for switching off
7001         Documentation.
7002
7003         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
7004         something if DOCUMENTATION is no.
7005
7006 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7007
7008         * VERSION: release 2.7.24
7009
7010         * lily/script-column-engraver.cc (stop_translation_timestep):
7011         delay adding to script-column.
7012
7013         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
7014
7015         * python/convertrules.py (conv): rule for number-visibility
7016
7017         * lily/slur-configuration.cc (score_extra_encompass): different
7018         distance measure for avoid and inside avoidance.
7019         (score_extra_encompass): use 1/(distance+eps) as penalty.
7020
7021         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7022         encompass objects for generating slur curves.
7023
7024         * lily/slur.cc: use details iso. slur-details property.
7025
7026         * input/regression/slur-tuplet.ly: new file.
7027
7028         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
7029
7030         * flower/include/offset.hh (class Offset): new operator /=
7031
7032         * lily/tuplet-number.cc (print): new file, new interface.
7033
7034         * scm/define-grob-properties.scm (all-user-grob-properties):
7035         remove number-visibility property.
7036
7037         * lily/tuplet-bracket.cc (calc_control_points): new function
7038         (calc_connect_to_neighbors): new function.
7039         (print): remove text handling for tuplet numberdef.
7040
7041         * lily/tuplet-engraver.cc (struct Tuplet_description): create
7042         TupletNumbers too. 
7043
7044         * lily/lily-guile.cc (robust_scm2booldrul): new function
7045
7046         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7047
7048         * lily/tuplet-bracket.cc (calc_position_and_height): use
7049         staff-padding to control whether tuplet brackets are over staves.
7050
7051         * lily/grob.cc (suicide): clear dim_caches_.
7052
7053         * lily/dimension-cache.cc (clear): new function.
7054
7055         * lily/grob.cc (extent): swap order of min-extent and extent
7056         calculations. This fixes hara kiri staves. 
7057
7058 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7059
7060         * lily/main.cc: Nitpick: relocation is not based on path, but on
7061         directory (location).
7062
7063 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7064
7065         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7066
7067         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7068
7069         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7070
7071         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7072
7073         * stepmake/stepmake/generic-vars.make (Module): idem.
7074
7075         * stepmake/stepmake/executable-targets.make (default): use it.
7076
7077         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7078
7079         * make/GNUmakefile: don't install make rules.
7080
7081         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7082         slashes.
7083         (prepend_env_path): more verbosity.
7084
7085 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7086
7087         * GNUmakefile.in: add dir argument for find command.
7088
7089         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7090         fixes weird line numbers for point & click.
7091
7092         * lily/source-file.cc (get_counts): init line/column/char counts.
7093
7094 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7095
7096         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7097
7098 2005-12-16  Graham Percival  <gpermus@gmail.com>
7099
7100         * Documentation/user/basic-notation.itely, advanced-notation.itely:
7101         minor fixes from Fredric.  Thanks!
7102
7103 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7104
7105         * ly/music-functions-init.ly: add \bar and \clef music function 
7106
7107         * lily/lily-lexer.cc: idem.
7108
7109         * lily/parser.yy (FIXME): remove BAR and CLEF.
7110
7111 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7112
7113         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7114
7115         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7116         function arguments too
7117
7118         * lily/main.cc (set_relocation): new function.
7119
7120         * scripts/musicxml2ly.py (convert): add \version
7121
7122         * lily/tie.cc: remove get_default_attachments()
7123
7124         * VERSION (PACKAGE_NAME): release 2.7.23
7125         
7126         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7127         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7128
7129         * Documentation/topdocs/NEWS.tely (Top): document new feature.
7130
7131         * lily/tie-formatting-problem.cc (score_ties): new function
7132         (get_variations): new function. Try flipping dirs for collisions.
7133         (generate_optimal_chord_configuration): new function. 1-opt search
7134         for better configuration.
7135
7136         * lily/tie-configuration.cc: new file.
7137
7138         * lily/tie.cc: junk Tie::get_configuration()
7139
7140         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7141         (score_ties_configuration): new function.
7142         (generate_ties_configuration): new function.
7143         (generate_base_chord_configuration): new function.
7144         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
7145         (set_manual_tie_configuration): Move body from tie-column-format.cc 
7146
7147         * input/regression/tie-dot.ly: new file.
7148
7149         * lily/tie-formatting-problem.cc (score_configuration): score
7150         tie/dot collisions.
7151
7152         * lily/tie-helper.cc (get_transformed_bezier): new function
7153
7154         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7155
7156         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7157         -undefined suppress iso. -framework Python 
7158
7159         * scm/define-grobs.scm (all-grob-descriptions): set
7160         springs-and-rods (thanks Joe Neeman!)
7161
7162 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7163
7164         * input/no-notation/display-lily-tests.ly (test): 
7165         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7166         changed from \tag #'(a b) to \tag #'a \tag #'b
7167
7168 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7169
7170         * Documentation/topdocs/NEWS.tely: strip out-www.
7171
7172         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7173
7174         * config.make.in (AR): add AR and RANLIB
7175
7176         * flower/libc-extension.cc: include cassert
7177
7178         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7179         darwin check.
7180
7181 2005-12-11  Graham Percival  <gpermus@gmail.com>
7182
7183         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7184
7185         * stepmake/stepmake/python-modules-vars.make: define
7186         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
7187
7188         * THANKS: added Johannes Schindelin.
7189
7190 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7191
7192         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7193
7194         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7195         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
7196
7197         * lily/parser.yy: reorganize file layout.
7198
7199         * ly/music-functions-init.ly: add tweak music function.
7200
7201         * lily/grob-info.cc (ultimate_music_cause): new function:
7202         recursively lookup causes. 
7203
7204         * lily/parser.yy (chord_body_element): allow music functions for
7205         post-events, allow music functions for chord elements. 
7206  
7207         * lily/font-config-scheme.cc (display_fontset): add cast.
7208
7209         * python/convertrules.py (FatalConversionError.sub_syms): \tag
7210         #'(a b) -> \tag #'a \tag #'b rule.
7211
7212         * python/musicexp.py (Output_printer.dump_version): new function
7213
7214 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7215
7216         * lily/parser.yy (FIXME): remove \tag
7217         (FIXME): remove tag_music() function.
7218
7219         * lily/lily-lexer.cc: remove \tag
7220
7221         * ly/music-functions-init.ly: define music-function "tag"
7222
7223         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7224
7225 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7226
7227         * VERSION (PATCH_LEVEL): release 2.7.22
7228
7229         * input/regression/lyric-hyphen-retain.ly: renew.
7230
7231         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7232         grob
7233
7234         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7235         iso. minimum-length property for rods.
7236
7237         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7238         LyricSpace item to keep lyrics spaced apart.
7239
7240         * ly/engraver-init.ly: remove Separating_line_group_engraver
7241
7242         * Documentation/user/music-glossary.tely: do setfilename before
7243         music-glossary.
7244
7245 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
7246
7247         * Documentation/user/lilypond-book.itely: use `,´ after xref:
7248         See xref documentation, for example.
7249
7250 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7251
7252         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7253         pending_skip iso. ly_voice[-1]
7254         (main): add if __main__ for debugging.
7255
7256         * python/musicxml.py (Accidental.__init__): new class.
7257
7258         * scripts/musicxml2ly.py (progress): new function
7259         (musicxml_key_to_lily): don't barf on modeless keys.
7260         (create_skip_music): new function.
7261         (musicxml_spanner_to_lily_event): new function. Handle beams too.
7262         (musicxml_note_to_lily_main_event): new function.
7263
7264         * python/musicexp.py (Music.__init__): add comment field.
7265         (NestedMusic.append): new routine.
7266         (SequentialMusic.print_ly): print comment.
7267         (ArpeggioEvent.ly_expression): new class
7268         (BeamEvent.ly_expression): new class
7269         (NoteEvent.__init__): support for cautionary/forced accs.
7270
7271         * lily/lookup.cc (slur): normal order for array loop.
7272
7273         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7274         to 0.0.
7275
7276         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7277         collapsed.
7278
7279 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
7280
7281         * scm/music-functions.scm: Make phrasing slurs follow voice direction
7282
7283         * scripts/lilypond-book.py: Introduce option
7284             --preserve-line-breaks, for usage with srcltx
7285
7286 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7287
7288         * scm/output-lib.scm (print-circled-text-callback): draw circle
7289         around text using make-circle-markup.
7290
7291         * Documentation/user/*: strip out-www from file names.
7292
7293 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
7294
7295         * Documentation/user/lilypond.tely (direntry): remove empty lines;
7296         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7297
7298 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7299
7300         * Documentation/user/GNUmakefile: idem.
7301
7302         * Documentation/user/macros.itexi: strip out-www
7303
7304         * python/rational.py: python 2.3 compat.
7305
7306         * VERSION (PATCH_LEVEL): release 2.7.21
7307
7308         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7309         option formatting, lilypond style.
7310
7311         * python/musicexp.py: grab from Ikebana: a library for composing
7312         ly music expressions. 
7313         (Output_printer): class for advanced .ly printing.
7314         (eg. tupletting) 
7315
7316         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7317         convert to pythonesque structure.
7318
7319         * python/rational.py: PD rational number class.
7320
7321         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
7322
7323 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
7324
7325         * lily/part-combine-iterator.cc: Minor bugfix
7326         
7327         * THANKS: Update bughunters
7328
7329 2005-12-02  Werner Lemberg  <wl@gnu.org>
7330
7331         * mf/README: Document process for proper mf2pt1 conversion.
7332
7333         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7334         overlapping.
7335
7336         * mf/feta-harmonica.mf: Removed.  Unused.
7337
7338 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7339
7340         * scripts/lilypond-book.py (do_file): fix thinkos.
7341
7342 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7343
7344         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7345         ($(outdir)/parser.cc): 
7346         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7347
7348 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
7349
7350         * ly/titling-init.ly (tagline): it should be a space between
7351         "Music engraving by LilyPond" and the version number.
7352
7353 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7354
7355         * VERSION (PACKAGE_NAME): release 2.7.20
7356
7357 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7358
7359         * scm/define-markup-commands.scm (pad-to-box): new markup command.
7360
7361         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7362         1.0.
7363         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7364
7365 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7366
7367         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7368
7369         * kpath-guile/: remove directory
7370
7371         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7372         file. Encapsulate kpathsea using commandline tools.
7373
7374         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7375         kpathsea) module.
7376
7377 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
7378
7379         * Documentation/user/advanced-notation.itely (Setting automatic
7380         beam behavior): Correct a few typos. Thanks to David Bobroff.
7381
7382         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7383         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7384
7385 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7386
7387         * scripts/*.py: gmane address for bugs.
7388
7389 2005-11-28 Pal Benko <benkop@freestart.hu>
7390         
7391         * make/ly-rules.make: add -f switch to mv
7392
7393         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7394
7395         * lily/bar-line.cc: interpret it
7396
7397 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7398
7399         * configure.in (--disable-documentation): New switch.
7400
7401         * GNUmakefile.in: Use it.
7402
7403         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7404
7405 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7406
7407         * scripts/lilypond-book.py (do_file): search chunks for
7408         \\begin{document}
7409
7410         * GNUmakefile.in: add copy step in between so we can lose the
7411         out-www directories.
7412
7413 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7414
7415         * lily/pango-font.cc (pango_item_string_stencil): put
7416         geometry.width into glyph-string too.
7417
7418 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7419
7420         * scm/define-music-display-methods.scm (RevertProperty):
7421         (OverrideProperty): Use grob-property-path property, a list of
7422         symbols, instead of grob-property, which used to be a single
7423         symbol.
7424         (BassFigureEvent): a figure can be a plain number, not necessarily a
7425         markup.
7426
7427 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7428
7429         * VERSION: release 2.7.19
7430         
7431         * lily/figured-bass-engraver.cc (process_music): check
7432         figuredBassCenterContinuations first.
7433
7434         * scm/translation-functions.scm (format-bass-figure): make double
7435         sharp larger. 
7436
7437         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7438         determine X-parent.
7439
7440         * lily/system-start-delimiter-engraver.cc: move from
7441         Nested_system_start_delimiter_engraver, rename
7442         Nested_system_start_delimiter_engraver ->
7443         System_start_delimiter_engraver.
7444
7445         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7446         bracket type from hierarchy.
7447
7448 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7449
7450         * lily/rest.cc (y_offset_callback): read staff-position.
7451
7452         * scm/define-grob-properties.scm (all-user-grob-properties): don't
7453         mark after-line-breaking-callback as internal.
7454
7455         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7456
7457 2005-11-25  Werner Lemberg  <wl@gnu.org>
7458
7459         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7460
7461 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7462
7463         * stepmake/bin/add-html-footer.py (do_file): add google
7464
7465         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7466         staff if first_start_ is true.
7467
7468 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7469
7470         * scripts/midi2ly.py (split_track): add __repr__ members.
7471         (track_first_item): only return Item if not None. This fixes a
7472         problem when dumping a track that starts with an empty channel.
7473
7474         * python/midi.c: doc module.
7475
7476 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
7477
7478         * Documentation/user/global.itely (Creating MIDI files): Fix
7479         compilation problem.
7480
7481 2005-11-22  Graham Percival  <gpermus@gmail.com>
7482
7483         * Documentation/user/basic-notation.itely: clarify dynamic
7484         padding text.
7485
7486         * Documentation/user/advanced-notation.itely: add unicode
7487         escape control example, whatever that is.  :)
7488
7489         * Documentation/user/global.itely: added "removing dynamics
7490         from MIDI" code.
7491
7492 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7493
7494         * VERSION (PATCH_LEVEL): release 2.7.18
7495
7496         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7497         System_start_delimiter_engraver by
7498         Nested_system_start_delimiter_engraver.
7499
7500         * lily/nested-system-start-delimiter-engraver.cc (struct
7501         Bracket_nesting_node): new class.
7502         (struct Bracket_nesting_group): new class
7503         (struct Bracket_nesting_staff): new class.
7504         (process_music): create hierarchy of grobs. This allows separate
7505         tuning of different SSDs. 
7506
7507         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7508         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7509
7510 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7511
7512         * lily/side-position-interface.cc (aligned_side): multiply
7513         staff_radius by 2.
7514
7515         * lily/script-engraver.cc (make_script_from_event): allow setting
7516         values to '()
7517
7518 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7519
7520         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7521
7522         * scm/define-grobs.scm (all-grob-descriptions): new grob
7523         NestedSystemStartDelimiter.
7524
7525         * input/regression/system-start-heavy-bar.ly: new file.
7526
7527         * lily/nested-system-start-delimiter-engraver.cc: new file.
7528
7529         * lily/nested-system-start-delimiter.cc: new file.
7530
7531         * input/regression/system-start-nesting.ly: new file.
7532
7533         * scm/define-grobs.scm (all-grob-descriptions): use X side
7534         positioning for positioning braces for nested contexts.
7535
7536         * lily/system-start-delimiter.cc (print): don't divide extent by
7537         staff_space.
7538         (print): use style iso. glyph.
7539         (staff_bracket): translate glyph inside routine already.
7540
7541 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
7542
7543         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7544         names.
7545
7546 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7547
7548         * scm/define-context-properties.scm
7549         (all-user-translation-properties): rename figuredBassFormatter
7550         from newFiguredBassFormatter.
7551
7552         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7553
7554         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7555
7556         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7557
7558         * lily/beam.cc (calc_beaming): new function.
7559         (calc_shorten): new function.
7560
7561         * THANKS: add Edward Neeman.
7562
7563         * input/regression/accidental-clef-change.ly: new file.
7564
7565         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7566
7567         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7568
7569         * lily/clef-engraver.cc (inspect_clef_properties): reset
7570         localKeySignature for clef changes.
7571
7572 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
7573
7574         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
7575         add dummy definition that works in Linux and add information in
7576         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7577
7578         * Documentation/user/changing-defaults.itely (Modifying context
7579         plug-ins): Add index for \with.
7580
7581         * Documentation/user/music-glossary.tely (dal segno): Updated
7582         example to version >=2.6.
7583
7584 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
7585
7586         * Documentation/user/instrument-notation.itely (Printing chord
7587         names): Reorder \chordmode and \repeat in one example.
7588
7589 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7590
7591         * VERSION: release 2.7.17
7592         
7593         * Documentation/topdocs/NEWS.tely (Top): add note about
7594         refactoring.
7595
7596         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7597         new function. Search region of 3 positions for best tie.
7598         (score_configuration): new function.
7599         (score_aptitude): new function.
7600         (generate_configuration): new function.
7601         (get_configuration): new function.
7602         (Tie_formatting_problem): new function
7603
7604         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
7605
7606         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7607
7608         * THANKS: add Eduardo Vieira & Ralph Little
7609
7610         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7611         narrower.
7612
7613         * lily/include/tie-formatting-problem.hh (class
7614         Tie_formatting_problem): add Tie_details to
7615         Tie_formatting_problem. Update calling conventions.
7616
7617         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7618         config.make.
7619
7620         * Documentation/user/lilypond.tely: remove musedata2ly entry.
7621
7622 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
7623
7624         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7625         scm/define-context-properties.scm: Maintenance bugfix: make
7626         ligature brackets work again by removing obsolete ligature
7627         primitive callback push/pop.
7628
7629         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7630         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
7631         value.
7632
7633 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
7634
7635         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7636         used and do not call it a path.
7637         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7638
7639 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7640
7641         * lily/include/tie-formatting-problem.hh (class
7642         Tie_formatting_problem): new file.
7643
7644         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7645
7646         * Documentation/misc/ChangeLog-2.3:  new file.
7647
7648         * lily/audio-staff.cc (output): degarianize.
7649
7650 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7651
7652         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7653         Unset PYTHONOPTIMIZE.  Fixes install if set.
7654
7655 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7656
7657         * python/convertrules.py (conv): add warning about drums. 
7658
7659         * make/stepmake.make: include toplevel-version.make after config.make.
7660
7661         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7662         also allow python2.4
7663
7664         * config.make.in (configure-srcdir): remove GXX GCC vars.
7665
7666         * stepmake/aclocal.m4: don't do non-srcdir build with
7667         symlinks. Use inclusion, so the src directory name can be changed.
7668
7669 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7670
7671         * make/mutopia-vars.make:
7672         * make/ly-vars.make: Use src-wildcard iso wildcard for source
7673         files.
7674
7675 2005-11-13  Werner Lemberg  <wl@gnu.org>
7676
7677         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7678         but the affected path.  This ensures that the (overlapping) outlines
7679         have the same direction, which is a necessary prerequisite for
7680         FontForge's algorithm to remove overlaps.
7681         Formatting.
7682
7683         * mf/feta-haak.mf: Formatting.
7684         (draw_bracket): Slightly modify outline to avoid an unnecessary
7685         corner.
7686         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7687         them from the affected paths.
7688
7689 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7690
7691         * mf/README: remove xpm / accordion notes.
7692
7693         * lily/tie-column-format.cc (set_chord_outline): add dots into
7694         skyline extents. This fixes tie formatting if the left head has dots.
7695
7696         * lily/tie.cc (get_configuration): only shift tie by a whole staff
7697         space inside the staff.
7698         (get_configuration): shift another position if necessary in case
7699         of left head tie  
7700
7701 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7702
7703         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7704         buildscript-dir iso. $(depth)/buildscripts.
7705
7706         * tex/GNUmakefile (local-uninstall): remove
7707         music-drawing-routines.ps juggling.
7708
7709         * stepmake/stepmake/install-targets.make (local-install-files):
7710         prepend src-dir to install targets.
7711
7712         * lily/system-start-delimiter-engraver.cc
7713         (acknowledge_system_start_delimiter): use
7714         add_offset_callback(). This fixes translation of nested
7715         staffgroups.
7716
7717         * lily/grob-closure.cc (add_offset_callback): only encaps in
7718         simple_closure if it's a procedure.
7719         
7720         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7721         from bar-line.
7722
7723         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7724         remove-empty where pertinent.
7725
7726 2005-11-12  Graham Percival  <gpermus@gmail.com>
7727
7728         * Documentation/user/instrument-notation.itely: added
7729         Cameron Horsburgh's multiple stanzas docs.  Thanks!
7730
7731 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7732
7733         * lily/GNUmakefile
7734         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7735         make picture in builddir, not srcdir.
7736
7737 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7738
7739         * VERSION: release 2.7.16
7740         
7741         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7742         shell arguments. 
7743
7744 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
7745
7746         * Documentation/user/examples.itely (Piano templates): Minor
7747         modification to the Piano centered lyrics example.
7748
7749 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7750
7751         * scripts/lilypond-invoke-editor.scm (run-browser): look at
7752         $BROWSER.
7753
7754         * Documentation/user/point-and-click.itely: simplify p&c
7755         instruction: don't configure firefox. Put lilypond-invoke-editor
7756         in front of the browser.
7757
7758         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7759         (run-browser): new function.
7760
7761         * lily/parser.yy (Lily_lexer): recognize Book
7762
7763         * lily/book.cc (clone): new function
7764
7765         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7766
7767 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
7768
7769         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7770         Maintenance bugfix: reduce number of font related warnings by
7771         updating naming conventions for glyph-name.
7772
7773 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7774
7775         * scm/define-grobs.scm (all-grob-descriptions): add
7776         rhythmic-grob-interface to TabNoteHead.
7777
7778         * scm/layout-beam.scm (check-quant-callbacks): remove
7779         set_stem_lengths()
7780
7781 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
7782
7783         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7784         alignment of centered divisiones.
7785
7786         * scm/scripts.scm (articulations): Maintenance bugfix:
7787         follow-into-staff -> quantize-position.
7788
7789         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7790         plica head in porrectus deminutus.
7791
7792 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7793
7794         * make/lilypond.fedora.spec.in (Group): add %clean section.
7795
7796         * lily/tuplet-bracket.cc (print): change check: remove bracket if
7797         less then 1/5th of total length.  
7798         (print): use gap too.  Fixes tupletUp-single-bracket.ly
7799
7800         * scm/music-functions.scm (glue-mm-rest-texts): also put other
7801         events into EventChord. This fixes textspanners on mm rests. Fixes
7802         spanner-rest.ly
7803
7804         * lily/side-position-interface.cc (get_axis): read side-axis
7805         (set_axis): set side-axis.
7806
7807         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7808         properties everywhere.
7809
7810         * lily/spacing-spanner.cc (breakable_column_spacing): add
7811         average-spacing-wishes. Take maximum if not set.
7812         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7813
7814         * scm/define-grobs.scm (all-grob-descriptions): add
7815         average-spacing-wishes.
7816
7817         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7818         offset callbacks. This fixes alignment for Fingering objects.
7819
7820         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7821         space for key - timesig combination. 
7822
7823         * input/regression/script-stem-tremolo.ly (Module): new file.
7824
7825         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7826         to key sig.
7827
7828         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7829         Fixes: c-tremolo-script.ly.
7830         
7831         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7832
7833         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7834         
7835         * scm/define-grobs.scm (all-grob-descriptions): remove
7836         self-X-offset. Fixes alignment of octavate-8.
7837
7838         * scripts/lilypond-book.py (datadir): look in
7839         LILYPONDPREFIX/share/lilypond/current/
7840
7841         * GNUmakefile.in: symlink current to <VERSION>. 
7842
7843 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
7844
7845         * lily/main.cc: eps listed as a backend.
7846
7847 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7848
7849         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7850
7851 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7852
7853         * lily/include/score.hh (class Score): remove texts_ member.
7854
7855         * lily/beam.cc (set_stem_lengths): force direction callback.
7856         (print): read quantized-positions, so we can force
7857         Beam::set_stem_lengths to occur.
7858         (rest_collision_callback): use common X parent. 
7859
7860 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7861
7862         * flower/file-path.cc (find): Bugfix: Return name of file found.
7863
7864         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7865         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7866         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7867
7868 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7869
7870         * flower/offset.cc: idem.
7871
7872         * mf/*.mf: update email address.
7873
7874         * lily/font-config-scheme.cc:  new file.
7875
7876         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7877
7878         * lily/*:  cs.uu.nl -> xs4all.nl
7879
7880         * VERSION (PATCH_LEVEL): release 2.7.15
7881
7882         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7883         spec files.
7884
7885         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7886
7887 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7888
7889         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
7890
7891         * lily/staff-performer.cc (process_music): add audio
7892         elements. This makes MIDI instrument changes work once again.
7893
7894         * lily/main.cc (LY_DEFINE): add gmane address.
7895
7896         * lily/beam.cc: remove calc_positions()
7897
7898         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7899         original_ in private scope.
7900         (class Grob): drop pscore_ pointer, change to output_def pointer.
7901         (class Grob): cleanup class definition.
7902
7903         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7904
7905 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7906
7907         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7908         absolute.  Better diagnostics.
7909
7910         * GNUmakefile.in: Add bin/ to tree and populate with some links.
7911         This makes lilypond run from the build directory using argv0
7912         relocation (without any --prefix or LILYPONDPREFIX setting).
7913
7914 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7915
7916         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7917
7918         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7919         with simple-closure.
7920
7921         * lily/self-aligment-interface.cc (set_align_self): new function
7922         (set_center_parent): new function.
7923
7924         * lily/side-position-interface.cc (set_axis): new function.
7925
7926         * lily/new-fingering-engraver.cc (position_scripts): use drul for
7927         generic code. 
7928
7929         * scm/define-grob-properties.scm (all-user-grob-properties):
7930         remove [XY]-offset-callbacks add [YX]-offset
7931         
7932 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
7933
7934         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7935         entry for time signatures after breathing signs. Bug report by
7936         Scott Russell.
7937
7938 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7939
7940         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7941         not absolute, make it absolute using PATH.
7942
7943 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7944
7945         * python/midi.c (initmidi): Fix type for mingw.
7946
7947 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
7948
7949         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7950
7951         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7952         cross compiling.
7953
7954         * stepmake/aclocal.m4: Support python cross compiling.
7955
7956         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7957         Add mingw section.
7958
7959 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7960
7961         * scm/output-lib.scm (chain-grob-member-functions): replace
7962         chained-callback.cc
7963
7964         * lily/chained-callback.cc (Module): remove file.
7965
7966         * lily/rest-collision.cc (force_shift_callback_rest): change to
7967         chained callback.
7968
7969         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
7970
7971         * lily/grob.cc (y_parent_positioning): remove axis argument from
7972         parent_positioning callbacks.
7973         (Grob): junk init code
7974         (get_offset): use generic property callbacks for
7975         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7976         (axis_parent_positioning): new function
7977         (axis_offset_symbol): new function
7978         (chain_offset_callback): new function
7979         (add_offset_callback): new function
7980
7981         * lily/beam.cc (rest_collision_callback): change signature; this
7982         is now a chained callback.
7983
7984         * lily/include/dimension-cache.hh (class Dimension_cache): remove
7985         callback administration.
7986
7987         * lily/simple-closure.cc: new file. Smob type that allows "grob
7988         member functions",
7989
7990             (ly:make-simple-closure FUNC A B)
7991
7992         is evaluated as (FUNC grob A B). This allows chaining of callbacks
7993         in various ways.
7994
7995         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7996         callbacks.
7997
7998         * lily/slur.cc (outside_slur_callback): take 2 arguments.
7999
8000         * lily/rest.cc (polyphonic_offset_callback): remove.
8001
8002         * lily/script-engraver.cc (try_music): remove bool* argument.
8003
8004         * scm/script.scm (default-script-alist): set quantize-position
8005         appropriately.
8006
8007         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
8008
8009         * lily/side-position-interface.cc (aligned_side): move staff
8010         position quantization from
8011         Side_position_interface::quantised_position().
8012         (quantised_position): remove
8013         
8014 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8015
8016         * input/regression/beam-quant-standard.ly: reindent, set
8017         debug-beam-quanting to #t.
8018
8019         * lily/beam-concave.cc (calc_concaveness): set concaveness to
8020         10000 if this is a "hard" concave beam.
8021
8022         * lily/beam.cc (calc_least_squares_positions): change from
8023         calc_least_squares_dy
8024         (set_stem_lengths): this is now a chained callback.
8025
8026         * lily/context-property.cc (execute_general_pushpop_property):
8027         bugfix override with procedure should have effect.
8028
8029         * scm/define-grob-properties.scm (all-internal-grob-properties):
8030         remove position-callbacks.
8031
8032         * scm/define-grobs.scm (all-grob-descriptions): use
8033         ly:make-callback-chain for positions property.
8034
8035         * scm/layout-beam.scm (check-quant-callbacks): return list of
8036         chained callbacks.
8037
8038         * scm/lily.scm (type-p-name-alist): add callback-chain
8039
8040         * lily/lily-guile.cc (type_check_assignment): type check failure
8041         is warning not message.
8042
8043         * lily/grob-property.cc (try_callback): walk callback chain if
8044         appropriate.
8045
8046         * lily/chained-callback.cc: new file. new smob type.
8047
8048         * lily/lily-guile.cc (procedure_arity): new function.
8049
8050 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8051
8052         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8053
8054 2005-10-25  John Mandereau  <john.mandereau@free.fr>
8055  
8056         * Documentation/user/instrument-notation.itely (Figured bass):
8057         describe new features
8058
8059 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8060
8061         * lily/beam.cc (calc_least_squares_dy): use property callback.
8062
8063         * lily/beam-concave.cc (calc_concaveness): use property callback.
8064
8065         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
8066
8067 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8068
8069         * HACKING: Update.
8070
8071 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8072
8073         * scm/layout-page-layout.scm (page-headfoot): annotate
8074         pagetopspace too.
8075
8076         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
8077
8078         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8079         doesn't take y-space.
8080
8081         * scm/paper.scm (paper-alist): fix A7 dimensions. 
8082
8083 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
8084
8085         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8086         src-wildcard, remove $(wildcard).
8087
8088         * po/GNUmakefile (PO_FILES): 
8089         * ps/GNUmakefile (PS_FILES): 
8090         * tex/GNUmakefile (TEX_FILES): 
8091         * cygwin/GNUmakefile (POSTINSTALLS):
8092         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8093         some wildcard calls.
8094
8095 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8096
8097         * THANKS: add Thomas Bushnell.
8098
8099 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
8100
8101         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8102         (lilypond-main): Redirect to gui-main if 'gui is set.
8103
8104         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8105         for alternative installations kludging s/share/lib/g
8106         LILYPONDPREFIX. 
8107
8108         * SConstruct (libdir_package_version): Define.
8109
8110         * python/SConscript: 
8111         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8112         module in libdir.  
8113
8114 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8115
8116         * lily/main.cc: clarify --safe.
8117
8118 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8119
8120         * VERSION: release 2.7.14
8121         
8122         * Documentation/user/*.itely: remove minimumVerticalExtent.
8123
8124         * scm/define-grobs.scm (all-grob-descriptions): remove
8125         RemoveEmptyVerticalGroup
8126
8127         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8128
8129         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8130         compile on MOSX
8131
8132         * python/convertrules.py (conv): add rules.
8133
8134         * lily/grob.cc: remove is_empty()
8135
8136         * lily/grob-property.cc: remove add_to_list_property().
8137
8138         * scripts/convert-ly.py (datadir): add prefix switching hack to
8139         .py too.
8140
8141         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8142         space-function tweak.
8143
8144         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8145
8146         * scm/define-grob-properties.scm (all-user-grob-properties):
8147         remove callback property.
8148
8149         * lily/include/grob.hh (class Grob): remove property_callbacks_
8150         member. Properties of procedure type are assumed to be callbacks.
8151
8152         * lily/ligature-engraver.cc (override_stencil_callback):
8153         rewrite. Use noteHeadLigaturePrimitive as source.
8154
8155         * scm/define-grob-properties.scm (all-internal-grob-properties):
8156         remove ligature-primitive-callback
8157
8158         * lily/include/dimension-cache.hh (class Dimension_cache): make
8159         class, with Grob as friend.
8160
8161         * lily/grob.cc: remove set_extent_callback(), set_extent() and
8162         has_extent_callback()
8163
8164         * scm/translation-functions.scm (format-new-bass-figure): read
8165         figuredBassPlusDirection
8166
8167         * scm/define-context-properties.scm
8168         (all-user-translation-properties): add figuredBassPlusDirection.
8169
8170         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8171
8172         * lily/align-interface.cc (set_ordered): new function.
8173
8174         * lily/grob.cc (flush_extent_cache): rewrite.
8175
8176         * lily/dimension-cache.cc (Dimension_cache): cache extent as
8177         Interval pointer directly.
8178
8179         * lily/main.cc (setup_paths): insert extra / .
8180         (setup_paths): junk cff entry.
8181
8182         * lily/font-config.cc (init_fontconfig): only add type1 / otf
8183         directories.
8184
8185         * lily/axis-group-engraver.cc (finalize): remove
8186         extraVerticalExtent, minimumVerticalExtent verticalExtent.
8187
8188         * lily/grob.cc (Grob): don't set extent from ctor.
8189         (extent): use property callbacks. 
8190
8191         * lily/axis-group-interface.cc: remove set_axes() function.
8192
8193         * lily/grob-property.cc (del_property): new function.
8194
8195 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8196
8197         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8198         
8199 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
8200
8201         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
8202
8203 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8204
8205         * mf/SConscript: Updates.
8206
8207         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8208
8209         * stepmake/stepmake/*:
8210         * */GNUmakefile:
8211         * config.make.in:
8212         * GNUmakefile.in:
8213         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8214         from any directory in build-dir.  Cleanups.
8215
8216         * make/srcdir.make.in: Remove.
8217
8218         * lily/main.cc (setup_paths): Fix and document build-dir hack.
8219
8220         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8221         main).
8222
8223         * lily/SConscript: Remove ttftools.
8224
8225         * SConstruct: Resurrect.
8226
8227 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8228
8229         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8230         Y coordinate. 
8231
8232         * lily/paper-book.cc (add_score_title): put Paper_score title into
8233         systems_ list.
8234
8235         * scm/translation-functions.scm (format-new-bass-figure): also
8236         allow plus in combination with _
8237
8238 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8239
8240         * VERSION: 2.7.13 released.
8241
8242         * lily/note-collision.cc (check_meshing_chords): don't wipe
8243         stencil, merely set transparent.
8244
8245         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
8246         (Top): document #'callbacks.
8247         (Top): document nested \override.
8248
8249         * input/regression/figured-bass.ly: update for slash and pluses.
8250
8251         * input/regression/figured-bass-continuation-forbid.ly (Module):
8252         new file.
8253
8254         * scm/translation-functions.scm (format-new-bass-figure): use
8255         slashed-digit if diminished is set.
8256         (format-new-bass-figure): add + if 'augmented is set.
8257
8258         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8259
8260         * input/test/piano-staff-distance.ly: remove file.
8261
8262         * Documentation/user/advanced-notation.itely (Formatting cue
8263         notes): use length-fraction for making stems/beams smaller.
8264
8265         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8266         modifications.
8267
8268         * lily/new-figured-bass-engraver.cc: new property
8269         centerFiguredBassContinuations
8270
8271         * Documentation/user/changing-defaults.itely (Difficult tweaks):
8272         use callbacks.
8273
8274         * lily/context-property.cc (execute_general_pushpop_property):
8275         robustness checks.
8276
8277         * input/regression/override-nest.ly: new file.
8278
8279         * python/convertrules.py (FatalConversionError.subber): conversion
8280         rule for #'callbacks
8281
8282         * input/regression/override-nest.ly: new function.
8283
8284         * lily/parser.yy (music_property_def): allow \override #'a #'b =
8285         #c too. 
8286
8287         * lily/context-property.cc (lookup_nested_property): new function.
8288         (evict_from_alist): new function.
8289         (general_pushpop_property): new function.
8290         (execute_general_pushpop_property): rewrite. Support nested
8291         properties too.
8292
8293 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8294
8295         * lily/beam.cc: use length-fraction too.
8296
8297         * scm/define-grob-properties.scm (all-user-grob-properties):
8298         remove property flag-width-function
8299         (all-user-grob-properties): remove space-function.
8300
8301         * scm/layout-beam.scm: remove flag-width-function.
8302
8303         * lily/beam.cc: remove flag-width-function
8304
8305         * scm/layout-beam.scm: remove beam dir functions.
8306
8307         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8308
8309         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8310         for easier grace tweaks.
8311
8312         * lily/beam.cc: remove dir-function.
8313
8314         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8315
8316         * lily/grob.cc: remove spacing-procedure.
8317
8318         * lily/note-head.cc (calc_stem_attachment): new function.
8319         (internal_print): use callback to get glyph-name.
8320
8321         * lily/grob-property.cc (get_interfaces): new function.
8322
8323         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8324
8325         * lily/stem.cc (calc_stem_end_position): new function.
8326         (calc_length): new function.
8327         document details for stem.
8328         remove Stem::get_direction()
8329
8330         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
8331
8332         * lily/grob-property.cc (set_callback): new function.
8333
8334         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8335
8336         * lily/item-scheme.cc: new file.
8337
8338         * lily/bar-line.cc (before_line_breaking): remove function.
8339         remove bar-size-procedure, break-glyph-function
8340
8341         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8342
8343         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8344
8345         * lily/system-start-delimiter.cc (print): suicide from
8346         here. Remove after_line_breaking_callback.
8347
8348         * lily/script-interface.cc (calc_direction): use callback for direction.
8349
8350         * lily/side-position-interface.cc (aligned_side): don't use
8351         Side_position_interface::get_direction directly. Use callback. 
8352
8353         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8354         calculate stencil.
8355         (get_print_stencil): rename from get_stencil: create stencil with
8356         transparency, color and cause. 
8357
8358         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8359
8360         * python/convertrules.py (conv): insert temporary warning rule.
8361
8362         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8363
8364         * lily/grob-property.cc (try_callback): remove marker if applicable.
8365
8366         * lily/grob.cc: elucidate doc about after/before-line-breaking
8367
8368         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8369
8370         * lily/stem.cc (height): idem.
8371
8372         * lily/stem-tremolo.cc: idem.
8373
8374         * lily/slur.cc (height): don't use get_uncached_stencil()
8375
8376         * lily/rest.cc (y_offset_callback): use offset callback
8377         iso. after-line-breaking callback.
8378
8379         * lily/grob.cc: change after/before-line-breaking-callback to
8380         after/before-line-breaking dummy properties.
8381
8382         * lily/include/grob.hh: remove Grob_status.
8383
8384         * scm/define-context-properties.scm
8385         (all-user-translation-properties): remove verticalAlignmentChildCallback
8386
8387         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8388         (calc_direction): use callback
8389         (calc_positions): use callback.
8390
8391         * lily/tie.cc (calc_direction): use callback. Only call parent
8392         positioning for more than one tie.
8393
8394         * lily/tie-column.cc (calc_positioning_done): use callback
8395
8396         * lily/slur-scoring.cc (calc_control_points): use callback
8397
8398         * lily/slur.cc (calc_direction): use callback.
8399
8400         * lily/note-collision.cc (force_shift_callback): remove.
8401
8402         * lily/dot-column.cc (force_shift_callback): remove. Use
8403         other_axis_parent_positioning.
8404
8405         * lily/grob.cc (other_axis_parent_positioning): new function.
8406         (same_axis_parent_positioning): new function
8407
8408         * lily/align-interface.cc (alignment_callback): remove function.
8409
8410         * lily/note-collision.cc (calc_positioning_done): use callback.
8411
8412         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8413         (calc_direction): idem.
8414         remove print function.
8415
8416         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8417
8418         * lily/dot-column.cc (calc_positioning_done): use callback.
8419
8420         * lily/break-align-interface.cc (calc_positioning_done): use callback.
8421
8422         * lily/beam.cc (calc_direction): use pseudo-property for beam
8423         direction callback.
8424         (calc_positions): use callback 
8425
8426         * lily/align-interface.cc (calc_positioning_done): use
8427         callback. Fold fixed  distance and normal alignment in one function.
8428
8429         * lily/stem.cc (calc_stem_end_position): use callback.
8430         (calc_positioning_done): idem.
8431         (calc_direction): idem.
8432         (calc_stem_end_position): idem
8433         (calc_stem_info): idem.
8434
8435         * lily/grob-property.cc (get_property_data): new function: 
8436         (try_callback): new function.
8437
8438         * scm/define-grob-properties.scm (all-user-grob-properties): doc
8439         callbacks property.
8440
8441         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8442
8443 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8444
8445         * lily/tie.cc (get_position): robustness fix. Don't crash if a
8446         tie
8447         has no heads.
8448         
8449         * lily/include/*.hh (Module): compile fixes.
8450
8451 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
8452
8453         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
8454         as an argument for char-syntax: use (char-syntax (or nil 0)) 
8455         instead of (char-syntax nil), thanks to Milan Zamazal.
8456
8457 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8458
8459         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8460         dist.
8461
8462         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8463         themselves.
8464
8465 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8466
8467         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8468         add class_name() method.
8469
8470         * lily/music-scheme.cc: remove ly:music-name.
8471
8472 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8473
8474         * cygwin/postinstall-lilypond.sh: Remove cruft.
8475
8476         * cygwin/postremove-lilypond.sh: Remove.
8477
8478         * cygwin/GNUmakefile (default): Remove postremove rules.
8479
8480 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8481
8482         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8483         even header too.
8484         
8485         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8486         MacOS 9 users.
8487
8488         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8489         consider break index for broken spanner.
8490
8491         * scm/define-markup-commands.scm (wordwrap-string): remove \r
8492         characters from string before splitting.
8493
8494 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8495
8496         * scm/framework-ps.scm (output-preview-framework): use
8497         is-book-title to determine whether to chop off the booktitle.
8498
8499         * lily/paper-book.cc (systems): init from book-title-properties
8500         (add_score_title): init score-title-properties.
8501
8502         * ly/paper-defaults.ly: add {score,book}-title-properties.
8503
8504         * scm/document-backend.scm (lookup-interface): error message if
8505         using unknown interface.
8506
8507         * lily/volta-bracket.cc (after_line_breaking): new function. Set
8508         edge-height.
8509
8510         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8511         make_bracket.
8512         (make_bracket): new function.
8513
8514         * scm/lily.scm (define-scheme-options): add paper-size option.
8515
8516         * ly/declarations-init.ly (laissezVibrer): get paper size from
8517         -dpaper-size
8518
8519         * scm/translation-functions.scm: use \fontsize for changing the
8520         fontsize.
8521
8522         * scm/define-grobs.scm (all-grob-descriptions): set
8523         between-length-limit to 1.0
8524
8525         * lily/tie-helper.cc: add between_length_limit_ detail property.
8526
8527         * mf/feta-bolletjes.mf: typos.
8528
8529         * lily/note-head.cc (internal_print): don't shadow idx
8530         parameter. This fixes wrong attachment for do shape heads.
8531
8532 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8533
8534         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8535
8536         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8537
8538         * scm/layout-slur.scm: rename from slur.scm
8539
8540         * scm/layout-page-layout.scm: rename from page-layout.scm
8541
8542         * scm/layout-beam.scm: rename from beam.scm
8543
8544         * scm/define-grob-interfaces.scm (bass-figure-interface): add
8545         bass-figure-interface
8546
8547         * lily/new-figured-bass-engraver.cc (process_music): add
8548         implicitBassFigures property.
8549         
8550         * scm/define-markup-commands.scm (pad-x): new markup.
8551
8552         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8553         minimumVerticalExtent on FiguredBass context.
8554
8555         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8556         case the continuation crosses a line break.
8557
8558 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8559
8560         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8561         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
8562         absolute file name bug.  
8563
8564 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8565
8566         * VERSION (PACKAGE_NAME): release 2.7.12
8567
8568         * input/regression/figured-bass-continuation-center.ly: new file.
8569
8570         * input/regression/beam-outside-beamlets.ly: new file.
8571
8572         * lily/beam.cc (set_beaming): don't clip edges.
8573         (connect_beams): don't clip edges.
8574
8575         * lily/beaming-info.cc (clip_edges): new function.
8576
8577         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8578
8579         * Documentation/user/instrument-notation.itely (Figured bass):
8580         demonstrate extenders, update seealso links.
8581
8582         * scm/titling.scm (marked-up-headfoot): change tagline
8583         handling. tagline = ##f will blank the tagline as well.
8584
8585 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8586
8587         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8588
8589         * lily/new-figured-bass-engraver.cc (struct
8590         New_figured_bass_engraver): add new_music_found_ member.
8591
8592         * lily/lilypond-version.cc (Lilypond_version): deal with
8593         incorrectly formatted version strings. 
8594
8595         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8596         New_figured_bass_engraver by default.
8597
8598         * lily/ttf.cc (print_trailer): only define glyph names when
8599         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8600
8601 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8602
8603         * lily/horizontal-bracket.cc (make_bracket): new function.
8604
8605         * scm/define-grobs.scm (all-grob-descriptions): new grobs
8606         NewBassFigure, BassFigureBracket, BassFigureContinuation,
8607         BassFigureLine, BassFigureAlignment
8608
8609         * lily/new-figured-bass-engraver.cc (process_music): new file.
8610
8611         * lily/figured-bass-continuation.cc: new file.
8612
8613         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8614         new file.
8615
8616 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
8617
8618         * scripts/lilypond-book.py: Bug fix, put the quote around the
8619         actual score for LaTeX documents.
8620
8621         * scm/define-grobs.scm (all-grob-descriptions): Change
8622         collapse-height of the SystemStartBracket grob to 5.0, 
8623         so the bracket disappears for single stave score lines (similarly
8624         to SystemStartBraces). 
8625
8626         * Documentation/user/advanced-notation.itely (Polymetric
8627         notation): Clarify the use of compressMusic.
8628
8629         * Documentation/user/basic-notation.itely (Grace notes): Clarify
8630         that the grace spacer note in other staves need the same duration
8631         and document the stroke-style property.
8632
8633 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8634
8635         * Documentation/user/global.itely (Vertical spacing): document
8636         alignment-extra-space and fixed-alignment-extra-space.
8637
8638         * Documentation/topdocs/NEWS.tely (Top): add entry.
8639
8640         * input/regression/alignment-vertical-spacing.ly: new file.
8641
8642         * python/convertrules.py (conv): add rule.
8643
8644         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8645
8646         * lily/align-interface.cc (stretch_after_break): new
8647         function. Read fixed-alignment-extra-space property.
8648         (align_elements_to_extents): read alignment-extra-space property.
8649
8650         * lily/lily-guile.cc (robust_scm2dir): new function.
8651
8652         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8653         (annotate-space-left): new function. Annotate space left on page. 
8654         (annotate-y-interval): new function.
8655         (paper-system-annotate-last): new function. Annotate bottom-space.
8656
8657         * mf/feta-beugel.mf (y): 
8658
8659 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8660
8661         * VERSION (PACKAGE_NAME):  release 2.7.11
8662
8663         * scm/lily-library.scm (interval-translate): new function
8664         (interval-center): new function. 
8665
8666         * scm/page-layout.scm (paper-system-annotate): new function. Add
8667         arrows for dimensions.
8668  
8669         * scm/stencil.scm (dimension-arrows): new function.
8670
8671         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8672
8673         * input/regression/page-spacing.ly: add annotatespacing
8674
8675         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8676         (LY_DEFINE): new function ly:paper-system-set-property!
8677
8678         * Documentation/user/global.itely (Paper size): explain how to add
8679         sizes.
8680
8681         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8682         correspond to GS's definition.
8683
8684         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8685         tuplet bracket.
8686         (print): only connect to next bracket if the next one is alive.
8687         (print): set padding to 0.0 if the bound is a breakable
8688         column. This makes tupletFullLength brackets reach up to the staff
8689         line if it doesn't connect to the next line.
8690
8691 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8692
8693         * lily/bar-number-engraver.cc: correct docs.
8694
8695         * scm/output-lib.scm (first-bar-number-invisible): rename from
8696         default-bar-number-visibility
8697
8698 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8699
8700         * scm/define-music-properties.scm (all-music-properties): remove
8701         predicate property.
8702
8703 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
8704
8705         * po/fi.po: refresh.
8706
8707 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8708
8709         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8710         superfluous s1.
8711         (disappear): bugfix.
8712
8713         * lily/stem-tremolo.cc (raw_stencil): read slope property.
8714
8715         * lily/include/paper-system.hh (class Paper_system): remove
8716         staff_extents_ member.
8717
8718         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8719
8720         * lily/include/paper-system.hh (class Paper_system): remove
8721         number_ variable. Remove is_title_. Remove break_before_penalty_
8722
8723         * lily/paper-book.cc (systems): use 'number property iso. number_
8724         member.
8725
8726         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8727         remove ly:paper-system-number.
8728
8729         * scm/lily-library.scm (paper-system-title?): new function.
8730
8731         * lily/book.cc (process): bugfix: flip ?: cases. 
8732
8733         * Documentation/user/changing-defaults.itely (Difficult tweaks):
8734         add outputProperty.
8735
8736         * ly/music-functions-init.ly: add outputProperty music function.
8737
8738         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8739
8740         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8741         and next-padding.
8742         (optimal-page-breaks): rename from ly:optimal-page-breaks.
8743
8744         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8745
8746         * lily/paper-system.cc (internal_get_property): new function.
8747
8748         * Documentation/user/global.itely (Vertical spacing): refer to
8749         page-spacing.ly
8750
8751         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8752         pagetopspace
8753
8754         * input/regression/page-spacing.ly: new file.
8755
8756         * input/regression/page-top-space.ly: new file.
8757
8758         * lily/spacing-spanner.cc: cmath -> math.h
8759
8760         * lily/paper-system.cc (read_left_bound): new function. Read
8761         line-break-system-details from left bound to determine extents.
8762  
8763         * Documentation/user/programming-interface.itely (Using LilyPond
8764         syntax inside Scheme): change applyxxx -> applyXxx.
8765
8766         * ly/music-functions-init.ly: add outputProperty music function.
8767
8768         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8769
8770         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8771
8772         * python/convertrules.py (conv): rule
8773
8774         * ly/music-functions-init.ly: applyxxx -> applyXxx
8775
8776         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8777         TabVoice to Voice.
8778
8779 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8780
8781         * flower/include/real.hh: include <math.h> iso. <cmath>
8782
8783         * flower/include/offset.hh: include real.hh
8784
8785 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8786
8787         * Documentation/user/changing-defaults.itely (Difficult tweaks):
8788         fix example, now that 'interfaces is no longer directly available.
8789
8790         * lily/book.cc (process): don't crash if paper == NULL.
8791
8792         * po/fr.po: update.
8793
8794 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8795
8796         * scm/define-music-types.scm (music-descriptions): set length and
8797         start-callback for QuoteMusic
8798
8799 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
8800
8801         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8802         arguments. Fixes compilation error with gcc 3.3.
8803
8804 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8805
8806         * VERSION: release 2.7.10
8807
8808         * stepmake/stepmake/python-module-rules.make
8809         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
8810
8811         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8812         real.hh
8813
8814 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8815
8816         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8817         -Werror. Otherwise GCC barfs over various optimizations.
8818
8819         * scm/define-grob-properties.scm (all-internal-grob-properties):
8820         add note-head property
8821
8822         * Documentation/user/instrument-notation.itely (Laissez vibrer
8823         ties): new node.
8824
8825         * input/regression/laissez-vibrer-ties.ly: new file.
8826
8827         * lily/laissez-vibrer-engraver.cc: new file.    
8828
8829         * lily/include/tie-column-format.hh: new file.
8830
8831         * lily/tie-column-format.cc: new file. 
8832
8833         * lily/tie-column.cc (set_manual_tie_configuration): new function.
8834
8835         * lily/laissez-vibrer-tie.cc: new file.
8836
8837         * lily/include/laissez-vibrer-tie.hh: new file.
8838
8839         * ly/engraver-init.ly: add Laissez_vibrer_engraver
8840
8841         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8842
8843         * scm/define-grobs.scm (all-grob-descriptions): add
8844         LaissezVibrerTie, LaissezVibrerTieColumn
8845
8846         * lily/tie-column.cc (set_tie_config_directions): new function
8847         (final_shape_adjustment): new function.
8848         (shift_small_ties): new function.
8849
8850         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8851
8852         * lily/include/tie.hh (struct Tie_details): add x_gap_
8853         (struct Tie_configuration): add head_position_
8854
8855         * lily/tie-column.cc (set_chord_outline): new function.
8856
8857         * mf/cmr.enc.in:  remove file.
8858
8859 2005-09-11  Graham Percival  <gpermus@gmail.com>
8860
8861         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
8862
8863 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8864
8865         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8866         reduce aliasing effects.
8867
8868         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8869         box in skyline.
8870
8871 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8872
8873         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8874
8875         * flower/include/real.hh: std::fabs too.
8876
8877 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8878
8879         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
8880
8881         * lily, flower: Include C++ iso C headers.  Import namespace std
8882         throughout.
8883
8884         * lily/side-position-interface.cc: 
8885         * lily/scm-hash.cc: 
8886         * lily/note-head.cc: 
8887         * lily/include/includable-lexer.hh: 
8888         * flower/include/string-data.icc: Remove using std::*.
8889
8890         * lily, flower: Include C++ iso C headers.  Import namespace std
8891         throughout.
8892
8893         * lily/side-position-interface.cc: 
8894         * lily/scm-hash.cc: 
8895         * lily/note-head.cc: 
8896         * lily/include/includable-lexer.hh: 
8897         * flower/include/string-data.icc: Remove using std::*.
8898
8899         * Documentation/user/instrument-notation.itely (Entering lyrics):
8900         Multiple latin-1->utf-8 conversion fix.
8901
8902         * Documentation/user/*tely: Update Emacs cookie to utf-8.
8903
8904 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8905
8906         * lily/tie.cc (get_configuration): also avoid dots for non-space
8907         situations.
8908
8909 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8910
8911         * Documentation/user/instrument-notation.itely: Bugfix.
8912
8913 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8914
8915         * tex/GNUmakefile: don't install texinfo.tex
8916
8917         * tex/ : cleanup: remove unused files.
8918
8919         * lily/general-scheme.cc: remove my_{isinf,isnan}.
8920
8921         * flower/include/real.hh: using std::{isnan,isinf}
8922         
8923         * VERSION (PATCH_LEVEL): release 2.7.9
8924
8925 2005-09-05  Graham Percival  <gpermus@gmail.com>
8926
8927         * Documentation/user/ instrument-notation.itely,
8928         advanced-notation.itely: minor tweaks.
8929
8930         * input/test/script-chart.ly: add item padding.
8931
8932 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8933
8934         * flower/offset.cc: use math.h iso. <cmath>
8935
8936         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8937         of IE users.
8938
8939         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8940         (widen-left-stencil-edges): new function. Fix alignment problems
8941         with LaTeX includegraphics.
8942
8943         * lily/text-interface.cc (interpret_markup): use abort().
8944
8945 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8946
8947         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8948
8949         * lily/tie.cc (get_configuration): update bezier shape as we
8950         change Y positions.
8951         (get_configuration): don't move large ties if we're outside of the
8952         staff.
8953
8954 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8955
8956         * scm/define-markup-commands.scm (strut): swap X and Y dims.
8957         
8958 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
8959
8960         * .cvsignore: Add auto-generated configure files and then some.
8961
8962 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8963
8964         * scm/define-grobs.scm (DynamicLineSpanner): Add
8965         X-extent-callback.  Fixes hairpin-slur collision.
8966
8967 2005-08-31  Graham Percival  <gpermus@gmail.com>
8968
8969         * Documentation/user/advanced-notation.itely,
8970         basic-notation.itely: minor changes.
8971
8972 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
8973
8974         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8975         \linebreak between each .eps file if \betweenLilyPondSystem is
8976         undefined. 
8977
8978         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8979         music): Document the \linebreak
8980
8981         * Documentation/user/lilypond-book.itely,
8982         input/tutorial/lbook-latex-test.tex,
8983         Documentation/user/examples.itely: Remove \usepackage{graphics}
8984
8985 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8986
8987         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8988
8989         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8990         compat bugfix.
8991
8992         * scripts/lilypond-book.py (PREAMBLE_LY): define
8993         inside-lilypond-book
8994         (modify_preamble): new function. Insert \RequirePackage{graphics}
8995         when no {graphics found in preamble.  
8996
8997 2005-08030  Graham Percival  <gpermus@gmail.com>
8998
8999         * Documentation/user/basic-notation.itely, global.itely,
9000         tutorial.itely: misc small changes.
9001
9002 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9003
9004         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
9005         VERSION.
9006
9007 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9008
9009         * lily/tie-column.cc (new_directions): put Tie down on center
9010         staff line. 
9011
9012         * lily/script-interface.cc (before_line_breaking): use
9013         Grob::programming_error
9014
9015         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9016
9017         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9018         of splitext.
9019
9020 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9021
9022         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9023
9024 2005-08-29  Werner Lemberg  <wl@gnu.org>
9025
9026         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9027         the `*.scale.pfa' files to avoid warnings.
9028
9029 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9030
9031         * lily/tempo-performer.cc (process_music): idem.
9032
9033         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9034
9035 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9036
9037         * Documentation/user/advanced-notation.itely (Text markup): not a
9038         fragment.
9039
9040         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9041
9042         * lily/staff-performer.cc (initialize): add tempo/name to
9043         audio_staff_
9044
9045 2005-08-26  Graham Percival  <gpermus@gmail.com>
9046
9047         * Documentation/user/advanced.itely: add text-only example.
9048
9049         * Documentation/user/invoking.itely: add index entries for
9050         convert-ly.
9051
9052         * Documentation/user/ tutorial.itely, basic-notation.itely:
9053         small fixes suggested by Steve D.  Thanks!
9054
9055 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9056
9057         * input/regression/markup-bidi-pango.ly: new file.
9058
9059         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9060         standard. Remove #ifdef. Remove memleak.
9061         (text_stencil): use text_dir to decide how to composite items.
9062         (text_stencil): determine uniform text direction for the entire
9063         string.
9064
9065         * scripts/lilypond-book.py (output_name): remove
9066         latex_filter_cmd. Non-portable to non-Unix systems. 
9067         (get_latex_textwidth): use File.write and os.unlink() instead.
9068
9069         * THANKS: add Vicente & Trevor.
9070
9071         * lily/grob.cc (discretionary_processing): look up origin for
9072         programming_error too. 
9073
9074         * input/regression/tie-broken.ly: new file.
9075
9076         * lily/tie-column.cc (set_chord_outlines): set outline for line
9077         break case too.
9078         
9079 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9080
9081         * lily/pango-font.cc (text_stencil): don't translate glyphs in
9082         unscaled transform, just translate stencils.
9083
9084         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
9085         MIDI.
9086
9087         * scm/define-markup-commands.scm (wordwrap-string): use
9088         text-direction
9089         (wordwrap-stencils): idem.
9090         (line): idem.
9091         (fill-line): idem.
9092         (wordwrap-stencils): translate last line to right for
9093         text-direction = LEFT.
9094
9095         * scm/define-grob-properties.scm (all-user-grob-properties): add
9096         text-direction.
9097
9098 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9099
9100         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9101         when copying a Lily_parser object.
9102
9103 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9104
9105         * scm/define-markup-commands.scm (null): add null markup.
9106
9107 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
9108
9109         * lily/item.cc: Add documentation of center-invisible
9110
9111 2005-08-24  Graham Percival  <gpermus@gmail.com>
9112
9113         * Documentation/user/advanced-notation.itely: add info about
9114         raising text.
9115
9116         * Documentation/user/programming-interface.itely: fix example
9117         involving raised text.
9118
9119 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9120
9121         * lily/beam.cc (print): fix X start/end points of isolated
9122         beamlets.
9123
9124         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9125
9126         * lily/multi-measure-rest.cc (set_text_rods): new function.
9127
9128         * lily/vertical-align-engraver.cc (process_music): call
9129         Align_interface::set_axis(). This forces #'elements to be ordered,
9130         preventing random vertical reordering of staves.
9131
9132         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9133         add avoid-slur property. 
9134
9135         * Documentation/user/basic-notation.itely (Measure repeats): add
9136         countPercentRepeats example.
9137
9138         * Documentation/user/advanced-notation.itely (Other text markup
9139         issues): remove remark about normal-font.  We have \normal-text
9140
9141         * input/regression/tie-chord.ly: add note about remaining bugs.
9142
9143         * lily/tie.cc (print): try Tie_column::set_directions () if
9144         control-points not yet defined.
9145
9146 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9147
9148         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9149         extent. This fixes braces falling out of the EPS bbox.
9150
9151         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9152         exactly to bbox.
9153
9154 2005-08-23  Graham Percival  <gpermus@gmail.com>
9155
9156         * {various} : change #up->#UP and #down->#DOWN.
9157
9158         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9159
9160         * Documentation/user/advanced-notation.itely: clarify
9161         what objects handles text on a multimeasure rest.
9162
9163 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9164
9165         * VERSION (PATCH_LEVEL): release 2.7.7
9166
9167 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9168
9169         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
9170
9171         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9172
9173         * input/regression/*.ly: formatting clean-up. Default layout
9174         before music expression.
9175
9176         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9177         romanze28-2 example.
9178
9179         * scm/ps-to-png.scm: remove dir-re function.
9180         (make-ps-images): generate page names, instead of globbing them.
9181         This brings down LilyPond memory usage for make web by a factor
9182         10. 
9183
9184         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9185         don't use glob. With 3000 files, globbing
9186         Documentation/user/out-www/ can take too much time. 
9187         
9188         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9189
9190         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9191
9192         * input/regression/tie-manual.ly: new file
9193
9194         * input/regression/tie-chord.ly: update.
9195
9196         * flower/include/interval.hh (struct Interval_t): 
9197
9198         * lily/tie.cc (distance): new function 
9199         (height): new function.
9200         (init): new function
9201         (Tie_details): new struct.
9202
9203         * lily/skyline.cc (skyline_height): new function.
9204
9205         * lily/tie-column.cc (set_chord_outlines): new function.
9206         (new_directions): read tie-configuration
9207
9208         * lily/skyline.cc: fix ASCII art.
9209         
9210 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
9211
9212         * python/convertrules.py (string_or_scheme): Fix spelling error
9213
9214 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9215         
9216         * lily/tie-column.cc (set_directions): set directions only once.
9217         (add_configuration): new function.
9218
9219         * lily/tie.cc (set_control_points): new function
9220
9221         * lily/tie-column.cc (new_directions): new function.
9222
9223         * ly/music-functions-init.ly: set 'pitch property
9224         iso. trill-pitch. This makes \relative work with \pitchedTrill
9225
9226         * lily/tie.cc (get_configuration): new function. Don't generate
9227         control points, rather, generate configuration.
9228         remove head-pair property.
9229
9230         * lily/include/tie.hh (struct Tie_configuration): new struct.
9231
9232 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
9233
9234         * Documentation/topdocs/NEWS.tely: clarify.
9235
9236 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9237
9238         * lily/tie.cc: remove minimum-length
9239
9240         * scm/define-grob-properties.scm (all-user-grob-properties):
9241         remove staffline-clearance, y-offset 
9242
9243         * input/regression/tie-dots.ly (Module): remove.
9244
9245         * lily/tie.cc (get_control_points): rewrite. Put short ties in
9246         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9247
9248         * input/regression/tie-single.ly: new file.
9249
9250 2005-08-21  Graham Percival  <gpermus@gmail.com>
9251
9252         * ly/bagpipe.ly: fix compile problem.
9253
9254 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9255
9256         * lily/midi-item.cc (name): new method.
9257
9258         * lily/staff-performer.cc (acknowledge_audio_element): use
9259         signature of baseclass.
9260
9261         * lily/engraver-group.cc (do_announces): move recursion call out
9262         of while loop. 
9263
9264         * lily/drum-note-performer.cc (class Drum_note_performer): use
9265         process_music everywhere.
9266
9267         * ly/performer-init.ly: add default children everywhere.
9268
9269         * lily/paper-book.cc (output): call paper-book-write-midis
9270         directly: always write MIDI, even if no \layout {} block. 
9271
9272 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9273
9274         * VERSION (PACKAGE_NAME): release 2.7.6
9275
9276         * lily/percent-repeat-engraver.cc (try_music): don't print warning
9277         about not being able to handle repeat.
9278
9279 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9280
9281         * Documentation/user/examples.itely (Piano templates):
9282         * lily/include/performer-group.hh: Remove last traces of
9283         Performer_group_performer.  Fixes make web.
9284
9285 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9286
9287         * Documentation/user/examples.itely (Piano templates): change
9288         Engraver_group_engraver -> Engraver_group
9289
9290         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9291         scm_stand_in_procs is not weak_any.
9292
9293         * lily/volta-bracket.cc (print): don't use strcmp().
9294
9295         * lily/volta-engraver.cc (process_music): use
9296         Text_interface::is_markup() for setting the 'text property of the
9297         volta bracket.
9298
9299         * input/mutopia/claop.py (accents): update syntax to 2.6
9300
9301         * scm/define-context-properties.scm
9302         (all-user-translation-properties): add countPercentRepeats.
9303
9304         * Documentation/user/basic-notation.itely (Measure repeats): add
9305         isolated percent example.
9306
9307 2005-08-18  Graham Percival  <gpermus@gmail.com>
9308
9309         * input/ {various}: change direction #1, #-1 to
9310         #up/#down or \fooUp, \fooDown.
9311
9312         * Documentation/user/music-glossary.tely: #-1 to #down.
9313
9314         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9315         to #up, #-1 to #down.
9316
9317 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9318
9319         * lily/include/engraver-group.hh: rename.
9320
9321         * lily/include/performer-group.hh: rename.
9322
9323 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
9324
9325         * input/test/script-abbreviations.ly: Removed some old LaTeX
9326         left overs.
9327
9328 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9329
9330         * python/convertrules.py (conv): inside-slur -> avoid-slur.
9331         Remove functions.  Remove if 1: constructs, reindent.
9332
9333         * scripts/convert-ly.py (add_version): Add functions from
9334         convertrules.py
9335
9336         * scm/script.scm (default-script-alist):
9337         s/priority/script-priority.  Fixes script stacking.  Backportme.
9338         (Fermata): Very low priority.
9339
9340 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9341
9342         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9343
9344         * input/regression/slur-script.ly: remove padding tweaks. Add
9345         comment strings.
9346
9347         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9348         time sigs and related stuff.
9349
9350         * scm/define-grob-properties.scm (all-user-grob-properties): add
9351         @c