]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
f7a5f3b43e95ce0b954c6336c0f44fc49e9dd286
[lilypond.git] / ChangeLog
1 2006-10-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4; 
4
5         * Doxyfile: remove file.
6
7         * scm/define-grob-interfaces.scm (string-finger-interface): add string-finger-interface
8
9         * lily/general-scheme.cc (LY_DEFINE): move
10         ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[] 
11
12         * Documentation/topdocs/NEWS.tely (Top): add note for
13         string-finger feature.
14
15         * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
16         property.
17
18         * scm/output-lib.scm (string-finger::calc-text): read 'digit
19         instead of 'text
20
21         * input/regression/script-stack-horizontal.ly: new file.
22
23         * ly/engraver-init.ly: add Script_row_engraver.
24
25         * lily/script-column.cc (order_grobs): refactor: separate axis
26         independent code.
27         (row_before_line_breaking): new function.
28
29         * lily/script-row-engraver.cc (Script_row_engraver): new file.
30
31         * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
32
33 2006-10-14  Jürgen Reuter  <reuter@ipd.uka.de>
34
35         * Documentation/user/instrument-notation.itely: Cleanup: Remove
36         annoying skip notes from mensural ligature example.  Update
37         @refbugs for ligatures and mensural ligatures.
38
39         * lily/coherent-ligature-engraver.cc,
40         lily/include/coherent-ligature-engraver.hh,
41         lily/mensural-ligature-engraver.cc,
42         lily/vaticana-ligature-engraver.cc: Revise code for item
43         reparentizing.  There should now be less programming_error
44         messages.
45
46         * lily/mensural-ligature-engraver.cc: Improve placement of dots.
47
48         * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
49         Maintenance bugfix: Don't create empty Stencil (), but empty box
50         instead.  This fix should eliminate some programming_error
51         messages.
52
53         * ly/engraver-init.ly (MensuralStaff): Set default accidental
54         style.
55
56         * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
57         \layout block _before_ score.
58
59 2006-10-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
60
61         * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
62
63         * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
64
65 2006-10-13  Erlend Aasland  <erlenda@gmail.com>
66
67         * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
68
69 2006-10-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
70
71         * VERSION (PATCH_LEVEL): bump version.
72
73         * COPYING: clarify exception note.
74
75         * lily/main.cc: remove remark about "COPYING".
76
77         * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
78         system-count starts at 0 for each clip-region. Change name to
79         FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
80         layout block, per score.
81
82 2006-10-13  Erik Sandberg  <mandolaerik@gmail.com>
83
84         * lily/input-smob.cc: add equal_p for Input
85
86         * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
87         function
88
89         * lily/parser.yy: MY_MAKE_MUSIC sets music origin
90
91         * lily/prob.cc: Add equal_p predicate for Prob
92
93         * lily/translator.cc: small cleanup
94
95         * scm/document-music.cc: use data from translator listener
96         registration to generate documentation for event classes
97
98 2006-10-13  Jan Nieuwenhuizen  <janneke@gnu.org>
99
100         * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
101
102 2006-10-12  Jan Nieuwenhuizen  <janneke@gnu.org>
103
104         * Documentation/topdocs/INSTALL.texi: Thinko.
105
106         * .cvsignore: Update.
107
108         * lexer-gcc-3.1.sh: Remove.
109
110         * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
111         Update anonymous cvs access.  Remove comment about gcc 3.0.4.
112
113 2006-10-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
114
115         * VERSION: release 2.9.23
116
117         * lily/paper-column-engraver.cc (stop_translation_timestep): also
118         typecheck barnumber.
119
120         * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
121
122         * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
123
124         * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
125
126         * input/regression/clip-systems.ly (Notes): new file. 
127
128         * scm/lily.scm (define-scheme-options): add clip-systems option.
129
130         * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
131         function
132         (dump-stencil-as-EPS): move bbox calculation from previous
133         dump-stencil-as-EPS
134         (output-framework): use -dclip-systems 
135
136         * scm/lily-library.scm (filtered-map): new function
137
138         * scm/framework-ps.scm (clip-system-EPS): new function.
139         (clip-system-EPSes): new function.
140
141         * lily/paper-column.cc: add rhythmic-location to interface
142
143         * scm/define-grob-properties.scm (all-user-grob-properties): add
144         rhythmic-location property.
145
146         * scm/clip-region.scm: new file: rhythmic-location data type and
147         system-clipped-x-extent function.
148
149         * ly/init.ly: use (scm clip-region)
150
151         * lily/paper-column-engraver.cc (stop_translation_timestep): set
152         rhythmic-location for paper column grobs.
153
154         * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
155
156 2006-10-12  Jürgen Reuter  <reuter@ipd.uka.de>
157
158         * ly/engraver-init.ly: Remove obsolete comment on
159         Bar_number_engraver.
160
161         * Documentation/user/instrument-notation.itely: Tune Ancient
162         Articulations figure, such that the episem actually shows.
163
164         * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
165         fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
166
167         * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
168         cleanup.
169
170 2006-10-12  Graham Percival  <gpermus@gmail.com>
171
172         * Documentation/user/ {some}: minor edits that were lost somehow.
173
174 2006-10-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
175
176         * VERSION (PACKAGE_NAME): bump version.
177
178         * input/regression/lyric-tie.ly (texidoc): new file.
179
180         * Documentation/topdocs/NEWS.tely (Top): add new feature.
181
182         * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
183
184         * scm/define-markup-commands.scm (tied-lyric): new function: split
185         string along ~ and reattach with U+203F (tie character) and
186         negative space.
187
188         * scm/output-lib.scm (lyric-text::calc-text): new function.
189
190         * lily/lyric-engraver.cc (process_music): don't set 'text.
191
192         * scm/output-lib.scm (string-finger::calc-text): new function
193         (lyric-text::print): new function.
194
195         * lily/new-fingering-engraver.cc (add_fingering): refactor; make
196         generic for fingering & string number. Use for string-finger. 
197
198         * scm/define-music-types.scm (music-descriptions): add
199         StringFingerEvent
200
201         * lily/fingering-engraver.cc (listen_string_finger): new function
202
203         * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
204
205         * scm/define-context-properties.scm
206         (all-user-translation-properties): add stringFingerOrientations
207
208 2006-10-11  Jürgen Reuter  <reuter@ipd.uka.de>
209
210         * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
211         ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
212
213         * lily/dots.cc: Added style property for dots.
214
215         * mf/parmesan-heads.mf: Fix typo in comment.
216
217         * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
218         adding longa head to feta font and removing obsolete default
219         mapping scheme code.
220
221 2006-10-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
222
223         * scm/output-lib.scm (fingering::calc-text): use origin
224         event-property, not music-property.
225
226         * lily/lilypond.rc.in: spell my name correctly.
227
228 2006-10-10  Joe Neeman  <joeneeman@gmail.com>
229
230         * lily/grob.cc (pure_height): only add minimum-Y-extent if we
231         already have a non-empty extent. Fixes estimation for Hara-kiri
232         staves.
233
234 2006-10-09  Jürgen Reuter  <reuter@ipd.uka.de>
235
236         * ly/gregorian-init.ly: Simplify definition of \episemInitium and
237         \episemFinis.
238
239         * lily/ligature-engraver.cc: Remove unused #include.
240
241         * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
242         Bugfix: remove method check_for_prefix_loss(Item *) from global
243         namespace to avoid namespace pollution.
244
245 2006-10-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
246
247         * VERSION: release 2.9.22
248
249         * ly/generate-documentation.ly: update option name.
250
251         * lily/dynamic-text-spanner.cc (print): revert fix.
252
253         * scm/define-grob-interfaces.scm
254         (trill-pitch-accidental-interface):
255         add trill-pitch-accidental-interface
256
257         * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
258         dereference if it's really a duration.
259
260         * lily/figured-bass-engraver.cc (process_music): clear spanner if
261         useBassFigureExtenders is not set.
262         (listen_bass_figure): record as new event if
263         useBassFigureExtenders not set. Fixes #103.
264
265         * scm/stencil.scm (circle-stencil): don't center stencil argument,
266         instead: move circle. Fixes #107.
267
268         * scm/define-grobs.scm (all-grob-descriptions): set
269         allow-loose-spacing for PaperColumn and
270         NonMusicalPaperColumn. Kludge for #110.
271
272         * lily/spaceable-grob.cc: add allow-loose-spacing property.
273
274         * lily/spacing-determine-loose-columns.cc (is_loose_column):
275         allow-loose-spacing property.
276
277         * scm/define-markup-commands.scm (postscript): gsave & grestore
278         around embedded PS. Do setlinewidth too. Fixes  #109.
279
280 2006-10-08  Jürgen Reuter  <reuter@ipd.uka.de>
281
282         * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
283         code.  This patch fixes ligature brackets that were not at all
284         engraved any more.
285
286 2006-10-08  Graham Percival  <gpermus@gmail.com>
287
288         * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
289
290         * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
291
292         * scm/define-context-properties.scm: clarified docs (bug 91).
293
294         * Documentation/user/basic-notation.itely: document volta brackets
295         not aligning (bug 63).
296
297         * Documentation/user/ global.itely invoking.itely: ignore or
298         add warnings about texstr.
299
300 2006-10-08  John Mandereau  <john.mandereau@free.fr>
301
302         * po/fr.po: update translation.
303
304         * po/: update msgids.
305
306 2006-10-08  Jan Nieuwenhuizen  <janneke@gnu.org>
307
308         * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
309
310 2006-10-08  Nicolas Sceaux  <nicolas.sceaux@free.fr>
311
312         * Documentation/user/page.itely (Two-pass vertical spacing): add
313         documentation for two-pass spacing technique.
314
315 2006-10-06  Graham Percival  <gpermus@gmail.com>
316
317         * Documentation/user/convert-ly.txt: new file; new
318         storage place for this file (moved from bugs/ CVS).
319
320 2006-10-06  Jürgen Reuter  <reuter@ipd.uka.de>
321
322         * lily/note-head.cc: Fixed programming_error message.
323
324 2006-10-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
325
326         * scm/define-grobs.scm (pure-conversion): move pure-callback
327         further into body.
328
329         * scm/script.scm (default-script-alist): set avoid-slur for turn,
330         marcato, stopped, thumb.
331
332 2006-10-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
333
334         * lily/completion-note-heads-engraver.cc (process_music): don't
335         skimp on memory usage.
336
337         * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
338         stems too. Fixes #5
339
340         * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
341         parenthesis item. This fixes premature Y-extent triggering. Fixes
342         issue #95. 
343  
344         * VERSION (PATCH_LEVEL): bump version.
345
346 2006-10-04  Graham Percival  <gpermus@gmail.com>
347
348         * Documentation/user/advanced-notation.itely: added
349         info about instrument names for piano or other contexts,
350         thanks Marcus!
351
352 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
353
354         * mf/feta-bolletjes.mf (solfa_quarter_width): use
355         solfa_base_notewidth as unit for non-DO-notes too.
356
357         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
358
359         * VERSION: release 2.9.21
360
361         * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
362         override.
363
364 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
365
366         * python/lilylib.py (progress): Minor fix.
367
368 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
369
370         * lily/note-name-engraver.cc: doc engraver.
371
372         * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
373
374         * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
375
376         * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
377         by callback.
378
379         * lily/stem-engraver.cc (make_stem): don't set duration-log
380
381         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
382         write snippet-names binary.
383
384         * python/lilylib.py (system): use os.system for mingw32
385
386         * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
387         to $PATH.
388
389         * scm/backend-library.scm: update email address.
390
391         * Documentation/topdocs/NEWS.tely (Top): add duration-log override
392         example.
393
394         * scm/define-grobs.scm (all-grob-descriptions): use callback to
395         calc dot count.
396
397         * lily/dots-engraver.cc (class Dots_engraver): new engraver:
398         handle dot creation separately.
399
400         * lily/tab-note-heads-engraver.cc (process_music): idem.
401
402         * lily/drum-note-engraver.cc (process_music): idem.
403
404         * lily/note-heads-engraver.cc (process_music): idem.
405
406         * lily/rest-engraver.cc: don't set duration-log.
407
408         * scm/output-lib.scm (string-number::calc-text): new function.
409         (note-head::calc-duration-log): new function.
410
411         * lily/fingering-engraver.cc (make_script): remove 'text setting.
412
413         * scm/output-lib.scm (fingering::calc-text): new function.
414
415 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
416
417         * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
418          and include-eps-font -> include-eps-fonts
419
420 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
421
422         * lily/multi-measure-rest-engraver.cc: use internalBarNumber
423
424         * lily/timing-translator.cc: list properties.
425         (start_translation_timestep): update internalBarNumber too.
426
427         * scm/define-context-properties.scm
428         (all-user-translation-properties): add internalBarNumber.
429
430         * input/regression/spacing-no-note.ly: new file.
431
432         * buildscripts/output-distance.py (link_file): verbosity for OSError.
433
434         * lily/book.cc: #include cleanup.
435
436         * lily/include/lily-guile-macros.hh: add assert to
437         scm_or_str2symbol(SCM).
438
439         * VERSION (PATCH_LEVEL): bump version.
440
441         * lily/spacing-spanner.cc (musical_column_spacing): handle
442         musical->nonmusical spacing case, where there is no spacing
443         wish. Fixes issue #61.
444
445         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
446         (pango_item_string_stencil): use logical rect horizontally (to
447         preserve spaces), ink_rect vertically (for time signatures).
448
449         * lily/font-metric.cc (word_stencil): new interface function
450
451         * input/regression/utf-8-mixed-text.ly: new file.
452
453         * lily/percent-repeat-engraver.cc (listen_percent): remove
454         spurious warning.
455
456         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
457         non-dynamic scripts. Fixes #30.
458
459         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
460
461         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
462
463         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
464         SCM_UNDEFINED for non-existent data.
465
466         * lily/side-position-interface.cc (general_side_position): allow
467         optional current_offset argument for chaining, so combinations of side-position
468         and outside slur callback don't add up.  Fixes issue #92.
469
470         * lily/pango-font.cc (pango_item_string_stencil): use
471         logical_rect. This prevents spaces after words from disappearing,
472         issue #72.
473         
474         * VERSION: release 2.9.20
475
476 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
477
478         * scm/define-grob-properties.scm (all-user-grob-properties):
479         mention stencil as user settable.
480
481 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
482
483         * Documentation/user/page.itely (Page formatting): 
484         document auto-first-page-number
485
486         * lily/page-breaking.cc (find_chunks_and_breaks): 
487         * lily/paper-score.cc (calc_breaking): Follow changes to the
488         Constrained_breaking interface
489
490         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
491         here backwards, as an optimisation
492         (initialize): new function; move most of the code in resize () here
493         (combine_demerits): cache ragged_right_
494         (Constrained_breaking): constructor now takes the Paper_score
495
496 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
497         
498         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
499         avoid parser lookahead for 0-ary functions.
500
501         * lily/translator.cc: Extract event classes from
502         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
503
504 2006-10-02  Heikki Junes  <hjunes@gmail.com>
505
506         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
507         KBabel fix tool.
508
509 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
510
511         * scm/layout-page-layout.scm (page-breaking-wrapper): new
512         function. Call the page breaking function selected in the
513         `page-breaking' \paper variable, then the post processing function
514         chosen using the `page-post-process' \paper variable.
515         (line-height): new function. Return the height of a system.
516         (line-minimum-position-on-page): new function. Return the position
517         of a system on page (using the previous line position), only
518         considering between system padding.
519         (stretchable-line?): new function. Says whether a line can be
520         stretched (ie. is not a title nor a single staff system).
521         (page-maximum-space-left): new function. Computes space left on a
522         page, when all systems are separated by their padding.
523
524         * lily/page-breaking.cc (breaking::make_pages): Move page post
525         processing function call to page breaking wrapper (common to all
526         page breakers).
527
528         * lily/paper-book.cc (book::pages): call the page breaking
529         wrapper, instead of the page breaker directly
530
531         * ly/paper-defaults.ly: Add \paper variables for page breaking
532         wrapper and page post processing function. Make
533         `write-page-layout' value depend on the 'dump-tweaks option. Add a
534         `system-maximum-stretch-procedure' variable for holding a function
535         computing the maximum stretch a system allows.
536
537         * scm/layout-page-dump.scm (write-page-breaks): computes the
538         stretch to apply to systems on a page to minimize left
539         space. Dump this stretch length.
540
541         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
542         the system-stretch property of the tweak data to stretch the
543         system.
544         (includePageLayoutFile): Void function which includes the
545         generated page-layout file if it exists and if the page layout
546         dumping is not asked.
547         (scoreTweak): if the score tweak named by the argument exists,
548         return it.
549
550 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
551
552         * lily/page-spacing.cc (compress_lines, uncompress_solution):
553         handle correctly the case where there are multiple \noPageBreaks
554         in a row.
555
556 2006-09-30  Laura Conrad <lconrad@laymusic.org>
557
558         * abc2ly.py adds segno (S) and Coda (O) to articulations.
559         
560         * abc2ly.py fix so that entering " -- " will translate to a -- in
561         the lilypond instead of a " - - "
562         
563 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
564
565         * lily/align-interface.cc: fix typo
566
567         * lily/dynamic-text-spanner.cc (print): Add a special case for
568         trill spanner right sides. 
569
570         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
571
572         * lily/align-interface.cc (get_extents_aligned_translates): add
573         support for padding variable.
574
575         * lily/break-align-interface.cc (self_align_callback): oops: use
576         loop variable in guard.
577
578         * input/regression/repeat-percent-grace.ly: new file.
579
580         * lily/percent-repeat-engraver.cc (start_translation_timestep):
581         remember first currentCommandColumn of a grace run. Fixes issue 70.
582
583         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
584         move class definition to CC file.
585
586         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
587
588         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
589         measure-long  repeats.
590
591         * flower/include/international.hh: include stdarg.h
592
593 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
594
595         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
596         put_systems_on_pages to return an empty result, we need to assign
597         demerits properly in that case.
598         (put_systems_on_pages): Make the number of pages depend on the
599         evenness of page_number. Add auto-first-page-number.
600         (calc_subproblem): ensure that the page-number is even for the
601         left-hand page. Warn if the first page-turn doesn't fit onto the
602         first (right-hand) page.
603
604         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
605         (min_page_count): make this publicly accessible
606         (min_page_count): fix a bug when there are forced page breaks that
607         was introduced when I made this loop run backwards
608         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
609         replace space_systems_on_min_pages with these two. The logic in
610         space_systems_on_min_pages was getting too convoluted and is better
611         contained in page-turn-page-breaking.
612
613         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
614         conditional
615         (breakable_column): typo
616
617         * lily/source-file.cc (get_line): fix off-by-one error
618         and clean up some of the logic
619
620 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
621
622         * lily/page-breaking.cc (make_pages): honour the first-page-number
623         property
624
625 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
626
627         * VERSION (PACKAGE_NAME): bump version.
628
629 2006-09-26  Pal Benko  <benko.pal@gmail.com>
630
631         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
632         (the latter is the same as petrucci-f which is kept for compatibility)
633
634 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
635         
636         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
637
638 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
639
640         * lily/global-context.cc (run_iterator_on_me): break out of loop
641         if moment doesn't increase.
642
643         * scm/define-grob-properties.scm (all-user-grob-properties): add
644         forced property.
645
646         * lily/accidental.cc (after_line_breaking): read forced property.
647
648         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
649         property.
650
651         * input/regression/accidental-forced-tie.ly:  new file.
652
653 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
654
655         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
656
657         * lily/figured-bass-engraver.cc: only listen to rest events if
658         ignoreFiguredBassRest is not set.
659
660         * scm/define-context-properties.scm
661         (all-user-translation-properties): add ignoreFiguredBassRest property
662
663 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
664
665         * lily/paper-book.cc (get_system_specs):
666         (set_system_penalty): fix breakbefore.
667         We used to set a penalty on the system after the break, now we
668         set a permission on the system before the break
669
670         * lily/grob-property.cc: add scm debugging hooks into
671         property modification
672
673         * lily/context-property.cc:
674         * lily/engraver.cc:
675         rename make_foo_from_properties to internal_make_foo and
676         move it from context-property.cc to a member function of
677         Engraver.
678         
679         * lily/include/lily-guile-macros.hh:
680         overload ly_symbol2scm macro so that there is no more need
681         to use internal_foo
682
683         * lily/volta-repeat-iterator.cc:
684         * lily/tweak-engraver.cc:
685         * lily/tuplet-bracket.cc:
686         * lily/span-bar-engraver.cc:
687         * lily/script-engraver.cc:
688         * lily/prob-scheme.cc:
689         * lily/pointer-group-interface.cc:
690         * lily/parser.yy:
691         * lily/grob-scheme.cc:
692         * lily/grob-property.cc:
693         * lily/context.cc:
694         * lily/context-property.cc:
695         * lily/break-substitution.cc:
696         * lily/break-align-engraver.cc:
697         * lily/axis-group-interface.cc:
698         * lily/align-interface.cc:
699         remove calls to internal_FOO
700
701         * lily/system-start-delimiter-engraver.cc:
702         * lily/parenthesis-engraver.cc:
703         * lily/accidental-engraver.cc:
704         remove calls to make_foo_from_properties
705
706 2006-09-23  Graham Percival  <gpermus@gmail.com>
707
708         * Documentation/user/programming-iterfaces.itely: fix
709         def-music-function -> define-music... leftover.
710
711 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
712
713         * lily/page-spacing.cc (min_page_count): by running the loop
714         backwards, we can calculate ragged_last properly.
715
716 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
717
718         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
719         printfirst-page-number -> print-first-page-number
720
721         * python/convertrules.py: corresponding rule.
722
723         * Documentation/user/page.itely (Page formatting): Document the
724         default values of all page layout parameters. 
725
726 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
727
728         * lily/lexer.ll: remove limitation on music function arity. New
729         mode extratoken, which inserts extra EXPECT_* tokens after
730         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
731
732         * lily/parser.yy: Change grammar for music function accordingly.
733
734         * lily/include/lily-parser.hh: New method get_state, new member
735         hidden_state. Works around a problem when parser fetches
736         MUSIC_FUNCTION token but not the following EXPECT_* token.
737
738         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
739         remove try_music
740
741         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
742         references to Music; use ASSIGN_EVENT_ONCE everywhere
743
744         * lily/grob-info.cc: junk *music_cause
745
746         * lily/music.cc: copy eventified articulations to stream event
747
748         * lily/part-combine-iterator.cc: Cleanup using enums
749
750         * lily/translator-group.cc: Junk OldMusicEvent, and associated
751         methods
752
753         * lily/include/engraver.hh: Junk music.hh include
754
755         * lily/stream-event.cc: Changed constructors
756
757 2006-09-21  Graham Percival  <gpermus@gmail.com>
758
759         * Documentation/user/tweaks.itely (Fitting music onto fewer
760         pages): change settings to avoid warning messages.
761
762 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
763
764         * Documentation/user/tweaks.itely (Fitting music onto fewer
765         pages): Add between-system-space setting. 
766
767 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
768
769         * lily/accidental-placement.cc (calc_positioning_done): don't
770         trigger Y-extent calculation too early. Use pure_height instead.
771
772         * lily/scale.cc (LY_DEFINE): new file. 
773
774 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
775
776         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
777         that happen at the start of a score: having a zero-length
778         chunk was messing up min_system_count calculations.
779
780         * lily/source-file.cc (get_line): lower_bound, not
781         binary_search. Fixes problem where point-and-click would
782         always point to the first line.
783
784 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
785
786         * lily/accidental-placement.cc (calc_positioning_done): also put
787         stems into accidental support. 
788
789         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
790         event_ detected.
791
792         * scm/script.scm (default-script-alist): avoid-slur and
793         slur-padding for portato script.
794
795         * lily/stem-tremolo.cc (translated_stencil): new function. 
796         (height): use new function. Fixes tremolos on whole notes.
797
798         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
799         slur found.
800
801 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
802
803         * scripts/abc2ly.py (try_parse_comment): idem.
804
805         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
806         bar_string iso. string.find()
807
808         * lily/*.cc: idem.
809
810         * lily/slur.cc (get_curve): always use scm_is_pair() looping
811         scheme lists.  
812
813 2006-09-18  Graham Percival  <gpermus@gmail.com>
814
815         * Documentation/user/basic-notation.itely: add bug
816         warning about ties and octavation/clef.
817
818 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
819
820         * VERSION (PACKAGE_NAME): release 2.9.18
821
822 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
823
824         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
825         figure out midi file names right here.
826         
827 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
828
829         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
830
831         * scm/backend-library.scm: option naming:  gs-font-load*s*
832
833         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
834         include-eps-fonts
835
836 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
837
838         * scm/define-music-types.scm (music-descriptions): remove
839         BreakEvent and fix {Page,Line}{Break,Turn}Event so
840         Music::to_event doesn't complain.
841
842         * lily/accidental-placement.cc (ape_compare):
843         * lily/semi-tie.cc (compare): 
844         * lily/note-column.cc (shift_compare): replace by XXX_less
845
846         * lily/tie-formatting-problem.cc (set_chord_outline): 
847         * lily/tie-column.cc (calc_positioning_done): 
848         * lily/system.cc (post_processing)
849         (get_paper_system): 
850         * lily/stem.cc (note_head_positions)
851         (calc_positioning_done): 
852         * lily/spanner.cc (do_break_processing)
853         (find_broken_piece): 
854         * lily/span-bar.cc (print): 
855         * lily/semi-tie-column.cc (calc_positioning_done): 
856         * lily/rest-collision.cc (calc_positioning_done): 
857         * lily/program-option.cc (get_help_string): 
858         * lily/note-collision.cc (get_clash_groups):
859         * lily/new-fingering-engraver.cc (position_scripts):
860         * lily/keyword.cc (Keyword_table):
861         * lily/hara-kiri-group-spanner.cc (request_suicide):
862         * lily/grob-pq-engraver.cc (stop_translation_timestep):
863         * lily/accidental-placement.cc (calc_positioning_done):
864         (stagger_apes):
865         * lily/beam.cc (get_beam_segments):
866         * lily/grob-array.cc (remove_duplicates):
867         use new vector_sort
868         
869         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
870         ragged-last-bottom = ##f (test the new page breaker)
871
872         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
873
874         * scm/define-context-properties.scm
875         (all-internal-translation-properties): remove properties that
876         were used to communicate page-turn stuff to the paper-column
877         engraver.
878
879         * lily/lily-guile.cc (robust_scm2string): new function
880
881         * lily/paper-column-engraver.cc: Clean up page turn stuff
882
883         * lily/page-turn-engraver.cc: Re-write the page turn logic here
884         instead of cluttering up paper-column-engraver.cc
885
886 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
887
888         * scm/layout-page-dump.scm (scm): export utility function names,
889         to allow user writing cutsom dumping functions.
890
891         * scm/layout-page-layout.scm: export utility function names to
892         enable custom page breaking function writing. Tabify.
893         (line-next-space): use ?-suffix only for predicates
894         (page-maximum-space-to-fill): new function. Return the space
895         between first and bottom system of a page, to give to
896         space-systems.
897         (space-systems): use a space-to-fill argument (for instance as
898         computed by page-maximum-space-to-fill) instead of computing
899         internaly this space with the page height. That way, the caller
900         can adjust the space to use.
901         (make-page-from-systems, walk-paths): compute space to fill before
902         calling space-systems.
903
904 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
905
906         * scm/script.scm (default-script-alist): set paddings for every
907         type here, increase for portato mark.
908
909         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
910         -dinclude-eps-fonts
911
912 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
913
914         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
915         use spanner::set-spacing-rods
916
917         * lily/note-column.cc: reformat.
918
919         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
920         step positioning for note/rest combinations.
921
922         * input/regression/rest-note-collision.ly: new file.
923
924         * scm/define-grobs.scm (all-grob-descriptions): add
925         springs-and-rods
926
927         * flower/include/std-vector.hh: switch off again.
928
929         * VERSION (PATCH_LEVEL): bump to 2.9.18
930
931         * flower/include/std-string.hh: idem.
932
933         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
934
935 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
936
937         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
938         PianoStaff. 
939
940 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
941
942         * Documentation/user/page.itely: update page breaking documentation
943
944 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
945
946         * lily/note-collision.cc (calc_positioning_done): only access
947         first head if available.
948
949         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
950
951         * scm/framework-ps.scm (output-preview-framework): use new name.
952
953         * lily/program-option.cc (internal_set_option): use new names.
954
955         * Documentation/user/SConscript (lilypond_book_flags): update -d
956         variable names.
957
958         * Documentation/user/lilypond-book.itely (Inserting LilyPond
959         output into other programs): new variable names.
960
961         * scm/lily.scm (define-scheme-options): uniformize var names.
962
963         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
964         tuplets_ is non-empty before popping.
965
966 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
967
968         * lily/spanner.cc (find_broken_piece): 
969         * lily/spacing-spanner.cc (get_columns): 
970         * lily/source-file.cc (get_line): 
971         * lily/simple-spacer.cc (get_column_description): 
972         * lily/keyword.cc (lookup): 
973         use the new binary search.
974
975         * flower/include/std-vector.hh: replace binary_search with
976         a more STL-like version
977
978 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
979
980         * lily/tie-performer.cc: remove unused last_event_ property.
981         (class Tie_performer): add now_tied_heads_ property for
982         partially-tied heads.
983         (acknowledge_audio_element): when adding an Audio_note, put the
984         note in now_tied_heads_ if the audio note is partially tied.
985         (stop_translation_timestep): always include entries in
986         now_tied_heads_ in heads_to_tie_.
987
988         * lily/drum-note-performer.cc (process_music): look for tie-events
989         in the articulations; pass to Audio_note constructor.
990
991         * lily/note-performer.cc (process_music): look for tie-events in
992         the articulations; pass to Audio_note constructor.
993
994         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
995         constructor.
996
997         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
998         include initializer in constructor.
999
1000 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
1001
1002         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1003         unless they are breakable. This fixes discrepancies between the forces
1004         calculated here and the forces calculated in get_line_configuration.
1005
1006         * lily/grob.cc (pure_relative_y_coordinate): fix some
1007         mis-estimation that was happening with piano staves.
1008
1009         * lily/constrained-breaking.cc (resize): don't choke if we get a
1010         measure that won't fit on a line.
1011         (combine_demerits): don't consider uniformity when ragged
1012
1013         * lily/page-spacing.cc (solve): why the f* were there two of these?
1014         (calc_subproblem): properly handle the case where a system is taller
1015         than the page.
1016
1017         * lily/system.cc (get_paper_system): ensure that all the permissions
1018         and penalties are passed to the paper systems.
1019
1020         * lily/page-breaking.cc (create_system_list): support system-count.
1021
1022         * scm/define-grobs.scm (pure-print-callbacks): add
1023         ly:script-interface::print
1024
1025         * lily/page-spacing.cc (min_page_count): fix calculation of min
1026         pages if we are ragged and there are non-zero springs.
1027
1028         * scm/layout-page-layout.scm: if the pure-height estimates are under
1029         the real height, allow space-systems to ignore padding if it is
1030         needed in order to fit the systems on one page
1031
1032         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1033         ragged properties
1034         (solve): fix performance problem. Make sure we always get at least
1035         one solution
1036
1037         * lily/page-breaking.cc (make_pages): include write-page-breaks
1038         and page-stencil
1039
1040         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1041
1042         * scm/define-grobs.scm: add the new slur-callback
1043         fix pure-relevant to not exclude grobs whose extent is already
1044         calculated
1045
1046         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1047         page breaker
1048
1049         * lily/slur.cc (pure_height): new callback to estimate the height
1050         of a slur
1051
1052 2006-09-02  Graham Percival  <gpermus@gmail.com>
1053
1054         * Documentation/user/invoking.itely: small update on
1055         MacOS X notes; thanks Trevor!
1056
1057 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1058
1059         * VERSION (MY_PATCH_LEVEL): release 2.9.17
1060
1061         * lily/lexer.ll: accept EOF in all states.
1062
1063         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1064
1065         * lily/source-file.cc (Source_file): always 0-terminate character
1066         array, to prevent Flex from barfing.
1067
1068         * lily/global-context.cc (get_output): robustness: don't crash if
1069         no Score context found.
1070
1071         * lily/include/book.hh (class Book): idem.
1072
1073         * lily/include/context-def.hh (struct Context_def): idem.
1074
1075         * lily/include/score.hh (class Score): don't derive from Input.
1076
1077         * lily/book.cc (Book): add a copy ctor. 
1078
1079         * buildscripts/output-distance.py (FileLink.calc_distance): count
1080         orphans in distance too.
1081
1082         * python/midi.c (midi_parse_track): robustness: don't read past
1083         end of string.
1084
1085         * ly/performer-init.ly: add Control_track_performer, move
1086         Tempo_performer and Time_signature_performer to Score.        
1087
1088         * lily/score-performer.cc (acknowledge_audio_elements): override
1089         from base class: add to audio-columns
1090
1091         * lily/control-track-performer.cc (add_text): new file: generate
1092         the control track.
1093
1094         * lily/performance.cc: move output_header_track to
1095         Control_track_performer ()
1096
1097         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1098
1099         * lily/include/midi-item.hh (class Midi_channel_item): insert
1100         class into hierarchy, for items that can have a channel setting. Dehungarify.
1101
1102         * lily/include/performer.hh (class Performer): remove
1103         play_element();  move functionality into announce/acknowledge.
1104
1105         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1106
1107         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1108         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
1109
1110 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
1111
1112         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1113         ambituses.
1114
1115         * lily/all-font-metrics.cc: remove TFM support.
1116
1117         * lily/include/tfm.hh: remove TFM support, TFM reader.
1118
1119         * lily/include/binary-source-file.hh: remove Binary_source_file.
1120
1121 2006-08-27  Graham Percival  <gpermus@gmail.com>
1122
1123         * Documentation/topdocs/NEWS.itely: add @c marker for
1124         stuff I've processed.
1125
1126         * Documentation/user/ various: info from NEWS.
1127
1128 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
1129
1130         * lily/paper-column-engraver.cc (finalize): Oops, this change
1131         should have gone in on 2006-08-23
1132
1133 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
1134
1135         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1136         quotes to quote arguments. Fixes Windows problem.
1137
1138         * python/lilylib.py (progress): idem
1139
1140 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1141
1142         * scripts/musicxml2ly.py: fix for importing
1143         minor key signatures from MusicXML.  (Phillip Kirlin)
1144
1145 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
1146
1147         * python/musicxml.py: 
1148         (Attributes.get_key_signature): now correctly retrieves mode from 
1149         MusicXML. 
1150
1151 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1152
1153         * lily/parser.yy (output_def_body): take ownership of identifier
1154         back to C++.
1155
1156         * Documentation/user/advanced-notation.itely (Metronome marks):
1157         update use of \tempo in \midi.
1158
1159         * VERSION: release 2.9.16
1160         
1161 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
1162
1163         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1164         web partially)
1165
1166 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1167
1168         * input/regression/tie-chord-partial.ly: clarify example.
1169
1170         * scm/define-music-properties.scm (all-music-properties): remove
1171         untied.
1172
1173         * ly/music-functions-init.ly: remove \untied.
1174
1175         * lily/tie-engraver.cc (struct Head_event_tuple): store both
1176         stream events and music events.
1177         (stop_translation_timestep): search acknowledged heads for
1178         tie-event.
1179
1180         * input/regression/tie-chord-partial.ly: new file.
1181
1182         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1183         for \char markup command.
1184
1185         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1186
1187         * scm/define-music-types.scm (music-descriptions): consistency:
1188         Use solo-{one,two}-event iso. solo-[12]-event.
1189
1190         * lily/part-combine-engraver.cc (process_music):
1191         Use solo-{one,two}-event iso. solo-[12]-event.
1192
1193         * ly/declarations-init.ly (partCombineListener): add Timing as
1194         alias
1195
1196         * flower/std-string.cc (string_copy): use copy ()
1197
1198         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1199
1200 2006-08-24  Graham Percival  <gpermus@gmail.com>
1201
1202         * Documentation/user/changing-defaults.itely, global.itely,
1203         lilypond-book.itely, page.itely: minor changes from mailist.
1204
1205 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1206
1207         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1208         snippet-map
1209
1210         * scm/define-context-properties.scm
1211         (translator-property-description): robustness: detect type errors
1212         in property definitions.
1213
1214         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1215         after getting it from SCM. 
1216
1217         * lily/smobs.cc (protect_smob): switch off fancy smob protection
1218         for now. 
1219
1220         * lily/include/performer.hh (class Performer): strip get_tempo()
1221         method.
1222
1223         * lily/midi-def.cc: strip file.
1224
1225         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1226
1227         * lily/include/context-def.hh (struct Context_def): use
1228         VIRTUAL_COPY_CONSTRUCTOR().
1229
1230         * lily/source-file.cc: smobification.
1231
1232         * lily/include/source-file.hh (class Source_file): smobify
1233         Source_file. Trim redundant members.
1234
1235         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1236         clones after creation. This plugs a huge memory leak.
1237
1238         * python/convertrules.py (FatalConversionError.sub_tempo):
1239         complete rule for \midi{ \tempo }
1240
1241         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1242
1243         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1244
1245 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
1246
1247         * input/regression/optimal-page-breaking-hstretch.ly: test for
1248         ragged-last-bottom also
1249
1250         * lily/paper-column-engraver.cc (finalize): make the end of a score
1251         breakable by default. This is to balance out a change in behaviour
1252         of the page-turn-breaker which no longer makes the end of a score
1253         breakable.
1254
1255         * lily/paper-book.cc (pages): set the systems_ once the pages are
1256         broken
1257
1258         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1259         Page_breaking interface.
1260
1261         * lily/page-breaking.cc (class Page_breaking): make the interface
1262         more consistent and provide abstractions for dealing with
1263         Line_divisions.
1264
1265         * lily/optimal-page-breaking.cc (solve): use a more straightforward
1266         algorithm. Use the new interface to Page_breaking.
1267
1268         * lily/page-spacing.cc: better support for ragged-bottom and
1269         ragged-last-bottom
1270
1271 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
1272
1273         * python/convertrules.py (conv): warning on \tempo{}
1274
1275         * ly/performer-init.ly: set tempoWholesPerMinute.
1276
1277         * ly/midi-init.ly: remove \midi
1278
1279         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1280         MIDI tempo.
1281
1282         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1283         tempoUnitDuration for determining what to print.
1284
1285         * lily/lyric-extender.cc: typo.
1286
1287         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1288
1289         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1290         function.
1291
1292         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1293
1294         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1295         eps-pad-boxes is set.
1296
1297         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1298
1299         * THANKS: update sponsors.
1300
1301         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1302
1303         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1304
1305         * input/regression/tie-chord-untied.ly: new file.
1306
1307         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1308
1309         * scm/define-music-properties.scm (all-music-properties): add
1310         'untied property.
1311
1312         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1313         than .ly.txt.
1314         (headertext_nopics): sanitize no-examples text.
1315
1316         * scm/page.scm (make-page-stencil): don't rely on extents of
1317         page-stencil. This fixes spurious space around .EPS files produced
1318         with the EPS backend.
1319
1320 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1321
1322         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1323
1324         * lily/hara-kiri-engraver.cc (process_music): remember
1325         keepAliveInterfaces after processing \set
1326
1327         * lily/lyric-extender.cc (print): support left/right-padding for
1328         extenders.
1329
1330         * scm/documentation-generate.scm (string-append): revert lilypond/
1331         path, doc why.
1332
1333 2006-08-20  Graham Percival  <gpermus@gmail.com>
1334
1335         * Documentation/user/lilypond.tely: clarification to
1336         license presentation (not to actual license).
1337
1338         * Documentation/user/basic-notation.itely,
1339         instrument-notation.itely: minor changes.
1340
1341         * input/ {regression, test}/+.ly: clarification to
1342         text (you can click on examples).  Thanks, Mats!
1343
1344         * input/manual/bar-lines.ly: adds ||: repeats.
1345
1346 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1347
1348         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
1349
1350         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1351
1352         * Documentation/user/lilypond.tely: strip lilypond/ from info
1353         links, rename to category LilyPond
1354
1355         * lily/pango-font.cc (description_string): new function.
1356
1357         * VERSION: release 2.9.15
1358
1359         * lily/spacing-engraver.cc (stop_translation_timestep): use
1360         Dscho's fix for spacing spanner. 
1361
1362         * scm/define-music-types.scm (music-descriptions): use
1363         apply-output-event for ApplyOutputEvent
1364
1365         * lily/output-property-engraver.cc (listen_apply_output): rename
1366         from listen_layout_instruction.
1367
1368         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1369         function protect()
1370
1371 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1372
1373         * scm/lily.scm (lilypond-all): option read-file-list: substitute
1374         commandline args with contains, split by \n.
1375
1376         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1377         write snippet-names file, call with -dread-file-list. Fixes
1378         command limitations on 64-bit systems.
1379
1380         * input/regression/stencil-color-rotation.ly: new file.
1381
1382         * lily/include/translator.hh (struct Acknowledge_information):
1383         revert: don't use Protected_scm in global objects, as GUILE can't
1384         handle gc_unprotect from automated destructors on MacOS X.
1385  
1386         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1387         color, not the original stencil. Fixes combinations of
1388         color/transparency/rotation. 
1389
1390         * scripts/lilypond-book.py (main): add --formats=eps for
1391         texinfo/latex.
1392
1393         * lily/spacing-engraver.cc (stop_translation_timestep): don't
1394         crash if spacing_ is nonexistent.
1395
1396 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
1397
1398         * scripts/lilypond-book.py (output): Remove obsolete(!?)
1399         \catcode`\@=12 in the LaTeX output.
1400
1401 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1402
1403         * scm/define-music-types.scm (music-descriptions):
1404         use sustain-event iso. sustain-pedal-event.
1405
1406 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
1407
1408         * scripts/convert-ly.py: honour the -n command-line switch
1409
1410 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1411
1412         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1413         break specification.
1414
1415 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
1416
1417         * Documentation/user: convert-ly the user manual
1418
1419 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1420
1421         * stepmake/aclocal.m4: version check patch (thanks MWD)
1422
1423         * ly/music-functions-init.ly: robustness. Don't crash if
1424         currentBarNumber is not a number.
1425
1426         * VERSION (PATCH_LEVEL): bump.
1427
1428 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1429
1430         * stepmake/aclocal.m4: better version check; handle fooX.Y
1431         binaries too.
1432
1433         * ly/performer-init.ly: instrument name fixup.
1434
1435         * input/manual/chord-names-jazz.ly (banterProperties):
1436         instrumentName update
1437
1438         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1439
1440         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1441
1442         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1443         function. Use hash tables to check membership.
1444
1445         * lily/general-scheme.cc (LY_DEFINE): new function.
1446
1447         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1448
1449         * lily/include/translator.hh (struct Acknowledge_information): add
1450         Protected_scm
1451
1452         * ly/music-functions-init.ly: change name to BreathingEvent
1453
1454         * input/regression/*.ly: apply it.
1455
1456         * python/convertrules.py (conv): better instrumentName conversion
1457         rule.
1458
1459         * scm/define-music-types.scm (music-descriptions): add
1460         line-break-event to LineBreakEvent music
1461
1462         * lily/music.cc (to_event): don't crash if music type not set.
1463
1464         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1465         spacing not set.
1466
1467         * lily/spacing-engraver.cc (stop_translation_timestep): set
1468         spacing for proportional notation too.
1469
1470         * scm/translation-functions.scm (format-bass-figure): inspect
1471         stream-event.
1472
1473         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1474
1475 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1476
1477         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1478
1479         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1480
1481         * scm/layout-page-layout.scm (make-page-from-systems): new function
1482         (optimal-page-breaks): use the new page-breaking calling convention
1483
1484         * scm/define-context-properties.scm (all-user-translation-properties):
1485         add revokePageTurns
1486
1487         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1488         revokePageTurns  functionality. If there is a special barline within
1489         the breakable region, break there instead of at the end of the region.
1490
1491         * lily/paper-book.cc (pages): use the new page-breaking calling
1492         convention
1493
1494 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1495
1496         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1497
1498         * scripts/lilypond-book.py: insert \sourcefileline command in
1499         output, so lilypond error messages refer to the spot in the
1500         original .lytex / .itely sourcefile.
1501
1502 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1503
1504         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1505         space to next column for distance to fixed col.
1506
1507         * VERSION (PACKAGE_NAME): release 2.9.14
1508
1509         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1510         if no accidental.
1511
1512         * lily/accidental-engraver.cc (process_acknowledged): don't create
1513         accidental for trill span event. This fixes spurious accidentals
1514         on trills.
1515
1516 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1517
1518         * scm/define-grob-properties.scm (all-user-grob-properties):
1519         Clarify documentation of side-axis and direction. Thanks to Paul
1520         for the inspiration.
1521
1522         * lily/bar-line.cc: Add documentation for "||:" also in the
1523         interface documentation.
1524
1525 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1526
1527         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1528
1529         * lily/paper-column.cc (set_system): new function.
1530
1531         * lily/spacing-engraver.cc (stop_translation_timestep): store
1532         SpacingSpanner refs in Paper_column.
1533
1534         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1535         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1536
1537 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1538
1539         * lily/beam-engraver.cc (listen_beam): add method for
1540         Grace_beam_engraver too.
1541
1542 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1543
1544         * python/convertrules.py: Fix indentation bug that broke
1545         conversion of files older than 1.3.117.
1546         Fix escape error in the description for 2.9.6.
1547
1548 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1549
1550         * lily/*-engraver.cc: convert all try_music functions to listen_*
1551         functions.
1552
1553         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1554         enums to represent pedal types, and calculate more data statically.
1555
1556         * scm/part-combiner.scm (recording-group-emulate): create a
1557         softcoded substitute for recording-group-engraver.cc.
1558
1559         * lily/music.cc: make a common transpose function for events and
1560         music
1561
1562         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1563         ManualMelismaEvent, and obsoletes Melisma_translator.
1564
1565 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1566
1567         * input/test/instrument-name-align.ly: update version.
1568
1569 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1570
1571         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1572         Doc the --pdf flag to lilypond-book.
1573
1574 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1575
1576         * Documentation/topdocs/NEWS.tely (Top): add description.
1577
1578         * input/regression/tuplet-full-length-note.ly: add file.
1579
1580         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1581         always store axis group.
1582
1583 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1584
1585         * input/regression/instrument-switch.ly: new file.
1586
1587         * lily/instrument-switch-engraver.cc (process_music): new file.
1588
1589         * ly/engraver-init.ly: add Instrument_switch_engraver
1590
1591         * ly/music-functions-init.ly: \instrumentSwitch
1592
1593         * scm/define-context-properties.scm
1594         (all-user-translation-properties): add instrumentCueName
1595
1596         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1597
1598 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1599
1600         * ly/music-functions-init.ly: music function \transposition.
1601
1602         * lily/parser.yy (command_element): softcode \transposition.
1603
1604         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1605         (process_music): oops.
1606
1607         * lily/instrument-name-engraver.cc (start_spanner): new
1608         function. Create spanner when property changes.
1609         (stop_spanner): new function.
1610
1611         * python/convertrules.py (conv): add rule.
1612
1613         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1614         shortInstrumentName iso. instr.
1615
1616         * scm/output-ps.scm (dashed-line): add phase argument to
1617         dashed-line.
1618
1619         * lily/bar-line.cc (dashed_bar_line): new function.
1620         (compound_barline): support \bar "dashed". 
1621
1622         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1623         --output=DIR to DIR/BASE if it is a dir. 
1624
1625         * flower/file-name.cc (file_part): new function
1626         (dir_part): new function
1627
1628         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1629
1630         * DEDICATION: update
1631
1632 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1633
1634         * lily/instrument-name-engraver.cc: formatting.
1635
1636         * python/convertrules.py (conv): bugfix for \epsfile.
1637
1638 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1639
1640         * lily/grob.cc:
1641         
1642         * lily/gourlay-breaking.cc: Oops, these should have been included
1643         in my last commit
1644
1645 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1646
1647         * scripts/*.py (program_name): cleanup relocation snippets.
1648
1649         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1650
1651 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1652
1653         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1654         page-breakable by default
1655
1656         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1657         correctly calculated for a single-system page
1658
1659         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1660         bigger than the second number
1661
1662         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1663         acknowledge that we aren't satisfying constraints)
1664
1665         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1666         non-Items
1667
1668         * lily/grob.cc (pure_height): add minimum-Y-extent
1669
1670         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1671         ragged
1672
1673         * lily/constrained-breaking.cc: convert code to use new Matrix class
1674         (get_best_solution): new function
1675
1676         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1677         is a page with no systems
1678
1679 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1680
1681         * VERSION (PACKAGE_NAME): release 2.9.13
1682
1683         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1684         assignment.
1685
1686 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1687
1688         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1689
1690         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1691         function.
1692
1693         * scm/define-grob-properties.scm (all-user-grob-properties):
1694         remove grace-space-factor.
1695
1696         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1697         grace-spacing-interface
1698         (spacing-options-interface): add.
1699
1700         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1701
1702         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1703
1704         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1705         GraceSpacing object.
1706
1707         * lily/note-spacing.cc: fix prop list formatting
1708
1709         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1710         beaming for grace notes too.
1711
1712         * input/regression/spacing-grace.ly: update.
1713
1714         * lily/grace-spacing-engraver.cc: new file.
1715
1716         * lily/spacing-spanner.cc: add strict-grace-spacing.
1717
1718 2006-07-20  Graham Percival  <gpermus@gmail.com>
1719
1720         * lily/parser.yy: compile fix.
1721
1722 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1723
1724         * scm/define-grobs.scm (all-grob-descriptions): typo.
1725
1726         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1727         .eps extension from includegraphics.
1728
1729         * scripts/lilypond-book.py (main): add support for --pdf. 
1730
1731         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1732         callback to compute common shortest duration.
1733         (set_springs): typo.
1734
1735         * scm/define-grob-properties.scm (all-user-grob-properties): add
1736         strict-grace-spacing.
1737
1738         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1739         support float_grace_columns_.
1740
1741         * lily/spacing-options.cc (init_from_grob): new file.
1742
1743         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1744
1745         * input/regression/spacing-loose-grace.ly: new file.
1746
1747         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1748
1749         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1750         tupletFullLengthNote too. Choose right bound depending on value.
1751
1752         * input/regression/tuplet-full-length-note.ly: new file.
1753
1754 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1755
1756         * lily/*-performer.cc: Converted try_music to listen_*
1757
1758         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1759         as a stream-event internally. Introduce event_cause (), deprecate
1760         music_cause ().
1761
1762         * scm/define-music-types.scm: Removed BusyPlayingEvent
1763         
1764 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1765
1766         * Documentation/user/advanced-notation.itely (Font selection):
1767         Document how to get a list of available fonts using 'lilypond
1768         -dshow-available-fonts blabla'.
1769
1770 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1771
1772         * GNUmakefile.in: filter lily-XXX.pdf files.
1773
1774         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1775
1776         * scm/define-grob-properties.scm (all-internal-grob-properties):
1777         remove delta-pitch. Use delta-position everywhere.
1778
1779         * scm/output-lib.scm (fall::print): use new order.
1780
1781         * scm/output-ps.scm (path): reorder arguments.
1782
1783         * scm/output-svg.scm (path): support for path primitive.
1784
1785         * input/regression/bend-after.ly: new file.
1786
1787         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1788         recipe for eps -> pdf conversion.
1789
1790 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1791
1792         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1793         Angelo Contardi.
1794
1795 2006-07-19  Graham Percival  <gpermus@gmail.com>
1796
1797         * input/manual/screech-boink.ly: moved to here.
1798
1799         * input/screech-boink.ly: deleted.
1800
1801         * scm/define-grob-properties.scm: clarify doc string.
1802
1803 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1804
1805         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1806
1807         * scm/output-ps.scm (path): define path.
1808
1809         * scm/define-stencil-commands.scm
1810         (ly:register-stencil-expression): add path.
1811
1812         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1813
1814         * ly/engraver-init.ly: add Fall_engraver
1815
1816         * lily/parser.yy (music_function_event): allow musicfunction
1817         without music arg as music_function_event.
1818
1819         * lily/grob-scheme.cc (LY_DEFINE):
1820         ly:grob-robust-relative-extent. New function.
1821
1822         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1823
1824         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1825
1826         * scm/output-lib.scm (fall::print): new function
1827
1828         * lily/fall-engraver.cc (stop_fall): new file.
1829
1830         * ly/music-functions-init.ly: alphabetise.
1831
1832         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1833         base.
1834
1835 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1836
1837         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1838
1839         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1840         doc pdftex usage.
1841
1842         * lily/translator-group.cc (connect_to_context): non const error message.
1843
1844         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1845
1846         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1847         if unset.
1848
1849         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1850
1851         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1852
1853         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1854         systems.pdftex too.
1855
1856         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1857
1858         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1859
1860         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1861
1862         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1863
1864         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1865
1866         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1867
1868 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1869
1870         * scm/layout-page-layout.scm: Define module, tidy code, use more
1871         functions iso. a single big one.
1872
1873         * scm/layout-page-dump.scm: move page dump functions used in two
1874         pass spacing to this file. Define module.
1875
1876         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1877          (separate module)
1878
1879         * ly/paper-defaults.ly: use module layout-page-layout.
1880
1881 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1882
1883         * lily/music.cc: Revised MusicEvent event class. It now contains
1884         event data directly instead of encapsulating it in music. The
1885         previously used class is renamed to OldMusicEvent.
1886
1887         * lily/stream-event.cc: Stream events are now probs.
1888         
1889         * lily/translator-group.cc, lily/translator.cc: Translators can
1890         now listen directly to stream events, by using macros
1891         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1892
1893         * lily/arpeggio-engraver.cc: Converted to use new event system
1894
1895         * THANKS: Corrected spelling mistake.
1896
1897 2006-07-12  Graham Percival  <gpermus@gmail.com>
1898
1899         * Documentation/user/SConscript, make/lilypond-vars.make,
1900         input/GNUmakefile: doc build looks in input/manual instead
1901         of input/test/
1902
1903         * input/manual/ GNUmakefile, SConscript: build files for
1904         input/manual/
1905
1906         * input/test/ various: some files moved to input/manual/ 
1907
1908         * Documentation/user/basic-notation.itely: small updates;
1909         thanks Kieren and Charles!
1910
1911 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1912
1913         * VERSION (PACKAGE_NAME): release 2.9.11
1914
1915         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1916
1917         * Documentation/user/basic-notation.itely (Tuplets): new property
1918         value.
1919
1920 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1921
1922         * python/convertrules.py (conv): tweaks. 
1923
1924         * VERSION (PATCH_LEVEL): bump version.
1925
1926         * python/convertrules.py (conv): add rule for
1927         tupletNumberFormatFunction.
1928
1929         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1930         tupletNumberFormatFunction.
1931
1932         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1933         text through 'text callback.
1934
1935         * lily/time-scaled-music-iterator.cc (construct_children): copy
1936         tweaks generated events.
1937
1938         * scm/define-context-properties.scm
1939         (all-user-translation-properties): remove tupletNumberFormatFunction
1940
1941         * lily/tuplet-engraver.cc (process_music): don't read
1942         tupletNumberFormatFunction
1943
1944         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1945         function.
1946
1947 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1948
1949         * lily/global-context-scheme.cc: Separated ly:run-translator into
1950         smaller pieces.
1951
1952         * lily/score-engraver.cc, lily/score-performer.cc,
1953         scm/define-context-properties.scm: Make paper/midi output
1954         accessable as a context property.
1955
1956         * lily/score-translator.cc, lily/score-context.cc: Removed.
1957
1958 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1959
1960         * scm/ps-to-png.scm (Module): 
1961         * scm/framework-tex.scm (Module): 
1962         * scm/framework-ps.scm (Module): 
1963         * scm/backend-library.scm (Module): 
1964         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1965         "dDEVICEHEIGHTPOINTS".
1966
1967 2006-07-04  Graham Percival  <gpermus@gmail.com>
1968
1969         * Documentation/user/ various: general improvements to
1970         "working with lilypond files" section.
1971
1972 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1973
1974         * lily/sequential-iterator.cc: Change the default get_music_list
1975         to read elements-callback music property
1976
1977         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1978         processing of multimeasure rests. Softcoded
1979         sequential-music-iterator.
1980
1981         * lily/sequential-music-iterator.cc: Removed.
1982
1983 2006-06-28  Graham Percival  <gpermus@gmail.com>
1984
1985         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1986
1987 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1988
1989         * lily/parser.yy: Wrap non-post-events in EventChords before
1990         assigning them to identifiers.
1991
1992 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1993
1994         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1995         gives correct vertical placement of \bar ":" in all staff
1996         sizes. Thanks Martial!
1997
1998 2006-06-26  Graham Percival  <gpermus@gmail.com>
1999
2000         * Documentation/user/invoking.itely : minor update from mailist.
2001
2002 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
2003
2004         * lily/ various: Introduce stream events of types Prepare,
2005         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2006         ChangeContext, SetProperty, RevertProperty, Override and Revert.
2007
2008         * lily/global-context*.cc: Time is now -inf before iteration
2009         starts.
2010
2011         * lily/include/context.hh: Removed unique_, init_
2012
2013         * Documentation/topdocs/NEWS: Make the feathered beam example
2014         avoid triggering a bug.
2015
2016 2006-06-24  Graham Percival  <gpermus@gmail.com>
2017
2018         * Documentation/user/ various: small additions from mailist.
2019
2020 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
2021
2022         * ly/performer-init.ly: Add some missing links in the context
2023         hierarchy for MIDI output. There are probably some more missing!
2024
2025 2006-06-21  Graham Percival  <gpermus@gmail.com>
2026
2027         * Documentation/user/ various: minor spelling fixes;
2028         thanks Dave Luttinen!
2029
2030         * Documentation/user/ various: small clarifications;
2031         thanks Anthony Youngman!
2032
2033 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2034
2035         * po/fr.po: add \n appropriately.
2036
2037         * lily/lexer.ll: remove ? from version-seen?  
2038
2039 2006-06-19  John Mandereau  <john.mandereau@free.fr>
2040
2041         * po/fr.po; update translation, by Jean-Charles Malahieude and
2042         John Mandereau.
2043
2044 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2045
2046         * THANKS: add Markus Schneider.
2047
2048         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2049         Staff_symbol_engraver
2050
2051         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2052         replace staff_engraver
2053
2054         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2055         spanner.
2056
2057         * lily/staff-collecting-engraver.cc
2058         (acknowledge_end_staff_symbol): new function
2059
2060         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
2061
2062         * lily/staff-collecting-engraver.cc
2063         (acknowledge_end_staff_symbol): new function.
2064
2065         * lily/main.cc: switch on relocation by default.
2066
2067 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2068
2069         * lily/spacing-spanner.cc (musical_column_spacing): set
2070         compound_fixed_note_space to 0.0. Document why.
2071
2072         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2073         range of inverse_hooke_
2074         (Simple_spacer): init completely.
2075         (fits): const
2076         (get_line_configuration): don't use cols.resize(); it introduces
2077         initialized data.
2078
2079         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
2080
2081         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2082
2083         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2084         try. Divide by beatlength.
2085
2086         * input/regression/beaming-ternary-metrum.ly: update doc.
2087         add beatLength hack.
2088
2089         * scm/music-functions.scm (make-time-signature-set): add
2090         standard-beat-grouping. 
2091
2092 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2093
2094         * input/regression/tie-whole.ly: new file.
2095
2096         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2097         cross center of note head in case of invisible stem. 
2098
2099 2006-06-16  Graham Percival  <gpermus@gmail.com>
2100
2101         * Documentation/user/ various: small fixes from mailist.
2102
2103 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2104
2105         * lily/breathing-sign.cc (offset_callback): idem.
2106
2107         * lily/align-interface.cc (align_to_fixed_distance): remove
2108         hungarian suffix.
2109
2110         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2111         x%2==0.
2112
2113 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2114
2115         * VERSION (PACKAGE_NAME): release 2.9.9
2116
2117         * ly/lilypond-book-preamble.ly: add \version
2118
2119 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
2120
2121         * scripts/lilypond-book.py (PREAMBLE_LY): include
2122         lilypond-book-preamble.ly
2123
2124         * lily/stem.cc (get_beaming): return max of 0 and
2125         scm_ilength. Fixes slurring from/to beams.
2126
2127         * ly/lilypond-book-preamble.ly: new file.
2128
2129         * lily/slur.cc: add inspect-index feature.
2130
2131 2006-06-13  Graham Percival  <gpermus@gmail.com>
2132
2133         * Documentation/user/tutorial.itely: trivial fix.
2134
2135 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
2136
2137         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2138         all non-event music in the parser via MAKE_SYNTAX.
2139
2140         * lily/parser-scheme.cc: Add ly:parser-error function
2141
2142         * scm/paper.scm: fix typo
2143
2144 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
2145
2146         * THANKS: add RT.
2147
2148         * lily/font-config.cc (init_fontconfig): add warning if cache_file
2149         is null.
2150
2151         * buildscripts/output-distance.py (test_compare_signatures):
2152         timing routines.
2153         (read_signature_file): use new signature format.
2154
2155         * scm/stencil.scm (write-system-signature): simpler signature
2156         format.
2157
2158         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2159         for beamed case. 
2160
2161         * lily/note-spacing.cc (stem_dir_correction): don't inspect
2162         stem_end_position, but estimate instead. 
2163
2164         * lily/tuplet-bracket.cc (calc_positions): look at
2165         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2166         brackets narrower than beams. 
2167
2168         * lily/lexer.ll: set version-seen? even if version is
2169         INVALID. 
2170
2171         * lily/rest.cc (y_offset_callback): bugfix: decide position
2172         override based on scm_is_number(). Fixes \rest on center staff
2173         line. 
2174
2175         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2176         patterns for 16th triplets.
2177
2178 2006-06-10  Graham Percival  <gpermus@gmail.com>
2179
2180         * Documentation/user/ page.itely, global.itely: editing
2181         and reorg.
2182
2183         * Documentation/user/ various: findex -> funindex.
2184
2185 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
2186
2187         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2188         insert extra tuplet events.
2189
2190 2006-06-10  Graham Percival  <gpermus@gmail.com>
2191
2192         * Documentation/user/programming-interfaces.itely: add
2193         info from NEWS.
2194
2195         * python/convertrules.py: add annotatefoo -> annotate-foo
2196         rules.
2197
2198         * Documentation/user/global.itely: start editing.
2199
2200         * Documentation/user/page.itely: major editing, new spacing
2201         docs.
2202
2203 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
2204
2205         * scm/define-markup-commands.scm (wordwrap-markups): use
2206         output-def 'line-width if undefined.
2207
2208         * HACKING: trim outdated info.
2209
2210 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
2211
2212         * scm/define-grobs.scm (all-grob-descriptions): Add
2213         line-spanner-interface to all grobs that already have
2214         text-spanner-interface or dynamic-text-spanner-interface
2215
2216         * scm/page.scm: Rename annotate{headers,systems,page}->
2217         annotate-*
2218
2219         * input/regression/page-spacing.ly,
2220         input/regression/page-layout-manual-position.ly: idem
2221
2222 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2223
2224         * lily/line-spanner.cc: cleanup property list.
2225
2226         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2227         generator expressions (2.3 compat). 
2228
2229 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
2230
2231         * lily/vertical-align-engraver.cc: Make sure that the
2232         align{Above,Below}Context properties are included in the automatic
2233         documentation.
2234
2235 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
2236
2237         * scm/paper-system.scm (paper-system-annotate): also annotate the
2238         estimated pure-Y-extent
2239
2240         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2241
2242         * lily/system.cc (break_into_pieces): set the estimated height
2243         of each child system
2244
2245         * lily/stem.cc (pure_height): new pure-Y-extent callback
2246
2247         * lily/staff-symbol-referencer.cc (callback): don't destroy
2248         the staff-position property
2249
2250         * lily/hara-kiri-group-spanner.cc (request_suicide): split
2251         consider_suicide into two functions
2252
2253         * lily/constrained-breaking.cc (resize): use the new pure
2254         callbacks to estimate the height of a system
2255
2256         * lily/axis-group-interface.cc (pure_group_height): new
2257         side-effect-free VerticalAxisGroup height-callback
2258
2259         * lily/align-interface.cc (get_extents_aligned_translates):
2260         split align_elements_to_extents into two functions
2261         (get_pure_child_y_translation): new function
2262
2263         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2264
2265         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2266
2267         * lily/paper-score.cc: cache break_indices and columns
2268
2269         * lily/side-position-interface.cc: new pure-Y-extent callbacks
2270         
2271 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2272
2273         * lily/font-config.cc (init_fontconfig): do the init if
2274         cache_file, but don't look at cache_file.
2275
2276         * input/regression/quote-tie.ly: new file.
2277
2278         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2279         to Head_event_tuple, so we deal gracefully with ties on
2280         cue-endings.
2281
2282         * lily/pango-font.cc (pango_item_string_stencil): type correctness
2283         for FcChar8*
2284
2285 2006-06-08  Graham Percival  <gpermus@gmail.com>
2286
2287         * input/test/ smart-transpose.ly, reverse-music.ly:
2288         \applyMusic to music functions update, thanks Michael!
2289
2290 2006-06-07  Graham Percival  <gpermus@gmail.com>
2291
2292         * input/test/ add-staccato.ly, add-text-script.ly,
2293         unfold-all-repeats.ly, music-box.ly: \applyMusic to
2294         music functions update, thanks to Michael Meixner.
2295
2296         * Documentation/user/music-glossary.tely: small fix
2297         from Francisco.
2298
2299         * Documentation/user/ various: minor additions from mailist.
2300
2301         * Documentation/user/lilypond.tely, basic-notation.itely:
2302         small test of @funindex.  (works here)
2303
2304         * input/test/font-table.ly: reduce size to partially
2305         de-ugly version in manual.
2306
2307         * Documentation/user/page.itely: new file (split former
2308         "global issues" into "page settings" and "non-musical
2309         output".
2310
2311         * Documentation/user/ various: fix @ref{}s to match
2312         new chapter names (above).
2313
2314 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2315
2316         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2317
2318 2006-06-06  Graham Percival  <gpermus@gmail.com>
2319
2320         * Documentation/user/advanced-notation.itely: add example
2321         for segno/coda on barline.
2322
2323         * tex/texinfo.tex: merge from upstream.
2324
2325 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2326
2327         * scripts/lilypond-book.py (process_snippets): Argument fix.
2328
2329         * SConstruct:
2330         * buildscripts/builder.py:
2331         * lily/SConscript: 
2332         * mf/SConscript: 
2333         * Documentation/user/SConscript:  More SCons fixes.
2334
2335 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2336
2337         * lily/font-config.cc (init_fontconfig): Only initialize if
2338         global cache_file is found.
2339
2340 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
2341
2342         * ly/music-functions-init.ly: Updated \overrideProperty to use the
2343         new \applyOutput.
2344
2345 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2346
2347         * VERSION (PACKAGE_NAME): release 2.9.8
2348
2349         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2350         function. Delay ledger modifying ledgered grobs to
2351         stop_translation_timestep(), to ensure that we're ledgering
2352         according to the new spanner.
2353         (acknowledge_staff_symbol): don't check for non-NULL
2354         staff_sym->get_bound()
2355
2356         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2357         creation.
2358
2359         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2360         pictures too.
2361
2362         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2363         directly from srcdir/stepmake/aclocal.m4
2364         
2365         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2366         disting MISC files.
2367
2368         * lily/simple-spacer.cc (get_column_desc): desc -> description.
2369
2370 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2371
2372         * lily/simple-spacer.cc (get_line_configuration): add
2373         keep-inside-line rods
2374         (struct Column_desc): add constructor
2375         (struct Rod_desc): add constructor
2376         (get_line_forces): check for forced page breaks here too
2377
2378         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2379         support/elements cycles between InstrumentNames and AxisGroups
2380
2381 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2382
2383         * config.make.in (METAFONT): remove MAKEINFO_VERSION
2384
2385         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2386         make-txt-files target.
2387
2388         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2389         make-txt-files target.
2390
2391         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2392
2393         * stepmake/stepmake/generic-vars.make (distdir): create dist in
2394         top-build-dir.
2395
2396 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
2397
2398         * Documentation/user/instrument-notation.itely,
2399         input/regression/breathing-sign-ancient.ly,
2400         input/test/divisiones.ly: Removed redundant property settings for
2401         vaticana contexts.
2402
2403         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2404         fix lyrics alignment problems.  They are implemented now as scheme
2405         functions that add the appropriate unicode char to the first lyric
2406         event rather than adding a separate lyric event.  Minor edit of
2407         comments.
2408
2409 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2410
2411         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2412         pollute src dir with built .txt files, but install directly from
2413         Documentation/topdocs/out/
2414
2415         * buildscripts/output-distance.py
2416         (ComparisonData.create_html_result_page): put version/directories
2417         in table header.
2418
2419         * Documentation/topdocs/NEWS.tely (Top): document spacing section
2420         feature.
2421
2422         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2423         Patch by Karl Hammar
2424         
2425         * buildscripts/readlink.py: add  file.
2426         Patch by Karl Hammar
2427
2428 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2429
2430         * lily/tuplet-number.cc (print): prevent stencil from being
2431         garbage collected.
2432
2433 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2434
2435         * scm/stencil.scm (write-system-signature): explicitly 
2436         -well, superfluously- close output port.
2437
2438         * buildscripts/output-distance.py (main): oops. Add extra argument.
2439
2440 2006-06-05  Graham Percival  <gpermus@gmail.com>
2441
2442         * Documentation/user/music-glossary.tely: clarified example
2443         from Francisco Vila, thanks!
2444
2445 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2446
2447         * input/regression/spacing-section.ly: new file.
2448
2449         * lily/input.cc (programming_error): new function.
2450
2451         * lily/spacing-engraver.cc (try_music): new function. Accept
2452         spacing-section-event
2453
2454         * lily/spacing-spanner.cc (set_springs): take slices of all
2455         columns for spacing.
2456
2457         * lily/include/paper-column.hh (class Paper_column): add
2458         Paper_column::compare.
2459
2460         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2461
2462         * scm/define-music-types.scm (music-descriptions): add
2463         SpacingSectionEvent
2464
2465         * lily/music-iterator.cc (report_event): use programming_error for
2466         sending non-event error.
2467
2468         * lily/input.cc (programming_error): new function
2469
2470         * buildscripts/output-distance.py (main): use compare-XXX for
2471         compare files.
2472         (main): --threshold option, default at 0.30
2473
2474         * output-distance.py (main): add --threshold option.
2475
2476 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2477
2478         * scm/paper-system.scm (paper-system-annotate): fix problem when
2479         annotating an empty system
2480
2481 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2482
2483         * GNUmakefile.in: reinstate old web tar/copying.
2484
2485 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2486
2487         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2488         nothing changes. (Erik S) 
2489
2490         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2491         count. (Erik S)
2492
2493 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2494
2495         * scm/define-markup-commands.scm (whiteout): do not force
2496         foreground color of argument markup to black.
2497
2498         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2499         the left of the arrow, instead of below the arrow name, so that,
2500         when two little arrows are vertically stacked, their dimensions
2501         and name should not overlap. Add a color key parameter.
2502
2503         * scm/paper-system.scm (paper-system-annotate): Annotate
2504         next-space+next-padding instead of next-space. Annotate space
2505         between next-padding and next-space+padding, respectively, and
2506         following system extent and refpoint-Y-extent. Use colors.
2507
2508         * scm/page.scm (annotate-page): translate annotations slightly to
2509         the right.
2510
2511 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2512
2513         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2514         fix for x-staff slurs. Thanks Joe!
2515
2516         * buildscripts/output-distance.py
2517         (SystemLink.output_expression_change_count): keep track of changed
2518         details, and dump in details html page.
2519  
2520         * input/regression/figured-bass-staff.ly: add note about setting
2521         properties in Staff context.
2522
2523         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2524         add slurs and ties to support too.
2525
2526         * buildscripts/output-distance.py (main): set dest_dir
2527         argument. Add --max-count option.
2528
2529 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2530
2531         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2532         shortcuts for special unicode chars that are useful in chant
2533         notation.  Revised exisiting and added new comments.
2534
2535 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2536
2537         * make/mutopia-rules.make: remove duplicate recipe.
2538
2539 2006-06-02  Werner Lemberg  <wl@gnu.org>
2540
2541         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2542         Add support for U+0132 (IJ) and U+0133 (ij).
2543
2544 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2545
2546         * buildscripts/output-distance.py (FileLink): new class. collect
2547         info systems from one .ly file. 
2548         (FileLink.link_files_for_html): further tweaks.
2549
2550 2006-06-02  Graham Percival  <gpermus@gmail.com>
2551
2552         * tex/texinfo.tex: partial fix for @funindex.
2553
2554         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2555         break anything).
2556
2557 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2558
2559         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2560
2561         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2562         @example too. Backportme.
2563
2564 2006-06-02  Graham Percival  <gpermus@gmail.com>
2565
2566         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2567         from Werner Lemberg.
2568
2569 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2570
2571         * Documentation/user/music-glossary.tely: additional spanish
2572         updates and a lyrics fix in an example.
2573
2574 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2575
2576         * scm/define-grob-properties.scm: Previous patch contained
2577         spurious line from another patch not yet committed.  Fixed.
2578
2579         * scm/define-grob-properties.scm: Add missing doc strings for
2580         ancient notation.
2581
2582 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2583
2584         * buildscripts/output-distance.py
2585         (ComparisonData.write_text_result_page): separate the scores, sort
2586         by geo_score.
2587
2588         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2589         system signatures.
2590
2591         * buildscripts/output-distance.py (me_path): use argv[0] for
2592         sys.path extension
2593         (ComparisonData.img_cell): use colored borders.
2594
2595         * scm/stencil.scm (write-system-signature): escape newlines too.
2596         (write-system-signature): use (1,-1) interval for empty interval
2597
2598 2006-01-01  Graham Percival  <gpermus@gmail.com>
2599
2600         * Documentation/user/music-glossary.tely: Spanish updates
2601         from Francisco Vila.
2602
2603         * Documentation/user/lilypond-book.itely: addition from
2604         Vaclav Smilauer.
2605
2606         * Documentation/user/ various: edits, small additions
2607         from mailist, etc.
2608
2609 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2610
2611         * GNUmakefile.in (tree-lib-prefix-current):
2612         (tree-share-prefix-current): Use version number in tree, add
2613         `current' symlinks.
2614
2615 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2616
2617         * GNUmakefile.in: write VERSION, again.
2618
2619         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2620         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2621
2622         * stepmake/aclocal.m4: robuster version detection.
2623
2624         * buildscripts/output-distance.py
2625         (ComparisonData.create_html_result_page): copy only if file
2626         exists, fixup src paths.
2627
2628         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2629
2630 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2631
2632         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2633         Another datarootdir reto.
2634
2635         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2636         available.  This should be moved to postinstall-lilypond-doc.
2637
2638 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2639
2640         * GNUmakefile.in: simplify local-WWW-post. 
2641         remove -type l from find.
2642
2643         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2644         fixes. Don't follow symlinks.
2645         (ComparisonData.create_html_result_page): remove previous results.
2646         insert ../python in path.
2647
2648         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2649
2650 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2651
2652         * config.make.in (datadir): Add datarootdir to silence autoconf.
2653
2654         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2655
2656 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2657
2658         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2659
2660         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2661         slash beams too wide.
2662
2663 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2664
2665         * VERSION: release 2.9.7
2666         
2667 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2668
2669         * lily/relocate.cc (read_relocation_dir): Do not blindly
2670         dereference DIR.
2671
2672 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2673
2674         * lily/parser.yy: replace THIS by PARSER
2675
2676         * Documentation/index.html.in: add link to test-results.html page.
2677
2678         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2679
2680         * scm/translation-functions.scm (format-bass-figure): translate
2681         digits over 10 to the left
2682
2683         * scm/define-markup-commands.scm (translate-scaled): new markup.
2684
2685         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2686         7 glyph. 
2687
2688         * ly/engraver-init.ly: add Figured_bass_engraver
2689
2690         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2691
2692         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2693
2694         * lily/score-engraver.cc (announce_grob): only note START announces.
2695
2696         * lily/include/engraver-group.hh (Translator_group):
2697         acknowledge_hash_table_ is now drul.
2698
2699         * lily/engraver.cc (announce_end_grob): new method.
2700
2701         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2702
2703         * lily/translator-dispatch-list.cc (create): take start_end argument.
2704
2705         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2706         acknowledge_static_array_ to drul
2707
2708         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2709
2710         * scm/define-grob-interfaces.scm
2711         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2712
2713         * scm/define-grobs.scm (all-grob-descriptions): add
2714         BassFigureAlignmentPositioning
2715
2716         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2717         number stays up to date. Backportme.
2718
2719 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2720
2721         * Documentation/user/basic-notation.itely (Bar lines): Document
2722         the "||:" bar type. 
2723
2724 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2725
2726         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2727
2728         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2729         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2730         build.
2731
2732         * Resurrect `scons lily' build.
2733
2734         * SConstruct (symlink_tree): Bugfix: link
2735         music-drawing-routines.ps to file iso directory.
2736
2737         * lily/SConscript: Remove kpath-guile from LIBS.
2738
2739         * SConstruct (libdir_package_version): Typo.
2740         (configure): Comment-out fontforge for lack of fontforge.pc .
2741         Also add libdir* to environment.
2742
2743 2006-05-30  Graham Percival  <gpermus@gmail.com>
2744
2745         * Documentation/user/ various: minor additions from mailist and
2746         editing.
2747
2748 2006-05-30  Paco <fravd@ya.com>
2749
2750         * Documentation/user/music-glossary.tely: numerous corrections and
2751         some new translations.
2752
2753 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2754
2755         * BackportmeStart.
2756         
2757         * buildscripts/output-distance.py
2758         (ComparisonData.create_html_result_page): new routine: summarise
2759         results in HTML page with images. 
2760         (ComparisonData.create_text_result_page): create summary text files too.
2761
2762         * GNUmakefile.in (web-ext): package .signature files too. They
2763         compress well. 
2764
2765         * scm/stencil.scm (write-system-signature): typo.
2766
2767         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2768
2769         * scm/stencil.scm (write-system-signature): better escaping.
2770         only write signature for music systems, not for markup systems.
2771
2772         * scm/framework-ps.scm (output-framework): dump-signatures support
2773         for plain output.
2774
2775         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2776
2777         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2778         for -dno-point-and-click
2779
2780         * lily/grob.cc (get_print_stencil): don't read
2781         point_and_click_global to determine whether to set grob-cause.
2782
2783 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2784
2785         * buildscripts/output-distance.py (main): new function.
2786         (ComparisonData): new class.
2787
2788         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2789         careful with generating new LedgerLineSpanners.
2790
2791         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2792
2793         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2794         context. This fixes double ledger lines in output. 
2795
2796         * lily/system.cc (get_paper_system): remove 3 layer limit.
2797
2798         * buildscripts/output-distance.py (SystemLink.distance): new
2799         file. Compare signatures.
2800
2801         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2802
2803         * lily/grob-array.cc (remove_duplicates): rename from
2804         uniq(). Sort before calling uniq() so it actually works.
2805
2806 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2807
2808         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2809         \version from lilypond file snippet.
2810         (Lilypond_file_snippet.ly): oops. typo.
2811         (find_toplevel_snippets): urgh. again.
2812
2813         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2814         prevent duplicated broken items in output.
2815
2816         * scm/framework-eps.scm (output-classic-framework): only dump if
2817         dump-signatures is set.
2818
2819         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2820
2821         * scm/stencil.scm (write-system-signature): new routine: write
2822         python parseable signature of a separate paper system.
2823         BackportmeEnd.
2824         
2825 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2826
2827         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2828         iso is_string().
2829         include header.
2830
2831 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2832
2833         * translator-group.cc: send music events to engravers in
2834         non-bottom contexts.
2835
2836         * tuplet-engraver.cc: process tuplet brackets in correct order.
2837
2838 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2839
2840         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2841         arg 2 might point us to a new binary (patch by Karl Hammar)
2842         
2843 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2844
2845         * VERSION (PACKAGE_NAME): release 2.9.6
2846
2847         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2848
2849         * Documentation/user/*.itely: 2nd
2850         attempt: replace funindex -> findex globally.
2851
2852 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2853
2854         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2855         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2856
2857         * scm/define-music-display-methods.scm: display methods for
2858         breaks. Fix \applyOutput.
2859
2860 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2861
2862         * Documentation/user/macros.itexi: comment out funindex expansion. 
2863
2864         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2865         everywhere.
2866
2867         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2868         Karl Hammar. Backportme.
2869  
2870         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2871
2872         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2873
2874         * Documentation/user/programming-interface.itely (Running a
2875         function on all layout objects): idem.
2876
2877         * Documentation/user/introduction.itely (Automated engraving):
2878         update \applyOutput syntax
2879
2880         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2881         remove debugging hook.
2882
2883         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2884         expansion. 
2885
2886         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2887
2888         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2889         TEXI2DVI_FLAGS to texi2dvi invocation. 
2890
2891 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2892
2893         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2894         works. More work is done by iterator now, and engraver has been
2895         very much simplified.
2896
2897         * lily/translator-group.cc: try_music is now invoked through a
2898         listener
2899
2900         * lily/*-iterator.cc: Massive cleanups. Junked
2901         try_music_in_children globally. Renamed try_music to report_event,
2902         and made that method descend to a bottom context automatically.
2903
2904         * lily/event-iterator.cc: New file.
2905
2906         * lily/output-property-iterator.cc,
2907         lily/old-lyric-combine-music-iterator.cc: Removed.
2908
2909         * python/convert-rules.py: Modified the syntax for \applyOutput.
2910
2911 2006-05-23  Graham Percival  <gpermus@gmail.com>
2912
2913         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2914         creation.
2915
2916         * Documentation/user/ various: stuff that might have helped
2917         to fix the pdf creation, plus some minor doc additions.
2918
2919         * Documentation/user/changing-defaults.itely: remove @b from
2920         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2921
2922 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2923
2924         * lily/beaming-pattern.cc (beamify): deal with negative start
2925         moments for beaming patterns.
2926
2927 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2928
2929         * lily/beaming-info.cc (beamify): new function: read beatLength
2930         and beatGrouping from context. 
2931
2932         * input/regression/beam-beat-grouping.ly (Module): new file.
2933
2934         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2935
2936         * lily/beam.cc (get_beam_segments): generate events for
2937         max_connect_ case too.
2938         (get_beam_segments): read Stem::max-beam-connect.
2939
2940         * input/regression/beam-single-stem.ly: new file.
2941
2942         * lily/stem.cc (set_beaming): use #f as signaling value for
2943         beamcount 0.
2944
2945         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2946
2947         * lily/beam.cc (set_beaming): read clip-edges property.
2948         (calc_direction): don't suicide for single stem.
2949
2950         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2951         argument, remove 1<<15 hack. Remove clip_edges() 
2952
2953         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2954
2955 2006-05-21  Graham Percival  <gpermus@gmail.com>
2956
2957         * Documentation/user/basic-notation.itely: reorg.
2958
2959         * Documentation/user/ various: minor fixes.
2960
2961 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2962
2963         * lily/stencil-expression.cc (register_stencil_head): opps, append
2964         to cdr of static SCM object.
2965
2966 2006-05-19  Graham Percival  <gpermus@gmail.com>
2967
2968         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2969         update framework for command index.  DOC WRITERS: use @funindex
2970         instead of @cindex @code{}.
2971
2972         * Documentation/user/ various: replace @cindex @code{} => @funindex
2973
2974 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2975
2976         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2977         case positions is set manually. 
2978
2979 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2980         
2981         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2982         rules to Scheme.
2983
2984 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2985
2986         * Documentation/user/changing-defaults.itely (Contexts explained):
2987         use absolute dimension for @image.
2988
2989         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2990         out image for illustration too.
2991         ($(outdir)/%.png): add more png <-> eps rules. 
2992
2993 2006-05-17  Graham Percival  <gpermus@gmail.com>
2994
2995         * Documentation/user/ various: remove trailing whitespace, cosmetic
2996         change to reduce changes produced by diff.
2997
2998 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2999
3000         * lily/main.cc (do_chroot_jail): correctness tweak.
3001
3002         * python/lilylib.py (system): import subprocess in system () only.
3003
3004         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3005
3006         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3007         variable. Backportme.
3008
3009 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
3010         
3011         * lily/parser.yy: Change all syntax rules of type Music to SCM type
3012
3013 2006-05-17  Werner Lemberg  <wl@gnu.org>
3014
3015         * lily/lexer.ll (init_signature_has_table): Add
3016         `scm-scm-music-music'.
3017
3018         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3019         (Generic_prefix_music_scm): Add rule for it.
3020
3021         * lily/quote-iterator.cc (Quote_iterator::process): Handle
3022         `quoted-transposition' property.
3023
3024         * ly/music-functions-init.ly (transposedCueDuring): New function.
3025
3026         * scm/define-music-properties.scm (all-music-properties): Updated.
3027
3028         * Documenation/topdocs/NEWS.itely: Document it.
3029
3030 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
3031
3032         * python/lilylib.py (system): move import subprocess to system()
3033         definition. 
3034
3035         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3036
3037         * VERSION (PATCH_LEVEL): release 2.9.5
3038         
3039         * Documentation/topdocs/INSTALL.texi (Top): update versions and
3040         build instructions. 
3041
3042         * ly/engraver-init.ly: switch on hairpinToBarline by default.
3043
3044 2006-05-16  Graham Percival  <gpermus@gmail.com>
3045
3046         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3047
3048         * Documentation/user/ various: minor fixes.
3049
3050 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
3051
3052         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3053
3054 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
3055
3056         * Documentation/user/advanced-notation.itely (Instrument names):
3057         Modified obsolete instruction on how to move instrument names away
3058         from the staves. Hmm, at second thought the bug probably has been
3059         solved, so the full bug description should probably be removed.
3060
3061 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
3062
3063         * lily/dynamic-engraver.cc (typeset_all): hang ending on
3064         currentCommandColumn. 
3065
3066         * lily/hairpin.cc (print): also add padding for non-neighbor
3067         hairpin bounds.
3068
3069         * scm/define-context-properties.scm
3070         (all-user-translation-properties): add hairpinToBarline
3071
3072         * input/regression/hairpin-to-barline.ly: new file.
3073
3074         * lily/context.cc (internal_send_stream_event): thinko fix.
3075
3076         * lily/tie.cc (set_default_control_points): robustness fix.
3077
3078         * python/musicxml.py (Part.interpret): don't complain about
3079         incomplete measures.
3080
3081         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3082         new music if last_event_chord() returned None.
3083
3084         * python/musicxml.py (Part.interpret): skip back over chord notes.
3085
3086 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
3087         
3088         * lily/percent-repeat-engraver.cc, lily/parser.yy,
3089         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3090         lily/slash-repeat-engraver.cc,
3091         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3092         iterator sends PercentEvents
3093
3094         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3095         rework tuplets: send start/stop events to engraver
3096
3097         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3098         dispatchers event-source and events-below to Context
3099         
3100 2006-05-15  Graham Percival  <gpermus@gmail.com>
3101
3102         * Documentation/user/README.txt: update info for doc writers.
3103
3104         * Documentation/user/programming-interface.itely: integrate
3105         Nicolas' fixes for chapter rewrite.
3106
3107         * Documentation/user/ various: minor fixes.
3108
3109 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
3110
3111         * lily/clef-engraver.cc: cleanup.
3112
3113         * Documentation/user/GNUmakefile: dist context-example.eps too.
3114
3115         * lily/key-engraver.cc (create_key): use
3116         explicitKeySignatureVisibility for cancellation too. 
3117
3118         * lily/font-config.cc (init_fontconfig): don't close file if
3119         f==NULL. 
3120
3121 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
3122
3123         * Documentation/topdocs/NEWS.tely: niente and rotation news
3124
3125 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
3126
3127         * lily/include/stencil.hh
3128         * lily/stencil.cc (rotate): new function. Makes it possible
3129         to rotate a stencil around a given offset.
3130
3131         * lily/grob.cc (get_print_stencil): add rotation support
3132
3133         * lily/stencil-interpret.cc (interpret_stencil_expression):
3134         add rotation support
3135
3136         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3137
3138         * scm/define-grob-properties.scm: add 'rotation property
3139
3140         * scm/define-markup-commands.scm: add rotate markup command
3141         
3142         * scm/output-ps.scm: add rotation support in PostScript backend
3143
3144         * scm/output-svg.scm: add rotation support in SVG backend
3145
3146 2006-05-13  Graham Percival  <gpermus@gmail.com>
3147
3148         * Documentation/user/music-glossary.itely: French correction.
3149
3150         * Documentation/user/programming-interface.itely: major
3151         new docs, some reorg, some info from Nicolas.
3152
3153         * Documentation/user/ various: small fixes.
3154
3155 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
3156
3157         * Documentation/user/programming-interface.itely (Markup
3158         programmer interface): Remove duplicate text.
3159
3160 2006-05-12  Graham Percival  <gpermus@gmail.com>
3161
3162         * Documentation/user/context-example.eps: new file.
3163
3164         * Documentation/user/changing-defaults.itely: set up file to
3165         use eps image.
3166
3167         * Documentation/user/programming-interface.itely: changes
3168         from mailist.
3169
3170 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
3171
3172         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3173
3174 2006-05-11  Graham Percival  <gpermus@gmail.com>
3175
3176         * Documentation/user/programming-interface.itely: first round of
3177         editing and merging emails from Nicolas.
3178
3179         * Documentation/user/scheme-tutorial: minor edit.
3180
3181 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
3182
3183         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3184         XML attributes.
3185         (Xml_node.message): use it.
3186
3187         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
3188         oops. Add duration argument.
3189
3190 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
3191
3192         * lily/paper-column-engraver.cc (make_columns):
3193         * scm/define-grobs.scm: Revert my previous change and set the default
3194         in define-grobs.scm instead.
3195
3196 2006-05-09  Graham Percival  <gpermus@gmail.com>
3197         
3198         * Documentation/user/changing-defaults.itely: general editing,
3199         info about \set and \override.
3200
3201         * Documentation/user/tweaking.itely, advanced-notation.itely:
3202         fixes from Dave Luttinen, thanks!
3203
3204 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
3205
3206         * lily/paper-column-engraver.cc (make_columns): By default, a column
3207         needs to be breakable.
3208
3209 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
3210
3211         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3212         Attributes methods
3213         (musicxml_time_to_lily): idem
3214         (musicxml_key_to_lily): idem
3215         (instrument_drumtype_dict): dict for supported drumtypes.
3216         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3217         moments and pending mm rests
3218         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3219         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3220         (musicxml_voice_to_lily_voice): add mode change.
3221         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3222         speed and less memory usage (factor 5 to 10).
3223         (convert): write -defs.ly  and driver file separately so people
3224         can script their own part extraction.
3225
3226         * python/musicxml.py (minidom_demarshal_node): new function:
3227         separate minidom handling.
3228         (lxml_demarshal_node): new function: support lxml.etree too.
3229         (Xml_node.message): new function: verbose error message, with XML
3230         path to offending node.
3231         (Attributes.get_measure_length): sane interface to MusicXML attributes.
3232         (Part_list.generate_id_instrument_dict): new method: collect
3233         instrument names, to be able to set drum_type.
3234         (Part.interpret): handle underfull measures
3235         (Part.interpret): assign instrument names.
3236
3237         * python/musicexp.py (Output_printer.close): new method
3238         (MusicWrapper.print_ly): new class: support other modes,
3239         eg. \drummode
3240         (BarCheck.print_ly): new class. Support bar checks, with comments
3241         and fancy barchecks. 
3242         (NoteEvent.__init__): also set drum_type for drum notes.
3243         (MultiMeasureRest.lisp_expression): dump mm rests.
3244
3245         * lily/paper-column-engraver.cc (stop_translation_timestep): set
3246         line-break-permission if forbidBreak is not set.
3247
3248 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
3249
3250         * scm/define-context-properties.scm:
3251         * scm/define-grob-properties.scm:
3252         * scm/define-grobs.scm:
3253         * scm/define-music-display-methods.scm:
3254         * scm/define-music-properties.scm:
3255         * scm/define-music-types.scm:
3256         * scm/music-functions.scm:
3257         * ly/declarations-init.ly:
3258         * lily/include/constrained-breaking.hh:
3259         * lily/system.cc:
3260         * lily/spaceable-grob.cc:
3261         * lily/simple-spacer.cc:
3262         * lily/paper-score.cc:
3263         * lily/paper-column.cc:
3264         * lily/paper-column-engraver.cc:
3265         * lily/item.cc:
3266         * lily/gourlay-breaking.cc:
3267         * lily/constrained-breaking.cc:
3268         * python/convertrules.py:
3269         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3270         "page-break-penalty" and "line-break-permission".
3271         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3272         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3273
3274         * lily/bar-engraver.cc:
3275         * lily/beam-engraver.cc:
3276         * lily/forbid-break-engraver.cc:
3277         * lily/ligature-engraver.cc:
3278         * lily/paper-column-engraver.cc:
3279         * lily/percent-repeat-engraver.cc:
3280         * lily/score-engraver.cc:
3281         * lily/score-engraver.hh:
3282         * lily/paper-column-engraver.hh:
3283         Inter-engraver communication regarding line breaks is done through context
3284         properties (Score.forbidBreak) instead of function calls.
3285
3286 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
3287
3288         * VERSION (PACKAGE_NAME): release 2.9.4
3289
3290 2006-05-08  Graham Percival  <gpermus@gmail.com>
3291
3292         * Documentation/user/working.itely: proofreading from Dave
3293         Luttinen, thanks.
3294
3295         * Doucmentation/user/README.txt: updated with manual style info.
3296
3297         * Documentation/user/ various: trim linewidth to 78 chars.
3298
3299 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3300
3301         * scm/define-grob-properties.scm (all-internal-grob-properties):
3302         remove chord-tremolo property.
3303
3304         * lily/beam.cc (get_beam_segments): don't use stem position as
3305         base for broken ends.
3306
3307 2006-05-06  Graham Percival  <gpermus@gmail.com>
3308
3309         * Documentation/user/putting.itely: proofreading from Dave
3310         Luttinen, thanks!
3311
3312         * Documentation/user/ various: more reorg and clarifications.
3313
3314 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3315
3316         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3317
3318         * ly/music-functions-init.ly: new function featherDurations
3319
3320         * lily/beam.cc: read grow-direction for feathered beaming.
3321
3322         * Documentation/topdocs/NEWS.tely (Top): typo.
3323
3324 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3325
3326         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3327         tremolo beams.
3328
3329 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
3330         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3331         used by music streams.
3332
3333         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3334         lily/stream-event.cc, lily/stream-event-scheme.cc,
3335         lily/listener.cc, lily/scheme-listener.cc,
3336         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3337         lily/include/stream-event.hh, lily/include/listener.hh,
3338         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3339         Created data structures for music streams.
3340         
3341 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3342
3343         * lily/beam.cc (get_beam_segments): new function. Reorganise the
3344         construction of a beam. 
3345         (print): rewrite. 
3346
3347         * flower/include/std-vector.hh (default_compare): use only one comparison.
3348
3349         * scm/define-markup-commands.scm (note-by-number): remove debug display.
3350         (note-by-number): further attachment fixes.
3351
3352         * scm/lily-library.scm (ordered-cons): new function.
3353         (interval-index): new function
3354
3355         * lily/note-head-scheme.cc (LY_DEFINE): new file.
3356
3357         * lily/note-head.cc (get_stem_attachment): new function.
3358
3359         * scm/define-markup-commands.scm (note-by-number): read 'style
3360         property. 
3361
3362         * input/regression/markup-note.ly: show note-head style option.
3363
3364         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3365         triangle head.
3366
3367 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
3368
3369         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3370
3371         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3372
3373         * lily/include/constrained-breaking.hh: GCC 4 fix.
3374
3375 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
3376
3377         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3378         Replace it with functions get_line_forces and get_line_configuration.
3379         (class Simple_spacer): Make data private.
3380         Rewrite compression algorithm to be faster and simpler.
3381
3382         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3383         * lily/gourlay-breaking.cc (solve):
3384         * lily/constrained_breaking.cc (space_line):
3385         Change it to the new simple-spacer code.
3386
3387         * lily/paper-score.cc (get_paper_systems):
3388         (Paper_score):
3389         (process):
3390         Delay breaking the systems until they are requested.
3391         (find_break_indices):
3392         Use vsize for indices.
3393         (calc_breaking):
3394         Move the "Calculating line breaks" message here.
3395
3396         * lily/system.cc (pre_processing):
3397         Move the "Calculating line breaks" message away from here.
3398         (break_into_pieces):
3399         Allow multiple calls to this function in sequence (with touching-but-
3400         not-overlapping breakpoints).
3401
3402         * lily/constrained-breaking.cc:
3403         Replace most of the get_XXXX functions with get_line_details.
3404         Only calculate the force for each line. Calculate configurations only
3405         for the lines we will actually use.
3406         Replace cols_ with lines_.
3407
3408 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3409
3410         * mf/GNUmakefile (depth): remove FC_FIND.
3411
3412         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3413
3414         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3415
3416         * scm/framework-ps.scm (write-preamble): new function.
3417         (write-preamble): load mac fonts via fondu, even if gs-font-load
3418         is set.
3419
3420 2006-05-03  Werner Lemberg  <wl@gnu.org>
3421
3422         * mf/GNUmakefile (FC_FIND): Fix typo.
3423
3424 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
3425
3426         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3427
3428 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3429
3430         * stepmake/aclocal.m4: run python-config for crosscompiling
3431         flags. 
3432
3433         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3434         -f png for HTML, TEXINFO formats. 
3435
3436         * input/tutorial/lbook-html-test.html: new file.
3437
3438         * lily/include/tie-formatting-problem.hh (class
3439         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3440         [column, direction]. This fixes laissez vibrer ties.
3441  
3442         * flower/include/tuple.hh (struct Tuple2): new file.
3443
3444         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3445         $(FCMATCH), only if $(NCSB_DIR) not set. 
3446
3447         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3448
3449         * config.make.in (DOCUMENTATION): set FCMATCH.  
3450
3451         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3452
3453 2006-05-03  Graham Percival  <gpermus@gmail.com>
3454
3455         * Documentation/user/ various: final round of reorg.
3456
3457         * Documentation/user/instrument-notation.itely: some more
3458         fixes from Eduardo, thanks!
3459
3460 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3461
3462         * VERSION (PACKAGE_NAME): release 2.9.3
3463
3464         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3465
3466         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3467
3468 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3469
3470         * scm/define-grob-properties.scm (all-user-grob-properties):
3471         Correct typo, thanks to Eduardo.
3472
3473 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3474
3475         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3476
3477         * buildscripts/lilypond-words.py (F): indent fix.
3478
3479         * input/regression/tie-arpeggio-collision.ly: new file.
3480
3481         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3482         function: store outlines per column rank.
3483
3484         * lily/include/tie-configuration.hh (class Tie_configuration): add
3485         column_ranks_ to specification and configuration, to distinguish
3486         between ties for different heads in arpegiated chords.
3487
3488         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3489
3490         * *.py: more 4 space indents.
3491
3492         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3493
3494 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3495
3496         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3497
3498 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3499
3500         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3501
3502         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3503
3504         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3505
3506 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3507
3508         * python/convertrules.py (conv): indent 4 for python files.
3509
3510 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3511
3512         * Documentation/user/changing-defaults.itely (Creating contexts):
3513         Clarify \new semantics.
3514
3515 2006-04-28  Graham Percival  <gpermus@gmail.com>
3516
3517         * Documentation/user/ various: major new sections in the
3518         Learning manual, slight reorg elsewhere.
3519
3520 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3521
3522         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3523
3524         * scm/framework-ps.scm (output-framework): remove PageMedia
3525
3526 2006-04-27  Graham Percival  <gpermus@gmail.com>
3527
3528         * Documentation/user/ tweaks.itely, working.itely: new
3529         files, being more advanced "learning manual" chapters.
3530
3531         * Documentation/user/ tutorial, putting, lilypond: reorg.
3532
3533 2006-04-26  Graham Percival  <gpermus@gmail.com>
3534
3535         * input/regression/lyric-combine-polyphonic.ly: fixed test
3536         (no more "can't find context `one'" error).
3537
3538 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3539
3540         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3541
3542         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3543         
3544 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3545
3546         * lily/relocate.cc (read_relocation_dir): new function.
3547
3548 2006-04-26  Graham Percival  <gpermus@gmail.com>
3549
3550         * Documentation/user/instrument-notation.itely: a few more fixes
3551         from Eduardo, thanks!
3552
3553         * Documentation/user/README.txt: new file; contains info on
3554         style that used to be in lilypond.tely.
3555
3556         * Documentation/user/ various: first round of doc reorg.
3557
3558         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3559         graphic; this probably causes problems on some pdf
3560         viewers, notably Adobe Acrobat.
3561
3562 2006-04-24  Graham Percival  <gpermus@gmail.com>
3563
3564         * Documentation/user/instrument-notation.itely: many alterations
3565         to Vocal music, from Eduardo Viera.
3566
3567 2006-04-23  Graham Percival  <gpermus@gmail.com>
3568
3569         * Documentation/user/instrument-notation.itely: fix \new
3570         instead of \context problem.
3571
3572 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3573
3574         * lily/relocate.cc (expand_environment_variables): new function.
3575         (read_line): id.
3576         (read_relocation_file): id.
3577
3578         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3579
3580 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3581
3582         * ly/engraver-init.ly: remove old comments from TabVoice
3583
3584 2006-04-20  Graham Percival  <gpermus@gmail.com>
3585
3586         * Documentation/user/instrument-notation.itely: added Erlend's
3587         latest doc patch, thanks!
3588
3589 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3590
3591         * lily/include/slur.hh:
3592         * lily/slur.cc:
3593         * lily/phrasing-slur-engraver.cc:
3594         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3595         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3596         Slur_engraver:: and putting it in
3597         Slur::auxiliary_acknowledge_extra_object ().
3598
3599         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3600
3601         * lily/note-collision.cc: fix a comment
3602
3603 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3604
3605         * stepmake/bin/add-html-footer.py: fix footer position in
3606         generated html files: before </body> and </html> tags.
3607
3608 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3609
3610         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3611         Earlier successive `make' commands finally compiled ok.
3612
3613         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3614
3615 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3616
3617         * lily/include/stem-tremolo.hh:
3618         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3619         callers.
3620
3621         * lily/lookup.cc:
3622         * lily/include/lookup.hh: add rotated_box ()
3623
3624 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3625
3626         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3627         been generated. Fixes "can't get `--help'" bug after make clean.
3628
3629         * THANKS: alphabetize contributors.
3630
3631 2006-04-17  Graham Percival  <gpermus@gmail.com>
3632
3633         * Documentation/user/instrument-notation.itely: added Erlend's
3634         tabs and banjo doc patch.  Thanks!
3635
3636 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3637
3638         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3639
3640         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3641
3642         * scm/output-lib.scm: add some more predefined string tunings.
3643
3644         * Documentation/user/instrument-notation.itely: and doc them.
3645
3646 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3647
3648         * ly/engraver.ly: Remove obsolete comments.
3649
3650         * ly/gregorian-init.ly: Define default layout block.
3651
3652         * input/puer-fragment.ly: Updated and extended.
3653
3654 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3655
3656         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3657         pdf conversion behaviour.
3658
3659         * flower/file-name.cc (dir_name)
3660         (get_working_directory): Move from relocate.cc.
3661
3662         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3663         
3664         * lily/relocate.cc: Encapsulate sys/stat.h in
3665         HAVE_STAT_H.
3666
3667 2006-04-14  Graham Percival  <gpermus@gmail.com>
3668
3669         * Documentation/user/ various: small updates from Cameron
3670         and Juergen, thanks!
3671
3672         * Documentation/user/ various: small updates of my own.
3673
3674         * THANKS: 2.7 -> 2.8.
3675
3676 2006-04-11  Graham Percival  <gpermus@gmail.com>
3677
3678         * scm/define-context-properties.scm: typo.
3679
3680         * Documentation/user/ : many more small updates.
3681
3682 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3683
3684         * scm/define-music-types.scm: disposed "docme".
3685
3686 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3687
3688         * lily/hairpin.cc: make niente circles a bit smaller.
3689
3690 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3691
3692         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3693         get-pfa and get-*-fonts targets.
3694
3695 2006-04-10  Graham Percival  <gpermus@gmail.com>
3696
3697         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3698         music-glossary, programming-interface: more minor fixes
3699         from mailist.
3700
3701         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3702
3703         * scm/define-context-properties.scm: another old \property update.
3704         This time tested for compiling!
3705
3706 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3707
3708         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3709
3710 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3711
3712         * scm/define-context-properties.scm (all-user-translation-properties): 
3713         * Documentation/user/global.itely (Page formatting): Compile fix.
3714
3715 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3716
3717         * Documentation/user/advanced-notation.itely (Polymetric
3718         notation): Update the example to use the "+" symbol and add link
3719         to input/test/compound-time.ly.
3720
3721 2006-04-08  Graham Percival  <gpermus@gmail.com>
3722
3723         * scm/define-grob-properties.scm: clarify docs for #'direction.
3724
3725         * scm/define-context-properties.scm: update old \property override.
3726
3727         * Documentation/user/ advanced-notation, global, lilypond-book:
3728         more minor doc updates.
3729
3730 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3731
3732         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3733
3734         * scm/backend-library.scm (search-gs): oops.
3735
3736 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3737
3738         * scripts/lilypond-book.py (output): use base, not filename for href.
3739
3740         * scm/backend-library.scm: only look for gs.
3741
3742         * scripts/lilypond-book.py (output): fix printfilename.
3743
3744         * lily/parser.yy (music_function_musicless_prefix): fold together
3745         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3746
3747         * lily/slur.cc (print): only set font-size if not set yet.
3748
3749         * lily/slur-configuration.cc (add_score): improved layout of debug
3750         scoring output.
3751
3752 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3753
3754         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3755         (draw_circle): Hopefully fixed regression.
3756         Improved documentation for several procedures.
3757         
3758 2006-03-04  Werner Lemberg  <wl@gnu.org>
3759
3760         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3761
3762 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3763
3764         * scripts/musicxml2ly.py (bindir): add dynamic
3765         relocation. 
3766
3767 2006-04-04  Graham Percival  <gpermus@gmail.com>
3768
3769         * Documentation/user/ basic-notation, advanced-notation, putting,
3770         instrument-notation, invoking, lilypond, THANKS: another ream of small
3771         fixes from the Doc Helpers.
3772
3773 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3774
3775         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3776
3777         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3778
3779         * Cleaned up interfaces between PostScript and Scheme, and moved
3780         computations from PostScript to Scheme:
3781
3782         * music-drawing-routines.ps
3783         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3784         with stroke_and_fill throughout.
3785         (euclidean_length, print_letter, draw_box): Deleted unused
3786         procedures.  If someone needs draw_box, implement it using
3787         draw_round_box; don't duplicate code.
3788         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3789         Refactored/cleaned up interfaces.
3790         (mark_URI): Moved.
3791
3792         * output-ps.scm: reordered arguments to PostScript functions to
3793         match new interfaces
3794         (glyph-string): Rewrote glyph-string.
3795         (grob-cause): Replaced string-append with format.
3796         (repeat-slash): Rewrote to do computation here.
3797         (round-filled-box): Rewrote to do computation here.
3798
3799 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3800
3801         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3802
3803         * stepmake/stepmake/toplevel- targets.make: print help info about
3804         cvs-clean
3805
3806 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3807
3808         * input/regression/hairpin-circled.ly: new file
3809
3810 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3811
3812         * lily/hairpin.cc (print): add support for circled tip
3813
3814         * scm/define-grob-properties.scm: add circled-tip parameter
3815
3816         * scm/define-grobs.scm: init circled-tip to false
3817         
3818 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3819
3820         * scm/music-functions.scm (quote-substitute): set
3821         iterators-ctor. 
3822
3823 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3824
3825         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3826         BSTINPUTS. 
3827
3828         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3829
3830         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3831
3832 2006-03-31  David Feuer  <david.feuer@gmail.com>
3833         
3834         * scm/framework-ps.scm:
3835         
3836         * scm/output-ps.scm: glyph-string now produces smaller, more
3837         readable, and probably faster PostScript.  Several findfont
3838         scalefont setfont instances changed to selectfont
3839         Hacked-up string-appends changed to formats.
3840
3841         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3842         
3843 2006-03-30  Graham Percival  <gpermus@gmail.com>
3844
3845         * scm/lily-library.scm: make "no version" warning message more polite.
3846
3847         * lily/music.cc: add double quotes to failed octave check.
3848
3849         * Documentation/user/ advanced-notation, changing-defaults,
3850         instrument-notation, invoking, music-glossary: whole bunch of minor
3851         fixes from mailist.
3852
3853 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3854
3855         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3856         $(buildscriptdir) iso. depth.
3857
3858         * VERSION (PACKAGE_NAME): release 2.9.1
3859
3860 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3861
3862         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3863
3864         * VERSION (PATCH_LEVEL): bump version number.
3865
3866         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3867         scm_from_uint32 ()
3868
3869         * lily/pango-font.cc (pango_item_string_stencil): use
3870         scm_from_uint32 ()
3871
3872         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3873         $(outdir)/emmentaler-%.svg): remove canary.
3874
3875         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3876         glyphnames if we have a ttf font.
3877
3878 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3879
3880         * Documentation/user/advanced-notation.itely (Font selection):
3881         Corrected reference to the font-family-override.ly example.
3882
3883 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3884         
3885         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3886         stem-tremolo object in the stem (or else the stem might not be
3887         long enough).
3888
3889 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3890
3891         * lily/ttf.cc (print_trailer): only print existing glyphs.
3892
3893 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3894
3895         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3896         position the tremolo based on the position of the notehead.
3897
3898         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3899         notes and update the texidoc line with the new positioning rules.
3900         
3901 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3902
3903         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3904
3905         * scripts/lilypond-book.py (Module): set default for linewidth if
3906         preamble not found.
3907
3908 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3909
3910         * VERSION (PACKAGE_NAME): release 2.9.0.
3911
3912         * input/regression/stem-tremolo-position.ly: new file.
3913
3914         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3915
3916 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3917
3918         * lily/stem-tremolo.cc (print): position
3919         the tremolo depending only on the end of the stem
3920         and not on the notehead
3921         (raw_stencil): center, on the middle staff line, the
3922         flag that is closest to the end of the stem (previously
3923         the bottom flag)
3924         (calc_width): add this callback to shorten a tremolo when
3925         it is beamed or it is stemup with a flag
3926         (style): add this callback to make a tremolo rectangular when
3927         it is beamed or it is stemup with a flag
3928         (rotated_box): this is like Lookup::beam but makes a rotated
3929         rectangle instead of a parallelogram
3930
3931         * lily/stem.cc (calc_stem_info): make sure the stem
3932         is long enough to fit the tremolo
3933         (calc-length): reduce the length of tremolo stems since the
3934         tremolo code is now capable of better positioning
3935
3936         * scm/define-grobs.scm: make calc_width the default beam-width
3937         callback for stem-tremolo and add the style callback
3938                 
3939 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3940
3941         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3942         case. 
3943
3944 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3945
3946         * lily/ttf.cc (make_index_to_charcode_map): restore old
3947         cmap. 
3948
3949 2006-03-28  Werner Lemberg  <wl@gnu.org>
3950
3951         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3952
3953 2006-03-28  Graham Percival  <gpermus@gmail.com>
3954
3955         * THANKS: update for 2.9, add section for Documentation helpers.
3956
3957         * Documentation/topdocs/NEWS.tely: compile fix.
3958
3959         * Documentation/user/ basic-notation, global, advanced-notation,
3960         examples.itely: minor fixes from mailist.
3961
3962 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3963
3964         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3965         note heads. 
3966
3967         * lily/ttf.cc (print_trailer): use it.
3968
3969         * lily/pango-font.cc (get_unicode_name): new function.
3970
3971         * lily/ttf.cc (make_index_to_charcode_map): move function from
3972         open-type-font.cc
3973         (print_trailer): substitute uniXXXX name if applicable. 
3974
3975         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3976         (pango_item_string_stencil): use it to generate uniXXXX names.
3977
3978         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3979         note heads, for uniform widths in shape note output.
3980         (overdone_heads): hmm. remove them again.
3981
3982         * scripts/lilypond-book.py (output): add links to filenames.
3983
3984         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3985
3986         * lily/note-collision.cc (get_clash_groups): only consider when
3987         Note_column::dir <> CENTER. 
3988
3989         * scripts/lilypond-book.py (get_option_parser): init output_name
3990         to ''. 
3991
3992 2006-03-24  Graham Percival  <gpermus@gmail.com>
3993
3994         * Documentation/topdocs/NEWS.tely: add @end itemize
3995
3996         * Documentation/user/ global, advanced-notation: minor
3997         stuff from mailist.
3998
3999 2006-03-23  Graham Percival  <gpermus@gmail.com>
4000
4001         * Documentation/user/ lilypond.tely, music-glossary,
4002         preface: housekeeping; 2005->2006, remove "notes for 2.6"
4003
4004 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
4005
4006         * mf/GNUmakefile: don't install .enc files.
4007
4008         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4009
4010         * VERSION (PATCH_LEVEL): bump to 2.9.0
4011
4012 2006-03-22  Graham Percival  <gpermus@gmail.com>
4013
4014         * Documentation/user/advanced-notation.itely: minor fixes
4015         from mailist.
4016
4017 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
4018
4019         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4020
4021         * branch lilypond_2_8
4022
4023 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
4024
4025         * scripts/lilypond-book.py (samefile): new function, for windoze
4026         compatibility.
4027
4028 2006-03-21  Graham Percival  <gpermus@gmail.com>
4029
4030         * ly/engraver-init.ly: add info about StaffGroup.
4031
4032 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
4033
4034         * input/regression/stem-direction-context.ly: idem.
4035
4036         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4037
4038         * THANKS: add Mats.
4039
4040         * input/regression/page-layout-twopass.ly: comment out \markup so
4041         tweak-file is left.
4042
4043         * lily/instrument-name-engraver.cc (finalize): add to instrument
4044         name global System. This also fixes chopped instrument names, but
4045         doesn't crash when there are slurs/beams.
4046
4047         * lily/slur-configuration.cc (add_score): disallow negative slur
4048         scores.
4049         
4050 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4051
4052         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4053
4054         * lily/instrument-name-engraver.cc (process_music): kludge: add
4055         InstrumentName spanner to axis group of left bound. Fixes chopped
4056         off instrument names in EPS images.
4057
4058         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4059
4060         * scripts/abc2ly.py (option_parser): update to 2.7.40
4061
4062 2006-03-20  Graham Percival  <gpermus@gmail.com>
4063
4064         * THANKS: move small doc contributors to SUGGESTIONS.
4065
4066         * Documentation/user/ basic-notation, advanced-notation,
4067         global: small changes from mailist.
4068
4069 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4070
4071         * Documentation/user/advanced-notation.itely (Text marks): update
4072         for new rehearsalMarkAlignSymbol convention.
4073
4074         * VERSION (PATCH_LEVEL): bump version.
4075
4076         * input/test/instrument-name-align.ly: new file.
4077
4078         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4079
4080         * input/test/instrument-name-align.ly: new file. Document how to
4081         align instrument names.
4082
4083         * lily/mark-engraver.cc: remove properties.
4084
4085         * scm/define-context-properties.scm
4086         (all-user-translation-properties): remove align symbol properties
4087         for barnumber/reh. mark.
4088
4089         * lily/break-align-interface.cc (self_align_callback): new
4090         interface, new function. Look at complete alignment. This handles
4091         tunable break alignments in case break-align-symbols are missing.
4092
4093         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4094
4095         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4096
4097         * python/convertrules.py (conv): mark/bar number alignment rule.
4098
4099         * lily/break-align-interface.cc (calc_positioning_done): also
4100         store offset from last visible break-alignment to its
4101         neighbor. This makes alignment on non-visible objects more reliable.
4102
4103         * po/lilypond.pot (Module): ran po-replace.
4104
4105         * input/regression/tie-single-manual.ly (Module): new file.
4106
4107         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4108         look at has_manual_position_.
4109         (from_ties): set has_manual_position_ if tie has staff-position set.
4110
4111         * lily/tuplet-bracket.cc (calc_positions): idem.
4112
4113         * lily/tuplet-number.cc (print): don't print tupletnumber if it
4114         doesn't span time.
4115
4116 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4117
4118         * scm/define-markup-commands.scm (smallCaps): new markup command
4119         for turning a text to small caps using smaller font size and upper
4120         casing.
4121
4122 2006-03-17  Graham Percival  <gpermus@gmail.com>
4123
4124         * Documentation/user/ examples, instrument-notation,
4125         advnaced-notation: minor fixes from mailist.
4126
4127 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4128
4129         * Documentation/user/tutorial.itely (First steps): change example
4130         to verbatim.  
4131
4132 2006-03-17  Graham Percival  <gpermus@gmail.com>
4133
4134         * Documentation/user/ examples, advanced: minor changes from mailist.
4135
4136         * THANKS: add Geoff Horton, for documentation stuff.
4137
4138 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4139
4140         * python/lilylib.py (system): revert have_select kludge.
4141
4142         * Documentation/user/tutorial.itely (Commenting input files):
4143         update version numbers in doc. 
4144
4145         * scm/define-grob-interfaces.scm (multi-measure-interface): add
4146         bound-padding to multi-measure-interface
4147
4148 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4149
4150         * input/test/engraver-example.ily: update version number.
4151
4152         * VERSION (PACKAGE_NAME): release 2.7.39
4153
4154         * lily/note-spacing.cc (get_spacing): heighten threshold where
4155         accidentals/arpeggios influence previous spacing fully.
4156
4157         * lily/rest.cc (y_offset_callback): only use direction if
4158         staff-position wasn't set before.
4159
4160         * lily/bar-number-engraver.cc: add support for
4161         barNumberAlignSymbol. 
4162         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4163
4164         * lily/pointer-group-interface.cc (set_ordered): new function. 
4165         (add_unordered_grob): new function.
4166
4167         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4168         to ordered, unless the opposite has been proved.  This fixes
4169         random reordering of large object groups across linebreaks,
4170         eg. beams.
4171
4172         * lily/main.cc (do_chroot_jail): printf format fix.
4173
4174         * lily/tie-formatting-problem.cc (generate_configuration):
4175         multiply y-shift for dot with direction.
4176  
4177         * scm/define-markup-commands.scm (note-by-number): put (magstep
4178         size) in y-attach too.
4179
4180         * Documentation/topdocs/NEWS.tely (Top): show override.
4181
4182         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4183         direction for stems.
4184         
4185 2006-03-15  Graham Percival  <gpermus@gmail.com>
4186
4187         * Documentation/user/ changing-defaults, global: minor
4188         fixes from mailist.
4189
4190 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4191
4192         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4193
4194         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4195         breakable items after uniformly stretched notes.
4196
4197         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4198         outline with outer edge of note heads. This prevents infinity
4199         problems with tied whole notes.
4200
4201         * scripts/lilypond-book.py (do_file): use os.popen
4202
4203         * python/convertrules.py (conv): add rule for Stem #'beamed-*
4204
4205 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
4206
4207         * Documentation/user/invoking.itely: Add ragged-right to bug report
4208         guidelines.
4209
4210 2006-03-14  Graham Percival  <gpermus@gmail.com>
4211
4212         * Documentation/user/global.itely: small fix from mailist.
4213
4214 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
4215
4216         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4217         file descriptor returned by tempfile.mkstemp() when writing
4218         to tmpfile and closing it. Solves problem with unlink(tmpfile)
4219         on mingw.
4220
4221 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4222
4223         * po/fi.po: newline bugfix.
4224
4225 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4226
4227         * scm/paper.scm (paper-alist): Rounding fixes.
4228
4229 2006-03-13  Graham Percival  <gpermus@gmail.com>
4230
4231         * Documentation/user/ changing-defaults, instrument-notation,
4232         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
4233
4234 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
4235
4236         * po/fi.po: update.
4237
4238 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4239
4240         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4241         mailto: to http:// 
4242
4243         * python/lilylib.py (print_environment): move ps_page_count to
4244         lilypond-book.py
4245
4246 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4247
4248         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4249
4250         * scm/framework-ps.scm (embed-document): new function. Use to
4251         embed PFA files.
4252
4253         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4254
4255 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
4256
4257         * Documentation/user/instrument-notation.itely (Setting simple
4258         songs): Added \book{...} around the full example, so the separate
4259         markups are included in the printed example. 
4260
4261 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4262
4263         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4264         tmphandle.
4265
4266         * python/lilylib.py (system): rewrite system() using
4267         subprocess. Remove >& redirection trickery.
4268
4269 2006-03-11  Graham Percival  <gpermus@gmail.com>
4270
4271         * Documentation/user/ changing-defaults, global, scheme-tutorial,
4272         notation-appendices.itely: minor fixes from mailist.
4273
4274 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4275
4276         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4277         unsplit man also needs images.
4278
4279         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4280
4281         * VERSION (PACKAGE_NAME): 2.7.38 released.
4282
4283 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4284
4285         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4286         log in output dir.
4287
4288 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
4289
4290         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4291         respects the Score.skipTypesetting property.
4292         
4293 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4294
4295         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4296         Prolog. No %%EOF after CFF file.
4297
4298 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
4299         
4300         * lily/constrained-breaking.cc (get_max_systems): used to return a
4301         much too big value
4302         (combine_demerits): use pointers to reduce copying data
4303         (calc_subproblem): idem
4304         (get_page_penalty): add page turn penalties
4305         
4306 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4307
4308         * Documentation/user/invoking.itely (Invoking lilypond): better
4309         explanation of -e usage.
4310
4311         * lily/main.cc (main_with_guile): don't append to
4312         init_scheme_code_string
4313
4314         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4315
4316         * Documentation/user/invoking.itely: add note about MacOS X scripts.
4317
4318         * scripts/convert-ly.py (do_options): don't print help for
4319         --show-rules rule.
4320
4321         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4322         @code and @example. Update from texinfo.tex from CVS.
4323
4324 2006-03-08  Graham Percival  <gpermus@gmail.com>
4325
4326         * Documentation/user/scheme-tutorial.itely: clarifies distances
4327         measured in staff-spaces.
4328
4329 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4330
4331         * lily/slur.cc (outside_slur_callback): only calculate offsets if
4332         consider[k] is true.
4333
4334         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4335
4336         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4337         consider columns that have originals.  Unifies spacing for mm
4338         rests around line breaks.
4339
4340         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4341         (set_text_rods): idem.
4342         (calculate_spacing_rods): new function: share code between
4343         set_text_rods and set_spacing_rods.
4344         (set_text_rods): take extents of bounds into account.  
4345
4346 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4347
4348         * Documentation/user/basic-notation.itely (Writing music in
4349         parallel): don't use relative.
4350
4351 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4352
4353         * ly/music-functions-init.ly (Module): add shiftDurations
4354
4355         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4356
4357         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
4358
4359         * ly/engraver-init.ly: init vocalName to nil.
4360
4361 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
4362
4363         * scm/music-functions.scm (music->make-music): bugfix,
4364         KeyChangeEvents are now handled correctly.
4365
4366         * scripts/lilypond-book.py: Add --debug option.
4367
4368 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4369
4370         * python/lilylib.py: add tempfile.
4371
4372 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4373
4374         * VERSION (PACKAGE_NAME): release 2.7.37
4375
4376         * python/lilylib.py (ps_page_count): remove make_ps_images().
4377         (ps_page_count): remove mkdir_p
4378         (system): remove cleanup_temp.
4379         (exit): remove lilypond_version_(check)
4380         (error_log): remove pseudo_filter_p
4381         remove read_pipe
4382         remove cp_to_dir
4383         remove identify
4384
4385         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4386         use __main__
4387
4388         * lily/accidental-engraver.cc (make_standard_accidental): only add
4389         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4390
4391         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4392         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4393         Make incompatibilities.
4394
4395         * scm/output-ps.scm (grob-cause): replace backslashes by /
4396         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4397
4398 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4399
4400         * cygwin/GNUmakefile: Install fixes.
4401
4402         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4403
4404         * lily/note-head.cc (head::get_balltype): Compile fix.
4405
4406         * flower/file-name.cc (dos_to_posix): Flower string fix.
4407
4408 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4409
4410         * python/lilylib.py: pychecker cleanups.
4411
4412         * scripts/lilypond-book.py
4413         (Lilypond_snippet.output_print_filename): pychecker cleanups
4414
4415         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4416
4417         * python/lilylib.py (underscore): remove identify() , warranty()
4418
4419         * ps/music-drawing-routines.ps: change Border routine for GSView
4420         compatibility.
4421
4422         * lily/stem.cc (height): use quantize-positions.  This triggers
4423         set_stem_lengths, so scripts on beamed stems are handled correctly.
4424
4425         * lily/side-position-interface.cc (aligned_side): check if edges
4426         of script are inside staff. Fixes accent of edge of the staff.
4427
4428         * input/regression/staccato-pos.ly: more examples.
4429
4430         * stepmake/aclocal.m4 (depth): fix bashism.
4431
4432         * lily/lyric-combine-music-iterator.cc: move from
4433         new-lyric-combine-iterator.cc
4434         (process): add pending_grace_lyric_ member to delay lyrics on
4435         grace notes.
4436
4437         * lily/system-start-text.cc (print): suicide if we don't have any
4438         elements. Fixes hara kiri'd instrument names.
4439
4440         * scripts/mup2ly.py (Module): remove.
4441
4442 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4443
4444         * Documentation/user/global.itely (A single music expression):
4445         close @lilypond properly
4446
4447         * lily/volta-bracket.cc (modify_edge_height): change from
4448         after_line_breaking_callback. Suicide last bracket if appropriate.
4449  
4450         * python/lilylib.py: strip getopt support
4451
4452         * scripts/etf2ly.py (do_options): use optparse
4453
4454         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4455
4456         * scripts/abc2ly.py (voices): use optparse.
4457
4458         * stepmake/stepmake/generic-vars.make: new function absdir.
4459
4460         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4461
4462         * scripts/lilypond-book.py (find_file): use global_options for
4463         include path
4464
4465         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4466         entering C code.
4467
4468 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4469
4470         * python/lilylib.py (get_global_option): ughness for extracting
4471         global options from lilylib.
4472         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4473
4474         * scripts/lilypond-book.py (get_option_parser): use optparse for
4475         option handling.  Put options in global_options variable.
4476
4477 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4478
4479         * Documentation/index.html.in: clarify.
4480
4481 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4482
4483         * scm/layout-page-layout.scm (write-page-breaks): add a
4484         music-system-heights property to the page layout output.
4485
4486         * scm/page.scm (make-page-stencil): take footer into account when
4487         computing the 'space-left page property
4488         (annotate-space-left): take footer into account when annonating
4489         space left.
4490
4491 2006-02-28  Graham Percival  <gpermus@gmail.com>
4492
4493         * Documentation/user/ advanced-notation, global: more (final)
4494         docs for music expressions, removed special fermatas.
4495
4496 2006-02-27  Graham Percival  <gpermus@gmail.com>
4497
4498         * Documentation/user/ basic-notation, global: minor changes
4499         from mailist.
4500
4501 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4502
4503         * scm/framework-ps.scm:         
4504         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4505         layer for inf? and nan? from framework-ps to lily-library.
4506
4507 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4508
4509         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4510         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4511
4512         * buildscripts/substitute-encoding.py (Module): remove file.
4513
4514         * mf/GNUmakefile: more PFA strippage.
4515
4516         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4517
4518         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4519         generation
4520
4521         * scm/framework-ps.scm: remove font name munging.
4522
4523         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4524
4525 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4526
4527         * scm/markup.scm (define-markup-command): change
4528         def-markup-command to define-markup-command
4529
4530         * scm/music-functions.scm (define-music-function): change
4531         def-music-function to define-music-function.
4532
4533         * python/convertrules.py (conv): rules for def-music-function
4534         and def-markup-commands
4535
4536         * Documentation/user/programming-interface.itely,
4537         input/no-notation/display-lily-tests.ly,
4538         input/regression/lily-in-scheme.ly,
4539         input/regression/markup-user.ly,
4540         input/regression/music-function.ly, input/regression/tie-chord.ly,
4541         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4542         ly/gregorian-init.ly: use new macro names (define-music-function,
4543         define-markup-command).
4544
4545 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4546
4547         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4548         (output): add comments to lp-book latex output.
4549
4550         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4551         address.
4552
4553 2006-02-23  Graham Percival  <gpermus@gmail.com>
4554
4555         * Documentation/user/ tutorial, global: minor changes.
4556
4557 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4558
4559         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4560         blocks (for make 3.80)
4561
4562         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4563         \notemode so that user should not have to explicitely type it.
4564
4565         * scm/define-music-display-methods.scm: various
4566         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4567         constructs)
4568
4569         * input/no-notation/display-lily-tests.ly: new tests for
4570         \applyOutput and \applyContext
4571
4572 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4573
4574         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4575         changed it slightly so that the number of systems returned by
4576         solve () will be the same as the last value passed to resize
4577         (). I've also added more documentation, removed casts, fixed style
4578         problems and put in some recovery if constraints aren't satisfied."
4579
4580 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4581
4582         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4583         for emacs < 22 compatibility.
4584         (count-rexp): Use it.
4585         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4586         substring juggling (Milan Zamazal).
4587
4588 2006-02-23  Graham Percival  <gpermus@gmail.com>
4589
4590         * Documentation/user/ basic-notation, advanced-notation,
4591         global.itely, invoking.itely, tutorial,itely:
4592         minor fixes from mailist.
4593
4594         * scm/define-markup-commands.scm: improve docs of \filled-box.
4595
4596 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4597
4598         * Documentation/index.html.in: changes concern the previous release.
4599
4600         * input/regression/+.ly: cultivate typographical terminology.
4601
4602 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4603
4604         * scm/define-grob-interfaces.scm (parentheses-interface): add
4605         padding to parentheses-interface.
4606
4607         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4608         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4609
4610         * VERSION (PATCH_LEVEL): release 2.7.36
4611
4612         * lily/slur.cc: add avoid-slur (ugh.)
4613         
4614         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4615         intersection gets smaller. This fixes slurs over extreme points.
4616
4617         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4618         stems with neutral-direction set.
4619
4620         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4621
4622         * lily/open-type-font.cc (load_table): format error.
4623
4624         * lily/change-iterator.cc (process): format fix.
4625
4626         * flower/include/international.hh (_f): idem.
4627
4628         * flower/include/std-string.hh: add format printf attribute.
4629
4630         * scm/define-grobs.scm (all-grob-descriptions): height of all
4631         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4632
4633         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4634         ambitus lines.
4635
4636         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4637
4638 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4639
4640         * input/regression/: upgraded syntax for some files.
4641
4642         * THANKS: Add bughunters.
4643
4644 2006-02-22  Graham Percival  <gpermus@gmail.com>
4645
4646         * Documentation/user/ invoking.itely, advanced-notation.itely,
4647         global.itely: long-awaited "let's make chapter 10 not suck"
4648         update.  Rearrange chapter 10; now called "global issues",
4649         addresses file structure, etc.  Some info from other files
4650         moved into global.itely.
4651
4652 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4653
4654         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4655         catch trill-span-event notes.
4656
4657         * Documentation/user/examples.itely (Ancient notation templates): typo.
4658         (Jazz combo): typo.
4659
4660         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4661
4662         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4663
4664         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4665
4666         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4667
4668         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4669         froum Laissez_vibrer_engraver.
4670
4671         * ly/declarations-init.ly (repeatTie): add \repeatTie
4672
4673         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4674
4675         * scm/define-grob-properties.scm (all-user-grob-properties): add
4676         head-direction property.
4677
4678         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4679         from_lv_ties. Take head direction argument.
4680
4681         * lily/semi-tie-column.cc: rename from
4682         laissez-vibrer-tie-column.cc. Rename class too.
4683
4684         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4685         class too.
4686
4687         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4688
4689         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4690         0 case.
4691         (find_breaks): idem.
4692
4693 2006-02-21  Graham Percival  <gpermus@gmail.com>
4694
4695         * Documentation/user/advanced-notation.itely: fixed make-moment]
4696         example.
4697
4698         * Documentation/user/basic-notation.itely: more clarification to
4699         transpose.
4700
4701 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4702
4703         * lily/include/constrained-breaking.hh (class
4704         Constrained_breaking): new file.
4705
4706         * lily/constrained-breaking.cc (resize): new file.
4707
4708         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4709
4710         * Documentation/user/advanced-notation.itely (Clusters): insert
4711         end ignore too.
4712
4713         * lily/tie-column.cc (calc_positioning_done): support for
4714         tie-score debugging
4715
4716         * lily/tie-formatting-problem.cc
4717         (generate_extremal_tie_variations): factor out.
4718         (score_ties_configuration): annotate all tie 
4719         (print_ties_configuration): new routine.
4720         (generate_configuration): nudge extremal ties outside of the head
4721         Y extents.
4722         (score_ties_configuration): oops. convert to staff-space before
4723         determining position symmetry.
4724
4725 2006-02-20  Graham Percival  <gpermus@gmail.com>
4726
4727         * Documentation/user/*-notation.itely: misc minor editing,
4728         shifting doc sections around.
4729
4730         * Documentation/user/*-notation-itely, global.itely,
4731         changing-defaults.itely: added new stuff from NEWS.
4732
4733 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4734
4735         * po/fi.po: update.
4736
4737 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4738
4739         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4740         lilypond --verbose for lp-book.
4741
4742         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4743         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4744
4745         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4746         $(buildscript-dir) iso. absolute depth.
4747
4748         * buildscripts/genicon.py (dir): thinko.
4749
4750         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4751
4752 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4753
4754         * scm/output-lib.scm: swap darkcyan/darkyellow
4755
4756         * THANKS: Add bughunters.
4757
4758 2006-02-19  Graham Percival  <gpermus@gmail.com>
4759
4760         * Documentation/user/programming-interfaces.itely: fixed example.
4761
4762         * Documentation/user/instrument-notation.itely: fix @{ @}.
4763
4764         * scm/script.scm: add avoid-slur for \open.
4765
4766 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4767
4768         * lily/tie-formatting-problem.cc (score_configuration): use
4769         sliding score for min-length. 
4770
4771         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4772         spaghetti for icons.
4773
4774         * buildscripts/genicon.py (program_name): new file.
4775
4776         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4777         in outline too.  
4778         (generate_configuration): for small ties, also look for collisions
4779         at Y + DIR*h + DELTA_Y.
4780         (get_variations): consider variation for dot positions too.
4781
4782         * lily/side-position-interface.cc (aligned_side): take abs for
4783         quantized rounded position. Fixes tenuto below staff.
4784
4785         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4786         markers when necessary.
4787
4788         * lily/program-option.cc (internal_set_option): add
4789         strict_infinity_checking option.
4790
4791         * scm/output-lib.scm (cyan): swap yellow and cyan.
4792
4793 2006-02-19  Graham Percival  <gpermus@gmail.com>
4794
4795         * darwin.patch: trivial linenumber update.
4796
4797         * Documentation/user/ {various}: `\context foo = named' changed
4798         to `\new foo = "name"' in docs.
4799
4800 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4801
4802         * scm/stencil.scm (annotate-y-interval): use it.
4803
4804         * scm/lily-library.scm (interval-sane?): new function.
4805
4806         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4807         tfm_checksum stuff.
4808
4809         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4810         common refpoint.
4811
4812         * flower/include/std-vector.hh (iterof): add iterof macro.
4813
4814         * lily/enclosing-bracket.cc (width): new function.
4815
4816         * lily/align-interface.cc (align_elements_to_extents): reinstate
4817         warning.
4818
4819 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4820
4821         * Documentation/index.html.in: fix spelling: thankyous.
4822
4823 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4824
4825         * lily/lyric-hyphen.cc: typo.
4826
4827 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4828
4829         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4830         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4831         builds don't work. 
4832
4833         * VERSION: release 2.7.35
4834
4835         * lily/beam.cc (get_default_dir): oops. Take abs () for
4836         extremes[DOWN].
4837         (get_default_dir): use extreme position criterion only in absence
4838         of forced stem directions.
4839
4840         * VERSION (PATCH_LEVEL): bump VERSION.
4841
4842         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4843         dependencies. Necessary for -jX builds.  
4844
4845 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4846
4847         * lily/relocate.cc (setup_paths): Yet another const fix.
4848
4849 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4850
4851         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4852
4853         * lily/relocate.cc (setup_paths): oops.
4854
4855 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4856
4857         * Documentation/index.html.in: order links: html before PDF.
4858
4859 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4860
4861         * lily/tie-column-format.cc (Module): remove.
4862
4863         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4864
4865         * lily/text-spanner.cc (print): idem.
4866
4867         * lily/dynamic-text-spanner.cc (print): only print line if longer
4868         than dash-period.
4869
4870         * lily/auto-change-iterator.cc (change_to): formatting.
4871
4872         * lily/beam.cc (get_default_dir): take extreme note head as input
4873         for stem direction.
4874
4875         * lily/tie.cc (get_default_dir): only look directions for visible
4876         stems. 
4877
4878         * lily/side-position-interface.cc (aligned_side): oops. Don't
4879         mutiply with direction. This fixes quantized (staccato, tenuto)
4880         scripts below notes.
4881
4882         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4883         direction. Fixes c-lyrics-center-align.ly
4884
4885 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4886
4887         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4888         constructor.
4889
4890         * lily/std-string.cc:
4891         * lily/include/std-vector.hh (split_string): Move and rename from
4892         lily/include/misc.hh, lily/misc.cc.  Update callers.
4893
4894 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4895
4896         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4897
4898 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4899
4900         * flower/test-file.cc: New file.
4901
4902         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4903         libraries.
4904
4905         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4906
4907 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4908
4909         * flower/include/file-storage.hh: remove file.
4910
4911         * lily/include/midi-item.hh (class Midi_track): idem.
4912
4913         * lily/include/source.hh (class Sources): idem.
4914
4915         * lily/include/performance.hh (class Performance): use vector
4916         iso. Cons<>
4917
4918         * flower/include/cons.hh (class Cons): remove file.
4919
4920         * flower/include/flower-proto.hh: remove template cruft.
4921
4922         * lily/include/font-metric.hh: use size_t not vsize for indices.
4923
4924         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4925         from proto.
4926
4927         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4928
4929         * lily/include/paper-book.hh (class Paper_book):
4930         make get_system_specs() public.
4931
4932         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4933         the force=10000 case if we don't have a current-best. 
4934
4935         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4936         vsize 
4937
4938         * flower/include/flower-proto.hh: remove outdated templates.
4939
4940         * scm/page.scm: use annotate-spacing
4941
4942 2006-02-15  Graham Percival  <gpermus@gmail.com>
4943
4944         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4945
4946         * THANKS: moved Erlend Aasland to contributors.
4947
4948 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4949
4950         * config.hh.in: remove HAVE_PANGO_16
4951
4952         * lily/tuplet-bracket.cc (calc_positions): multiply with
4953         staff-space for beam case. This fixes tuplets+beams on scaled
4954         staves.
4955
4956         * config.hh.in: remove all Kpathsea related defines.
4957
4958         * lily/dot-column.cc (side_position): reach stem via dots->
4959         head->stem. Inspect all stems for dot collisions. 
4960
4961         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4962         stem handling.
4963
4964         * lily/bar-number-engraver.cc (process_music): document function
4965         of whichBar.
4966
4967         * lily/score.cc (default_rendering): add pscore, not systems
4968         themselves.
4969
4970         * lily/paper-book.cc (get_system_specs): separate generation of
4971         titles and systems.
4972
4973         * flower/include/std-vector.hh: don't include config.hh
4974
4975 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4976
4977         * flower/include/std-vector.hh: Better wrapper compatibility with
4978         std::vector.
4979
4980         * flower/include/flower-proto.hh: Remove cheap forward declaration
4981         attempts.
4982
4983         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4984
4985 2006-02-14  Graham Percival  <gpermus@gmail.com>
4986
4987         * Documentation/user/invoking.itely: add warning about command line.
4988
4989 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4990
4991         * lily/include/lily-proto.hh: add Prob, rm Page.
4992
4993         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4994
4995         * VERSION: release 2.7.34
4996
4997         * lily/relocate.cc (framework_relocation): show canary if
4998         GHOSTSCRIPT_VERSION undefined.
4999
5000         * GNUmakefile.in: remove $(VERSION) symlink.
5001
5002         * lily/relocate.cc (setup_paths): add + 
5003
5004 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
5005
5006         * Documentation/index.html.in: specify sizes for all big HTML pages.
5007
5008 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5009
5010         * config.hh.in: remove @FRAMEWORKDIR@
5011
5012         * lily/system-start-text.cc (get_stencil): new file: separate out
5013         system-start-delimiter text support.
5014
5015         * input/**ly: replace \context with \new where appropriate.
5016         
5017         * THANKS: add Don.
5018
5019         * lily/slur-scoring.cc (get_base_attachments): use
5020         robust_relative_extent. This fixes problems with empty paper-columns. 
5021
5022 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5023
5024         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5025
5026         * scm/define-music-properties.scm (all-music-properties):
5027         create-new property.
5028
5029         * lily/context-specced-music-iterator.cc (construct_children):
5030         inspect 'create-new property iso. magical $uniqueContextId context
5031         id.
5032
5033         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5034
5035         * lily/context-key-manager.cc (Module): new file. Encapsulate
5036         object key generation.
5037
5038         * lily/include/context-key-manager.hh (Module): new file.
5039
5040 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5041
5042         * scm/define-grobs.scm (all-grob-descriptions): center instrument
5043         names vertically
5044
5045         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5046         options.
5047         (reloc_b): excise --enable-framework-dir
5048
5049         * lily/relocate.cc (framework_relocation): use getenv
5050         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5051
5052 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5053
5054         * flower/include/std-string.hh: 
5055         * flower/include/std-vector.hh: Finish std:: conversion; move
5056         flower extensions from std:: namespace.  Update users.
5057
5058         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5059         their expansion to vector<*>.  Update users.
5060
5061 2006-02-10  Graham Percival  <gpermus@gmail.com>
5062
5063         * Documentation/user/invoking.itely: add example to File structure.
5064
5065         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5066         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5067
5068 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5069
5070         * ly/paper-defaults.ly: typo.
5071
5072         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5073         set_parent() for parentheses. This will make it show up in bbox
5074         calculations.
5075
5076         * scm/output-lib.scm (parentheses-item::print): rewrite, using
5077         ly:grob-common* functions.
5078
5079         * lily/grob-scheme.cc (LY_DEFINE):
5080         ly:grob-common-refpoint-of-array: new function 
5081         ly:grob-common-refpoint: new function 
5082         ly:grob-relative-coordinate: new function 
5083
5084         * lily/instrument-name-engraver.cc (process_music): use
5085         Text_interface::is_markup(). This fixes \markup on instrument names.  
5086
5087         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5088         for ties and slurs.
5089
5090         * lily/slur.cc (print): idem.
5091
5092         * lily/tie.cc: add line-thickness for ties. 
5093
5094 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5095
5096         * scm/output-svg.scm: Document diversion from GNU coding standards
5097         as a workaround for a bug in Microsoft Internet Explorer.
5098
5099 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5100
5101         * lily/instrument-name-engraver.cc (process_music): use
5102         is_markup() iso. is_string()
5103
5104         * Documentation/user/changing-defaults.itely (Module): add menu entry.
5105
5106         * lily/percent-repeat-engraver.cc (process_music): only look at
5107         main_part_ for % repeats.
5108
5109         * lily/stem-tremolo.cc (get_beam_translation): new function.
5110         (calc_slope): new function.
5111         (height): don't use real slope.
5112
5113 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
5114
5115         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5116         new connect-to-neighbor, control-points and staff-padding
5117         properties to make ligature brackets showing up again.
5118
5119 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5120
5121         * VERSION: release 2.7.33
5122
5123         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5124         too many.
5125
5126         * Documentation/user/changing-defaults.itely (Difficult tweaks):
5127         remove applyOutput example.
5128         (Objects connected to the input): document \tweak, \parenthesize
5129
5130         * lily/relocate.cc (prefix_relocation): allow "current"
5131         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5132         changing VERSION in a lily tree less painful.
5133
5134         * input/regression/parenthesize.ly: new file. 
5135
5136         * scm/output-lib.scm (parenthesize-element): new function.
5137
5138         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5139
5140         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5141
5142         * lily/accidental-engraver.cc (make_standard_accidental): reroute
5143         cause: accidentals are caused by note heads, not note events. 
5144
5145 2006-02-08  Graham Percival  <gpermus@gmail.com>
5146
5147         * darwin.patch: small patch from Erlend, thanks!
5148
5149         * Documentation/user/basic-notation.itely: add stem-neutral example.
5150
5151         * Documentation/user/putting.itely: clarifications.
5152
5153 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5154
5155         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5156         note, add more guidelines to what should go into NEWS.
5157
5158         * input/sakura-sakura.ly: document how to override font.
5159
5160         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
5161
5162 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5163
5164         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5165
5166 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5167
5168         * scripts/convert-ly.py (lilypond_version_re_str): Move from
5169         convertrules.  Add explicit grouping, needed for python2.2.
5170
5171 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5172
5173         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5174
5175 2006-02-07  Graham Percival  <gpermus@gmail.com>
5176
5177         * Documentation/user/global.itely: fix line-width in (text) docs.
5178
5179         * Documentation/user/lilypond-book.itely: same.
5180
5181 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5182
5183         * VERSION (PACKAGE_NAME): release 2.7.32
5184
5185         * Documentation/topdocs/NEWS.tely (Top): document new variable
5186         naming.
5187
5188         * flower/include/array.icc (Message): remove file.
5189
5190         * flower/include/std-vector.hh: make sure vsize and VPOS are
5191         defined for binary_search_bounds().
5192
5193         * flower/std-string.cc (std): add to_string(long unsigned).
5194
5195         * configure.in (gui_b): excise std_string option.
5196         (gui_b): excise std_vector option.
5197
5198         * flower/string.cc (Module): excise flower array & string
5199
5200         * flower/include/std-string.hh: excise flower string.
5201
5202         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5203
5204         * python/convertrules.py (lilypond_version_re_str): require
5205         only numbers and dots in \version string.
5206
5207 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5208
5209         * lily/system-start-delimiter.cc (print): allow style = text too.
5210
5211         * lily/system-start-delimiter-engraver.cc
5212         (acknowledge_system_start_text): new function, also add add to
5213         support of system-start-text (instrument names). This fixes
5214         instrument names on piano staves.
5215
5216         * lily/instrument-name-engraver.cc: rewrite. Use
5217         system-start-delimiter approach. This save memory and cpu.
5218
5219         * scm/define-grobs.scm (all-grob-descriptions): remove
5220         instrument-name from break-alignment.
5221
5222         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5223
5224 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
5225
5226         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5227         jobserver going.
5228
5229         * configure.in (std_vector): On by default.
5230
5231         * lily/include/font-metric.hh:
5232         * lily/include/tfm-reader.hh: 
5233         * lily/include/spanner.hh: Use unsigned for indices and sizes.
5234         Update users.
5235
5236         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5237
5238 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5239
5240         * VERSION (PACKAGE_NAME): 2.7.31
5241
5242         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5243         EPS edge at 0, but take minimum with left-overshoot. This fixes
5244         cut off system start delims. 
5245
5246         * lily/instrument-name-engraver.cc (stop_translation_timestep):
5247         hack: add to axis group if not added yet. This fixes hara kiri'd
5248         piano staves.
5249
5250         * lily/hara-kiri-group-spanner.cc
5251         (force_hara_kiri_in_y_parent_callback): fix signatures.
5252
5253         * lily/hairpin.cc (print): check next hairpin to see whether or
5254         not to be continuing.
5255
5256 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5257
5258         * Remove trailing whitespace from makefiles.
5259         
5260         * flower/include/std-vector.hh: Add binary_search_bounds workaround
5261         for earlier gcc.
5262
5263         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
5264
5265         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5266
5267         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5268
5269         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5270
5271         * configure.in: Use it.
5272
5273 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5274
5275         * scm/music-functions.scm (pitch-of-note): new function.
5276
5277         * ly/music-functions-init.ly: add \octave and \addquote
5278
5279         * lily/parser.yy (music_function_chord_body): softcode \octave.
5280         (lilypond_header): softcode \addquote
5281
5282 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5283
5284         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5285         array.hh, parray.hh at all.  Getting ready to flip the
5286         configure default.
5287
5288         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5289
5290         * lily/source-file.cc (file::get_line): Help binary_search_bounds
5291         a bit.
5292
5293         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5294
5295 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5296
5297         * flower/include/array.hh: typo. 
5298
5299 2006-02-02  Graham Percival  <gpermus@gmail.com>
5300
5301         * Documentation/user/advanced-notation.itely: doc "\#" in text.
5302
5303 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5304
5305         * flower/include/pqueue.hh: Derive from std::vector.
5306
5307         * flower/include/parray.hh: Conform to std::vector interface.
5308         Update users.
5309
5310 2006-02-02  Graham Percival  <gpermus@gmail.com>
5311
5312         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5313
5314 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5315
5316         * flower/file-path.cc (is_file): remove if 0 section.
5317
5318         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5319         selecting afii61352.
5320
5321 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5322
5323         * flower/include/std-vector.hh (boundary): Oops, reverse.
5324
5325         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5326         remove superfluous `d'.
5327
5328         * flower/include/std-vector.hh (boundary, top): Detach from class.
5329         Remove empty vector shell.
5330
5331         * flower/include/array.hh (reverse, swap): Detach from class.
5332         Update users.
5333         
5334         * flower/include/std-vector.hh
5335         * flower/include/array.hh (concat): Globally change to insert ().
5336
5337         
5338         * flower/include/std-vector.hh
5339         * flower/include/parray.hh
5340         * flower/include/array.hh (elem, elem_ref): Globally replace by
5341         at ().
5342
5343 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5344
5345         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5346
5347         * python/convertrules.py (FatalConversionError.sub_cxx_id):
5348         anticipate on identifier substitutions.
5349
5350 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5351
5352         * flower/include/std-vector.hh (insert): Remove, replace by
5353         std::vector interface.  Update callers.
5354
5355         * flower/include/array.icc (insert): Change signature to
5356         match std::vector interface.
5357         
5358         * flower/include/array.icc (vector_sort): Bugfix.
5359
5360 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5361
5362         * lily/parser.yy (output_def_head_with_mode_switch): new
5363         production. Result: dashes and underscores may be used in the
5364         \paper block.
5365
5366         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
5367
5368         * python/convertrules.py (conv): oops. One slash too much.
5369
5370 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5371
5372         * flower/include/std-vector.hh (sort): Remove, replace by
5373         ::vector_sort.  Update callers.
5374
5375         * flower/include/std-vector.hh (slice): Remove.  Update callers.
5376         (sort): Bugfix.
5377
5378         * flower/test-std.cc (vector_sort): New test.
5379
5380 2006-02-01  Graham Percival  <gpermus@gmail.com>
5381
5382         * Documentation/user/putting.itely: fixes from Erik.
5383
5384 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5385
5386         * flower/test-std.cc: Add simple unit test for vector migration.
5387
5388         * stepmake/stepmake/test*: Unit test support.
5389
5390         * flower/include/std-vector.hh (del): Remove.  Use erase (),
5391         update callers.
5392
5393         * flower/include/array.hh (begin, end): Add.
5394         (del, get): Remove.
5395
5396 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5397
5398         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5399         std::string not String. 
5400
5401         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5402         iso UINT_MAX.
5403
5404         * lily/prob.cc (Prob): copy type_ too.
5405
5406         * lily/lily-guile.cc (mangle_cxx_identifier): new
5407         function. Class_bla::foo_bar_[px] ->
5408         ly:class-bla::foo-bar[?!]. Changes throughout
5409
5410 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5411
5412         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5413
5414         * lily/beam.cc (calc_direction): take dir from visible stem in
5415         degenerate case.
5416
5417 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5418
5419         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5420         Fix -1, >=0 boundary checks for unsigned vsize.
5421
5422         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5423         loop for unsigned vsize.
5424
5425         * configure.in (--enable-std-vector): New option.
5426         (--enable-std-string): On by default.
5427
5428         * flower/include/std-vector.hh: New file.  Enable switch to
5429         std::vector, update client code.
5430
5431 2006-01-30  Graham Percival  <gpermus@gmail.com>
5432
5433         * scm/document-translation.scm: clarify "this context is also
5434         known as".  Thanks, Werner!
5435
5436         * Documentation/user/putting.itely: small fixes from Don Blaheta.
5437
5438         * Documentation/user/invoking.itely: small fix from Don.
5439
5440 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5441
5442         * scm/lily.scm (define-scheme-options): rename option
5443         preview-include-book-title to book-title-preview
5444         (define-scheme-options): move force-eps-font-include (from paper
5445         block) to eps-font-include -d option.
5446
5447         * VERSION (PATCH_LEVEL): release 2.7.30
5448
5449         * input/bach-schenker.ly (staffPiano): new file.
5450
5451         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5452
5453         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5454         credits to Nicolas.
5455
5456         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5457
5458         * ps/lilyponddefs.ps: remove start-system, stop-system,
5459         start-page fluff. This saves putting { } code on the stack, fixing
5460         stack overflows when including EPS files.
5461
5462 2006-01-29  Graham Percival  <gpermus@gmail.com>
5463
5464         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5465
5466 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5467
5468         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5469
5470 2006-01-28  Graham Percival  <gpermus@gmail.com>
5471
5472         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5473
5474 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5475
5476         * input/mutopia/claop.py: Update.
5477
5478 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5479
5480         * input/regression/completion-heads.ly (texidoc): fix.
5481
5482         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5483
5484         * lily/tie-formatting-problem.cc
5485         (set_ties_config_standard_directions): use abs iso fabs for ints.
5486
5487         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5488
5489         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5490         little less than noteheight, to prevent overlaps in chords.
5491
5492         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5493         head, and fudge stem-attachment.
5494
5495         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5496
5497         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5498
5499 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5500
5501         * lily/main.cc (main): Debugging aid: catch exceptions.
5502
5503         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5504         output with std::string.
5505
5506 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5507
5508         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5509
5510 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5511
5512         * Fix -DSTRING_UTILS_INLINED.
5513
5514 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5515
5516         * VERSION (PATCH_LEVEL): release 2.7.29
5517
5518         * lily/relocate.cc (setup_paths): mingw uses std string too.
5519
5520         * lily/*.cc: various fixes for substr(ARG).
5521
5522         * lily/sustain-pedal.cc (print): 
5523
5524         * flower/file-name.cc (slashify): use std strings.
5525
5526         * flower/string-convert.cc: remove publib.h
5527
5528         * scm/define-markup-commands.scm (verbatim-file): new markup
5529         command \verbatim-file
5530
5531         * Documentation/topdocs/NEWS.tely: fixup URLs
5532
5533         * input/regression/alignment-vertical-manual-setting.ly (Module):
5534         new file.
5535
5536         * lily/align-interface.cc (align_elements_to_extents): overwrite
5537         translations with numbers in alignment-offsets from left bound
5538
5539         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5540         (page-translate-systems): new function: take into account Y-offset.
5541
5542         * Documentation/topdocs/NEWS.tely (Top): document new features.
5543
5544         * input/regression/page-layout-manual-position.ly (Module): new
5545         file.
5546
5547 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5548
5549         * flower/file-path.cc (path::parse_path): Oops.
5550
5551         * Finish std::string interface.  For now, use std:: marker
5552         throughout for easy s/r.
5553
5554 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5555
5556         * Documentation/user/putting.itely (Score is a single musical
5557         expression): typo.
5558         (Score is a single musical expression): more typos.
5559
5560         * scm/page.scm (annotate-space-left): thinko.
5561         (annotate-page): more thinkos.
5562
5563 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5564
5565         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5566         for different \score blocks separately.
5567         (post-process-pages): put write-page-layout into paper block.
5568
5569         * lily/output-def.cc (get_parser): new file.
5570
5571         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5572         file.
5573
5574         * lily/include/output-def.hh (class Output_def): add parser_ member.
5575
5576         * input/regression/page-layout-twopass.ly (Module): new file.
5577
5578         * scm/lily.scm: remove cpp hack.
5579
5580         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5581
5582 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5583
5584         * GNUmakefile.in (c-clean): New target.
5585
5586         * flower/include/std-string.hh: String/std::string compatibility:
5587         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5588         type.
5589
5590         * flower/rational.cc: 
5591         * flower/include/rational.hh: 
5592
5593         * flower/offset.cc: 
5594         * flower/include/offset.hh: 
5595
5596         * flower/interval.cc: 
5597         * flower/include/interval.hh: 
5598
5599         * flower/string-convert.cc: 
5600         * flower/include/string-convert.hh: Use std::string [interface].
5601         Update callers.
5602
5603 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5604
5605         * Documentation/index.html.in: clean up.
5606
5607 2006-01-25  Graham Percival  <gpermus@gmail.com>
5608
5609         * Documentation/user/putting.itely: another new untested doc section.
5610
5611 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5612
5613         * scm/layout-page-layout.scm (write-page-breaks): write
5614         \spacingTweaks #ALIST. Handle grace timing.
5615
5616         * scm/: more imports.
5617
5618         * scm/page.scm (make-page): add footer/header.
5619         (annotate-space-left): revise: only take page argument.
5620         (layout->page-init): new function.
5621
5622         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5623         version of the system/spacing/linebreak hack writing to the output
5624
5625         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5626         ly:make-prob.
5627
5628         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5629         ly:spanner-bound
5630
5631 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5632
5633         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5634
5635         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5636
5637         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5638         handling to page.scm
5639
5640         * lily/prob-scheme.cc (LY_DEFINE): new file.
5641         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5642
5643         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5644         prob functions.
5645
5646         * lily/music.cc (derived_mark): derive Music from Prob.
5647
5648         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5649
5650         * lily/prob.cc (Module): Implement Prob (Property Object), object
5651         with shared and r/w property alists.  
5652
5653         * lily/include/prob.hh (Module): new file. Declare Prob.
5654
5655         * flower/string.cc: remove is_empty().
5656
5657         * flower/include/string.hh (class String): remove String:: qualifier.
5658
5659         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5660         substitute appropriate functions.
5661
5662         * flower/include/string.hh (class String): remove to_str0 and
5663         is_empty(). S&R everywhere.
5664
5665 2006-01-23  Graham Percival  <gpermus@gmail.com>
5666
5667         * Documentation/user/basic-notation.itely: add hairpin
5668         after-linebreak tweak to commonprop.
5669
5670         * Documentation/user/putting.itely: added two new sections.
5671
5672 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5673
5674         * flower/international.cc: 
5675         * flower/include/international.hh: 
5676
5677         * flower/getopt-long.cc: 
5678         * flower/include/getopt-long.hh: Use std::string [interface].
5679         Update callers.
5680
5681         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5682
5683         * stepmake/stepmake/executable-rules.make: Add dependency on
5684         module libraries.
5685
5686 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5687
5688         * flower/file-path.cc: 
5689         * flower/include/file-path.hh: Use std::string [interface].
5690         Update callers.
5691
5692         * flower/direction.cc: 
5693         * flower/axis.cc: Unused.  Remove.
5694
5695         * configure.in (--enable-std-string): New option.
5696
5697         * flower/std-string.cc: 
5698         * flower/include/std-string.hh: New file.
5699
5700         * flower/file-name.cc[STD_STRING]:
5701         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5702
5703 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5704
5705         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5706
5707         * scm/define-markup-commands.scm (with-dimensions):
5708         with-dimensions markup command.
5709
5710         * input/test/font-table.ly: use it.
5711
5712         * lily/open-type-font.cc (glyph_list): new function.
5713
5714         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5715
5716         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5717
5718 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5719
5720         * ly/music-functions-init.ly (parallelMusic): new music function
5721         for parallel music entry.
5722
5723         * scm/define-music-properties.scm (all-music-properties): new
5724         'void music property
5725
5726         * scm/music-functions.scm (ly:music-message): make public, to be
5727         used in music function definitions
5728
5729         * scm/lily-library.scm (collect-music-for-book): discard music
5730         when the 'void property is set.
5731
5732 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5733
5734         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5735
5736         * mf/GNUmakefile: idem.
5737
5738         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5739
5740         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5741
5742         * Documentation/user/notation-appendices.itely (The Feta font):
5743         use it.
5744
5745         * input/test/font-table.ly: new file. Generate font table within lily.
5746
5747         * Documentation/user/notation-appendices.itely (The Feta font):
5748         use new font-table.ly file. 
5749
5750         * stepmake/stepmake/install-out-targets.make
5751         (local-install-outfiles): only create directory if
5752         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5753
5754 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5755
5756         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5757
5758         * VERSION (PACKAGE_NAME): release 2.7.28
5759
5760         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5761         the right font from a Mac dfont.
5762         (write-preamble): don't forget directory, only look at files.
5763
5764         This fixes problems with TTF files in dfonts that don't match
5765         their PostScript names.
5766          
5767         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5768         PS name from TTF font.
5769
5770         * input/regression/tie-manual.ly: document new feature.
5771
5772         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5773
5774         * VERSION (MY_PATCH_LEVEL): bump to .28
5775
5776         * Documentation/user/basic-notation.itely (Ties): add tie examples
5777         refs.
5778
5779         * lily/tie-formatting-problem.cc (score_ties_configuration):
5780         symmetry penalties for outer ties.
5781
5782 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5783
5784         * lily/tie-formatting-problem.cc (generate_configuration) 
5785         (set_manual_tie_configuration): skip non-pair manual
5786         tie-configuration, so you can set individual ties as
5787
5788           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5789
5790         * input/regression/tie-chord.ly: use generateTiePattern to
5791         simplify file.
5792
5793         * lily/tie-formatting-problem.cc (peak_around): new function.
5794         (score_configuration): use sliding criterion for staff line collisions. 
5795         (score_configuration): idem for dot collisions.
5796         (generate_configuration): use separate stem_gap for gap to stem.
5797
5798         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5799         separate penalty factors for x and y distance.
5800         (struct Tie_details): separate penalties for tip and center line collisions.
5801
5802 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5803
5804         * lily/tie-formatting-problem.cc (generate_configuration): make
5805         large ties avoid stafflines in the horizontal section.
5806         (score_configuration): use softcoded penalties
5807         (score_aptitude): idem.
5808
5809         * lily/tie-helper.cc (from_grob): softcode tie details
5810
5811         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5812
5813         * lily/staff-symbol-referencer.cc (on_line): rename from
5814         on_staffline 
5815
5816 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5817
5818         * ly/music-functions-init.ly: remove duplicate tag.
5819
5820         * lily/include/*.hh: GCC 4.1 fixes.
5821
5822 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5823
5824         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5825
5826         * scm/define-music-types.scm: fix bug in desc. string
5827         for OverrideProperty
5828
5829 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5830
5831         * scripts/lilypond-book.py: bugfix
5832
5833         * scm/define-music-types.scm: fix typos.
5834
5835 2006-01-14  Graham Percival  <gpermus@gmail.com>
5836
5837         * Documentation/user/ basic-notation.itely, global.itely,
5838         advanced-notation.itely, instrument-notation.itely: small
5839         additions (bugs and commonly tweaked properties).
5840
5841 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5842
5843         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5844         detection of mingw build.
5845         (MINGW_BUILD): opps.
5846
5847 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5848
5849         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5850         i686-mingw32.
5851
5852 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5853
5854         * scm/music-functions.scm (skip->rest): add skip->rest
5855
5856 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5857
5858         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5859         explicitly.
5860
5861         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5862         config dirs. Aids debugging. 
5863         (display_config): also display config files.
5864
5865 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5866
5867         * VERSION: release 2.7.27
5868
5869         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5870         for determining bar size.
5871
5872         * lily/staff-symbol.cc (print): place lines at distance line-positions
5873
5874         * scm/define-grob-properties.scm (all-user-grob-properties): add
5875         line-positions.
5876
5877         * lily/staff-symbol.cc (height): new function.
5878
5879         * input/regression/staff-line-positions.ly:  new file.
5880
5881 2006-01-06  Graham Percival  <gpermus@gmail.com>
5882
5883         * input/test/add-staccato.ly: remove reference to old file.
5884
5885 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5886
5887         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5888         lilypond binary too.
5889
5890 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5891
5892         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5893
5894 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5895
5896         * scripts/midi2ly.py: Bugfix: Declare datadir.
5897
5898         * make/ly-rules.make:
5899         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5900         that seems to be gone). Fixes make web.
5901
5902         * The grand 2005-2006 replace.
5903
5904         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5905
5906 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5907
5908         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5909         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5910         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5911         like -dgs-font-load.
5912
5913         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5914         remove absolute path to lilypond binary.
5915         
5916 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5917
5918         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5919
5920 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5921
5922         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5923
5924         * mf/GNUmakefile: remove broken dvips map symlink.
5925
5926 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5927
5928         * lily/main.cc: 
5929         * configure.in: Cosmetic fixes.
5930
5931 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5932
5933         * Documentation/user/music-glossary.tely (Pitch names): Added
5934         Spanish pitch names and durations, thanks to Ernesto Gancedo
5935
5936 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5937
5938         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5939         init. Fixes verbose printing of .scm files.
5940
5941         * stepmake/aclocal.m4: add spaces before - options.
5942         
5943 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5944
5945         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5946         of path search in local block variable.
5947
5948 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5949
5950         * configure.in (NCSB_DIR): --enable-ncsb-dir
5951         (LINK_GXX_STATICALLY): denko.
5952
5953         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5954
5955         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5956         use locate to find c059033l.pfb. 
5957         
5958 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5959
5960         * lily/tie-formatting-problem.cc
5961         (problem::generate_base_chord_configuration): Use my_round (was
5962         round).
5963
5964         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5965         do not invoke mbrtowc.
5966
5967         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5968
5969 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5970
5971         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5972
5973 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5974
5975         * Documentation/user/invoking.itely (svg): revise.
5976
5977 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5978
5979         * lily/lexer.ll: use sourcefilename iso. renameinput.
5980
5981 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5982
5983         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5984         <PostScriptName>.ttf instead of c059XXXttf.
5985
5986         * lily/program-option.cc (LY_DEFINE): special support for
5987         --verbose, so it works before option init too.
5988  
5989         * mf/GNUmakefile (local-install): oops.
5990
5991         * lily/lyric-hyphen.cc (print): oops.
5992
5993         * buildscripts/pfx2ttf.fontforge: new file.
5994         
5995         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5996         ($(outdir)/%.ttf): new rule. 
5997
5998         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5999         to LyricHyphen.
6000
6001         * lily/lyric-hyphen.cc (print): multiply hyphen height by
6002         font-size
6003
6004 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6005
6006         * VERSION: release 2.7.26
6007         
6008         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6009
6010 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6011
6012         * lily/font-config.cc (init_fontconfig): verbosity.
6013
6014         * THANKS: add Muziekacademie Lede. 
6015
6016         * scripts/musicxml2ly.py (print_voice_definitions): new function 
6017         (print_score_setup): new function
6018         (convert): read part definition to output staves properly.
6019
6020         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6021         Music_xml notes.
6022
6023         * python/musicexp.py (Output_printer.__init__): use _ in data
6024         members.
6025         (Output_printer.unformatted_output): new function: no formatting,
6026         but count braces.
6027         (Duration.get_length): remove isinstance() checks for
6028         Output_printer everywhere.
6029
6030         * input/regression/lyrics-bar.ly (texidoc): add
6031         Separating_line_group_engraver.
6032
6033 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
6034
6035         * lily/relocate.cc (framework_relocation): New function,
6036         factored from set_relocation ().
6037         (prefix_relocation): Rename from set_relocation ().
6038         (setup_paths): Use it.
6039
6040 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6041
6042         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6043         numbers. Patch by Erlend Aasland.
6044
6045 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6046
6047         * lily/font-config.cc (init_fontconfig): print warning if cache
6048         file is not existant.
6049
6050         * lily/main.cc: don't use #ifdef but #if
6051
6052 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6053
6054         * lily/grob-property.cc (internal_set_property): don't abort on
6055         calculation-in-progress.
6056
6057         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6058
6059         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6060         connect-to-neighbor property not connect-to-other
6061
6062         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6063         (LY_DEFINE): oops. don't forget protection.
6064
6065         * flower/parse-afm.cc (Module): strip AFM handling completely.
6066
6067         * lily/stencil-expression.cc: idem.
6068
6069         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6070
6071         * lily/function-documentation.cc (ly_add_function_documentation):
6072         use static member iso. Protected_scm
6073
6074         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6075
6076         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6077
6078 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6079
6080         * lily/relocate.cc (set_env_dir): New function.
6081         (set_relocation): Use it to fix setting PANGO_PREFIX.
6082
6083 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6084
6085         * input/regression/stem-direction-context.ly: remove rest.
6086
6087         * lily/melody-engraver.cc (process_music): restart for bar lines.
6088         (acknowledge_slur): restart for slurs.
6089
6090 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
6091
6092         * Documentation/user/invoking.itely: describe how to view SVG 
6093         output using Inkscape which replace embedded fonts with OTF fonts.
6094
6095 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6096
6097         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6098
6099 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6100
6101         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6102         comment.
6103
6104 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6105
6106         * VERSION (PACKAGE_NAME): release 2.7.25
6107
6108         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6109
6110         * input/regression/stem-direction-context.ly: new file.
6111
6112         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6113
6114         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6115         on rest.
6116
6117         * ly/engraver-init.ly: add Melody_engraver
6118
6119         * lily/beam.cc (calc_direction): use default-direction
6120         iso. get_default_direction()
6121
6122         * scm/define-grob-properties.scm (all-user-grob-properties): add
6123         default-direction property.
6124
6125         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6126
6127         * lily/stem.cc (calc_default_direction): remove
6128         Stem::get_default_direction, use default-direction with callback
6129         instead.
6130
6131         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
6132
6133         * lily/melody-engraver.cc: new file. Acknowledge stems for
6134         interpolated stem directions. 
6135
6136         * lily/melody-spanner.cc: new file. Interpolate stem directions.
6137
6138         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6139
6140         * lily/slur-configuration.cc (fit_factor): more robust check for
6141         point in curve X-extent.
6142
6143         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6144         (outside_slur_callback): check for 'outside avoidance.
6145
6146         * lily/slur-configuration.cc (score_extra_encompass): don't use
6147         bound->column() == avoid->column() for checking extents, as this
6148         doesn't work for accidentals. 
6149
6150         * lily/slur-engraver.cc (acknowledge_extra_object): remove
6151         DynamicText hardcoding.
6152
6153         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6154         crash if bound stem is NULL
6155
6156         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6157         pedals.
6158
6159 2005-12-22  Graham Percival  <gpermus@gmail.com>
6160
6161         * scm/define-markup-commands.scm: typo.  @code{\raise}
6162         => @code{\\raise}.
6163
6164         * darwin.patch: now used again, includes a
6165         required patch from fink.
6166
6167 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
6168
6169         * po/TODO: mention gtranslator along with kbabel.
6170         * po/fi.po: update translations.
6171
6172 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6173
6174         * lily/relocate.cc (setup_paths): Bugfix.
6175
6176 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6177
6178         * lily/slur-configuration.cc (score_extra_encompass): don't use
6179         "avoid" choice for avoid-slur.
6180
6181         * stepmake/bin/install.py (dest): don't create existing dir.
6182
6183 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6184
6185         * stepmake/bin/install.py: Remove file before copying.
6186
6187         * config.make.in: 
6188         * stepmake/aclocal.m4: Do not substitute INSTALL.
6189
6190 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6191
6192         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6193         depend on link-tree.
6194
6195         * lily/relocate.cc (setup_paths): only check path for non-absolute
6196         dir without directory part.
6197
6198         * flower/file-name.cc (is_absolute):  new method.
6199         (is_absolute): check root_ too.
6200
6201 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6202
6203         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6204         relocation code.  Oops, don't comment out too much.
6205
6206         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6207         iso itself.
6208
6209         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
6210         compile.
6211
6212 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6213
6214         * .cvsignore: Add install-sh.
6215
6216         * autogen.sh (srcdir): Typo.
6217
6218 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6219
6220         * autogen.sh (srcdir): urg. Touch install-sh.
6221
6222         * stepmake/bin/install-sh (Module): remove.
6223
6224         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6225
6226         * lily/include/relocate.hh: new file.
6227
6228         * lily/relocate.cc: new file. Contain relocation logic.
6229
6230         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6231         (main): read LILYPOND_VERBOSE as the first thing.
6232
6233         * stepmake/aclocal.m4: remove INSTALL variable.
6234
6235         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6236         separate target for making font symlinks.
6237         (documentation-dir): use $(if $(findstring )) for switching off
6238         Documentation.
6239
6240         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6241         something if DOCUMENTATION is no.
6242
6243 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6244
6245         * VERSION: release 2.7.24
6246
6247         * lily/script-column-engraver.cc (stop_translation_timestep):
6248         delay adding to script-column.
6249
6250         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
6251
6252         * python/convertrules.py (conv): rule for number-visibility
6253
6254         * lily/slur-configuration.cc (score_extra_encompass): different
6255         distance measure for avoid and inside avoidance.
6256         (score_extra_encompass): use 1/(distance+eps) as penalty.
6257
6258         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6259         encompass objects for generating slur curves.
6260
6261         * lily/slur.cc: use details iso. slur-details property.
6262
6263         * input/regression/slur-tuplet.ly: new file.
6264
6265         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
6266
6267         * flower/include/offset.hh (class Offset): new operator /=
6268
6269         * lily/tuplet-number.cc (print): new file, new interface.
6270
6271         * scm/define-grob-properties.scm (all-user-grob-properties):
6272         remove number-visibility property.
6273
6274         * lily/tuplet-bracket.cc (calc_control_points): new function
6275         (calc_connect_to_neighbors): new function.
6276         (print): remove text handling for tuplet numberdef.
6277
6278         * lily/tuplet-engraver.cc (struct Tuplet_description): create
6279         TupletNumbers too. 
6280
6281         * lily/lily-guile.cc (robust_scm2booldrul): new function
6282
6283         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6284
6285         * lily/tuplet-bracket.cc (calc_position_and_height): use
6286         staff-padding to control whether tuplet brackets are over staves.
6287
6288         * lily/grob.cc (suicide): clear dim_caches_.
6289
6290         * lily/dimension-cache.cc (clear): new function.
6291
6292         * lily/grob.cc (extent): swap order of min-extent and extent
6293         calculations. This fixes hara kiri staves. 
6294
6295 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6296
6297         * lily/main.cc: Nitpick: relocation is not based on path, but on
6298         directory (location).
6299
6300 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6301
6302         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6303
6304         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6305
6306         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6307
6308         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6309
6310         * stepmake/stepmake/generic-vars.make (Module): idem.
6311
6312         * stepmake/stepmake/executable-targets.make (default): use it.
6313
6314         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6315
6316         * make/GNUmakefile: don't install make rules.
6317
6318         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6319         slashes.
6320         (prepend_env_path): more verbosity.
6321
6322 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6323
6324         * GNUmakefile.in: add dir argument for find command.
6325
6326         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6327         fixes weird line numbers for point & click.
6328
6329         * lily/source-file.cc (get_counts): init line/column/char counts.
6330
6331 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6332
6333         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6334
6335 2005-12-16  Graham Percival  <gpermus@gmail.com>
6336
6337         * Documentation/user/basic-notation.itely, advanced-notation.itely:
6338         minor fixes from Fredric.  Thanks!
6339
6340 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6341
6342         * ly/music-functions-init.ly: add \bar and \clef music function 
6343
6344         * lily/lily-lexer.cc: idem.
6345
6346         * lily/parser.yy (FIXME): remove BAR and CLEF.
6347
6348 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6349
6350         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6351
6352         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6353         function arguments too
6354
6355         * lily/main.cc (set_relocation): new function.
6356
6357         * scripts/musicxml2ly.py (convert): add \version
6358
6359         * lily/tie.cc: remove get_default_attachments()
6360
6361         * VERSION (PACKAGE_NAME): release 2.7.23
6362         
6363         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6364         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6365
6366         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6367
6368         * lily/tie-formatting-problem.cc (score_ties): new function
6369         (get_variations): new function. Try flipping dirs for collisions.
6370         (generate_optimal_chord_configuration): new function. 1-opt search
6371         for better configuration.
6372
6373         * lily/tie-configuration.cc: new file.
6374
6375         * lily/tie.cc: junk Tie::get_configuration()
6376
6377         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6378         (score_ties_configuration): new function.
6379         (generate_ties_configuration): new function.
6380         (generate_base_chord_configuration): new function.
6381         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
6382         (set_manual_tie_configuration): Move body from tie-column-format.cc 
6383
6384         * input/regression/tie-dot.ly: new file.
6385
6386         * lily/tie-formatting-problem.cc (score_configuration): score
6387         tie/dot collisions.
6388
6389         * lily/tie-helper.cc (get_transformed_bezier): new function
6390
6391         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6392
6393         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6394         -undefined suppress iso. -framework Python 
6395
6396         * scm/define-grobs.scm (all-grob-descriptions): set
6397         springs-and-rods (thanks Joe Neeman!)
6398
6399 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6400
6401         * input/no-notation/display-lily-tests.ly (test): 
6402         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6403         changed from \tag #'(a b) to \tag #'a \tag #'b
6404
6405 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6406
6407         * Documentation/topdocs/NEWS.tely: strip out-www.
6408
6409         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6410
6411         * config.make.in (AR): add AR and RANLIB
6412
6413         * flower/libc-extension.cc: include cassert
6414
6415         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6416         darwin check.
6417
6418 2005-12-11  Graham Percival  <gpermus@gmail.com>
6419
6420         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6421
6422         * stepmake/stepmake/python-modules-vars.make: define
6423         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
6424
6425         * THANKS: added Johannes Schindelin.
6426
6427 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6428
6429         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6430
6431         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6432         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
6433
6434         * lily/parser.yy: reorganize file layout.
6435
6436         * ly/music-functions-init.ly: add tweak music function.
6437
6438         * lily/grob-info.cc (ultimate_music_cause): new function:
6439         recursively lookup causes. 
6440
6441         * lily/parser.yy (chord_body_element): allow music functions for
6442         post-events, allow music functions for chord elements. 
6443  
6444         * lily/font-config-scheme.cc (display_fontset): add cast.
6445
6446         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6447         #'(a b) -> \tag #'a \tag #'b rule.
6448
6449         * python/musicexp.py (Output_printer.dump_version): new function
6450
6451 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6452
6453         * lily/parser.yy (FIXME): remove \tag
6454         (FIXME): remove tag_music() function.
6455
6456         * lily/lily-lexer.cc: remove \tag
6457
6458         * ly/music-functions-init.ly: define music-function "tag"
6459
6460         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6461
6462 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6463
6464         * VERSION (PATCH_LEVEL): release 2.7.22
6465
6466         * input/regression/lyric-hyphen-retain.ly: renew.
6467
6468         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6469         grob
6470
6471         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6472         iso. minimum-length property for rods.
6473
6474         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6475         LyricSpace item to keep lyrics spaced apart.
6476
6477         * ly/engraver-init.ly: remove Separating_line_group_engraver
6478
6479         * Documentation/user/music-glossary.tely: do setfilename before
6480         music-glossary.
6481
6482 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6483
6484         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6485         See xref documentation, for example.
6486
6487 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6488
6489         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6490         pending_skip iso. ly_voice[-1]
6491         (main): add if __main__ for debugging.
6492
6493         * python/musicxml.py (Accidental.__init__): new class.
6494
6495         * scripts/musicxml2ly.py (progress): new function
6496         (musicxml_key_to_lily): don't barf on modeless keys.
6497         (create_skip_music): new function.
6498         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6499         (musicxml_note_to_lily_main_event): new function.
6500
6501         * python/musicexp.py (Music.__init__): add comment field.
6502         (NestedMusic.append): new routine.
6503         (SequentialMusic.print_ly): print comment.
6504         (ArpeggioEvent.ly_expression): new class
6505         (BeamEvent.ly_expression): new class
6506         (NoteEvent.__init__): support for cautionary/forced accs.
6507
6508         * lily/lookup.cc (slur): normal order for array loop.
6509
6510         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6511         to 0.0.
6512
6513         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6514         collapsed.
6515
6516 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6517
6518         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6519
6520         * scripts/lilypond-book.py: Introduce option
6521             --preserve-line-breaks, for usage with srcltx
6522
6523 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6524
6525         * scm/output-lib.scm (print-circled-text-callback): draw circle
6526         around text using make-circle-markup.
6527
6528         * Documentation/user/*: strip out-www from file names.
6529
6530 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6531
6532         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6533         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6534
6535 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6536
6537         * Documentation/user/GNUmakefile: idem.
6538
6539         * Documentation/user/macros.itexi: strip out-www
6540
6541         * python/rational.py: python 2.3 compat.
6542
6543         * VERSION (PATCH_LEVEL): release 2.7.21
6544
6545         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6546         option formatting, lilypond style.
6547
6548         * python/musicexp.py: grab from Ikebana: a library for composing
6549         ly music expressions. 
6550         (Output_printer): class for advanced .ly printing.
6551         (eg. tupletting) 
6552
6553         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6554         convert to pythonesque structure.
6555
6556         * python/rational.py: PD rational number class.
6557
6558         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6559
6560 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6561
6562         * lily/part-combine-iterator.cc: Minor bugfix
6563         
6564         * THANKS: Update bughunters
6565
6566 2005-12-02  Werner Lemberg  <wl@gnu.org>
6567
6568         * mf/README: Document process for proper mf2pt1 conversion.
6569
6570         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6571         overlapping.
6572
6573         * mf/feta-harmonica.mf: Removed.  Unused.
6574
6575 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6576
6577         * scripts/lilypond-book.py (do_file): fix thinkos.
6578
6579 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6580
6581         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6582         ($(outdir)/parser.cc): 
6583         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6584
6585 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6586
6587         * ly/titling-init.ly (tagline): it should be a space between
6588         "Music engraving by LilyPond" and the version number.
6589
6590 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6591
6592         * VERSION (PACKAGE_NAME): release 2.7.20
6593
6594 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6595
6596         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6597
6598         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6599         1.0.
6600         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6601
6602 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6603
6604         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6605
6606         * kpath-guile/: remove directory
6607
6608         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6609         file. Encapsulate kpathsea using commandline tools.
6610
6611         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6612         kpathsea) module.
6613
6614 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6615
6616         * Documentation/user/advanced-notation.itely (Setting automatic
6617         beam behavior): Correct a few typos. Thanks to David Bobroff.
6618
6619         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6620         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6621
6622 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6623
6624         * scripts/*.py: gmane address for bugs.
6625
6626 2005-11-28 Pal Benko <benkop@freestart.hu>
6627         
6628         * make/ly-rules.make: add -f switch to mv
6629
6630         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6631
6632         * lily/bar-line.cc: interpret it
6633
6634 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6635
6636         * configure.in (--disable-documentation): New switch.
6637
6638         * GNUmakefile.in: Use it.
6639
6640         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6641
6642 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6643
6644         * scripts/lilypond-book.py (do_file): search chunks for
6645         \\begin{document}
6646
6647         * GNUmakefile.in: add copy step in between so we can lose the
6648         out-www directories.
6649
6650 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6651
6652         * lily/pango-font.cc (pango_item_string_stencil): put
6653         geometry.width into glyph-string too.
6654
6655 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6656
6657         * scm/define-music-display-methods.scm (RevertProperty):
6658         (OverrideProperty): Use grob-property-path property, a list of
6659         symbols, instead of grob-property, which used to be a single
6660         symbol.
6661         (BassFigureEvent): a figure can be a plain number, not necessarily a
6662         markup.
6663
6664 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6665
6666         * VERSION: release 2.7.19
6667         
6668         * lily/figured-bass-engraver.cc (process_music): check
6669         figuredBassCenterContinuations first.
6670
6671         * scm/translation-functions.scm (format-bass-figure): make double
6672         sharp larger. 
6673
6674         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6675         determine X-parent.
6676
6677         * lily/system-start-delimiter-engraver.cc: move from
6678         Nested_system_start_delimiter_engraver, rename
6679         Nested_system_start_delimiter_engraver ->
6680         System_start_delimiter_engraver.
6681
6682         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6683         bracket type from hierarchy.
6684
6685 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6686
6687         * lily/rest.cc (y_offset_callback): read staff-position.
6688
6689         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6690         mark after-line-breaking-callback as internal.
6691
6692         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6693
6694 2005-11-25  Werner Lemberg  <wl@gnu.org>
6695
6696         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6697
6698 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6699
6700         * stepmake/bin/add-html-footer.py (do_file): add google
6701
6702         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6703         staff if first_start_ is true.
6704
6705 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6706
6707         * scripts/midi2ly.py (split_track): add __repr__ members.
6708         (track_first_item): only return Item if not None. This fixes a
6709         problem when dumping a track that starts with an empty channel.
6710
6711         * python/midi.c: doc module.
6712
6713 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6714
6715         * Documentation/user/global.itely (Creating MIDI files): Fix
6716         compilation problem.
6717
6718 2005-11-22  Graham Percival  <gpermus@gmail.com>
6719
6720         * Documentation/user/basic-notation.itely: clarify dynamic
6721         padding text.
6722
6723         * Documentation/user/advanced-notation.itely: add unicode
6724         escape control example, whatever that is.  :)
6725
6726         * Documentation/user/global.itely: added "removing dynamics
6727         from MIDI" code.
6728
6729 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6730
6731         * VERSION (PATCH_LEVEL): release 2.7.18
6732
6733         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6734         System_start_delimiter_engraver by
6735         Nested_system_start_delimiter_engraver.
6736
6737         * lily/nested-system-start-delimiter-engraver.cc (struct
6738         Bracket_nesting_node): new class.
6739         (struct Bracket_nesting_group): new class
6740         (struct Bracket_nesting_staff): new class.
6741         (process_music): create hierarchy of grobs. This allows separate
6742         tuning of different SSDs. 
6743
6744         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6745         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6746
6747 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6748
6749         * lily/side-position-interface.cc (aligned_side): multiply
6750         staff_radius by 2.
6751
6752         * lily/script-engraver.cc (make_script_from_event): allow setting
6753         values to '()
6754
6755 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6756
6757         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6758
6759         * scm/define-grobs.scm (all-grob-descriptions): new grob
6760         NestedSystemStartDelimiter.
6761
6762         * input/regression/system-start-heavy-bar.ly: new file.
6763
6764         * lily/nested-system-start-delimiter-engraver.cc: new file.
6765
6766         * lily/nested-system-start-delimiter.cc: new file.
6767
6768         * input/regression/system-start-nesting.ly: new file.
6769
6770         * scm/define-grobs.scm (all-grob-descriptions): use X side
6771         positioning for positioning braces for nested contexts.
6772
6773         * lily/system-start-delimiter.cc (print): don't divide extent by
6774         staff_space.
6775         (print): use style iso. glyph.
6776         (staff_bracket): translate glyph inside routine already.
6777
6778 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6779
6780         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6781         names.
6782
6783 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6784
6785         * scm/define-context-properties.scm
6786         (all-user-translation-properties): rename figuredBassFormatter
6787         from newFiguredBassFormatter.
6788
6789         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6790
6791         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6792
6793         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6794
6795         * lily/beam.cc (calc_beaming): new function.
6796         (calc_shorten): new function.
6797
6798         * THANKS: add Edward Neeman.
6799
6800         * input/regression/accidental-clef-change.ly: new file.
6801
6802         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6803
6804         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6805
6806         * lily/clef-engraver.cc (inspect_clef_properties): reset
6807         localKeySignature for clef changes.
6808
6809 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6810
6811         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6812         add dummy definition that works in Linux and add information in
6813         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6814
6815         * Documentation/user/changing-defaults.itely (Modifying context
6816         plug-ins): Add index for \with.
6817
6818         * Documentation/user/music-glossary.tely (dal segno): Updated
6819         example to version >=2.6.
6820
6821 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6822
6823         * Documentation/user/instrument-notation.itely (Printing chord
6824         names): Reorder \chordmode and \repeat in one example.
6825
6826 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6827
6828         * VERSION: release 2.7.17
6829         
6830         * Documentation/topdocs/NEWS.tely (Top): add note about
6831         refactoring.
6832
6833         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6834         new function. Search region of 3 positions for best tie.
6835         (score_configuration): new function.
6836         (score_aptitude): new function.
6837         (generate_configuration): new function.
6838         (get_configuration): new function.
6839         (Tie_formatting_problem): new function
6840
6841         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6842
6843         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6844
6845         * THANKS: add Eduardo Vieira & Ralph Little
6846
6847         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6848         narrower.
6849
6850         * lily/include/tie-formatting-problem.hh (class
6851         Tie_formatting_problem): add Tie_details to
6852         Tie_formatting_problem. Update calling conventions.
6853
6854         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6855         config.make.
6856
6857         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6858
6859 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6860
6861         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6862         scm/define-context-properties.scm: Maintenance bugfix: make
6863         ligature brackets work again by removing obsolete ligature
6864         primitive callback push/pop.
6865
6866         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6867         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6868         value.
6869
6870 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6871
6872         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6873         used and do not call it a path.
6874         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6875
6876 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6877
6878         * lily/include/tie-formatting-problem.hh (class
6879         Tie_formatting_problem): new file.
6880
6881         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6882
6883         * Documentation/misc/ChangeLog-2.3:  new file.
6884
6885         * lily/audio-staff.cc (output): degarianize.
6886
6887 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6888
6889         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6890         Unset PYTHONOPTIMIZE.  Fixes install if set.
6891
6892 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6893
6894         * python/convertrules.py (conv): add warning about drums. 
6895
6896         * make/stepmake.make: include toplevel-version.make after config.make.
6897
6898         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6899         also allow python2.4
6900
6901         * config.make.in (configure-srcdir): remove GXX GCC vars.
6902
6903         * stepmake/aclocal.m4: don't do non-srcdir build with
6904         symlinks. Use inclusion, so the src directory name can be changed.
6905
6906 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6907
6908         * make/mutopia-vars.make:
6909         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6910         files.
6911
6912 2005-11-13  Werner Lemberg  <wl@gnu.org>
6913
6914         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6915         but the affected path.  This ensures that the (overlapping) outlines
6916         have the same direction, which is a necessary prerequisite for
6917         FontForge's algorithm to remove overlaps.
6918         Formatting.
6919
6920         * mf/feta-haak.mf: Formatting.
6921         (draw_bracket): Slightly modify outline to avoid an unnecessary
6922         corner.
6923         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6924         them from the affected paths.
6925
6926 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6927
6928         * mf/README: remove xpm / accordion notes.
6929
6930         * lily/tie-column-format.cc (set_chord_outline): add dots into
6931         skyline extents. This fixes tie formatting if the left head has dots.
6932
6933         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6934         space inside the staff.
6935         (get_configuration): shift another position if necessary in case
6936         of left head tie  
6937
6938 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6939
6940         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6941         buildscript-dir iso. $(depth)/buildscripts.
6942
6943         * tex/GNUmakefile (local-uninstall): remove
6944         music-drawing-routines.ps juggling.
6945
6946         * stepmake/stepmake/install-targets.make (local-install-files):
6947         prepend src-dir to install targets.
6948
6949         * lily/system-start-delimiter-engraver.cc
6950         (acknowledge_system_start_delimiter): use
6951         add_offset_callback(). This fixes translation of nested
6952         staffgroups.
6953
6954         * lily/grob-closure.cc (add_offset_callback): only encaps in
6955         simple_closure if it's a procedure.
6956         
6957         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6958         from bar-line.
6959
6960         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6961         remove-empty where pertinent.
6962
6963 2005-11-12  Graham Percival  <gpermus@gmail.com>
6964
6965         * Documentation/user/instrument-notation.itely: added
6966         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6967
6968 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6969
6970         * lily/GNUmakefile
6971         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6972         make picture in builddir, not srcdir.
6973
6974 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6975
6976         * VERSION: release 2.7.16
6977         
6978         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6979         shell arguments. 
6980
6981 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6982
6983         * Documentation/user/examples.itely (Piano templates): Minor
6984         modification to the Piano centered lyrics example.
6985
6986 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6987
6988         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6989         $BROWSER.
6990
6991         * Documentation/user/point-and-click.itely: simplify p&c
6992         instruction: don't configure firefox. Put lilypond-invoke-editor
6993         in front of the browser.
6994
6995         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6996         (run-browser): new function.
6997
6998         * lily/parser.yy (Lily_lexer): recognize Book
6999
7000         * lily/book.cc (clone): new function
7001
7002         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7003
7004 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
7005
7006         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7007         Maintenance bugfix: reduce number of font related warnings by
7008         updating naming conventions for glyph-name.
7009
7010 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7011
7012         * scm/define-grobs.scm (all-grob-descriptions): add
7013         rhythmic-grob-interface to TabNoteHead.
7014
7015         * scm/layout-beam.scm (check-quant-callbacks): remove
7016         set_stem_lengths()
7017
7018 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
7019
7020         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7021         alignment of centered divisiones.
7022
7023         * scm/scripts.scm (articulations): Maintenance bugfix:
7024         follow-into-staff -> quantize-position.
7025
7026         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7027         plica head in porrectus deminutus.
7028
7029 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7030
7031         * make/lilypond.fedora.spec.in (Group): add %clean section.
7032
7033         * lily/tuplet-bracket.cc (print): change check: remove bracket if
7034         less then 1/5th of total length.  
7035         (print): use gap too.  Fixes tupletUp-single-bracket.ly
7036
7037         * scm/music-functions.scm (glue-mm-rest-texts): also put other
7038         events into EventChord. This fixes textspanners on mm rests. Fixes
7039         spanner-rest.ly
7040
7041         * lily/side-position-interface.cc (get_axis): read side-axis
7042         (set_axis): set side-axis.
7043
7044         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7045         properties everywhere.
7046
7047         * lily/spacing-spanner.cc (breakable_column_spacing): add
7048         average-spacing-wishes. Take maximum if not set.
7049         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7050
7051         * scm/define-grobs.scm (all-grob-descriptions): add
7052         average-spacing-wishes.
7053
7054         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7055         offset callbacks. This fixes alignment for Fingering objects.
7056
7057         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7058         space for key - timesig combination. 
7059
7060         * input/regression/script-stem-tremolo.ly (Module): new file.
7061
7062         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7063         to key sig.
7064
7065         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7066         Fixes: c-tremolo-script.ly.
7067         
7068         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7069
7070         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7071         
7072         * scm/define-grobs.scm (all-grob-descriptions): remove
7073         self-X-offset. Fixes alignment of octavate-8.
7074
7075         * scripts/lilypond-book.py (datadir): look in
7076         LILYPONDPREFIX/share/lilypond/current/
7077
7078         * GNUmakefile.in: symlink current to <VERSION>. 
7079
7080 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
7081
7082         * lily/main.cc: eps listed as a backend.
7083
7084 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7085
7086         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7087
7088 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7089
7090         * lily/include/score.hh (class Score): remove texts_ member.
7091
7092         * lily/beam.cc (set_stem_lengths): force direction callback.
7093         (print): read quantized-positions, so we can force
7094         Beam::set_stem_lengths to occur.
7095         (rest_collision_callback): use common X parent. 
7096
7097 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7098
7099         * flower/file-path.cc (find): Bugfix: Return name of file found.
7100
7101         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7102         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7103         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7104
7105 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7106
7107         * flower/offset.cc: idem.
7108
7109         * mf/*.mf: update email address.
7110
7111         * lily/font-config-scheme.cc:  new file.
7112
7113         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7114
7115         * lily/*:  cs.uu.nl -> xs4all.nl
7116
7117         * VERSION (PATCH_LEVEL): release 2.7.15
7118
7119         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7120         spec files.
7121
7122         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7123
7124 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7125
7126         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
7127
7128         * lily/staff-performer.cc (process_music): add audio
7129         elements. This makes MIDI instrument changes work once again.
7130
7131         * lily/main.cc (LY_DEFINE): add gmane address.
7132
7133         * lily/beam.cc: remove calc_positions()
7134
7135         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7136         original_ in private scope.
7137         (class Grob): drop pscore_ pointer, change to output_def pointer.
7138         (class Grob): cleanup class definition.
7139
7140         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7141
7142 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7143
7144         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7145         absolute.  Better diagnostics.
7146
7147         * GNUmakefile.in: Add bin/ to tree and populate with some links.
7148         This makes lilypond run from the build directory using argv0
7149         relocation (without any --prefix or LILYPONDPREFIX setting).
7150
7151 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7152
7153         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7154
7155         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7156         with simple-closure.
7157
7158         * lily/self-aligment-interface.cc (set_align_self): new function
7159         (set_center_parent): new function.
7160
7161         * lily/side-position-interface.cc (set_axis): new function.
7162
7163         * lily/new-fingering-engraver.cc (position_scripts): use drul for
7164         generic code. 
7165
7166         * scm/define-grob-properties.scm (all-user-grob-properties):
7167         remove [XY]-offset-callbacks add [YX]-offset
7168         
7169 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
7170
7171         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7172         entry for time signatures after breathing signs. Bug report by
7173         Scott Russell.
7174
7175 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7176
7177         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7178         not absolute, make it absolute using PATH.
7179
7180 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7181
7182         * python/midi.c (initmidi): Fix type for mingw.
7183
7184 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
7185
7186         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7187
7188         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7189         cross compiling.
7190
7191         * stepmake/aclocal.m4: Support python cross compiling.
7192
7193         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7194         Add mingw section.
7195
7196 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7197
7198         * scm/output-lib.scm (chain-grob-member-functions): replace
7199         chained-callback.cc
7200
7201         * lily/chained-callback.cc (Module): remove file.
7202
7203         * lily/rest-collision.cc (force_shift_callback_rest): change to
7204         chained callback.
7205
7206         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
7207
7208         * lily/grob.cc (y_parent_positioning): remove axis argument from
7209         parent_positioning callbacks.
7210         (Grob): junk init code
7211         (get_offset): use generic property callbacks for
7212         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7213         (axis_parent_positioning): new function
7214         (axis_offset_symbol): new function
7215         (chain_offset_callback): new function
7216         (add_offset_callback): new function
7217
7218         * lily/beam.cc (rest_collision_callback): change signature; this
7219         is now a chained callback.
7220
7221         * lily/include/dimension-cache.hh (class Dimension_cache): remove
7222         callback administration.
7223
7224         * lily/simple-closure.cc: new file. Smob type that allows "grob
7225         member functions",
7226
7227             (ly:make-simple-closure FUNC A B)
7228
7229         is evaluated as (FUNC grob A B). This allows chaining of callbacks
7230         in various ways.
7231
7232         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7233         callbacks.
7234
7235         * lily/slur.cc (outside_slur_callback): take 2 arguments.
7236
7237         * lily/rest.cc (polyphonic_offset_callback): remove.
7238
7239         * lily/script-engraver.cc (try_music): remove bool* argument.
7240
7241         * scm/script.scm (default-script-alist): set quantize-position
7242         appropriately.
7243
7244         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
7245
7246         * lily/side-position-interface.cc (aligned_side): move staff
7247         position quantization from
7248         Side_position_interface::quantised_position().
7249         (quantised_position): remove
7250         
7251 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7252
7253         * input/regression/beam-quant-standard.ly: reindent, set
7254         debug-beam-quanting to #t.
7255
7256         * lily/beam-concave.cc (calc_concaveness): set concaveness to
7257         10000 if this is a "hard" concave beam.
7258
7259         * lily/beam.cc (calc_least_squares_positions): change from
7260         calc_least_squares_dy
7261         (set_stem_lengths): this is now a chained callback.
7262
7263         * lily/context-property.cc (execute_general_pushpop_property):
7264         bugfix override with procedure should have effect.
7265
7266         * scm/define-grob-properties.scm (all-internal-grob-properties):
7267         remove position-callbacks.
7268
7269         * scm/define-grobs.scm (all-grob-descriptions): use
7270         ly:make-callback-chain for positions property.
7271
7272         * scm/layout-beam.scm (check-quant-callbacks): return list of
7273         chained callbacks.
7274
7275         * scm/lily.scm (type-p-name-alist): add callback-chain
7276
7277         * lily/lily-guile.cc (type_check_assignment): type check failure
7278         is warning not message.
7279
7280         * lily/grob-property.cc (try_callback): walk callback chain if
7281         appropriate.
7282
7283         * lily/chained-callback.cc: new file. new smob type.
7284
7285         * lily/lily-guile.cc (procedure_arity): new function.
7286
7287 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7288
7289         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7290
7291 2005-10-25  John Mandereau  <john.mandereau@free.fr>
7292  
7293         * Documentation/user/instrument-notation.itely (Figured bass):
7294         describe new features
7295
7296 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7297
7298         * lily/beam.cc (calc_least_squares_dy): use property callback.
7299
7300         * lily/beam-concave.cc (calc_concaveness): use property callback.
7301
7302         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
7303
7304 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
7305
7306         * HACKING: Update.
7307
7308 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7309
7310         * scm/layout-page-layout.scm (page-headfoot): annotate
7311         pagetopspace too.
7312
7313         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
7314
7315         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7316         doesn't take y-space.
7317
7318         * scm/paper.scm (paper-alist): fix A7 dimensions. 
7319
7320 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
7321
7322         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7323         src-wildcard, remove $(wildcard).
7324
7325         * po/GNUmakefile (PO_FILES): 
7326         * ps/GNUmakefile (PS_FILES): 
7327         * tex/GNUmakefile (TEX_FILES): 
7328         * cygwin/GNUmakefile (POSTINSTALLS):
7329         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7330         some wildcard calls.
7331
7332 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7333
7334         * THANKS: add Thomas Bushnell.
7335
7336 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
7337
7338         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7339         (lilypond-main): Redirect to gui-main if 'gui is set.
7340
7341         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7342         for alternative installations kludging s/share/lib/g
7343         LILYPONDPREFIX. 
7344
7345         * SConstruct (libdir_package_version): Define.
7346
7347         * python/SConscript: 
7348         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7349         module in libdir.  
7350
7351 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7352
7353         * lily/main.cc: clarify --safe.
7354
7355 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7356
7357         * VERSION: release 2.7.14
7358         
7359         * Documentation/user/*.itely: remove minimumVerticalExtent.
7360
7361         * scm/define-grobs.scm (all-grob-descriptions): remove
7362         RemoveEmptyVerticalGroup
7363
7364         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7365
7366         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7367         compile on MOSX
7368
7369         * python/convertrules.py (conv): add rules.
7370
7371         * lily/grob.cc: remove is_empty()
7372
7373         * lily/grob-property.cc: remove add_to_list_property().
7374
7375         * scripts/convert-ly.py (datadir): add prefix switching hack to
7376         .py too.
7377
7378         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7379         space-function tweak.
7380
7381         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7382
7383         * scm/define-grob-properties.scm (all-user-grob-properties):
7384         remove callback property.
7385
7386         * lily/include/grob.hh (class Grob): remove property_callbacks_
7387         member. Properties of procedure type are assumed to be callbacks.
7388
7389         * lily/ligature-engraver.cc (override_stencil_callback):
7390         rewrite. Use noteHeadLigaturePrimitive as source.
7391
7392         * scm/define-grob-properties.scm (all-internal-grob-properties):
7393         remove ligature-primitive-callback
7394
7395         * lily/include/dimension-cache.hh (class Dimension_cache): make
7396         class, with Grob as friend.
7397
7398         * lily/grob.cc: remove set_extent_callback(), set_extent() and
7399         has_extent_callback()
7400
7401         * scm/translation-functions.scm (format-new-bass-figure): read
7402         figuredBassPlusDirection
7403
7404         * scm/define-context-properties.scm
7405         (all-user-translation-properties): add figuredBassPlusDirection.
7406
7407         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7408
7409         * lily/align-interface.cc (set_ordered): new function.
7410
7411         * lily/grob.cc (flush_extent_cache): rewrite.
7412
7413         * lily/dimension-cache.cc (Dimension_cache): cache extent as
7414         Interval pointer directly.
7415
7416         * lily/main.cc (setup_paths): insert extra / .
7417         (setup_paths): junk cff entry.
7418
7419         * lily/font-config.cc (init_fontconfig): only add type1 / otf
7420         directories.
7421
7422         * lily/axis-group-engraver.cc (finalize): remove
7423         extraVerticalExtent, minimumVerticalExtent verticalExtent.
7424
7425         * lily/grob.cc (Grob): don't set extent from ctor.
7426         (extent): use property callbacks. 
7427
7428         * lily/axis-group-interface.cc: remove set_axes() function.
7429
7430         * lily/grob-property.cc (del_property): new function.
7431
7432 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7433
7434         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7435         
7436 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7437
7438         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7439
7440 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7441
7442         * mf/SConscript: Updates.
7443
7444         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7445
7446         * stepmake/stepmake/*:
7447         * */GNUmakefile:
7448         * config.make.in:
7449         * GNUmakefile.in:
7450         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7451         from any directory in build-dir.  Cleanups.
7452
7453         * make/srcdir.make.in: Remove.
7454
7455         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7456
7457         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7458         main).
7459
7460         * lily/SConscript: Remove ttftools.
7461
7462         * SConstruct: Resurrect.
7463
7464 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7465
7466         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7467         Y coordinate. 
7468
7469         * lily/paper-book.cc (add_score_title): put Paper_score title into
7470         systems_ list.
7471
7472         * scm/translation-functions.scm (format-new-bass-figure): also
7473         allow plus in combination with _
7474
7475 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7476
7477         * VERSION: 2.7.13 released.
7478
7479         * lily/note-collision.cc (check_meshing_chords): don't wipe
7480         stencil, merely set transparent.
7481
7482         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7483         (Top): document #'callbacks.
7484         (Top): document nested \override.
7485
7486         * input/regression/figured-bass.ly: update for slash and pluses.
7487
7488         * input/regression/figured-bass-continuation-forbid.ly (Module):
7489         new file.
7490
7491         * scm/translation-functions.scm (format-new-bass-figure): use
7492         slashed-digit if diminished is set.
7493         (format-new-bass-figure): add + if 'augmented is set.
7494
7495         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7496
7497         * input/test/piano-staff-distance.ly: remove file.
7498
7499         * Documentation/user/advanced-notation.itely (Formatting cue
7500         notes): use length-fraction for making stems/beams smaller.
7501
7502         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7503         modifications.
7504
7505         * lily/new-figured-bass-engraver.cc: new property
7506         centerFiguredBassContinuations
7507
7508         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7509         use callbacks.
7510
7511         * lily/context-property.cc (execute_general_pushpop_property):
7512         robustness checks.
7513
7514         * input/regression/override-nest.ly: new file.
7515
7516         * python/convertrules.py (FatalConversionError.subber): conversion
7517         rule for #'callbacks
7518
7519         * input/regression/override-nest.ly: new function.
7520
7521         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7522         #c too. 
7523
7524         * lily/context-property.cc (lookup_nested_property): new function.
7525         (evict_from_alist): new function.
7526         (general_pushpop_property): new function.
7527         (execute_general_pushpop_property): rewrite. Support nested
7528         properties too.
7529
7530 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7531
7532         * lily/beam.cc: use length-fraction too.
7533
7534         * scm/define-grob-properties.scm (all-user-grob-properties):
7535         remove property flag-width-function
7536         (all-user-grob-properties): remove space-function.
7537
7538         * scm/layout-beam.scm: remove flag-width-function.
7539
7540         * lily/beam.cc: remove flag-width-function
7541
7542         * scm/layout-beam.scm: remove beam dir functions.
7543
7544         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7545
7546         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7547         for easier grace tweaks.
7548
7549         * lily/beam.cc: remove dir-function.
7550
7551         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7552
7553         * lily/grob.cc: remove spacing-procedure.
7554
7555         * lily/note-head.cc (calc_stem_attachment): new function.
7556         (internal_print): use callback to get glyph-name.
7557
7558         * lily/grob-property.cc (get_interfaces): new function.
7559
7560         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7561
7562         * lily/stem.cc (calc_stem_end_position): new function.
7563         (calc_length): new function.
7564         document details for stem.
7565         remove Stem::get_direction()
7566
7567         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7568
7569         * lily/grob-property.cc (set_callback): new function.
7570
7571         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7572
7573         * lily/item-scheme.cc: new file.
7574
7575         * lily/bar-line.cc (before_line_breaking): remove function.
7576         remove bar-size-procedure, break-glyph-function
7577
7578         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7579
7580         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7581
7582         * lily/system-start-delimiter.cc (print): suicide from
7583         here. Remove after_line_breaking_callback.
7584
7585         * lily/script-interface.cc (calc_direction): use callback for direction.
7586
7587         * lily/side-position-interface.cc (aligned_side): don't use
7588         Side_position_interface::get_direction directly. Use callback. 
7589
7590         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7591         calculate stencil.
7592         (get_print_stencil): rename from get_stencil: create stencil with
7593         transparency, color and cause. 
7594
7595         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7596
7597         * python/convertrules.py (conv): insert temporary warning rule.
7598
7599         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7600
7601         * lily/grob-property.cc (try_callback): remove marker if applicable.
7602
7603         * lily/grob.cc: elucidate doc about after/before-line-breaking
7604
7605         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7606
7607         * lily/stem.cc (height): idem.
7608
7609         * lily/stem-tremolo.cc: idem.
7610
7611         * lily/slur.cc (height): don't use get_uncached_stencil()
7612
7613         * lily/rest.cc (y_offset_callback): use offset callback
7614         iso. after-line-breaking callback.
7615
7616         * lily/grob.cc: change after/before-line-breaking-callback to
7617         after/before-line-breaking dummy properties.
7618
7619         * lily/include/grob.hh: remove Grob_status.
7620
7621         * scm/define-context-properties.scm
7622         (all-user-translation-properties): remove verticalAlignmentChildCallback
7623
7624         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7625         (calc_direction): use callback
7626         (calc_positions): use callback.
7627
7628         * lily/tie.cc (calc_direction): use callback. Only call parent
7629         positioning for more than one tie.
7630
7631         * lily/tie-column.cc (calc_positioning_done): use callback
7632
7633         * lily/slur-scoring.cc (calc_control_points): use callback
7634
7635         * lily/slur.cc (calc_direction): use callback.
7636
7637         * lily/note-collision.cc (force_shift_callback): remove.
7638
7639         * lily/dot-column.cc (force_shift_callback): remove. Use
7640         other_axis_parent_positioning.
7641
7642         * lily/grob.cc (other_axis_parent_positioning): new function.
7643         (same_axis_parent_positioning): new function
7644
7645         * lily/align-interface.cc (alignment_callback): remove function.
7646
7647         * lily/note-collision.cc (calc_positioning_done): use callback.
7648
7649         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7650         (calc_direction): idem.
7651         remove print function.
7652
7653         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7654
7655         * lily/dot-column.cc (calc_positioning_done): use callback.
7656
7657         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7658
7659         * lily/beam.cc (calc_direction): use pseudo-property for beam
7660         direction callback.
7661         (calc_positions): use callback 
7662
7663         * lily/align-interface.cc (calc_positioning_done): use
7664         callback. Fold fixed  distance and normal alignment in one function.
7665
7666         * lily/stem.cc (calc_stem_end_position): use callback.
7667         (calc_positioning_done): idem.
7668         (calc_direction): idem.
7669         (calc_stem_end_position): idem
7670         (calc_stem_info): idem.
7671
7672         * lily/grob-property.cc (get_property_data): new function: 
7673         (try_callback): new function.
7674
7675         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7676         callbacks property.
7677
7678         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7679
7680 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7681
7682         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7683         tie
7684         has no heads.
7685         
7686         * lily/include/*.hh (Module): compile fixes.
7687
7688 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7689
7690         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7691         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7692         instead of (char-syntax nil), thanks to Milan Zamazal.
7693
7694 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7695
7696         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7697         dist.
7698
7699         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7700         themselves.
7701
7702 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7703
7704         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7705         add class_name() method.
7706
7707         * lily/music-scheme.cc: remove ly:music-name.
7708
7709 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7710
7711         * cygwin/postinstall-lilypond.sh: Remove cruft.
7712
7713         * cygwin/postremove-lilypond.sh: Remove.
7714
7715         * cygwin/GNUmakefile (default): Remove postremove rules.
7716
7717 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7718
7719         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7720         even header too.
7721         
7722         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7723         MacOS 9 users.
7724
7725         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7726         consider break index for broken spanner.
7727
7728         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7729         characters from string before splitting.
7730
7731 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7732
7733         * scm/framework-ps.scm (output-preview-framework): use
7734         is-book-title to determine whether to chop off the booktitle.
7735
7736         * lily/paper-book.cc (systems): init from book-title-properties
7737         (add_score_title): init score-title-properties.
7738
7739         * ly/paper-defaults.ly: add {score,book}-title-properties.
7740
7741         * scm/document-backend.scm (lookup-interface): error message if
7742         using unknown interface.
7743
7744         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7745         edge-height.
7746
7747         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7748         make_bracket.
7749         (make_bracket): new function.
7750
7751         * scm/lily.scm (define-scheme-options): add paper-size option.
7752
7753         * ly/declarations-init.ly (laissezVibrer): get paper size from
7754         -dpaper-size
7755
7756         * scm/translation-functions.scm: use \fontsize for changing the
7757         fontsize.
7758
7759         * scm/define-grobs.scm (all-grob-descriptions): set
7760         between-length-limit to 1.0
7761
7762         * lily/tie-helper.cc: add between_length_limit_ detail property.
7763
7764         * mf/feta-bolletjes.mf: typos.
7765
7766         * lily/note-head.cc (internal_print): don't shadow idx
7767         parameter. This fixes wrong attachment for do shape heads.
7768
7769 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7770
7771         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7772
7773         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7774
7775         * scm/layout-slur.scm: rename from slur.scm
7776
7777         * scm/layout-page-layout.scm: rename from page-layout.scm
7778
7779         * scm/layout-beam.scm: rename from beam.scm
7780
7781         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7782         bass-figure-interface
7783
7784         * lily/new-figured-bass-engraver.cc (process_music): add
7785         implicitBassFigures property.
7786         
7787         * scm/define-markup-commands.scm (pad-x): new markup.
7788
7789         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7790         minimumVerticalExtent on FiguredBass context.
7791
7792         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7793         case the continuation crosses a line break.
7794
7795 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7796
7797         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7798         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7799         absolute file name bug.  
7800
7801 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7802
7803         * VERSION (PACKAGE_NAME): release 2.7.12
7804
7805         * input/regression/figured-bass-continuation-center.ly: new file.
7806
7807         * input/regression/beam-outside-beamlets.ly: new file.
7808
7809         * lily/beam.cc (set_beaming): don't clip edges.
7810         (connect_beams): don't clip edges.
7811
7812         * lily/beaming-info.cc (clip_edges): new function.
7813
7814         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7815
7816         * Documentation/user/instrument-notation.itely (Figured bass):
7817         demonstrate extenders, update seealso links.
7818
7819         * scm/titling.scm (marked-up-headfoot): change tagline
7820         handling. tagline = ##f will blank the tagline as well.
7821
7822 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7823
7824         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7825
7826         * lily/new-figured-bass-engraver.cc (struct
7827         New_figured_bass_engraver): add new_music_found_ member.
7828
7829         * lily/lilypond-version.cc (Lilypond_version): deal with
7830         incorrectly formatted version strings. 
7831
7832         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7833         New_figured_bass_engraver by default.
7834
7835         * lily/ttf.cc (print_trailer): only define glyph names when
7836         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7837
7838 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7839
7840         * lily/horizontal-bracket.cc (make_bracket): new function.
7841
7842         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7843         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7844         BassFigureLine, BassFigureAlignment
7845
7846         * lily/new-figured-bass-engraver.cc (process_music): new file.
7847
7848         * lily/figured-bass-continuation.cc: new file.
7849
7850         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7851         new file.
7852
7853 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7854
7855         * scripts/lilypond-book.py: Bug fix, put the quote around the
7856         actual score for LaTeX documents.
7857
7858         * scm/define-grobs.scm (all-grob-descriptions): Change
7859         collapse-height of the SystemStartBracket grob to 5.0, 
7860         so the bracket disappears for single stave score lines (similarly
7861         to SystemStartBraces). 
7862
7863         * Documentation/user/advanced-notation.itely (Polymetric
7864         notation): Clarify the use of compressMusic.
7865
7866         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7867         that the grace spacer note in other staves need the same duration
7868         and document the stroke-style property.
7869
7870 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7871
7872         * Documentation/user/global.itely (Vertical spacing): document
7873         alignment-extra-space and fixed-alignment-extra-space.
7874
7875         * Documentation/topdocs/NEWS.tely (Top): add entry.
7876
7877         * input/regression/alignment-vertical-spacing.ly: new file.
7878
7879         * python/convertrules.py (conv): add rule.
7880
7881         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7882
7883         * lily/align-interface.cc (stretch_after_break): new
7884         function. Read fixed-alignment-extra-space property.
7885         (align_elements_to_extents): read alignment-extra-space property.
7886
7887         * lily/lily-guile.cc (robust_scm2dir): new function.
7888
7889         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7890         (annotate-space-left): new function. Annotate space left on page. 
7891         (annotate-y-interval): new function.
7892         (paper-system-annotate-last): new function. Annotate bottom-space.
7893
7894         * mf/feta-beugel.mf (y): 
7895
7896 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7897
7898         * VERSION (PACKAGE_NAME):  release 2.7.11
7899
7900         * scm/lily-library.scm (interval-translate): new function
7901         (interval-center): new function. 
7902
7903         * scm/page-layout.scm (paper-system-annotate): new function. Add
7904         arrows for dimensions.
7905  
7906         * scm/stencil.scm (dimension-arrows): new function.
7907
7908         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7909
7910         * input/regression/page-spacing.ly: add annotatespacing
7911
7912         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7913         (LY_DEFINE): new function ly:paper-system-set-property!
7914
7915         * Documentation/user/global.itely (Paper size): explain how to add
7916         sizes.
7917
7918         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7919         correspond to GS's definition.
7920
7921         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7922         tuplet bracket.
7923         (print): only connect to next bracket if the next one is alive.
7924         (print): set padding to 0.0 if the bound is a breakable
7925         column. This makes tupletFullLength brackets reach up to the staff
7926         line if it doesn't connect to the next line.
7927
7928 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7929
7930         * lily/bar-number-engraver.cc: correct docs.
7931
7932         * scm/output-lib.scm (first-bar-number-invisible): rename from
7933         default-bar-number-visibility
7934
7935 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7936
7937         * scm/define-music-properties.scm (all-music-properties): remove
7938         predicate property.
7939
7940 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7941
7942         * po/fi.po: refresh.
7943
7944 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7945
7946         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7947         superfluous s1.
7948         (disappear): bugfix.
7949
7950         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7951
7952         * lily/include/paper-system.hh (class Paper_system): remove
7953         staff_extents_ member.
7954
7955         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7956
7957         * lily/include/paper-system.hh (class Paper_system): remove
7958         number_ variable. Remove is_title_. Remove break_before_penalty_
7959
7960         * lily/paper-book.cc (systems): use 'number property iso. number_
7961         member.
7962
7963         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7964         remove ly:paper-system-number.
7965
7966         * scm/lily-library.scm (paper-system-title?): new function.
7967
7968         * lily/book.cc (process): bugfix: flip ?: cases. 
7969
7970         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7971         add outputProperty.
7972
7973         * ly/music-functions-init.ly: add outputProperty music function.
7974
7975         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7976
7977         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7978         and next-padding.
7979         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7980
7981         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7982
7983         * lily/paper-system.cc (internal_get_property): new function.
7984
7985         * Documentation/user/global.itely (Vertical spacing): refer to
7986         page-spacing.ly
7987
7988         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7989         pagetopspace
7990
7991         * input/regression/page-spacing.ly: new file.
7992
7993         * input/regression/page-top-space.ly: new file.
7994
7995         * lily/spacing-spanner.cc: cmath -> math.h
7996
7997         * lily/paper-system.cc (read_left_bound): new function. Read
7998         line-break-system-details from left bound to determine extents.
7999  
8000         * Documentation/user/programming-interface.itely (Using LilyPond
8001         syntax inside Scheme): change applyxxx -> applyXxx.
8002
8003         * ly/music-functions-init.ly: add outputProperty music function.
8004
8005         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8006
8007         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8008
8009         * python/convertrules.py (conv): rule
8010
8011         * ly/music-functions-init.ly: applyxxx -> applyXxx
8012
8013         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8014         TabVoice to Voice.
8015
8016 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8017
8018         * flower/include/real.hh: include <math.h> iso. <cmath>
8019
8020         * flower/include/offset.hh: include real.hh
8021
8022 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8023
8024         * Documentation/user/changing-defaults.itely (Difficult tweaks):
8025         fix example, now that 'interfaces is no longer directly available.
8026
8027         * lily/book.cc (process): don't crash if paper == NULL.
8028
8029         * po/fr.po: update.
8030
8031 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8032
8033         * scm/define-music-types.scm (music-descriptions): set length and
8034         start-callback for QuoteMusic
8035
8036 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
8037
8038         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8039         arguments. Fixes compilation error with gcc 3.3.
8040
8041 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8042
8043         * VERSION: release 2.7.10
8044
8045         * stepmake/stepmake/python-module-rules.make
8046         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
8047
8048         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8049         real.hh
8050
8051 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8052
8053         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8054         -Werror. Otherwise GCC barfs over various optimizations.
8055
8056         * scm/define-grob-properties.scm (all-internal-grob-properties):
8057         add note-head property
8058
8059         * Documentation/user/instrument-notation.itely (Laissez vibrer
8060         ties): new node.
8061
8062         * input/regression/laissez-vibrer-ties.ly: new file.
8063
8064         * lily/laissez-vibrer-engraver.cc: new file.    
8065
8066         * lily/include/tie-column-format.hh: new file.
8067
8068         * lily/tie-column-format.cc: new file. 
8069
8070         * lily/tie-column.cc (set_manual_tie_configuration): new function.
8071
8072         * lily/laissez-vibrer-tie.cc: new file.
8073
8074         * lily/include/laissez-vibrer-tie.hh: new file.
8075
8076         * ly/engraver-init.ly: add Laissez_vibrer_engraver
8077
8078         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8079
8080         * scm/define-grobs.scm (all-grob-descriptions): add
8081         LaissezVibrerTie, LaissezVibrerTieColumn
8082
8083         * lily/tie-column.cc (set_tie_config_directions): new function
8084         (final_shape_adjustment): new function.
8085         (shift_small_ties): new function.
8086
8087         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8088
8089         * lily/include/tie.hh (struct Tie_details): add x_gap_
8090         (struct Tie_configuration): add head_position_
8091
8092         * lily/tie-column.cc (set_chord_outline): new function.
8093
8094         * mf/cmr.enc.in:  remove file.
8095
8096 2005-09-11  Graham Percival  <gpermus@gmail.com>
8097
8098         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
8099
8100 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8101
8102         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8103         reduce aliasing effects.
8104
8105         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8106         box in skyline.
8107
8108 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8109
8110         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8111
8112         * flower/include/real.hh: std::fabs too.
8113
8114 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8115
8116         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
8117
8118         * lily, flower: Include C++ iso C headers.  Import namespace std
8119         throughout.
8120
8121         * lily/side-position-interface.cc: 
8122         * lily/scm-hash.cc: 
8123         * lily/note-head.cc: 
8124         * lily/include/includable-lexer.hh: 
8125         * flower/include/string-data.icc: Remove using std::*.
8126
8127         * lily, flower: Include C++ iso C headers.  Import namespace std
8128         throughout.
8129
8130         * lily/side-position-interface.cc: 
8131         * lily/scm-hash.cc: 
8132         * lily/note-head.cc: 
8133         * lily/include/includable-lexer.hh: 
8134         * flower/include/string-data.icc: Remove using std::*.
8135
8136         * Documentation/user/instrument-notation.itely (Entering lyrics):
8137         Multiple latin-1->utf-8 conversion fix.
8138
8139         * Documentation/user/*tely: Update Emacs cookie to utf-8.
8140
8141 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8142
8143         * lily/tie.cc (get_configuration): also avoid dots for non-space
8144         situations.
8145
8146 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8147
8148         * Documentation/user/instrument-notation.itely: Bugfix.
8149
8150 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8151
8152         * tex/GNUmakefile: don't install texinfo.tex
8153
8154         * tex/ : cleanup: remove unused files.
8155
8156         * lily/general-scheme.cc: remove my_{isinf,isnan}.
8157
8158         * flower/include/real.hh: using std::{isnan,isinf}
8159         
8160         * VERSION (PATCH_LEVEL): release 2.7.9
8161
8162 2005-09-05  Graham Percival  <gpermus@gmail.com>
8163
8164         * Documentation/user/ instrument-notation.itely,
8165         advanced-notation.itely: minor tweaks.
8166
8167         * input/test/script-chart.ly: add item padding.
8168
8169 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8170
8171         * flower/offset.cc: use math.h iso. <cmath>
8172
8173         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8174         of IE users.
8175
8176         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8177         (widen-left-stencil-edges): new function. Fix alignment problems
8178         with LaTeX includegraphics.
8179
8180         * lily/text-interface.cc (interpret_markup): use abort().
8181
8182 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8183
8184         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8185
8186         * lily/tie.cc (get_configuration): update bezier shape as we
8187         change Y positions.
8188         (get_configuration): don't move large ties if we're outside of the
8189         staff.
8190
8191 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8192
8193         * scm/define-markup-commands.scm (strut): swap X and Y dims.
8194         
8195 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
8196
8197         * .cvsignore: Add auto-generated configure files and then some.
8198
8199 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8200
8201         * scm/define-grobs.scm (DynamicLineSpanner): Add
8202         X-extent-callback.  Fixes hairpin-slur collision.
8203
8204 2005-08-31  Graham Percival  <gpermus@gmail.com>
8205
8206         * Documentation/user/advanced-notation.itely,
8207         basic-notation.itely: minor changes.
8208
8209 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
8210
8211         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8212         \linebreak between each .eps file if \betweenLilyPondSystem is
8213         undefined. 
8214
8215         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8216         music): Document the \linebreak
8217
8218         * Documentation/user/lilypond-book.itely,
8219         input/tutorial/lbook-latex-test.tex,
8220         Documentation/user/examples.itely: Remove \usepackage{graphics}
8221
8222 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8223
8224         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8225
8226         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8227         compat bugfix.
8228
8229         * scripts/lilypond-book.py (PREAMBLE_LY): define
8230         inside-lilypond-book
8231         (modify_preamble): new function. Insert \RequirePackage{graphics}
8232         when no {graphics found in preamble.  
8233
8234 2005-08030  Graham Percival  <gpermus@gmail.com>
8235
8236         * Documentation/user/basic-notation.itely, global.itely,
8237         tutorial.itely: misc small changes.
8238
8239 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8240
8241         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8242         VERSION.
8243
8244 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8245
8246         * lily/tie-column.cc (new_directions): put Tie down on center
8247         staff line. 
8248
8249         * lily/script-interface.cc (before_line_breaking): use
8250         Grob::programming_error
8251
8252         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8253
8254         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8255         of splitext.
8256
8257 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8258
8259         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8260
8261 2005-08-29  Werner Lemberg  <wl@gnu.org>
8262
8263         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8264         the `*.scale.pfa' files to avoid warnings.
8265
8266 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8267
8268         * lily/tempo-performer.cc (process_music): idem.
8269
8270         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8271
8272 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8273
8274         * Documentation/user/advanced-notation.itely (Text markup): not a
8275         fragment.
8276
8277         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8278
8279         * lily/staff-performer.cc (initialize): add tempo/name to
8280         audio_staff_
8281
8282
8283 2005-08-26  Graham Percival  <gpermus@gmail.com>
8284
8285         * Documentation/user/advanced.itely: add text-only example.
8286
8287         * Documentation/user/invoking.itely: add index entries for
8288         convert-ly.
8289
8290         * Documentation/user/ tutorial.itely, basic-notation.itely:
8291         small fixes suggested by Steve D.  Thanks!
8292
8293 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8294
8295         * input/regression/markup-bidi-pango.ly: new file.
8296
8297         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8298         standard. Remove #ifdef. Remove memleak.
8299         (text_stencil): use text_dir to decide how to composite items.
8300         (text_stencil): determine uniform text direction for the entire
8301         string.
8302
8303         * scripts/lilypond-book.py (output_name): remove
8304         latex_filter_cmd. Non-portable to non-Unix systems. 
8305         (get_latex_textwidth): use File.write and os.unlink() instead.
8306
8307         * THANKS: add Vicente & Trevor.
8308
8309         * lily/grob.cc (discretionary_processing): look up origin for
8310         programming_error too. 
8311
8312         * input/regression/tie-broken.ly: new file.
8313
8314         * lily/tie-column.cc (set_chord_outlines): set outline for line
8315         break case too.
8316         
8317 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8318
8319         * lily/pango-font.cc (text_stencil): don't translate glyphs in
8320         unscaled transform, just translate stencils.
8321
8322         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
8323         MIDI.
8324
8325         * scm/define-markup-commands.scm (wordwrap-string): use
8326         text-direction
8327         (wordwrap-stencils): idem.
8328         (line): idem.
8329         (fill-line): idem.
8330         (wordwrap-stencils): translate last line to right for
8331         text-direction = LEFT.
8332
8333         * scm/define-grob-properties.scm (all-user-grob-properties): add
8334         text-direction.
8335
8336 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8337
8338         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8339         when copying a Lily_parser object.
8340
8341 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8342
8343         * scm/define-markup-commands.scm (null): add null markup.
8344
8345 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
8346
8347         * lily/item.cc: Add documentation of center-invisible
8348
8349 2005-08-24  Graham Percival  <gpermus@gmail.com>
8350
8351         * Documentation/user/advanced-notation.itely: add info about
8352         raising text.
8353
8354         * Documentation/user/programming-interface.itely: fix example
8355         involving raised text.
8356
8357 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8358
8359         * lily/beam.cc (print): fix X start/end points of isolated
8360         beamlets.
8361
8362         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8363
8364         * lily/multi-measure-rest.cc (set_text_rods): new function.
8365
8366         * lily/vertical-align-engraver.cc (process_music): call
8367         Align_interface::set_axis(). This forces #'elements to be ordered,
8368         preventing random vertical reordering of staves.
8369
8370         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8371         add avoid-slur property. 
8372
8373         * Documentation/user/basic-notation.itely (Measure repeats): add
8374         countPercentRepeats example.
8375
8376         * Documentation/user/advanced-notation.itely (Other text markup
8377         issues): remove remark about normal-font.  We have \normal-text
8378
8379         * input/regression/tie-chord.ly: add note about remaining bugs.
8380
8381         * lily/tie.cc (print): try Tie_column::set_directions () if
8382         control-points not yet defined.
8383
8384 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8385
8386         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8387         extent. This fixes braces falling out of the EPS bbox.
8388
8389         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8390         exactly to bbox.
8391
8392 2005-08-23  Graham Percival  <gpermus@gmail.com>
8393
8394         * {various} : change #up->#UP and #down->#DOWN.
8395
8396         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8397
8398         * Documentation/user/advanced-notation.itely: clarify
8399         what objects handles text on a multimeasure rest.
8400
8401 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8402
8403         * VERSION (PATCH_LEVEL): release 2.7.7
8404
8405 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8406
8407         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
8408
8409         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8410
8411         * input/regression/*.ly: formatting clean-up. Default layout
8412         before music expression.
8413
8414         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8415         romanze28-2 example.
8416
8417         * scm/ps-to-png.scm: remove dir-re function.
8418         (make-ps-images): generate page names, instead of globbing them.
8419         This brings down LilyPond memory usage for make web by a factor
8420         10. 
8421
8422         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8423         don't use glob. With 3000 files, globbing
8424         Documentation/user/out-www/ can take too much time. 
8425         
8426         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8427
8428         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8429
8430         * input/regression/tie-manual.ly: new file
8431
8432         * input/regression/tie-chord.ly: update.
8433
8434         * flower/include/interval.hh (struct Interval_t): 
8435
8436         * lily/tie.cc (distance): new function 
8437         (height): new function.
8438         (init): new function
8439         (Tie_details): new struct.
8440
8441         * lily/skyline.cc (skyline_height): new function.
8442
8443         * lily/tie-column.cc (set_chord_outlines): new function.
8444         (new_directions): read tie-configuration
8445
8446         * lily/skyline.cc: fix ASCII art.
8447         
8448 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8449
8450         * python/convertrules.py (string_or_scheme): Fix spelling error
8451
8452 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8453         
8454         * lily/tie-column.cc (set_directions): set directions only once.
8455         (add_configuration): new function.
8456
8457         * lily/tie.cc (set_control_points): new function
8458
8459         * lily/tie-column.cc (new_directions): new function.
8460
8461         * ly/music-functions-init.ly: set 'pitch property
8462         iso. trill-pitch. This makes \relative work with \pitchedTrill
8463
8464         * lily/tie.cc (get_configuration): new function. Don't generate
8465         control points, rather, generate configuration.
8466         remove head-pair property.
8467
8468         * lily/include/tie.hh (struct Tie_configuration): new struct.
8469
8470 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8471
8472         * Documentation/topdocs/NEWS.tely: clarify.
8473
8474 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8475
8476         * lily/tie.cc: remove minimum-length
8477
8478         * scm/define-grob-properties.scm (all-user-grob-properties):
8479         remove staffline-clearance, y-offset 
8480
8481         * input/regression/tie-dots.ly (Module): remove.
8482
8483         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8484         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8485
8486         * input/regression/tie-single.ly: new file.
8487
8488 2005-08-21  Graham Percival  <gpermus@gmail.com>
8489
8490         * ly/bagpipe.ly: fix compile problem.
8491
8492 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8493
8494         * lily/midi-item.cc (name): new method.
8495
8496         * lily/staff-performer.cc (acknowledge_audio_element): use
8497         signature of baseclass.
8498
8499         * lily/engraver-group.cc (do_announces): move recursion call out
8500         of while loop. 
8501
8502         * lily/drum-note-performer.cc (class Drum_note_performer): use
8503         process_music everywhere.
8504
8505         * ly/performer-init.ly: add default children everywhere.
8506
8507         * lily/paper-book.cc (output): call paper-book-write-midis
8508         directly: always write MIDI, even if no \layout {} block. 
8509
8510 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8511
8512         * VERSION (PACKAGE_NAME): release 2.7.6
8513
8514         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8515         about not being able to handle repeat.
8516
8517 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8518
8519         * Documentation/user/examples.itely (Piano templates):
8520         * lily/include/performer-group.hh: Remove last traces of
8521         Performer_group_performer.  Fixes make web.
8522
8523 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8524
8525         * Documentation/user/examples.itely (Piano templates): change
8526         Engraver_group_engraver -> Engraver_group
8527
8528         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8529         scm_stand_in_procs is not weak_any.
8530
8531         * lily/volta-bracket.cc (print): don't use strcmp().
8532
8533         * lily/volta-engraver.cc (process_music): use
8534         Text_interface::is_markup() for setting the 'text property of the
8535         volta bracket.
8536
8537         * input/mutopia/claop.py (accents): update syntax to 2.6
8538
8539         * scm/define-context-properties.scm
8540         (all-user-translation-properties): add countPercentRepeats.
8541
8542         * Documentation/user/basic-notation.itely (Measure repeats): add
8543         isolated percent example.
8544
8545 2005-08-18  Graham Percival  <gpermus@gmail.com>
8546
8547         * input/ {various}: change direction #1, #-1 to
8548         #up/#down or \fooUp, \fooDown.
8549
8550         * Documentation/user/music-glossary.tely: #-1 to #down.
8551
8552         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8553         to #up, #-1 to #down.
8554
8555 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8556
8557         * lily/include/engraver-group.hh: rename.
8558
8559         * lily/include/performer-group.hh: rename.
8560
8561 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8562
8563         * input/test/script-abbreviations.ly: Removed some old LaTeX
8564         left overs.
8565
8566 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8567
8568         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8569         Remove functions.  Remove if 1: constructs, reindent.
8570
8571         * scripts/convert-ly.py (add_version): Add functions from
8572         convertrules.py
8573
8574         * scm/script.scm (default-script-alist):
8575         s/priority/script-priority.  Fixes script stacking.  Backportme.
8576         (Fermata): Very low priority.
8577
8578 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8579
8580         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8581
8582         * input/regression/slur-script.ly: remove padding tweaks. Add
8583         comment strings.
8584
8585         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8586         time sigs and related stuff.
8587
8588         * scm/define-grob-properties.scm (all-user-grob-properties): add
8589         @code{} tags to property description.
8590
8591         * lily/include/line-group-group-engraver.hh (Module): remove file.
8592
8593         * python/convertrules.py (conv): add rule for
8594         Engraver_group_engraver -> Engraver_group.
8595
8596         * lily/include/performer-group-performer.hh: analogous.
8597
8598         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8599
8600         * lily/context-def.cc (instantiate): check for
8601         Engraver_group_engraver and Performer_group_performer not
8602         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8603  
8604 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8605
8606         * input/les-nereides.ly: Remove three fingering tweaks, update
8607         remaining one.
8608
8609         * input/regression/slur-script-inside.ly: Update, fix doc.
8610
8611         * scm/script.scm: Update to avoid-slur.
8612
8613         * scm/define-grob-properties.scm (avoid-slur): New property.
8614
8615         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8616         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8617         outside_slur_callback if avoid-slur != #'inside.
8618
8619         * scm/define-grobs.scm (Fingering, Textscript): No
8620         inside-slur/outside-slur preference.
8621         (DynamicLineSpanner): Always outside slur.
8622
8623         * input/regression/slur-script.ly: More tests.
8624
8625 2005-08-17  Graham Percival  <gpermus@gmail.com>
8626
8627         * Documentation/user/lilypond-book: fix notime entry.
8628
8629         * Documentation/user/advanced-notation.itely: add info on
8630         getting an I rehearsal mark.
8631
8632         * Documentation/user/putting.itely: reinstate "I", re-enforce
8633         the fact that \override numbers are the result of
8634         experimentation and personal taste.
8635
8636         * Documentation/user/invoking.itely: update convert-ly bugs.
8637
8638 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8639
8640         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8641         to #t.
8642
8643         * lily/timing-translator.cc (initialize): don't initialize timing.
8644
8645         * input/regression/stem-spacing.ly (Module): remove file.
8646
8647         * input/regression/spacing-stick-out.ly: specify Score context for
8648         \override
8649
8650         * input/regression/clefs.ly: remove spurious {}s 
8651
8652 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8653
8654         * Documentation/topdocs/NEWS.tely,
8655         input/regression/repeat-percent-count.ly: clarify a bit.
8656
8657 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8658
8659         * input/no-notation/display-lily-tests.ly: delete
8660         display-lily-init call.
8661
8662         * ly/music-functions-init.ly (displayLilyMusic): move
8663         display-lily-init call at top level, so that the user should not
8664         have to call it.
8665
8666         * scm/define-music-display-methods.scm (note-name->lily-string):
8667         retrieve note names directly from pitchnames using new function `rassoc'.
8668         (display-lily-init): note names list construction removed.
8669
8670 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8671
8672         * THANKS: spello.
8673
8674         * lily/lily-parser.cc (get_header): copy module, instead of
8675         returning it.
8676
8677         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8678         counters.
8679
8680         * Documentation/user/basic-notation.itely (Measure repeats): add
8681         links to Counter grobs.
8682
8683         * scm/define-grobs.scm (all-grob-descriptions): add
8684         DoublePercentRepeatCounter
8685         (all-grob-descriptions): add PercentRepeatCounter
8686
8687         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8688         also create counter grobs.
8689
8690         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8691         return grob without space-alist.
8692
8693         * input/proportional.ly: tune staff-padding.
8694
8695         * input/regression/repeat-percent-count.ly: new file. 
8696
8697 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8698
8699         * input/no-notation/display-lily-tests.ly: moved from
8700         input/regression/ to input/no-notation. Be sure to call
8701         `display-lily-init' before trying to use the display function.
8702
8703 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8704
8705         * scripts/lilypond-book.py (option_definitions): Don't localize
8706         the empty string. Fixes bug when --psfonts was used with
8707         non-English locale.
8708
8709 2005-08-15  Graham Percival  <gpermus@gmail.com>
8710
8711         * lily/tuplet-bracket.cc: simple build fix.
8712
8713         * Documentation/user/putting.itely: use "we" instead of "I".
8714
8715         * Documentation/user/basic-notation.itely: cautionary accidentals
8716         work with naturals, too.
8717
8718 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8719
8720         * lily/tuplet-bracket.cc (calc_position_and_height): add
8721         staff-padding support.
8722
8723         * input/proportional.ly: set staff-padding.
8724         
8725         * VERSION (PATCH_LEVEL): release 2.7.5
8726
8727         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8728         fixes. Remove tweaks.
8729
8730         * input/regression/tuplet-slope.ly: add a test case.
8731
8732         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8733         erroneous fix. Add spanner bounds to offset array with relative X
8734         positions.
8735
8736         * ly/engraver-init.ly: add Rest_engraver only once.
8737
8738         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8739         (*parser*) lookup if (*parser*) != #f.
8740
8741 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8742
8743         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8744         Cut-and paste update.
8745
8746         * input/regression/slur-script.ly: Add example of reverting
8747         inside-slur for fingering.
8748
8749         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8750         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8751
8752         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8753         outside_slur_callback if inside-slur == #f (as opposed to unset).
8754
8755 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8756
8757         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8758         encoding files are already removed.
8759
8760 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8761
8762         * Documentation/user/advanced-notation.itely (Instrument names):
8763         Document a workaround for instrument names that collide with
8764         system start braces/brackets.
8765
8766 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8767
8768         * lily/rest-collision.cc (do_shift): spello.
8769
8770         * input/proportional.ly: use #'used property. Set break-overshoot
8771         property.
8772
8773         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8774
8775         * lily/paper-column.cc: add #'used property
8776
8777         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8778         array for staves found.
8779
8780         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8781         array for stavesFound.
8782
8783         * lily/staff-spacing.cc (next_note_correction): add fixed and
8784         space to calling convention. This fixes spacing of accidentals
8785         after barlines.
8786
8787         * input/regression/spacing-accidental-stretch.ly: add barline -
8788         accidental case.
8789
8790         * scm/framework-ps.scm (page-header): add version number to
8791         creator
8792         (eps-header): idem.
8793
8794         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8795         
8796 2005-08-13  Graham Percival  <gpermus@gmail.com>
8797
8798         * Documentation/user/global.itely: add "fit as much as
8799         possible onto this page" example (Vertical spacing).
8800
8801 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8802
8803         * *: Nitpick run.
8804
8805         * buildscripts/fixcc.py: Fixes.
8806
8807 2005-08-12  Graham Percival  <gpermus@gmail.com>
8808
8809         * Documentation/user/advanced-notation.itely: add markup
8810         example to Text spanners.
8811
8812 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8813
8814         * Documentation/user/basic-notation.itely (Ties): Add example of
8815         tying a tremolo to a chord. Thanks to Steve Doonan. 
8816
8817         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8818         properties and move tieMelismaBusy to the list of written
8819         properties. 
8820
8821 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8822
8823         * po/TODO: suggest to use a dedicated tool like kbabel.
8824
8825         * po/fi.po: update using kbabel.
8826
8827 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8828
8829         * *: Remove obsolete files.  Nitpick run.
8830
8831         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8832
8833 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8834
8835         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8836         too.
8837
8838         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8839
8840         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8841         whitespace as symbol separator.
8842
8843         * lily/side-position-interface.cc: Add slur-padding.
8844
8845         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8846         quite a large fix, and it never worked in a stable release; so not
8847         really a regression.
8848
8849         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8850         Update cut and paste code from Slur_engraver.
8851
8852         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8853         Add.
8854
8855         * scm/define-grobs.scm (DynamicLineSpanner): Add
8856         dynamic-line-spanner-interface.
8857         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8858
8859 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8860
8861         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8862         to_boolean () so that non-set 'inside-slur means false.
8863
8864         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8865         slur has control-points.  Skip script without direction.  Always
8866         do_shift if script inside slur, even if slur not contained in
8867         script y-extent.  Increment k in loop.
8868
8869 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8870
8871         * scm/define-markup-commands.scm: Improved regexp to search for
8872         EPS bounding boxes and corrected call to ly:warning.
8873
8874 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8875
8876         * Documentation/user/programming-interface.itely (Displaying music
8877         expressions): doc for \displayLilyMusic. Also some precisions in
8878         "Markup construction in Scheme"
8879
8880 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8881
8882         * scm/define-markup-commands.scm (normal-text): Added 2 new
8883         markup commands, \normal-text and \medium (the latter thanks to
8884         Bruce Fairchild). 
8885
8886 2005-08-08  Graham Percival  <gpermus@gmail.com>
8887
8888         * Documentation/user/programming-interface.itely: fix @{ @}.
8889
8890         * scm/define-markup-commands.scm: add linewidth info to
8891         \justify and \wordwrap, add "upright is the opposite of italic".
8892
8893         * Documentation/user/advanced-notation.itely: shaped->shape,
8894         add (cons (markup "foo")) type of example to text markup,
8895         reword multi-measure rests section.
8896
8897         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8898         comment.  No actual code was touched.
8899
8900         * Documentation/user/invoking.itely: add more info about
8901         \include.  Thanks, Bruce!
8902
8903         * THANKS: add Bruce Fairchild, alphabetise.
8904
8905         * Documentation/user/global.itely: document \score{\header{}}
8906         behavior.
8907
8908         * Documentation/user/basic-notation.itely: reword multi-measure
8909         rest discussion in Rests.
8910
8911 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8912
8913         * Documentation/user/programming-interface.itely (Markup
8914         construction in Scheme): Corrected example and tried to clarify
8915         the implicit \line in the table.
8916
8917 2005-08-07  Graham Percival  <gpermus@gmail.com>
8918
8919         * Documentation/user/instrument-notation.itely: moved
8920         some bagpipe info back into the bagpipe section.  Somehow
8921         it ended up in the "other vocal issues" section?!  :o_O
8922
8923 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8924
8925         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8926         directories, not paths).
8927
8928 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8929
8930         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8931         plain emmentaler/aybabtu.  Backportme.
8932
8933         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8934         missing dir correction.
8935
8936 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8937
8938         * scm/define-markup-commands: fix reversed justify/wordwrap
8939         doc strings.
8940
8941 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8942
8943         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8944         lily/gregorian-ligature-engaver.cc,
8945         lily/include/ligature-engraver.hh,
8946         lily/include/coherent-ligature-engraver.hh,
8947         lily/include/gregorian-ligature-engraver.hh: make these classes
8948         truely abstract.  This should fix some internal oddities such as
8949         duplicate as well as dead translator/property declarations, and
8950         also some dead code.
8951
8952         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8953         bugfix: avoid message "junking empty ligature" on ligature
8954         brackets by collecting dummy grobs.
8955
8956 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8957
8958         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8959
8960         * input/proportional.ly (staffKind): bugfix.
8961         (staffKind): updates by Trevor Baca.
8962
8963         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8964         default layout. 
8965
8966         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8967         pair.
8968
8969         * lily/beam.cc (rest_collision_callback): call position_beam() if
8970         necessary.
8971
8972         * VERSION: release 2.7.4
8973
8974         * input/regression/spacing-uniform-stretching.ly: new file.
8975
8976         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8977
8978         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8979         contributor.
8980
8981         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8982
8983         * input/proportional.ly: new file.
8984
8985         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8986         columns is empty
8987
8988         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8989         bounds to currentCommandColumn for the last step.
8990         (start_translation_timestep): if tupletFullLength is set, set
8991         bound to Paper Column
8992
8993         * input/regression/tuplet-full-length.ly (indent): new file.
8994
8995         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8996         clique of loose columns, eg. a set of grace notes in strict
8997         notespacing.
8998
8999         * input/regression/spacing-strict-spacing-grace.ly: new file.
9000
9001         * lily/key-signature-interface.cc: change property name to
9002         alteration-alist
9003
9004         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
9005         keyAccidentalOrder
9006
9007         * python/convertrules.py (conv): keyAccidentalOrder ->
9008         keyAlterationOrder
9009
9010         * lily/key-engraver.cc (create_key): always print a cancellation
9011         for going to C-major/A-minor, regardless of printKeyCancellation.
9012         (create_key): remove typecheck for visibility. This fixes key
9013         signature not being printed.
9014
9015         * lily/spacing-determine-loose-columns.cc: new file.
9016
9017         * input/regression/spacing-strict-notespacing.ly: new file.
9018
9019         * lily/spacing-spanner.cc (generate_springs): rename from
9020         do_measure. 
9021         (generate_pair_spacing): new function.
9022         (init, generate_pair_spacing): set between-cols for floating
9023         nonmusical columns.
9024
9025         * lily/spaceable-grob.cc (get_spring): new function. 
9026
9027         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
9028         relative to the right edge of the prefatory matter.
9029
9030         * lily/beam.cc (print): read break-overshoot to determine where to
9031         stop/start broken beams.
9032
9033         * input/regression/spanner-break-overshoot.ly: new file.
9034
9035 2005-08-04  Graham Percival  <gperlist@shaw.ca>
9036
9037         * ly/bagpipe.ly: updated.
9038
9039         * Documentat/user/instrument.itely: un-comment out bagpipe example.
9040
9041 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9042
9043         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
9044         support: now (de)crescs avoid slurs as well.
9045
9046         * Documentation/user/instrument-notation.itely (Bagpipe example):
9047         comment out non-functioning bagpipe example.
9048         (Bagpipe definitions): idem.
9049
9050         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
9051         (Top): add proportionalNotationDuration example.
9052
9053         * input/regression/spacing-proportional.ly: new file.
9054
9055         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
9056         synched to a beam.
9057
9058         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
9059         fixes beams with a single stem (eg. beams across linebreaks.)
9060
9061         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
9062
9063         * flower/rational.cc (operator +): prevent overflow. This fixes
9064         heavily nested tuplets.
9065
9066         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
9067         have to protect even those unlikely to be corrupted data members.  
9068
9069 2005-08-04  Graham Percival  <gperlist@shaw.ca>
9070
9071         * ly/bagpipe.ly: new file.
9072
9073         * THANKS: added Sven Axelsson.
9074
9075 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9076
9077         * lily/spacing-engraver.cc (stop_translation_timestep): directly
9078         copy proportionalNotationDuration into currentMusicalColumn if
9079         set.
9080
9081         * lily/spacing-spanner.cc (musical_column_spacing): if
9082         uniform-stretching set, fixed space is 0.0
9083
9084         * input/regression/spacing-multi-tuplet.ly: show
9085         uniform-stretching property.
9086
9087         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
9088
9089         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
9090         (struct Spacing_options): new struct.
9091
9092         * lily/spacing-basic.cc: new file.
9093
9094         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
9095         delta_t doesn't have to be smaller than shortest_playing_len
9096
9097 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9098
9099         * input/regression/markup-arrows.ly:  new file.
9100
9101         * lily/tuplet-bracket.cc: document new behavior.
9102
9103         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
9104         with line breaks.
9105
9106         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
9107
9108         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
9109         default 
9110
9111         * lily/tuplet-bracket.cc: add edge-text property.
9112         add break-overshoot.
9113         (print): read break-overshoot.
9114         (print): read edge-text, add stencils.
9115
9116         * mf/feta-arrow.mf: new file.
9117
9118         * mf/feta-generic.mf: add feta-arrow.
9119
9120 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
9121
9122         * Documentation/user/lilypond-book.itely (An example of a
9123         musicological document): Added flag -o to dvips for people who use
9124         the default setting in teTeX where output is sent to the printer. 
9125
9126         * Documentation/user/global.itely (Vertical spacing): Added
9127         reference to the Axis_group_engraver which documents the *Extent
9128         properties.
9129
9130 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9131
9132         * Documentation/user/basic-notation.itely (Tuplets): add note
9133         about nested tuplets. Remove BUG. 
9134
9135         * input/regression/tuplet-nest.ly: update: remove manual hack. 
9136
9137         * lily/tuplet-bracket.cc (print): use robust_scm2drul
9138         (print): manually call print() for subtuplets.
9139         (calc_position_and_height): add subtuplets to the
9140         support. Vertically shift outer tuplet 
9141
9142         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
9143         remove-first for Lyrics, ChordNames and FiguredBass
9144
9145         * scm/define-grob-properties.scm (all-internal-grob-properties):
9146         use ly:grob-array? iso. grob-list?
9147         (all-internal-grob-properties): add tuplets grob-array.
9148
9149         * lily/tuplet-bracket.cc (add_tuplet_bracket):
9150         new function
9151
9152 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9153
9154         * input/test/time-signature-staff.ly: new file.
9155
9156         * ly/declarations-init.ly (center): escape to Scheme. Fixes
9157         spurious #<Music FingerEvent> errors. Backportme.
9158
9159 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
9160
9161         * Documentation/user/programming-interface.itely (Markup
9162         construction in Scheme): Corrected markup syntax in the
9163         translation table.
9164
9165 2005-08-03  Graham Percival  <gperlist@shaw.ca>
9166
9167         * Documentation/user/instrument-notation.itely: small update
9168         to bagpipe notation docs; thanks Sven!
9169
9170         * Documentation/user/basic-notation.itely: add link about trills.
9171
9172 2005-08-02  Graham Percival  <gperlist@shaw.ca>
9173
9174         * Documentation/user/music-glossary: remove accidentally committed
9175         fink patch.
9176
9177 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9178
9179         * lily/lily-parser.cc (get_header): new function. Enable multiple
9180         \header definitions.
9181
9182         * lily/parser.yy (lilypond_header_body): use get_header.
9183
9184         * ly/init.ly:
9185         * scm/lily-library.scm (print-score-with-defaults): renamed
9186         $globalheader to $defaultheader
9187             
9188         * Documentation/user/global.itely (Creating titles): added short
9189         explanation that multiple headers are useable.
9190
9191
9192 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9193
9194         * lily/module-scheme.cc (LY_DEFINE): new file. 
9195
9196         * Documentation/user/advanced-notation.itely (Font selection): add
9197         doco for make-pango-font-tree.
9198
9199 2005-07-31  Graham Percival  <gperlist@shaw.ca>
9200
9201         * Documentation/user/music-glossary: more languages
9202         for tenuto.
9203
9204         * Docuemntation/user/instrument-notation.itely: minor
9205         update for bagpipe example.
9206
9207 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9208
9209         * input/regression/+.ly (TODO): add some text.
9210
9211 2005-07-28  Graham Percival  <gperlist@shaw.ca>
9212
9213         * Documentation/user/invoking.itely: \score begins with music.
9214
9215         * Documentation/user/ basic-notation.itely,
9216         instrument-notation.itely: minor changes.
9217
9218         * Documentation/user/music-glossary.itely: began tenuto entry.
9219
9220 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9221
9222         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
9223
9224         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
9225
9226 2005-07-27  Graham Percival  <gperlist@shaw.ca>
9227
9228         * Documentation/user/examples.itely: remove bagpipe template.
9229
9230         * Documentation/user/instrument-notation.itely: add bagpipe
9231         section, maybe fix quotes in lyrics.  I hate text encoding.
9232         Clarify chord durations, more bagpipe stuff.
9233
9234 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9235  
9236         * lily/accidental-engraver.cc: formatting fixes.
9237
9238         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
9239         grob-array.
9240
9241         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
9242
9243         * lily/note-column.cc (arpeggio): new function.
9244
9245         * lily/note-spacing.cc (get_spacing): also take arpeggio into
9246         account for spacing.
9247
9248 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
9249
9250         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
9251         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
9252         mingw build.
9253         
9254 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9255
9256         * scm/lily.scm (lilypond-all): clear anonymous modules after
9257         processing files.
9258
9259 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9260
9261         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
9262         SCM_I_CONSP
9263
9264         * VERSION: 2.7.3 released
9265
9266         * Documentation/user/invoking.itely (Invoking lilypond): add
9267         LILYPOND_GC_YIELD documentation.
9268
9269         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
9270         scm_from_real / scm_make_real.
9271
9272         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
9273         higher. This increases memory footprint, but provides overall
9274         speedup of 15 to 20%. 
9275
9276         * lily/include/translator.hh (class Translator): remove
9277         PRECOMPUTED_VIRTUAL everywhere.
9278
9279         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
9280
9281         * lily/context.cc (now_mom): non-recursive now_mom() 
9282
9283         * lily/include/profile.hh: new file.
9284
9285         * lily/profile.cc: new file.
9286
9287         * lily/grob.cc (Grob::Grob): look properties up directly.
9288
9289         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
9290         lookups.
9291
9292         * lily/include/box.hh (class Box): smob Box type.
9293
9294         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
9295
9296         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
9297         protect() and unprotect(). Use throughout.
9298
9299 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9300
9301         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
9302
9303         * scm/define-music-display-methods.scm (markup->lily-string):
9304         markup elements can also be strings (without simple-markup
9305         appended)
9306
9307 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9308
9309         * lily/context.cc (where_defined): also assign value in
9310         where_defined().
9311
9312         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
9313         (curve_coordinate): new function
9314
9315         * lily/simple-spacer.cc (add_columns): only add rods between
9316         column i and begin/end if keep-inside-line is set (this repleces
9317         allow-outside-line as default)
9318
9319 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9320
9321         * lily/tuplet-engraver.cc (start_translation_timestep): only read
9322         tupletSpannerDuration if applicable.
9323
9324         * lily/font-size-engraver.cc (process_music): read fontSize only
9325         once per timestep.
9326
9327         * lily/engraver*cc: use throughout.
9328         
9329         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
9330
9331         * lily/translator.cc (add_acknowledger): new file. Directly jump
9332         into an Engraver::acknowledge_xxx () method based on a grobs
9333         interface-list.
9334
9335         * lily/include/translator-dispatch-list.hh (class
9336         Engraver_dispatch_list): new struct, new file.
9337
9338         * scm/define-context-properties.scm
9339         (all-internal-translation-properties): remove acceptHashTable,
9340         acknowledgeHashTable
9341
9342         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
9343
9344         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
9345         change acknowledgeHashTable to C++ member. 
9346
9347         * lily/rest-collision.cc (do_shift): use extract_grob_set().
9348
9349 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9350
9351         * scm/display-lily.scm: new file. Define a `display-lily-music'
9352         function, that displays the music expression given as an argument,
9353         using LilyPond notation.
9354
9355         * scm/define-music-display-methods.scm: new file. Implementation
9356         of display methods for each music type.
9357
9358         * ly/music-functions-init.ly (displayLilyMusic): new function for
9359         displaying music with LilyPond notation.
9360
9361         * input/regression/display-lily-tests.ly: new regression test file
9362         for `display-lily-music'.
9363
9364         * scm/markup.scm: remove obsolete debugging code (for printing
9365         markups with LilyPond notation).
9366
9367         * scm/define-music-types.scm (music-name-to-property-table):
9368         * scm/clef.scm (supported-clefs): export, in order to be accessible
9369         from the (scm display-lily) module.
9370
9371 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9372
9373         * Documentation/topdocs/NEWS.tely (Top): Typo.
9374
9375 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
9376
9377         * Documentation/index.html.in, Documentation/texinfo.css,
9378           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9379           Documentation/bibliography/index.html.in,
9380           Documentation/bibliography/html-long.bst: revert css-width patch,
9381           it does not work with IE6.
9382
9383 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9384
9385         * Documentation/texinfo.css: revert 760px hack. 
9386
9387         * VERSION: release 2.7.2
9388
9389         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
9390
9391         * Documentation/user/basic-notation.itely (Barnumber check): add
9392         section.
9393
9394         * scm/music-functions.scm (skip-to-last): new function. Show only
9395         last showLastLength part of the \score.
9396
9397         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
9398
9399         * python/convertrules.py (conv): add ly:x-moment rule
9400
9401         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
9402
9403         * Documentation/topdocs/NEWS.tely (Top): add new feature.
9404
9405         * Documentation/user/instrument-notation.itely (Flexibility in
9406         alignment): options in subsections.
9407
9408         * lily/lyric-engraver.cc (process_music): don't typeset text for _
9409         syllable text. Instead, assume that the previous lyric text is a
9410         melismated text.
9411
9412         * Documentation/index.html.in: revert 800x600 change.
9413
9414 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9415
9416         * lily/main.cc (main): Remove invalid handle kludge.
9417
9418         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
9419         (lambda): add gui define.
9420
9421 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9422
9423         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
9424
9425         * Documentation/user/instrument-notation.itely (Musica ficta
9426         accidentals): add section Musica ficta accidentals
9427
9428         * lily/accidental-engraver.cc (make_suggested_accidental): new
9429         function.
9430         (make_standard_accidental): move into new function.
9431         (create_accidental): new function.
9432
9433         * scm/define-grobs.scm (all-grob-descriptions): new Grob
9434         AccidentalSuggestion
9435
9436         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
9437
9438         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9439         undefined.
9440
9441         * Documentation/user/global.itely (Page formatting): document
9442         horizontalshift.
9443
9444         * scm/page-layout.scm (default-page-music-height):
9445         horizontalshift: new variable, shift all systems by
9446         horizontalshift to the right, to make space for instrument names.
9447
9448         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9449
9450         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9451
9452 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9453
9454         * lily/note-column.cc (dir): idem.
9455
9456         * lily/spacing-spanner.cc (Module): idem.
9457
9458         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9459
9460         * lily/include/paper-column.hh (class Paper_column): add
9461         non-static get_rank() member.
9462
9463         * VERSION: release 2.7.1
9464         
9465         * scm/framework-null.scm: new file, used for benchmarking.
9466
9467 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9468
9469         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9470         version dependencies for fontforge and gs.
9471
9472         * Documentation/index.html.in, Documentation/texinfo.css,
9473         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9474         Documentation/bibliography/index.html.in, 
9475         Documentation/bibliography/html-long.bst: optimize width of
9476         html for a 800x600 screen (width:760), increases printability
9477         when 'fit to page' is not set and readability in wide screens.
9478
9479         * stepmake/bin/add-html-footer.py: add missing </p>.
9480
9481 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9482
9483         * scm/define-markup-commands.scm (beam): use polygon in beam
9484         command.
9485
9486         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9487         all acknowledged grobs, and do potentially expensive merge and
9488         write in one go.
9489
9490         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9491
9492         * configure.in (reloc_b): add --enable-static-gxx to statically
9493         link to libstdc++
9494
9495         * lily/GNUmakefile (static-gxx-libs): new target
9496         static-gxx-libs. Create symlink to libstdc++.a
9497
9498         * lily/new-lyric-combine-music-iterator.cc: rename to
9499         Lyric_combine_music_iterator
9500
9501         * lily/lyric-combine-music-iterator.cc
9502         (Old_lyric_combine_music_iterator): rename to
9503         Old_lyric_combine_music_iterator
9504
9505         * lily/*-engraver.cc (various): remove double use of
9506         PRECOMPUTED_VIRTUAL function: only use
9507         start_translation_timestep() and stop_translation_timestep(), not
9508         both.
9509
9510         * lily/break-substitution.cc (fast_substitute_grob_array): do
9511         fast_substitute_grob_array for all unordered grob_arrays.
9512         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9513         (substitute_grob_array): optimize.
9514
9515         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9516
9517         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9518
9519         * lily/parser.yy: revert $globalheader patch.
9520         
9521         * lily/include/translator.icc
9522         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9523         Translator methods, without _static helper.
9524  
9525         * lily/grob-smob.cc (derived_mark): rename from
9526         do_derived_mark(). Return void.
9527
9528         * scm/define-context-properties.scm
9529         (all-internal-translation-properties): remove tweakCount/tweakRank.
9530
9531         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9532         predefined break-visibilities.
9533
9534         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9535         booleans for break-visibility.
9536
9537         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9538
9539         * python/convertrules.py (conv): rule for Timing_translator. 
9540
9541         * lily/include/translator.icc: new file. 
9542
9543         * lily/paper-column-engraver.cc (process_music): new
9544         file. Separate Paper_column factory from Score_engraver.
9545
9546         * lily/vertically-spaced-context-engraver.cc: administer
9547         spaceable-staves property of System.
9548
9549         * lily/translator-group-ctors.cc: new file.
9550
9551         * lily/context-property.cc (make_grob_from_properties): construct
9552         the right Grob class programmatically, looking at the class entry
9553         for the meta property.
9554
9555         * lily/break-align-engraver.cc (stop_translation_timestep): call
9556         Break_align_interface::add_element() directly.
9557
9558         * lily/context.cc (measure_position): measure_position() is now a
9559         normal function.
9560
9561         * lily/include/translator.hh (class Translator): rename
9562         process_acknowledged_grobs() to process_acknowledged() and move to
9563         Translator.
9564
9565         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9566         field for each grob description.
9567
9568         * lily/include/translator-group.hh (class Translator_group):
9569         change to base class. Separate class from Translator. This gets
9570         rid of virtual inheritance for Engravers/Performers.
9571
9572         * lily/staff-performer.cc (class Staff_performer): derive
9573         Staff_performer from Performer, not Performer_group_performer 
9574
9575         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9576         new function.
9577         (precompute_method_bindings): new function. Precompute lists of
9578         Translators, so we only call methods (process_music,
9579         start_translation_timestep, etc.) for Translators needing
9580         it. Also: dispose of pointer-to-member-function calls.
9581
9582         * lily/engraver-group-engraver.cc: remove engraver_each,
9583         recurse_down_engravers ()
9584
9585         * lily/note-head.cc (internal_print): only call
9586         glyph-name-procedure if style != default. 
9587
9588 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9589
9590         * ly/titling-init.ly: add printallheaders option.
9591
9592         * Documentation/user/global.itely: document printallheaders.
9593
9594 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9595
9596         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9597         anymore, but do it centrally.  
9598
9599         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9600         hammer hack.
9601
9602         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9603
9604         * scm/output-lib.scm: remove hammer-print-function.
9605
9606         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9607         macro. Declare a Link_array<Grob> and fill it from a grob.
9608         (extract_item_set): idem for item.
9609
9610         * lily/break-substitution.cc: add header.
9611         (fast_substitute_grob_array): rewrite for Grob_arrays.
9612         (substitute_grob_array): idem.
9613
9614         * lily/group-interface.cc (add_thing): remove file.
9615
9616         * flower/include/parray.hh (class Link_array): slice() is const.
9617
9618         * lily/include/grob-array.hh: new file.
9619
9620         * lily/grob-array.cc (spanner): new file.
9621
9622         * lily/beam-quanting.cc (fill): read details property from beam.
9623
9624         * lily/beam.cc: support details property.
9625
9626         * total speedups below: approx 10%.
9627
9628         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9629
9630         * lily/include/grob.hh (class Grob): add interfaces_ member.
9631
9632         * lily/bezier.cc (init_polynomial_cache): new function: cache
9633         binom(3,j) t^j (1-t)^{3-j}
9634         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9635
9636         * lily/*.cc: substitution throughout.
9637
9638         * lily/grob-property.cc (internal_get_object): new routine.
9639         (internal_set_object): idem. Store grob refrences in separate
9640         alist. This saves processing time, since properties aren't
9641         break-substituted, and the per grob namespace is smaller, both for
9642         grobs and non-grob properties.
9643
9644         * scm/define-grob-properties.scm (all-internal-grob-properties):
9645         remove center-element.
9646
9647         * lily/grob.cc: remove tweak-count, tweak-rank.
9648
9649 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9650
9651         * Documentation/user/lilypond-book.itely: fixes example.
9652
9653 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9654
9655         * Documentation/user/global.itely (Creating titles):    
9656         * Documentation/user/examples.itely (All headers): change the
9657         place of \header in \score blocks (after music block) to make
9658         examples compile (cf. changes on parser.yy on 2005-07-10)
9659
9660 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9661
9662         * python/convertrules.py: add exc -> ecc rule.
9663
9664         * scripts/convert-ly.py: add location of convertrules.py
9665         in a comment.
9666
9667         * Documentation/user/changing-defaults.itely: fix language.
9668
9669 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9670
9671         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9672
9673 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9674
9675         * scm/output-socket.scm (grob-bbox): don't use inf? 
9676
9677         * flower/include/rational.hh: add operator bool() 
9678
9679         * scm/define-music-types.scm (music-descriptions): remove
9680         internal-class-name properties.
9681
9682         * lily/include/event.hh: remove file.
9683
9684         * lily/include/music-constructor.hh: remove file.
9685
9686         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9687         in 'types property.
9688
9689         * lily/music.cc (duration_length_callback): new function.
9690
9691         * lily/event.cc: remove file.
9692
9693         * lily/music-constructor.cc: remove file.
9694
9695         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9696
9697         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9698         (get_context_key): idem.
9699
9700         * scm/lily.scm (lambda): new option object-keys (default to #f)
9701
9702         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9703
9704         * scm/output-gnome.scm: remove beam routine.
9705
9706         * scm/output-ps.scm (scm): idem.
9707
9708         * scm/output-svg.scm: remove beam.
9709
9710         * ps/music-drawing-routines.ps: remove draw_beam.
9711
9712         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9713
9714         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9715         add scm_from_locale_string compatibility glue. 
9716
9717 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9718
9719         * scripts/lilypond-book.py: Prevent occuring error when
9720         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9721         times and target file shoud be overwritten.  (Error message said
9722         'input file and output file is same'.)
9723
9724 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9725
9726         * input/regression/slur-extreme.ly,
9727         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9728         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9729         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9730         "excentricity" to "eccentricity".
9731
9732         * Documentation/user/converters.itely: fix URL for Noteedit and
9733         Rosegarden.
9734
9735         * THANKS: added Yoshinobu Ishizaki.
9736
9737 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9738
9739         * scm/define-markup-commands.scm (justify-field): add. 
9740
9741         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9742
9743 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9744
9745         * lily/lookup.cc (filled_box): express filled_box with
9746         round_filled_box
9747
9748         * scm/midi.scm (paper-book-write-midis): new function. Write all
9749         performances in numbered MIDI files.
9750
9751         * lily/performance-scheme.cc (LY_DEFINE): new file.
9752         (LY_DEFINE): new function ly:performance-write.
9753
9754         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9755         new function.
9756         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9757
9758         * scm/framework-*.scm: use port arguments throughout.
9759
9760         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9761
9762         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9763
9764         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9765
9766         * scm/framework-texstr.scm (output-framework): 
9767
9768         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9769
9770         * scm/output-lib.scm (tablature-stem-attachment-function):
9771         tablature stem attachment fix. 
9772
9773 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9774
9775         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9776
9777         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9778
9779         * scm/define-music-types.scm (music-descriptions): don't use
9780         Music_wrapper type.
9781
9782         * lily/paper-column.cc (print): print moment too.
9783
9784         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9785         remove compatibility cruft.
9786
9787         * lily/parser.yy (score_body): \score can only begin with Music. 
9788
9789         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9790         make-score. Take music argument only. Move parser interaction to
9791         Scheme.
9792
9793         * scm/lily-library.scm (scorify-music): new function.
9794
9795         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9796         (datadir): remove resource import.
9797         (print_environment): remove get_bbox()
9798         (cp_to_dir): remove pre 1.5.2 compat glue.
9799
9800 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9801
9802         * lily/include/simple-spacer.hh (Module): idem.
9803
9804         * lily/include/spring.hh (struct Spring): store inverse
9805         strength. This prevents division by zero.
9806
9807         * VERSION: release 2.7.0
9808         
9809         * lily/include/music.hh (class Music): remove Music::duration_log()
9810
9811         * lily/stem-engraver.cc (make_stem): take duration log from event.
9812
9813         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9814
9815 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9816
9817         * scm/lily.scm (ly:load): load autochange.scm
9818
9819         * Documentation/user/tutorial.itely (Running LilyPond for the
9820         first time): remove reference to DVI/TeX
9821
9822         * scm/define-markup-commands.scm (text): add \text markup command.
9823
9824         * configure.in (reloc_b): bump requirement to Python 2.2.
9825
9826         * lily/include/dots.hh (class Dots): make has_interface() static.
9827
9828         * python/convertrules.py (conv): add rule for ly:grob-default-font
9829
9830         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9831         alphabetical order.
9832
9833         * input/regression/trill-spanner-pitched.ly: new file.
9834
9835         * lily/font-interface-scheme.cc (LY_DEFINE): function
9836         ly:grob-default-font (changed from get-default-font).
9837
9838         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9839
9840         * lily/note-head.cc (internal_print): if style is not a symbol,
9841         set style to 'default. 
9842         (internal_print): no style suffix if glyph-name-procedure not
9843         set. Default to quarter head.
9844
9845         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9846
9847         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9848
9849         * ly/music-functions-init.ly: \pitchedTrill
9850
9851         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9852
9853         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9854
9855         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9856
9857         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9858
9859         * po/fr.po: update
9860
9861         * po/de.po: update.
9862
9863 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9864
9865         * Documentation/user/changing-defaults.itely: add link
9866         to grob-iterface.
9867
9868         * Documentation/user/advanced-notation.itely: add material
9869         to Setting automatic beam behaviour.  Thanks, Joe!
9870
9871         * Documentation/user/lilypond.itely: change encoding to utf-8.
9872
9873 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9874
9875         * Documentation/user/advanced-notation.itely (Setting automatic
9876         beam behavior): Correct the documentation of
9877         revert-auto-beam-setting (backportme)
9878
9879 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9880
9881         * lily/ly-module.cc (ly_make_anonymous_module): define
9882         %module-public-interface of module. 
9883
9884         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9885         without lexer.
9886
9887 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9888
9889         * input/regression/fret-diagrams.ly: stretch example.
9890
9891 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9892
9893         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9894         Fodor).
9895
9896 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9897
9898         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9899
9900         * Documentation/user/examples.itely, lilypond-book.itely:
9901         change \RequirePackage to \usepackage.
9902
9903         * Documentation/user/global.itely: document copyright and tagline.
9904
9905 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9906
9907         * Documentation/user/basic-notation.itely (Transpose): remove link
9908         to nonexistent UntransposableMusic.
9909
9910         * scm/output-svg.scm: remove old definitions.
9911
9912         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9913         invoking.
9914
9915         * python/lilylib.py (search_exe_path): new function.
9916
9917 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9918
9919         * python/lilylib.py (mkdir_p): remove setup_environment()
9920         (backportme)
9921
9922         * buildscripts/mutopia-index.py (headertext): trim text.
9923
9924         * Documentation/topdocs/NEWS.tely (Top): refresh.
9925
9926         * scm/define-markup-commands.scm (wordwrap-string): new function:
9927         split string in paras and words.
9928         (wordwrap-markups): new function.
9929         (wordwrap-stencils): new function. 
9930         (justify): use it.
9931         (wordwrap): use it.
9932         (wordwrap-string): use it
9933         (justify-string): use it.
9934
9935         * scm/lily-library.scm (regexp-split): new function.
9936
9937         * scm/define-markup-commands.scm: remove encoded-simple. 
9938         remove font-markup.
9939         (fontsize): remove old version  of fontsize.
9940         (wordwrap): new markup function. Wrap into paragraphs.
9941
9942         * VERSION: Branch lilypond_2_6
9943         (MINOR_VERSION): go to 2.7.0
9944
9945 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9946
9947         * po/zh_TW.po: update from translation project.
9948
9949 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9950
9951         * scm/midi.scm: compile fix.
9952
9953 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9954
9955         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9956         patch. Now, the tempfile module is loaded too, not only used.
9957
9958 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9959
9960         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9961         0.05 - 1.00 to 0.25 - 1.00
9962
9963         * scm/midi.scm: moved the default-instrument-equalizer procedure
9964         to just under the insturment-equalizer-alist it takes as an
9965         argument.
9966
9967 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9968
9969         * Documentation/user/advanced-notation.itely (Font selection):
9970         remove CMR note.
9971
9972         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9973
9974 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9975
9976         * THANKS: Add UTF-8 marker.
9977
9978         * Documentation/user/point-and-click.itely (http): Update: use
9979         lilypond-invoke-editor.  Fix: instruct to use user.js.
9980
9981 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9982
9983         * ly/titling-init.ly: implements printpagenumber, increases
9984         space between dedication and title (to avoid collisions with
9985         "g" and "q" in dedication), and nicer logic about copyright
9986         and instrument fields being printed on the first page.
9987         Thanks Vincent!
9988
9989         * Documentation/user/global.itely: document printpagenumber.
9990
9991 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9992
9993         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9994
9995 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9996
9997         * THANKS: update to 2.6
9998
9999         * VERSION: 2.6.0 released.
10000
10001 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10002
10003         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
10004         rule, errorneously removed probably because of misleading comment.
10005
10006 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10007
10008         * python/lilylib.py (datadir): py2exe comments.
10009
10010         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
10011
10012         * configure.in (reloc_b): make fontconfig REQUIRED.
10013
10014 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
10015
10016         * po/fi.po: add latest translations.
10017
10018 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10019
10020         * ChangeLog: recode utf-8
10021
10022         * Documentation/pictures/lilypond.xpm (Module): edited photo as
10023         logo.
10024
10025         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
10026
10027         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
10028
10029         * python/convertrules.py (do_conversion): don't print program_name
10030         from within a module
10031
10032         * configure.in (reloc_b): bump fontforge requirement to 20050624.
10033
10034         * python/convertrules.py (conv): add 2.6.0 dummy rule.
10035
10036 2005-06-23  Graham Percival  <gperlist@shaw.ca>
10037
10038         * Documentation/user/lilypond-book.itely,
10039         Documentation/user/examples.itely: add \RequirePackage{graphics}.
10040
10041         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
10042         fixes baseline-skip.  Thanks Vincent!
10043
10044         * Documentation/user/advanced-notation.itely, global.itely:
10045         moved "Selecting font sizes" to global, since it deals with
10046         notation font size, not text fonts.
10047
10048 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10049
10050         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
10051         to fonts.
10052
10053 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
10054
10055         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
10056         workaround since /dev/stdin doesn't work on Cygwin. Using a
10057         temporary file in the current directory since latex doesn't
10058         understand the path name to the default TMP in Cygwin (at least on
10059         win XP).
10060         
10061         * Documentation/user/global.itely (Creating titles): Correct
10062         misprint in example. Thanks to Rob Vlasaty.
10063
10064 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10065
10066         * VERSION (PATCH_LEVEL): release 2.5.32
10067
10068         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
10069         variable in lily module
10070
10071         * scm/framework-ps.scm (output-classic-framework): error message
10072         regarding the classic framework.
10073
10074         * Documentation/user/henle-flat-gray.png (Module): new file.
10075
10076         * Documentation/user/baer-flat-gray.png (Module): new file.
10077
10078         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
10079         whiteout for markups.
10080
10081         * buildscripts/substitute-encoding.py (note_glyph): include _ in
10082         regex too. This fixes change clef appearance in PDF. 
10083
10084         * ttftool/include/*: remove.
10085
10086         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
10087
10088         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
10089
10090         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
10091
10092         * ttftool/*: remove ttftool subdirectory.
10093
10094         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
10095
10096         * lily/ttf.cc (print_header): new file. Convert to type42, using
10097         FreeType to parse the TTF. 
10098
10099         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
10100         and post table may differ. Pass around post_nglyphs as well.
10101
10102 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10103
10104         * ly/music-functions-init.ly (musicMap): new music function
10105         musicMap. 
10106         
10107 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10108
10109         * make/mutopia-rules.make: anti-alias-factor = 2
10110
10111         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
10112         page switch.
10113
10114         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
10115         anti-alias-factor for lilypond-book runs.
10116
10117         * scm/ps-to-png.scm (scale-down-image): new function.
10118         (my-system): new function.
10119         (make-ps-images): blow up GS resolution by anti-alias-factor,
10120         scale down image by anti-alias-factor.  This improves appearance
10121         of bitmaps
10122         (make-ps-images): remove showpage. Fixes spurious empty png at
10123         end.
10124
10125         * scm/framework-ps.scm (write-preamble): downcase filename before
10126         string-matching. Should fix .TTF files (as opposed to ttf files)  
10127
10128         * Documentation/user/tutorial.itely (Running LilyPond for the
10129         first time): separate subsections for windows, macos and unix.  
10130
10131         * Documentation/user/invoking.itely (Updating files with
10132         convert-ly): add MacOS X note.
10133
10134 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10135
10136         * Documentation/user/introduction.itely (Engraving): don't include
10137         file optical-spacing, add directly.
10138
10139         * lily/paper-outputter.cc (file): open file in binary mode. This
10140         fixes OTF embedding on windows.
10141
10142 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10143
10144         * scm/framework-ps.scm (write-preamble): remove debugging output.
10145
10146         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
10147
10148         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
10149         outdir.
10150         (install-fc-cache): install font cache in installation directories.
10151
10152 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10153
10154         * scm/editor.scm (editor-command-template-alist): Use char iso
10155         column, except for Emacs.
10156         (get-editor-command): Substitute char too (Bertalan Fodor).
10157
10158 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10159
10160         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
10161         quoted ~s.  This should fix PNG output on Windows; single quotes
10162         are regular characters on Windows.
10163
10164 2005-06-16  Graham Percival  <gperlist@shaw.ca>
10165
10166         * Documentation/user/basic-notation.itely: include ChoirStaff
10167         in System start delimiters.
10168
10169         * Documentation/user/putting.itely: new doc section on
10170         fixing overlapping notation.
10171
10172 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10173
10174         * Documentation/user/global.itely (Paper size): \paper is in
10175         \book, not \score.
10176
10177         * make/mutopia-rules.make: -ddelete-intermediate-files
10178
10179         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
10180
10181 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10182
10183         * ChangeLog: Recode utf-8.
10184
10185         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
10186         datadir with .py modules.
10187
10188 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
10189
10190         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
10191
10192 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10193
10194         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
10195         
10196         * scm/framework-ps.scm (write-preamble): remove status check.
10197
10198         * Documentation/user/invoking.itely (Updating files with
10199         convert-ly): remove -o option.
10200
10201         * VERSION (PACKAGE_NAME): release 2.5.31
10202
10203         * scm/framework-ps.scm (write-preamble): use ly:system.
10204         (write-preamble): verbosity.
10205
10206         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
10207
10208         * python/convertrules.py: new file. Store conversion rules
10209         separately.
10210
10211 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10212
10213         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
10214
10215 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
10216
10217         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
10218         \musicDisplay 
10219
10220         * Documentation/user/instrument-notation.itely (More stanzas): Add
10221         reference to StanzaNumber.
10222
10223 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10224
10225         * THANKS: separate section for website translators.
10226
10227 2005-06-14  Graham Percival  <gperlist@shaw.ca>
10228
10229         * Documentation/topdocs/INSTALL.texi: update vim info;
10230         thanks Simon Bailey!
10231
10232         * Documentation/user/advanced-notation.itely: included
10233         color names.
10234
10235         * Documentation/user/advanced-notation.itely,
10236         Documentation/usr/notation-appendices.itely: moved
10237         color names into an appendix.
10238
10239 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10240         
10241         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
10242
10243         * scm/lily.scm (lambda): initialize program options from here.
10244
10245         * scm/framework-*.scm: add header info.
10246
10247         * lily/main.cc (parse_argv): only set output format to pdf if no
10248         other format specified.
10249
10250         * scm/backend-library.scm (postprocess-output): process
10251         'delete-intermediate-files after running convert-to-*. This fixes
10252         PNG generation when 'delete-intermediate-files is set.
10253         
10254 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10255
10256         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
10257         links on website. 
10258
10259 2005-06-13  Graham Percival  <gperlist@shaw.ca>
10260
10261         * Documentation/topdocs/INSTALL.texi,
10262         Documentation/user/lilypond-book.itely: typos.
10263
10264 2005-06-12  Pal Benko  <benkop@freestart.hu>
10265
10266         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
10267         added between program name and switch; -b changed to -f not
10268         to generate pdf
10269
10270 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10271
10272         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
10273         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
10274
10275         * input/sakura-sakura.ly: add \midi.
10276
10277         * buildscripts/mutopia-index.py (find): use /usr/bin/find
10278         iso. python find. 
10279
10280         * ttftool/test.c (main): cosmetics.
10281
10282         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
10283
10284         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
10285         create a ttf2ps binary.
10286
10287         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
10288
10289         * scm/backend-library.scm (postscript->png): set rename-page-1 to
10290         true.
10291
10292 2005-06-11  Graham Percival <gperlist@shaw.ca>
10293
10294         * Documentation/user/lilypond-book.itely: add warning about
10295         the font warnings in dvips.
10296
10297 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10298
10299         * THANKS: typo
10300
10301         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
10302
10303         * GNUmakefile.in: remove links for .map, .enc
10304         don't fail if out/ doesn't exist yet.
10305
10306 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10307
10308         * ttftool/util.c (surely_read): return nbytes
10309
10310         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
10311
10312         * VERSION (PACKAGE_NAME): release 2.5.30
10313
10314         * flower/string-convert.cc (precision_string): >? fix.
10315
10316         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
10317         (make-ps-images): add verbose -q too.
10318
10319         * lily/default-actions.cc (Module): new file. default
10320         {book,score}-print functions.
10321
10322         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
10323         pass results via parseStringResult, lookup via ly:parser-lookup.  
10324
10325         * lily/lily-parser.cc (Lily_parser): only clone lexer in
10326         constructors.
10327         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
10328         (parse_string): idem.
10329
10330         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
10331
10332         * lily/main.cc (main_with_guile): copy be_verbose_global into
10333         ly_set_option()
10334
10335 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10336
10337         * scm/backend-library.scm (postscript->pdf):
10338         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
10339         verbose mode.  Search for several names of gs executable.
10340
10341 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10342
10343         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
10344         directly. This fixes a massive memory leak, provided you use CVS
10345         GUILE.
10346
10347 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
10348
10349         * ly/property-init.ly: Added tieDashed.
10350
10351         * THANKS: Added some bughunters for 2.5.
10352
10353 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10354
10355         * lily/program-option.cc: add debug-gc option.
10356
10357         * lily/include/lily-guile-macros.hh: don't protect exported module
10358         objects.
10359
10360         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
10361
10362         * scm/backend-library.scm (postscript->pdf): use
10363         delete-intermediate-files iso. running-from-gui? 
10364
10365         * ttftool/util.c (surely_read): robustness. Allow read() to return
10366         less bytes than requested, as per posix standards.
10367
10368         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
10369         program option.
10370
10371         * ttftool/include/ttftool.h ("C"): rename verbosity to
10372         ttf_verbosity. Add to public interface.
10373
10374         * scm/music-functions.scm (unfold-repeats): remove debugging display.
10375
10376         * lily/program-option.cc: rename from scm-option.cc
10377
10378         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
10379         (get_help_string): Print pretty help string.
10380
10381         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
10382         to snippet preamble.
10383
10384         * lily/scm-option.cc: remove command-line-settings option. Fold
10385         all command-line options plus default settings in a generic
10386         interface. 
10387
10388         * flower/getopt-long.cc (table_string): indent 2nd lines of help
10389         texts too.
10390
10391 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10392
10393         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
10394         or EXT_ components non-empty.
10395
10396 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10397
10398         * scm/lily.scm (running-from-gui?): Export.
10399
10400         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
10401         output in .ly source directory.
10402
10403 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10404
10405         * ttftool/util.c (surely_lseek): more verbosity.
10406
10407         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
10408         compile.
10409
10410         * lily/parser.yy (Repeated_music): remove >? 
10411
10412         * scm/backend-library.scm (postscript->pdf): Support for
10413         -dgs-font-load=1
10414
10415         * scm/framework-ps.scm (write-preamble): make font loading
10416         switchable to GS via --define-default gs-font-load=1
10417
10418 2005-06-09  Graham Percival  <gperlist@shaw.ca>
10419
10420         * Documentation/user/global.itely: added \layout docs.
10421
10422 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10423
10424         * lily/lily-parser-scheme.cc: add unistd.h
10425
10426 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10427
10428         * scm/editor.scm: add char argument.
10429
10430         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
10431
10432         * ttftool/util.c (syserror): use errno for better error reporting.
10433
10434         * lily/source-file.cc (get_counts): new function. Calc column,
10435         line and char count in one go.
10436
10437         * lily/binary-source-file.cc (quote_input): rename to quote_input
10438
10439         * lily/input.cc (set): new function.
10440
10441 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10442
10443         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10444         directory part of file name to search directory.
10445
10446         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10447         search path and chdir to DIR if --outname=DIR used.
10448
10449         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10450         existence before appending original path.
10451
10452 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10453
10454         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10455         file" massage.
10456
10457         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10458         texinfo.tex is always used.
10459         
10460 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10461
10462         * flower/include/axis.hh: rename from axes.hh
10463
10464         * lily/include/text-interface.hh (Module): rename from text-item.hh
10465
10466         * VERSION (PATCH_LEVEL): release 2.5.29
10467
10468         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10469
10470         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10471         (handle-macfont): new function. Call fondu for Native mac fonts.
10472
10473         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10474         '() case.
10475
10476 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10477
10478         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10479         multi-page.  Fix .eps regular expression.
10480
10481 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10482
10483         * Documentation/user/putting.itely: add info on modifying templates.
10484
10485         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10486         misc small changes.
10487
10488 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10489
10490         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10491
10492         * scripts/lilypond-ps2png.scm
10493
10494         * VERSION (PACKAGE_NAME): release 2.5.28
10495
10496 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10497
10498         * lily/main.cc (prepend_env_path): Do not append /, that does not
10499         work.  Localedir lives in datadir, not in prefix.
10500
10501         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10502         hack for windows.
10503
10504         * flower/include/file-cookie.hh: Compile fix.
10505
10506 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10507
10508         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10509
10510         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10511         system primitives.
10512         (gulp-port): using read-string!/partial. We don't want to read an
10513         entire PS file  (GUILE 1.6 limits strings to 16M) 
10514
10515         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10516         properties. Add font-interface. 
10517
10518         * scm/define-grob-properties.scm (all-user-grob-properties):
10519         remove old bracket properties.
10520
10521         * scm/x11-color.scm: reformat. 
10522
10523         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10524         LedgerLineSpanner if new StaffSymbol is found. 
10525
10526         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10527         staff-symbol for finishing staff. 
10528
10529         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10530
10531         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10532         change black to currentColor everywhere. This fixes color support
10533         in SVG.
10534
10535 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10536
10537         * input/regression/fret-diagrams.ly: new file to test fret diagram
10538         capability
10539
10540         * scm/output-tex.scm: remove white-dot and white-text
10541
10542         * scm/output-ps.scm: remove white-dot and white-text
10543
10544         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10545         using ly:stencil-in-color instead
10546         (draw-dots) : remove call to white-dot
10547
10548 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10549
10550         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10551         support.
10552
10553         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10554
10555         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10556
10557         * flower/file-cookie.cc: new file. lily_cookie extension.
10558         
10559 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10560
10561         * scm/editor.scm (editor-command-template-alist): Add syn
10562         editor (Jaap [de Vos]).
10563
10564 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10565
10566         * scripts/lilypond-ps2png.scm:
10567         * scm/ps-to-png.scm: New file.
10568
10569         * scm/backend-library.scm (postscript->png): Use it.
10570
10571         * scripts/lilypond-ps-to-png.py: Remove file.
10572
10573         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10574
10575 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10576
10577         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10578
10579         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10580         start on grace moment. Fixes autobeam-grace.ly.
10581
10582         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10583         process anything unless we're at the end of a pending beam. Fixes
10584         syncopated 8ths beamed across a beat.
10585
10586 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10587
10588         * scm/editor.scm (editor-command-template-alist): Start emacs if
10589         emacslient fails.
10590
10591         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10592
10593         * flower/file-path.cc (is_file, is_dir): Export.
10594
10595         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10596
10597 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10598
10599         * lily/easy-notation.cc: Added include cctype to correct
10600         compilation error.
10601
10602 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10603
10604         * scm/backend-library.scm (postscript->pdf): set resolution to
10605         1200, so bitmap fonts aren't that ugly. 
10606
10607         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10608
10609         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10610         parent if we have a notehead. Fixes incorrect offsets when
10611         Paper_column is very wide in the X direction.
10612
10613         * input/regression/font-family-override.ly (Module): new file.
10614
10615         * scm/font.scm (make-pango-font-tree): new function.
10616
10617         * lily/beam.cc (before_line_breaking): remove warning about less
10618         than 2 visible stems. We still get a warning when there is only
10619         one stem.
10620
10621 2005-06-01  Werner Lemberg  <wl@gnu.org>
10622
10623         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10624         correctly.
10625
10626 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10627
10628         * lily/slur-scoring.cc (generate_avoid_offsets): new
10629         function. Generate avoid offsets once per slur.
10630
10631         * lily/slur.cc (add_extra_encompass): add dependency to
10632         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10633
10634         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10635         too. Fixes inf error with added bass notes.
10636
10637         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10638         argument anymore.
10639
10640         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10641
10642         * input/tutorial/lbook-latex-test.tex: add line length test.
10643
10644         * scripts/lilypond-book.py (set_default_options): new
10645         function. Call this before dissecting snippets, so linewidth
10646         settings reach the snippets.
10647
10648 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10649
10650         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10651
10652 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10653
10654         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10655
10656 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10657
10658         * stepmake/aclocal.m4: More autopackage friendliness.
10659
10660 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10661
10662         * Documentation/index.html.in: remove link to LSR.
10663
10664         * Documentation/user/global.itely: remove duplicate
10665         "dedication" \header{} section.
10666
10667 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10668
10669         * VERSION (PACKAGE_NAME): release 2.5.27.
10670
10671         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10672         too. Plugs memory leak.
10673
10674         * make/lilypond.fedora.spec.in (Group): remove
10675         lilypond-pdfpc-helper.
10676
10677         * scripts/GNUmakefile (SEXECUTABLES): remove
10678         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10679
10680         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10681         'typewriter family.
10682
10683         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10684         memory leak.
10685
10686         * lily/parser.yy (score_body): don't clone Score, that's done in
10687         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10688
10689         * lily/score-engraver.cc (derived_mark): new function.
10690         (initialize): unprotect Paper_score. This fixes a memory leak.
10691
10692         * lily/score-performer.cc (derived_mark): new function.
10693
10694         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10695
10696         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10697         spurious warning.
10698
10699         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10700         serif.
10701
10702 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10703
10704         * configure.in (reloc_b): Add --enable-relocation.
10705
10706 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10707
10708         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10709
10710         * input/regression/alignment-order.ly: add Staff example.
10711
10712 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10713
10714         * po/fr.po: update.
10715
10716 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10717
10718         * Documentation/index.html.in: add link to LSR.
10719
10720 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10721
10722         * scm/define-stencil-commands.scm (Module): new file. Register all
10723         allowed stencil expression heads in a central place.
10724
10725         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10726         ly:make-stencil
10727
10728         * lily/stencil-expression.cc (all_stencil_heads): registering
10729         stencil expressions.
10730
10731         * lily/stencil-interpret.cc: new file. Stencil expression
10732         interpreting.
10733
10734         * input/xiao-haizi-guai-guai.ly: move file back.
10735
10736 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10737
10738         * Documentation/user/advanced.itely, converters.itely,
10739         instrument-notation.itely, lilypond-book.itely: misc small
10740         changes.
10741
10742 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10743
10744         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10745
10746         * make/lilypond.fedora.spec.in: Fix source url.
10747
10748         * cygwin: Update from mingw patches.
10749
10750         * scm/editor.scm (editor-command-template-alist): Use jedit
10751         -reuseview (Bertalan), add uedit (Patrick Huberts).
10752
10753         * input/xiao-hai-zi-guai-guai.ly: Rename from
10754         xiao-haizi-guai-guai.ly.
10755
10756         * input/*: Reindent, do not use TAB.
10757
10758         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10759         white background.
10760
10761 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10762
10763         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10764         numerical overflow error.
10765
10766 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10767         
10768         * abc2ly.py: fix to syntax error in multi-part output.
10769
10770 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10771
10772         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10773         with disappearing span bars when alignAboveContext is active
10774
10775         * lily/property-iterator.cc (check_grob): use is-grob?
10776         object-property. Fixes crash-key-sig-font-size.ly. 
10777
10778 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10779
10780         * lily/bar-line.cc (print): don't round barlines; this produces
10781         odd aliasing effects in Acroread.
10782
10783         * lily/timing-engraver.cc (process_music): robustness fix.
10784
10785         * lily/context-def.cc (filter_engravers): bugfix.
10786
10787 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10788
10789         * lily/lilypond.rc.in: Add ly-icon.
10790
10791         * lily/GNUmakefile: 
10792         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10793         rules.
10794
10795 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10796
10797         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10798
10799         * ps/music-drawing-routines.ps: 
10800
10801         * scm/output-ps.scm: remove draw ez_ball.
10802
10803         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10804         EasyNotation context definition.
10805
10806         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10807         Text_interface and color for making easy note heads.
10808
10809         * lily/stencil.cc (with_color): new function.
10810
10811         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10812
10813         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10814         output routine. Zigzag now works in SVG too.
10815
10816         * scm/output-tex.scm (filledbox): idem.
10817
10818         * scm/output-svg.scm (filledbox): idem.
10819
10820         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10821
10822         * lily/lookup.cc (horizontal_line): use draw-line. 
10823
10824         * lily/system-start-delimiter.cc: remove old staff bracket code.
10825
10826         * mf/feta-haak.mf: further tweaks.
10827
10828         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10829
10830         * mf/feta-generic.mf: include feta-haak.
10831
10832         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10833
10834         * scm/framework-ps.scm (write-preamble): only load fonts if their
10835         filename is a string. 
10836
10837 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10838
10839         * scm/output-svg.scm (circle): support circle.
10840         (bracket): stub for bracket.
10841
10842         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10843         correct.
10844
10845 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10846
10847         * Documentation/user/lilypond.tely, advanced-notation.itely,
10848         basic-notation.itely, instrument-notation.itely, global.itely,
10849         introduction.itely, tutorial.itely: rearranging, editing,
10850         clean-up.
10851
10852         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10853         for compiling on FreeBSD.
10854
10855 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10856
10857         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10858         otf files.
10859
10860         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10861         bugfixes.
10862
10863         * VERSION: 2.5.26 released.
10864
10865         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10866
10867 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10868
10869         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10870         if printpagenumber is false.
10871
10872 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10873
10874         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10875         cache warning.
10876
10877         * lily/tie.cc (print): support dotted ties.
10878         
10879 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10880
10881         * scm/define-grobs.scm (all-grob-descriptions): switch off
10882         debugging
10883         (all-grob-descriptions): Arpeggio has Y-extent.
10884
10885         * scm/define-music-properties.scm (all-music-properties): document
10886         length-callback and start-callback as "read-only".
10887
10888         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10889         length-callback after creation. 
10890
10891         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10892         compressmusic -> compressMusic.
10893
10894         * ly/music-functions-init.ly (oldaddlyrics): idem.
10895
10896         * lily/parser.yy: NewLyricCombineMusic ->
10897         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10898
10899 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10900
10901         * ly/Welcome_to_LilyPond.ly: typo.
10902
10903 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10904
10905         * Documentation/user/lilypond.tely: move changing-defaults to be
10906         before global issues.
10907
10908         * Documentation/user/basic-notation.itely: move Transpose section
10909         here from advanced/Other.
10910
10911         * Documentation/user/changing-defaults.itely,
10912         advanced-notation.itely: move Fonts to advanced, edit.
10913
10914 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10915
10916         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10917         # before negative integers.
10918
10919 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10920
10921         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10922
10923         * Documentation/user/lilypond.tely: change Unified index to
10924         LilyPond index.
10925
10926         * Documentation/user/advanced-notation.itely,
10927         instrument-notation.itely: editing.
10928
10929 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10930
10931         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10932
10933         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10934
10935 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10936
10937         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10938         ly:port-move.  Needs to be stderr-specific on mingw.
10939         Run fixcc.
10940
10941 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10942
10943         * lily/general-scheme.cc (ly:port-move): Remove.
10944
10945         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10946         windows.
10947
10948         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10949         variables.  This eliminates the need for a gs.bat wrapper, which
10950         opens a console.
10951
10952         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10953         * scm/lily.scm (running-from-gui?): 
10954         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10955         artifact of not compiling with -mwindows.
10956
10957         * scm/editor.scm: Define PLATFORM.
10958
10959 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10960
10961         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10962         can start to cut & paste lilypond-book fragments.  
10963
10964         * scm/define-music-types.scm (music-descriptions): remove
10965         UntransposableMusic
10966
10967 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10968
10969         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10970
10971 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10972
10973         * Documentation/user/instrument-notation.itely: remove *Engraver.
10974
10975         * Documentation/user/advanced-notation.itely: edit, rearrange.
10976
10977 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10978
10979         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10980         findresource iso. findfont for CID CFF fonts.
10981
10982         * VERSION (PACKAGE_NAME): release 2.5.25
10983
10984         * ly/Welcome_to_LilyPond.ly: add  \version
10985
10986 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10987
10988         * Documentation/user/programming-interface.itely: move
10989         \displayMusic into its own section.
10990
10991         * Documentation/user/basic-notation.itely: finish editing.
10992
10993 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10994
10995         * flower/file-path.cc (find): don't throw away file_name.dir, but
10996         append to it. Fixes \include with directories.
10997
10998         * flower/include/file-path.hh (class File_path): don't derive from
10999         Array<String>.
11000
11001         * flower/include/file-name.hh (class File_name): remove to_str0()
11002
11003         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
11004         Hara_kiri_engraver in separate file.
11005
11006         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
11007         translation went wrong. Fixes vertically translated slurs.
11008
11009 2005-05-19  Graham Percival  <gperlist@shaw.ca>
11010
11011         * Documentation/user/basic-notaton.itely: editing.
11012
11013 2005-05-18  Graham Percival  <gperlist@shaw.ca>
11014
11015         * Documentation/user/macros.itexi, basic-notation.itely:
11016         add @commonprop (commonly used properties) macro.
11017
11018 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11019
11020         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
11021
11022         * scripts/lilypond-book.py (invokes_lilypond): new function
11023         (main): only run fontextract if invokes_lilypond() is true.
11024
11025         * lily/function-documentation.cc (ly_add_function_documentation):
11026         duh, use !=
11027
11028         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
11029
11030         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
11031
11032         * scm/lily.scm (running-from-gui?): lowercase Darwin.
11033
11034         * lily/function-documentation.cc (ly_add_function_documentation):
11035         use scm_hash_table_p() for checking.
11036
11037 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11038
11039         * Documentation/user/advanced-notation.itely (Text scripts):
11040         Change nonexisting @internalsref{Text markup} to @ref{Text
11041         markup}.  Change @internalsref{Text script} to
11042         @internalsref{TextScript}.
11043
11044         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
11045
11046 2005-05-17  Graham Percival  <gperlist@shaw.ca>
11047
11048         * Documentation/user/tutorial.itely, basic-notation.itely,
11049         changing-defaults.itely: remove duplicate cindex entries
11050         that appear on the same page.
11051
11052         * scm/define-grobs.scm: change default padding for TextSpanner.
11053
11054         * Documentation/topdocs/AUTHORS.texi: update email address.
11055
11056         * Documentation/user/global.itely: add info about \include.
11057
11058 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11059
11060         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
11061         when running-from-gui.
11062
11063         * scm/editor.scm (get-editor): Add platform defaults.
11064
11065         * scm/backend-library.scm (postscript->pdf): Typo.
11066
11067 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11068
11069         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
11070
11071         * lily/font-config.cc (init_fontconfig): add warning about cache.
11072
11073 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11074
11075         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
11076
11077 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
11078
11079         * lily/horizontal-bracket.cc (print): Take care of the direction
11080         property so brackets above the stave point downwards. 
11081
11082         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
11083         for HorizontalBracket so it doesn't end up within the stave.
11084
11085 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11086
11087         * lily/GNUmakefile (default): Typo.
11088
11089         * scm/lily.scm (PLATFORM): Export.
11090
11091         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
11092         load-font-via-GS, ttftool or fopencookie is broken on windows.
11093         
11094         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
11095         -dSAFER, that is broken on windows.
11096
11097 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11098
11099         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
11100         for FlexLexer.h
11101
11102         * scripts/lilypond-invoke-editor.scm: remove stray -
11103
11104 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
11105
11106         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
11107         Fixes deprecation warning.
11108
11109         * flower/include/string.icc (to_string): Only inline if
11110         -DSTRING_UTILS_INLINED.
11111
11112         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
11113         name.  Remove windows comment.
11114
11115         * scm/editor.scm (slashify): New function.
11116         (get-editor-command): Use it.
11117         (get-command-template): Do not alter editor command if
11118         environment value includes `%(file)s' magic.
11119
11120         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
11121         (dissect-uri): Use it.
11122         (unquote-uri): Bugfix.
11123
11124 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11125
11126         * scm/framework-ps.scm (write-preamble): add TTF rule.
11127
11128         * Documentation/topdocs/README.texi (Top): remove note about
11129         xdelta.
11130
11131         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
11132         requirement.
11133
11134         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
11135         function. Figure out where FlexLexer.h lives
11136
11137         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
11138         
11139 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11140
11141         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
11142         with Windows root in file name.
11143
11144         * scm/backend-library.scm (ly:system): Only redirect output (using
11145         system and shell, ugh) if /dev/null is writable.
11146
11147         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
11148         windows icon.
11149
11150         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
11151         on Mingw.
11152
11153         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
11154         click.
11155
11156         * flower/file-path.cc (is_dir, is_file): New function.  Actually
11157         use result of stat when available.
11158
11159         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
11160         absolute file name and root.
11161
11162         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
11163
11164         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
11165
11166         * flower/file-name.cc (slashify): Bugfix, do substitute if no
11167         slashes in file name.
11168
11169 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11170
11171         * Documentation/user/preface.itely (Preface): Run
11172         texinfo-all-menus-update.
11173
11174         * scm/editor.scm (get-editor-command): Bugfix: allow full
11175         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
11176
11177         * Documentation/pictures/lilypond-48.xpm: New file.
11178
11179         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
11180
11181         * ly/Welcome_to_LilyPond.ly: New file.
11182
11183         * lily/main.cc (main): Only identify if we have a terminal.
11184
11185         * scm/backend-library.scm (postscript->png)
11186         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
11187         non-/bin/sh).
11188
11189 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
11190
11191         * Documentation/topdocs/AUTHORS.texi: polish, update.
11192
11193 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11194
11195         * Documentation/user/preface.itely (Notes for version 2.6): new
11196         notes for 2.6
11197
11198         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
11199         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
11200         is not fully contained" warnings.
11201
11202         * lily/slur-scoring.cc (get_bound_info): remove warning.
11203
11204         * lily/staff-symbol-engraver.cc (process_music): start initial
11205         spanner in process_music(). This fixes overrides of StaffSymbol
11206         properties.
11207
11208         * scm/framework-pdf.scm (Module): remove.
11209
11210         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
11211
11212         * lily/ambitus-engraver.cc: formatting cleanups.
11213
11214         * mf/feta-solfa.mf (Module): remove.
11215
11216         * ChangeLog: more details about contributions.
11217
11218 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11219
11220         * lily/align-interface.cc (align_elements_to_extents): warn if
11221         called too early. Fixes: disappearing-staff-lines.ly
11222
11223         * VERSION (PACKAGE_NAME): release 2.5.24
11224
11225 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11226
11227         * stepmake/aclocal.m4: Typo.
11228
11229         * flower/string.cc (substitute): Take two strings or two
11230         characters.  Update callers.
11231
11232 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11233
11234         * flower/file-name.cc (File_name): Slashify.
11235
11236         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
11237
11238         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
11239
11240         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
11241
11242         * configure.in (gui_b): Use it.
11243
11244         * lily/lilypond.rc.in: New file.
11245
11246         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
11247
11248 2005-05-12  Graham Percival  <gperlist@shaw.ca>
11249
11250         * Documentation/user/advanced-notation.itely: edit of Text
11251         section; clarify text scripts vs. text markup.
11252
11253 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11254
11255         * lily/multi-measure-rest-engraver.cc
11256         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
11257         separation items on start. Fixes mm rests in start of score.
11258
11259         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
11260         don't access StaffSymbol if not there.
11261         Fixes: crash-staff-symbol-engraver.ly.
11262
11263         * lily/instrument-name-engraver.cc (class
11264         Instrument_name_engraver): data member first_. Create
11265         InstrumentName on start. 
11266
11267 2005-05-12  Graham Percival  <gperlist@shaw.ca>
11268
11269         * Documentation/user/instrument-notation.itely: add guitar
11270         position.
11271
11272         * Documentation/user/introduction.itely,
11273         Documentation/user/lilypond.tely,
11274         Documentation/user/tutorial.itely: begin pruning
11275         unused (duplicated) cindex entries and misc cleanup.
11276
11277 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
11278
11279         * input/test/volta-chord-names.ly: Bring the explanation up to
11280         date.
11281
11282 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
11283
11284         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
11285         Specify `@documentencoding utf-8' for html, ignore warnings.
11286
11287 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
11288
11289         * THANKS: Added bughunters.
11290
11291 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
11292
11293         * lily/main.cc: update help string for `lilypond -H'.
11294
11295         * po/fi.po: update.
11296         
11297 2005-05-10  Graham Percival  <gperlist@shaw.ca>
11298
11299         * Documentation/user/advanced-notation.itely: minor fixes.
11300
11301 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11302
11303         * scm/editor.scm: New module.
11304
11305         * scm/lily.scm (gui-main): Use it.
11306
11307         * scm/framework-gnome.scm (spawn-editor): Use it.
11308
11309         * scripts/lilypond-invoke-editor.scm: Use it in new script.
11310
11311 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11312
11313         * scm/framework-ps.scm (load-font-via-GS):  new function.
11314
11315         * lily/pango-font.cc (pango_item_string_stencil): add support for
11316         CID keyed font.
11317
11318         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
11319
11320 2005-05-10  Graham Percival  <gperlist@shaw.ca>
11321
11322         * Documentation/user/basic-notation.itely: add @ref.
11323
11324         * Documentation/user/advanced-notation.itely: add example
11325         of 5/8 beaming.
11326
11327 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11328
11329         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
11330
11331         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
11332         going through ps2pdf wrappers.
11333
11334 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
11335
11336         * Documentation/user/instrument-notation.itely: petrucci note
11337         heads: updated docu
11338
11339         * input/regression/note-head-style.ly: updated regression test;
11340         indentation fixes
11341
11342         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
11343         heads as default
11344
11345         * mf/parmesan-heads.mf: minor editing; use musicological names
11346         (rather than optical description) as note head names
11347
11348         * scm/output-lib.scm: complete petrucci heads
11349
11350 2005-05-09  Pal Benko  <benkop@freestart.hu>
11351
11352         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
11353         heads, but bigger)
11354
11355 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11356
11357         * lily/main.cc (main_with_guile): Remove no files check.
11358
11359         * lily/main.cc (ly:usage): Export to Scheme.
11360
11361         * scm/lily.scm (no-files-handler): New function.
11362
11363         * scm/lily.scm (lilypond-main): Use it.
11364
11365         * configure.in (gui_b): Add mbrtowc checking.
11366         Resurrect [utf8/]wchar.h checking.
11367
11368 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11369
11370         * Documentation/user/advanced-notation.itely (Metronome marks):
11371         Add link to the program reference for MetronomeMark
11372
11373         * Documentation/user/lilypond-book.itely (An example of a
11374         musicological document): Correct the example using psfonts 
11375
11376 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
11377
11378         * po/fi.po: update after a lesson how to update entries against
11379         source.
11380         
11381         * po/TODO: document the lesson.
11382
11383 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11384
11385         * configure.in (gui_b): remove wcrtomb checking.
11386
11387         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
11388         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
11389
11390 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11391
11392         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
11393         keep Scheme expressions and strings unmodified when doing the
11394         conversion to postfix notation for slurs and beams. Should
11395         hopefully solve most related conversion problems. 
11396
11397         * Documentation/user/lilypond-book.itely : Clarify and correct how
11398         to call dvips with -h psfonts.
11399
11400 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11401
11402         * Documentation/user/instrument-notation.itely (Entering lyrics):
11403         Typo.  Fixes build.
11404
11405 2005-05-09  Graham Percival  <gperlist@shaw.ca>
11406
11407         * Documentation/user/lilypond-book.itely: document PSFONTS file.
11408
11409         * Documentation/user/lilypond.tely, lilypond-book.itely,
11410         tutorial.itely: change references to 2.5.x to 2.6.x.
11411
11412         * Documentation/user/instrument-notation.itely: clarified \addlyrics
11413         vs \lyricmode.
11414
11415         * Documentation/user/invoking.itely: remove old info about
11416         lilypond-profile.
11417
11418         * Documentation/topdocs/INSTALL.texi: remove old info about
11419         lilypond-profile, add warning about needing international fonts
11420         to build docs.
11421
11422 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11423
11424         * lily/include/grob-info.hh (class Grob_info): make data member
11425         private. Changes throughout.
11426
11427         * input/regression/alignment-order.ly: new file. 
11428
11429         * lily/vertical-align-engraver.cc (acknowledge_grob): read
11430         alignAboveContext and alignBelowContext
11431
11432 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11433
11434         * lily/pfb.cc (LY_DEFINE): add cast.
11435
11436         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11437         matches .otf
11438         (write-preamble): warn about unknown fonts.
11439
11440         * lily/pfb.cc (Module): new function ly:otf->cff
11441
11442         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11443         (get_otf_table): new function.
11444
11445 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11446
11447         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11448         iso. ps2png.
11449
11450 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11451
11452         * po/fi.po: apply second round of update.
11453
11454 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11455
11456         * scm/x11-color.scm (make-x11-color-handler): don't use
11457         #\sp. Apparently doesn't work on all platforms. 
11458
11459 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11460
11461         * Documentation/user/advanced-notation.itely, putting.itely,
11462         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11463
11464 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11465
11466         * VERSION (PACKAGE_NAME): release 2.5.23
11467
11468 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11469
11470         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11471         convert to utf-8.
11472
11473         * THANKS: Add translators for this release, convert to utf-8.
11474
11475         * mf/GNUmakefile (MFTRACE_FLAGS):
11476         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11477         outdir as option (WAS: hardcoded).
11478
11479 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11480
11481         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11482         finished_span_
11483
11484         * THANKS: add Hans Forbrich.
11485
11486         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11487
11488         * Documentation/user/basic-notation.itely (Staff symbol): document
11489         start/stop staff. Reference to ossia.ly
11490
11491         * input/test/ossia.ly: new example using stop and startStaff.
11492
11493         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11494         in other words, don't create "|" barline at start of the score.
11495         (start_translation_timestep): don't set whichBar for start of score.
11496
11497         * input/regression/staff-halfway.ly: use new functionality.
11498
11499         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11500         start and stop staff based on events.
11501
11502         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11503
11504         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11505
11506 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11507
11508         * Documentation/user/programming-interface.itely (How markups work
11509         internally ): remove \encoding reference.
11510
11511 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11512
11513         * scripts/convert-ly.py: Attempt to do a smarter update of 
11514         text markups from versions < 1.9.0 with arbitrary nesting.
11515
11516 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11517
11518         * po/fi.po: convert to utf-8, and update.
11519
11520 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11521
11522         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11523
11524         * lily/*.cc: more <? >? to min/max changes
11525
11526         * lily/include/interpretation-context-handle.hh: rename
11527         Interpretation_context_handle to Context_handle.
11528
11529 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11530
11531         * input/regression/GNUmakefile (local_delete): use `find` together 
11532         with `xargs` to avoid too long argument-lists in cmd line.
11533
11534 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11535
11536         * Documentation/user/introduction.itely: updates "About this manual".
11537
11538         * Documentation/user/advanced-notation.itely,
11539         invoking.itely: minor fixes.
11540
11541 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11542
11543         * COPYING: add font exception. Update FSF address. 
11544
11545         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11546         should be taken without child context.
11547
11548         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11549
11550         * scm/define-markup-commands.scm (triangle): new command, as
11551         robust replacement for unicode Delta/Triangle.
11552
11553 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11554
11555         * ps/music-drawing-routines.ps: add fillp argument.
11556
11557         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11558
11559         * lily/font-config.cc (init_fontconfig): don't add cff/
11560
11561         * VERSION (PACKAGE_NAME): release 2.5.22
11562
11563         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11564
11565         * lily/grace-engraver.cc (consider_change_grace_settings): use
11566         is_alias(). Fixes problem with CueVoice grace notes. 
11567
11568         * lily/simultaneous-music-iterator.cc (construct_children): call
11569         Music_iterator::quit() for iterators that start out invalid. This
11570         fixes indefinitely continuing contexts.
11571
11572         * buildscripts/substitute-encoding.py: new file
11573
11574         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11575         missing @end 
11576
11577         * scripts/lilypond-book.py (write_if_updated): print file name.
11578
11579         * Documentation/user/basic-notation.itely (Explicitly
11580         instantiating voices): idem.
11581
11582         * Documentation/user/advanced-notation.itely (Text spanners):
11583         remove stray { } 
11584
11585         * lily/context.cc (default_child_context_name): the default child
11586         is now first in accepts_list_.
11587
11588         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11589         \defaultchild to all relevant contexts.  This fixes:
11590         drums-pitch.ly.
11591
11592         (Probably also fixes similar problems with ancient
11593         transcriptions getting CueVoices instead of the desired voices.)
11594  
11595         * lily/context-def.cc (get_default_child): new function.
11596         (get_accepted): place default child in front of list.
11597
11598         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11599
11600         * lily/include/context-def.hh (struct Context_def): add
11601         default_accept_
11602
11603 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11604
11605         * scm/define-grobs.scm: remove "remove-first" line, since
11606         the absent property is set to #f anyway.
11607
11608         * Documentation/user/basic-notation.itely,
11609         advanced-notation.itely, instrument-notation.itely: minor
11610         fixes.
11611
11612         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11613
11614         * Documentation/user/advanced-notation.itely,
11615         changing-defaults.itely: consolidate Text stuff in
11616         advanced notation.
11617
11618         * Documentation/user/global.itely: better docs for \header.
11619
11620         * Documentation/user/putting.itely: new chapter; placeholder
11621         for future expansion.
11622
11623         * Documentation/user/examples.itely: moved "suggestions for
11624         writing LP files" section into putting.itely.
11625
11626         * Documentation/user/lilypond.itely: added new chapter,
11627         fixed the short table of contents.
11628
11629 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11630
11631         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11632         infinity for unfeasible beams.
11633
11634         * make/lilypond.fedora.spec.in (Group): idem.
11635
11636         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11637
11638         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11639
11640         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11641         fonts directly.
11642
11643         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11644
11645         * mf/GNUmakefile: remove all CFF rules.
11646
11647         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11648
11649         * lily/open-type-font-scheme.cc (LY_DEFINE):
11650         new function ly:otf-font-table-data.
11651         (LY_DEFINE): new function otf-font?
11652
11653 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11654
11655         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11656         ($(outdir)/Fontmap.lily): idem.
11657
11658         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11659         for PFAEmmentaler-XXX.pfa. 
11660
11661         * Documentation/user/music-glossary.tely (accidental): NL
11662         translation of accidental.
11663
11664 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11665
11666         * flower/include/international.hh: Bugfix: include "string.hh".
11667
11668         * lily/include/mingw-compatibility.hh: New file.
11669
11670         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11671
11672         * configure.in: Search for mingw wcrtomb library.
11673
11674 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11675
11676         * scripts/convert-ly.py: Bug fix
11677
11678         * Documentation/user/changing-defaults.itely (Common tweaks):
11679         Added example where the context has to be specified explicitly
11680         (MetronomeMark). 
11681
11682 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11683
11684         * scripts/lilypond-book.py (ly_options): set timing to #f for
11685         notime option.
11686
11687         * scripts/convert-ly.py (conv): typo.
11688
11689         * flower/*.cc: remove <? and >?
11690         
11691         * lily/*.cc: remove <? and >?
11692
11693         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11694         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11695         editor.
11696
11697 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11698
11699         * lily/part-combine-engraver.cc: add space to variable list.
11700
11701 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11702
11703         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11704         remove-first to false (matches docs)
11705
11706         * Documentation/user/advanced-notation.itely: corrected docs
11707         concerning remove-first.
11708
11709 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11710
11711         * lily/part-combine-engraver.cc: make sure that the relevant
11712         properties are included in the documentation.
11713
11714 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11715
11716         * Documentation/user/lilypond-book.itely: Bernard's docs
11717         for \betweenLilyPondSystem.
11718
11719 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11720
11721         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11722         remarks.
11723
11724 2005-04-28  Pal Benko  <benkop@freestart.hu>
11725
11726         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11727         only on vertical lines of flexa shape, and use a constant
11728         thickness value for horizontal lines (patch slightly modified by
11729         Jürgen Reuter)
11730
11731         * lily/include/mensural-ligature.hh: make 2 comments clearer
11732
11733 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11734
11735         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11736         to need_extra_horizontal_space; bugfix: use class scope to avoid
11737         global namespace pollution
11738
11739         * Documentation/user/instrument-notation.itely (ligatures): added
11740         comment on possible future syntax change and how to work around
11741
11742         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11743         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11744         intervals (fixes agnus dei example)
11745
11746         * Documentation/user/instrument-notation.itely (white mensural
11747         ligatures): selected a more illustrative example
11748
11749 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11750
11751         * Documentation/index.html.in: specify utf-8 charset in meta content.
11752
11753 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11754
11755         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11756         empty 2nd page for single page.
11757
11758         * scm/lily.scm: remove p&c definitions.
11759
11760         * po/zh_TW.po (Module): new translation.
11761
11762         * lily/lily-guile.cc (ly_chain_assoc): remove.
11763
11764         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11765         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11766
11767 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11768
11769         * lily/beaming-info.cc: remove infinity_i
11770
11771         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11772
11773 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11774
11775         * Documentation/user/basic-notation.itely,
11776         instrument-notation.itely, advanced-notation.itely,
11777         changing-defaults.itely: minor fixes.  Added docs
11778         for colors to advanced-notation.itely.
11779
11780         * Documentation/user/advanced-notation.itely: fixed compile
11781         problem and added Bernard's x11-color doc patch.
11782
11783 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11784
11785         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11786         alright this time round.
11787
11788 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11789
11790         * Documentation/topdocs/INSTALL.texi (Top): idem.
11791
11792         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11793
11794         * VERSION (MAJOR_VERSION): release 2.5.21
11795
11796         * scm/output-ps.scm (grob-cause): bugfix.
11797
11798 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11799
11800         * cygwin/*: Update.
11801
11802         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11803         stuff.
11804
11805         * scm/output-ps.scm (grob-cause): Bugfix.
11806
11807         * scm/lily.scm (ly:load): Remove x11-color.
11808
11809         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11810         quote executable, fixes getting version from program --with
11811         --options.
11812         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11813         $ac_exeect.
11814
11815         * Documentation/user/GNUmakefile: Only build music-glossary with
11816         rendered lilypond snippets during web.
11817
11818 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11819
11820         * po/de.po: update.
11821
11822         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11823
11824 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11825  
11826         * scripts/abc2ly:
11827         second title line append with punctuation dash character;
11828         encode abc2ly python strings in utf-8
11829        
11830 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11831
11832         * scripts/abc2ly fix chords (again)
11833  
11834 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11835
11836         * scm/x11-color.scm: new file
11837         All x11 color names can be accessed with:
11838         #(x11-color 'ColorName),
11839         #(x11-color "ColorName") or:
11840         #(x11-color "color name")
11841         If the x11 color name is not recognised then it defaults
11842         to black
11843
11844         * scm/lily.scm: amended to call scm/x11-color.scm
11845
11846 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11847
11848         * Documentation/user/invoking.itely (Reporting bugs): comment out
11849         reference to online PNG bug repository.
11850
11851 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11852
11853         * lily/translator-scheme.cc (ly:translator-property): Remove.
11854         Update callers.
11855
11856         * lily/context-scheme.cc (ly:context-now): Move from translator.
11857         Update callers.
11858
11859 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11860
11861         * input/regression/grid-lines.ly (skips): refine example.
11862
11863         * scm/define-context-properties.scm
11864         (all-user-translation-properties): doc autoBeamCheck
11865
11866         * input/regression/grid-lines.ly (Module): new file.
11867
11868         * lily/grid-point-engraver.cc (Module): new file.
11869
11870         * lily/grid-line.cc (Module): new file.
11871
11872         * lily/grid-line-span-engraver.cc (Module): new file.
11873
11874         * lily/grid-line-interface.cc (Module): new file.
11875
11876 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11877
11878         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11879         missing parameter, actualy cdr through list.  Actually return a
11880         list with ENTRY removed (was '()).
11881
11882         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11883         opened.
11884         (do_conversion): Fix printing of continuation comma.
11885
11886         * Documentation/user/advanced-notation.itely (Beam formatting):
11887         Remove refbugs about compound time and mixed duration.
11888
11889         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11890         modulo moments explicitely.
11891
11892         * lily/moment.cc (operator %): New function.
11893
11894         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11895
11896         * lily/translator-scheme.cc (ly:translator-now,
11897         ly:translator-property): New function.
11898
11899         * scm/auto-beam.scm (default-auto-beam-check): New function.
11900
11901         * lily/auto-beam-engraver.cc (test_moment): Use it.
11902
11903         * flower/rational.cc (operator %): Bugfix.
11904
11905 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11906
11907         * scripts/abc2ly: Bugfix
11908
11909 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11910
11911         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11912         %'s on EndFont comment.
11913
11914         * lily/ledger-line-spanner.cc: some more words of explanation.
11915
11916 2005-04-20  John Williams <williams@tni.com>  
11917         
11918         * scripts/lilypond-book.py: htmlquote bugfix.
11919         Allow snippets to be given distinct filenames.
11920         Allow the default alt text to be overridden.
11921
11922 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11923
11924         * ly/performer-init.ly: Bugfix
11925
11926         * THANKS: Added bughunters.
11927
11928 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11929
11930         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11931
11932         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11933         position (was: use modulo measure length).
11934
11935         * configure.in (no gui_b): Remove optional gtk+ requirement.
11936
11937 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11938
11939         * Documentation/user/basic-notation.itely (Pitches): add
11940         LedgerLineSpanner.
11941
11942         * lily/dynamic-engraver.cc (process_music): set right bound to
11943         script if present. Else, do not set.
11944         (acknowledge_grob): only set right bound of finished spanner to
11945         note column if no other bound is set.
11946
11947         * python/lilylib.py (make_ps_images): switch back to png16m.
11948         
11949 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11950
11951         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11952         writing up to date file.  Add dvips usage suggestion.
11953
11954         * scripts/convert-ly.py: Fix error message.
11955         Print usage if no files on command line.
11956         (usage): Add example usage.
11957
11958         * input/test/compound-time.ly: New file.
11959
11960         * input/test/circle.ly: New file.
11961
11962         * Documentation/topdocs/NEWS.tely: Use them.
11963
11964         * input/test/boxed-stencil.ly: Remove \score.
11965
11966         * buildscripts/mf-to-table.py (base): Add .log dependency.
11967
11968         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11969         pfa's.  Add .log dependency
11970
11971         * scm/define-markup-commands.scm (lower): New command.
11972
11973         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11974         make it default.
11975
11976 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11977
11978         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11979         also to finished cresc as right bound. This fixes:
11980         skip-string-decresc.ly
11981
11982         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11983         relative_coordinate if extent is empty.
11984
11985         * lily/stem.cc (width_callback): determine correct extent if flag
11986         is not there. This fixes slur-no-flag.ly
11987
11988         * lily/grace-engraver.cc (consider_change_grace_settings): new
11989         function.
11990         (initialize): also consider_change_grace_settings() on
11991         initialization. Fixes large grace notes at start of score.
11992
11993         * lily/break-align-interface.cc (do_alignment): don't translate if
11994         total_extent is empty.
11995
11996         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11997
11998 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11999
12000         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
12001         with slash.
12002
12003 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12004
12005         * stepmake/aclocal.m4: Remove tfm_path.
12006
12007 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12008
12009         * scm/music-functions.scm (markup-expression->make-markup): fix
12010         bug with cons arguments of markup commands.
12011         (music->make-music): fix music expression property list building
12012
12013 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12014
12015         * aclocal.m4: Massage package names.
12016
12017         * SCons updates.
12018
12019 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12020
12021         * VERSION (PACKAGE_NAME): release 2.5.20
12022
12023         * lily/stem.cc (calc_stem_info): add minimum Y extent of
12024         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
12025
12026         * lily/percent-repeat-engraver.cc (try_music): add measure before
12027         next_moment to future processing moment. Fixes:
12028         percent-repeat-mm-rest.ly
12029         (process_music): don't add moment for 2nd time.
12030
12031         * input/regression/repeat-percent.ly: add mmrests as extra test.
12032
12033         * lily/axis-group-engraver.cc (acknowledge_grob): read
12034         keepAliveInterfaces to decide what to kill.
12035
12036         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
12037         percent-repeat-interface to keepAliveInterfaces. This fixes
12038         percent-repeat-harakiri.
12039
12040 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12041
12042         * SCons updates.
12043
12044 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12045
12046         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
12047
12048         * aclocal.m4: remove --enable-tfm-path configure option
12049
12050         * input/test/ancient-font.ly (lowerStaff): clef name errors.
12051
12052         * scm/backend-library.scm (postscript->png): newline after
12053         finishing command.
12054
12055         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
12056         (LY_DEFINE): ly:paper-score-paper-systems: new function 
12057
12058         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
12059
12060         * lily/score.cc (default_rendering): use Music_output too.
12061
12062         * input/test/chord-names-languages.ly (Module): rename file.
12063
12064         * lily/text-spanner.cc: add bound-padding.
12065
12066         * lily/paper-book.cc (systems): accept Paper_score
12067         iso. Paper_system vector. 
12068
12069         * input/regression/line-arrows.ly: new file.
12070
12071         * lily/paper-score.cc (process): run get_paper_systems() only once.
12072
12073         * lily/line-spanner.cc (line_stencil): add arrows.
12074
12075 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
12076
12077         * lily/line-interface.cc (make_arrow): new function. 
12078         (arrows): idem.
12079
12080 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
12081
12082         * input/test/chord-names-german.ly: update for italian/french
12083         chords.
12084         
12085         * Documentation/user/instrument-notation.itely (Printing chord
12086         names): update.
12087
12088 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12089
12090         * lily/include/paper-score.hh (class Paper_score): remove unused
12091         prototypes.
12092
12093         * lily/book.cc (process): add -COUNT to midi output.
12094
12095         * lily/score.cc (book_rendering): remove outname argument
12096         (book_rendering): return list of Music_outputs. 
12097
12098         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
12099
12100         * lily/book.cc (process): loop over Music_outputs returned from
12101         Score::book_rendering().
12102
12103         * lily/*.cc (width_callback): remove spurious "unused" warnings
12104         for assert (axis==[XY]_AXIS); 
12105
12106         * lily/include/music-output.hh (class Music_output): smobify class.
12107
12108         * lily/include/paper-score.hh (class Paper_score): make members
12109         private.
12110
12111         * lily/performance.cc (process): return #f iso. #<undefined>. This
12112         prevents #<undefined> leaking into GUILE-userspace.
12113
12114 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12115
12116         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
12117
12118 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
12119
12120         * scm/chord-name.scm : support for italian and french
12121         chords names.
12122
12123         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
12124         a space defined by chordPrefixSpacer when the root name is
12125         direclty followed by a prefix.
12126
12127         * ly/engraver-init.ly : chordPrefixSpacer       
12128         * scm/define-context-properties.scm : chordPrefixSpacer
12129         * ly/property-init.ly : italianChords, frenchChords 
12130
12131 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12132
12133         * mf/feta-din.mf: Remove.
12134
12135         * mf/GNUmakefile (fontdir): Bugfix.
12136
12137         * mf/SConstruct: Some updates.
12138
12139         * SConstruct: Require pkg-config.
12140         (test_program): Bugfix for double digit version compares, use
12141         integer (not string-) compare.
12142         Optionally require gs 8.14.
12143
12144         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
12145
12146         * lily/*: s/ifdef HAVE_*/if have/.
12147
12148         * SConstruct (test_lib): New function.  Update pkg-config and some
12149         other requirements.
12150
12151         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
12152         freetype, pangof2t.
12153
12154 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12155
12156         * po/lilypond.pot, ...: Update using bison-CVS.
12157
12158         * python/lilylib.py (make_ps_images): Fixo.
12159
12160 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12161
12162         * python/lilylib.py (make_ps_images): typo.
12163
12164         * configure.in (gui_b): make bison optional.
12165
12166         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
12167
12168 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
12169
12170         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
12171         with one parameter can be defined in a LaTeX file when processed
12172         by lilypond-book this will be evaluated between the systems of
12173         a multi-system score. The parameter is the number of systems processed.
12174
12175 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12176
12177         * python/lilylib.py (make_ps_images): Escape newline.
12178
12179         * Documentation/user/music-glossary.tely: Run
12180         texinfo-all-menus-update.
12181
12182 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12183
12184         * scm/lily-library.scm (old-relative-not-used-message)
12185         (version-not-seen-message): Add input-file-name-location to message.
12186
12187         * lily/parser.yy (lilypond): Add token aliases.
12188
12189         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
12190         not confuse with alteration.
12191         (alteration): Add.
12192
12193 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12194
12195         * python/lilylib.py (make_ps_images): use -dEPSCrop
12196
12197         * VERSION (PACKAGE_NAME): release 2.5.19 
12198
12199         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
12200         only put xrefs in info documentation.
12201
12202         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
12203         .pdf rule to tex-rules.make.
12204
12205         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
12206         from -systems.* output.
12207
12208         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
12209         directly, remove -$(PAGESIZE) target.
12210
12211         * input/test/embedded-postscript.ly: update.
12212
12213 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12214
12215         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
12216
12217         * Documentation/user/changing-defaults.itely (Font selection):
12218         document font-name.
12219
12220         * input/regression/font-name.ly: show Pango fonts for
12221         font-name. Update example. 
12222
12223         * lily/pango-select.cc (properties_to_pango_description): don't
12224         convert symbol font-size to number, but use to lookup.
12225
12226         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
12227
12228         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
12229         (NAME . FILE-NAME) tuples for font descriptions. 
12230         (write-preamble): display BeginFont DSC comments.
12231
12232         * python/fontextract.py (write_extracted_fonts): new file. Extract
12233         font resources from a PS file.
12234
12235         * scripts/lilypond-book.py (option_definitions): --psfonts option.
12236         (Compile_error.process_include): do_file returns chunks.
12237
12238         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
12239
12240         * make/lysdoc-targets.make: .texi is .PRECIOUS
12241
12242         * scripts/lilypond-book.py (write_if_updated): new function.
12243
12244 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12245
12246         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
12247
12248 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12249
12250         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
12251
12252         * input/regression/markup-syntax.ly: remove \score.
12253
12254         * scm/define-markup-commands.scm (draw-circle): add fill argument
12255
12256         * scm/stencil.scm (make-circle-stencil): add fill argument
12257
12258         * ps/music-drawing-routines.ps: add fill argument.
12259
12260         * ly/performer-init.ly: add CueVoice to MIDI too.
12261
12262         * ps/music-drawing-routines.ps: new routine BeginEPSF /
12263         EndEPSF.
12264
12265         * input/regression/markup-eps.ly: new file.
12266
12267         * scm/framework-ps.scm (write-preamble): change order: vars should
12268         be inited before procedures.
12269
12270         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
12271         for EPS files.
12272
12273         * scm/define-markup-commands.scm (epsfile): add epsfile command.
12274
12275 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12276
12277         * configure.in (gui_b): add check for ghostscript 8.15
12278
12279 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12280
12281         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
12282         start of line. Fixes cresc-after-newline.ly
12283
12284         * lily/source-file.cc (file_line_column_string): use get_column().
12285
12286 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12287
12288         * lily/source-file.cc (get_column): utf-8 support for column numbers.
12289
12290 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12291
12292         * lily/*: use message () iso progress_indication () for messages.
12293         Revise/uniformise user messages.
12294
12295         * flower/warn.cc (progress_indication): New function.
12296         (message): Use it.  Fixes newline problems.
12297
12298         * config.make.in (webdir): Sort out install dirs.
12299
12300         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
12301
12302         * python/lilylib.py (command_name): Bugfix.
12303         (make_ps_images):
12304
12305 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
12306
12307         * lily/main.cc: --help says what types of backends are availabe
12308
12309 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12310
12311         Fix ./VERSION dependency, and without need to reconfigure.
12312
12313         * lily/main.cc (setup_paths): Update.
12314
12315         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
12316
12317         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
12318
12319         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
12320         Add \line for some simplistic cases.
12321
12322         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
12323
12324 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12325
12326         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
12327         to compile LY files (useful for adding eg. "-I" args)
12328         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
12329         2Gnome command for gnome backend.
12330         (LilyPond-command-formatgnome): call the 2Gnome command. key
12331         binding: C-c C-g
12332
12333 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12334
12335         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
12336         depend on all PNG images.
12337
12338 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12339
12340         * GNUmakefile.in: Bugfix: also link .map files.
12341
12342 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12343
12344         * scm/music-functions.scm (music->make-music): generate 
12345         a (make-music ...) sexpr from a music expression.
12346         (display-scheme-music): use guile pretty printer to display the
12347         make-music sexpr.
12348
12349 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12350
12351         * ly/engraver-init.ly: reindent.
12352         Add CueVoice.
12353
12354         * scm/music-functions.scm (music-pretty-string): handle moments
12355         too.
12356         (music-pretty-string): only print non-empty lists.
12357         (cue-substitute): create CueVoice context, which has smaller type.
12358
12359         * lily/moment-scheme.cc (LY_DEFINE): new methods
12360         ly:moment-grace-{numerator,denominator}
12361
12362         * lily/context-handle.cc: remove quit() method. 
12363
12364         * lily/font-config.cc (init_fontconfig): be verbose about font path.
12365         (init_fontconfig): success is 0, not !0
12366
12367 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12368
12369         * mf/feta-nummer-code.mf (code): add plus glyph.
12370
12371         * lily/tie.cc (print): idem.
12372
12373         * lily/slur.cc (print): don't use thickness property for
12374         slur shape-thickness.
12375
12376         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
12377         while adding stencils.
12378
12379         * scm/define-markup-commands.scm (with-color): with-color markup
12380         command.
12381         (whiteout): new markup command 
12382         (filled-box): new markup command
12383
12384 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12385
12386         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
12387         test for PDF docs.
12388
12389         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
12390         PFAAybabtu-Regular.  Fixes feta font in PDFs.
12391         
12392         Notes for tetex-3.0 make web:
12393            psclean.map: s/uhv8a/uhvr8a/
12394            config.ps add:
12395                 p +psfonts_t1.map
12396                 p +psclean.map
12397                 p +typeface.map
12398
12399 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12400
12401         * scm/music-functions.scm (music-pretty-string): fix bug with
12402         string argument.
12403
12404 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12405
12406         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
12407
12408 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12409
12410         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
12411         only process options if they're there.
12412         (write_file_map): add version-seen? to snippet-map.ly
12413
12414 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12415
12416         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
12417         formatting cleanups.
12418
12419         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
12420         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
12421
12422 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12423
12424         * scm/framework-ps.scm (ps-font-command): don't hash, just use
12425         name directly.
12426
12427         * lily/main.cc (setup_paths): either add mf/out to search path or 
12428         fonts/{otf,type1,etc}
12429         
12430         * lily/font-config.cc (init_fontconfig): either add mf/out to
12431         FontConfig or fonts/{otf,type1,etc}
12432
12433         * GNUmakefile.in: don't put mf/ link in share/ dir.
12434
12435         * lily/staff-spacing.cc: move same-direction-correction to
12436         note-spacing-interface
12437
12438         * scm/lily.scm (lilypond-main): use variable argument count for
12439         exception handler.
12440
12441         * lily/font-config.cc (init_fontconfig): add operator pacification
12442         message.
12443
12444         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12445
12446         * buildscripts/gen-emmentaler-scripts.py (i): generate
12447         PFAEmmentaler as well.
12448
12449         * scm/framework-ps.scm (munge-lily-font-name): new function
12450         (write-preamble): hack: insert PFA equivalent of CFF into
12451         .PS. This makes LilyPond output printable on normal PS printers
12452         again.
12453
12454         * buildscripts/gen-emmentaler-scripts.py (i): generate
12455         PFAEmmentaler.pfa aswell.
12456
12457 2005-04-06  John Williams <williams@tni.com>  
12458         
12459         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12460         
12461 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12462
12463         * scm/page-layout.scm (default-page-make-stencil): always combine
12464         the header stencil, even if empty. This prevents the body text to
12465         reach up to the margins.
12466
12467         * po/rw.po (Module): new file, for Kinyarwanda.
12468
12469         * input/test/spacing-optical.ly (Module): new file.
12470
12471         * lily/staff-spacing.cc: add same-direction-correction
12472
12473 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12474
12475         * Documentation/user/introduction.itely (Engraving): Comment-out
12476         non-existent file.
12477
12478 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12479
12480         * scm/define-grob-properties.scm (all-user-grob-properties): add
12481         same-direction-correction
12482
12483         * VERSION: release 2.5.18
12484
12485 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12486
12487         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12488         dereferencing.  Fixes make web.
12489
12490         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12491         errno.h.
12492
12493         * Documentation/user/: Fix links.
12494
12495 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12496
12497         * lily/text-interface.cc (Module): rename from text-item.cc
12498
12499         * input/regression/apply-output.ly (texidoc): function naming fix.
12500
12501         * lily/time-signature-performer.cc (derived_mark): new function.
12502
12503         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12504
12505         * scripts/lilypond-book.py (find_linestarts): new function.
12506         (find_toplevel_snippets): keep track of line numbers.
12507
12508         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12509         all key changes.
12510
12511         * ly/declarations-init.ly (partCombineListener): use
12512         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12513
12514         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12515
12516 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12517
12518         * lily/text-item.cc: Fix link.
12519
12520         * Documentation/user/changing-defaults.itely (Changing defaults):
12521         Fix programs reference links.
12522
12523         * Documentation/user/music-glossary.tely: Convert to utf-8.
12524
12525 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12526
12527         * make/lilypond-vars.make: remove TEXMF from variables.
12528         remove DEB_BUILD pk font variables.
12529         remove GUILE_LOAD_PATH
12530         remove TeX memory vars.
12531
12532 2005-04-04  Werner Lemberg  <wl@gnu.org>
12533
12534         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12535
12536 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12537
12538         * ps/lilyponddefs.ps: remove reencode-font
12539
12540         * lily/simple-spacer.cc (add_columns): also compare
12541         directly. Column rank doesn't distinguish between broken and
12542         unbroken columns. This fixes large spaces before time sig changes.
12543
12544         * Documentation/user/point-and-click.itely: document ly:set-option.
12545
12546         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12547         point_and_click_global is set.
12548
12549         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12550         ly:set-option argument.
12551
12552 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12553
12554         * GNUmakefile.in: Include symlinks in webball.
12555
12556         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12557         source dir for split and non-split manuals.
12558
12559         * Documentation/user/*y: Fix @uref/@inputfile links for
12560         split/non-split HTML documents.
12561
12562         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12563         .ps.gz.
12564         
12565 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12566
12567         * GNUmakefile.in: Add newline.
12568
12569 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12570
12571         * tex/lilyponddefs.tex: use color instead of xcolor
12572         * scm/output-tex.scm: minor editing
12573
12574 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12575
12576         * scm/music-functions.scm (display-scheme-music): pretty printer
12577         for music expressions.
12578
12579 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12580
12581         * buildscripts/install-info-html.sh (index_file): Fix link.
12582
12583 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12584
12585         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12586
12587         * Documentation/index.html.in: Add size estimates with some big pages.
12588
12589         * Documentation/user/tutorial.itely (Running LilyPond for the
12590         first time): Add/replace some @rglos links.  TODO: add more
12591         @rglos links in tutorial, test non-intrusiveness (.css).
12592
12593         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12594         annoying's indication of referencing external document.
12595
12596         * Documentation/user/GNUmakefile: Split version of glossary too.
12597         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12598         links, not only for html.
12599
12600         * Documentation/user/introduction.itely: Fix some links for other
12601         than html, do not use `here' as link name.
12602
12603 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12604
12605         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12606         @glossaryref.
12607
12608 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12609
12610         * scm/page-layout.scm (default-page-make-stencil): only add header
12611         if existing and not empty. Fixes spurious programming error.
12612
12613         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12614
12615 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12616
12617         * scm/output-tex.scm: implement {re,}setcolor
12618         * tex/lilyponddefs.tex: use color package
12619
12620 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12621
12622         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12623         additions to website.
12624
12625         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12626
12627         * Documentation/user/macros.itexi: Fix @usermanref html links in
12628         split documents: use @inforef.
12629
12630 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12631
12632         * Documentation/user/programming-interface.itely: minor fix.
12633
12634         * Documentation/user/advanced-notation.itely: added info to
12635         Metronome markings.
12636
12637 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12638
12639         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12640         use box-stencil.  Remove y-padding argument.
12641         (make-stencil-circler): New function.
12642
12643         * buildscripts/lilypond-words.py (F): 
12644         * elisp/SConscript (a): 
12645         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12646         * vim/SConscript (a): 
12647         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12648
12649         * lily/general-scheme.cc: Build fix.
12650
12651         * scm/markup.scm:
12652         * input/regression/markup-scheme.ly: 
12653         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12654
12655         * scm/stencil.scm (make-circle-stencil): New function.
12656
12657         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12658         name (was cicle).  Update callers.
12659         (circle): New markup command, similar to box.
12660
12661         * scm/stencil.scm (circle-stencil): New function.
12662
12663 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12664
12665         * configure.in: Detect libutf8/wchar.h variant.
12666
12667         * stepmake/aclocal.m4: Modify shared size test.
12668
12669 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12670
12671         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12672
12673 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12674
12675         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12676         
12677         * VERSION (PACKAGE_NAME):  release 2.5.17
12678
12679 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12680
12681         * scm/backend-library.scm (postscript->png): Fix comment and png
12682         message.
12683
12684         * GNUmakefile.in (link-tree): Fix locales.
12685
12686 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12687
12688         * lily/stencil-scheme.cc (LY_DEFINE): change to
12689         ly:stencil-aligned-to, non mutating.
12690
12691         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12692
12693         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12694
12695         * lily/quote-iterator.cc (derived_mark): call
12696         Music_wrapper_iterator::derived_mark() too.
12697
12698         * lily/grace-engraver.cc (derived_mark): change signature, add
12699         const.
12700
12701 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12702
12703         * SConstruct (symlink): 
12704         * GNUmakefile.in (link-tree): Add scripts to prefix.
12705
12706         * lily/general-scheme.cc (ly:effective-prefix): New function.
12707
12708         * scm/backend-library.scm (postscript->png): Use it.
12709
12710 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12711
12712         * lily/paper-score.cc (process): don't delete grobs after
12713         producing stencils. 
12714
12715         * scm/part-combiner.scm (determine-split-list): switch off
12716         debugging info.
12717
12718         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12719         if available.
12720
12721         * scm/define-context-properties.scm
12722         (all-user-translation-properties): add stringNumberOrientations.
12723
12724         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12725         so fingering and string-numbers are separately controlled.
12726
12727 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12728
12729         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12730         not use debugging.
12731
12732 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12733
12734         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12735
12736         * config.hh.in: add HAVE_FONTCONFIG.
12737
12738         * Documentation/user/instrument-notation.itely (String number
12739         indications): new node.
12740
12741         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12742
12743         * lily/new-fingering-engraver.cc (add_string): new function. 
12744         (acknowledge_grob): accept string-number-event as well.
12745
12746         * scm/define-markup-commands.scm (circle): new markup command.
12747
12748         * scm/output-lib.scm (print-circled-text-callback): new function.
12749
12750         * lily/GNUmakefile: move ifeq after include stepmake.make.
12751
12752 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12753
12754         * config.make.in (HAVE_LIBKPATHSEA_SO):
12755         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12756
12757         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12758         add KPATHSEA_LIBS.
12759
12760         * debian/watch: 
12761         * debian/control: Update.
12762
12763 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12764
12765         * input/test/title-markup.ly (spaceTest): remove.
12766
12767         * input/test/embedded-tex.ly (Module): remove.
12768
12769         * input/test/music-box.ly: use 'name property, not ly:music-name.
12770
12771         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12772
12773         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12774
12775 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12776
12777         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12778         about xdeltas.  Add information about CVS.
12779
12780         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12781         gracefully handle failed files.
12782
12783         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12784
12785         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12786         small fixes.
12787
12788         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12789         No unnecessarily specific i18n messages.  Remove stray `1'.
12790
12791 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12792
12793         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12794         documentencoding
12795
12796         * scm/documentation-lib.scm (texi-file-head): set utf-8
12797         documentencoding.
12798
12799         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12800         Delta, not the Symbol one. 
12801
12802         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12803         for the .map file.
12804
12805         * Documentation/topdocs/INSTALL.texi (Top): add running
12806         requirement as compilation requirement.
12807
12808 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12809
12810         * buildscripts/mutopia-index.py (headertext): add h1 header and
12811         utf-8 charset meta field.
12812
12813         * input/GNUmakefile: prune example list.
12814
12815         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12816         options.
12817
12818         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12819         extent for visible stems.
12820
12821         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12822
12823 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12824
12825         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12826
12827         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12828
12829 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12830
12831         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12832         pass inf/nan into slur scoring.
12833
12834         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12835         page.
12836
12837         * scripts/abc2ly.py (dump_voices): use alphabet().
12838
12839 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12840         
12841         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12842
12843 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12844         
12845         * flower/include/virtual-methods.hh: simplify. Patch by
12846
12847 2005-03-25  John Williams <williams@tni.com>  
12848
12849         * scripts/lilypond-book.py (main): add png for HTML too, guess
12850         only if necessary. 
12851
12852 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12853
12854         * Documentation/topdocs/INSTALL.texi: now recommends
12855         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12856
12857         * Documentation/user/basic-notation.itely,
12858         Documentation/user/tutoria.itely: warn about
12859         only one (phrasing) slur at once.
12860
12861 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12862
12863         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12864
12865 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12866
12867         * Documentation/user/basic-notation.itely: fixed info about
12868         ending a (de)cresc.
12869
12870         * Documentation/user/lilypond-book.itely: fixed
12871         lilypond-book filter example and warned about not doing
12872         --filter and --process at the same time.
12873
12874 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12875
12876         * lily/parser.yy (bass_number),
12877         Documentation/user/instrument-notation.itely (Figured bass): 
12878         Add the possibility to use text markup in figured bass. 
12879
12880 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12881
12882         * Documentation/user/global.itely: added info about naming
12883         identifiers and breakbefore.
12884
12885         * Documentation/user/invoking.itely: added info about batch
12886         processing files with convert-ly, removed references to TeX
12887         in the jail section.
12888
12889         * Documentation/user/examples.itely: possibly fixed piano
12890         dynamics.
12891
12892         * Documentation/user/advanced-notation.itely: added info
12893         about removing other types of Staff.
12894
12895         * Documentation/user/instrument-notation.itely: possibly
12896         fixed piano staff line switch.
12897
12898         * Documentation/user/changing-defaults.itely: added info
12899         about using normal font in titles.
12900
12901 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12902
12903         * VERSION (PATCH_LEVEL): release 2.5.16
12904
12905         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12906         explicitly.
12907
12908 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12909
12910         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12911         whitespace.
12912
12913         * python/lilylib.py (make_ps_images):
12914         * scm/backend-library.scm (postscript->pdf, postscript->png):
12915         Quote file name.  Use format rather than string-append juggling.
12916
12917 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12918
12919         * python/lilylib.py (make_ps_images): add x to -g argument. 
12920
12921         * lily/key-performer.cc (create_audio_elements): don't use
12922         scm_eval_string. Check for minor 3rd directly.
12923   
12924         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12925         (sarabandeCelloGlobal): key is D minor, not F major.
12926
12927 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12928
12929         Fix truncated --png output (Peter Danenberg).
12930         
12931         * python/lilylib.py (make_ps_images):
12932         * scripts/ps2png.py (copyright): Grok --papersize option.
12933
12934         * scm/backend-library.scm (postscript->png): Add parameter
12935         PAPERSIZE.  Update callers.
12936
12937         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12938         Fixes symbol placement.
12939
12940         * lily/spanner.cc: 
12941         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12942         <libc-extension.hh>).
12943
12944 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12945
12946         * Nitpick run.
12947
12948         * buildscripts/fixcc.py: Update.
12949
12950         Builddir run fixes.
12951
12952         * HACKING (datadir): Add VERSION.
12953
12954         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12955         higher up.
12956
12957 2005-03-15  Werner Lemberg  <wl@gnu.org>
12958
12959         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12960         diagonal stem doesn't become thinner.
12961
12962 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12963
12964         * buildscripts/fixcc.py: Fixes (Werner).
12965
12966 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12967
12968         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12969         Emmentaler/Aybabtu.
12970
12971         * GNUmakefile.in: fix lilypond-words path.
12972
12973         * po/tr.po: update to 2.3.21
12974
12975         * lily/new-fingering-engraver.cc (position_scripts): take priority
12976         from head position.
12977
12978         * input/regression/finger-chords-order.ly (texidoc): new file.
12979
12980 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12981
12982         * make/ly-rules.make: 
12983         * stepmake/aclocal.m4: 
12984         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12985
12986         * buildscripts/fixcc.py (rules): Leave space after operator.
12987
12988 2005-03-14  Werner Lemberg  <wl@gnu.org>
12989
12990         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12991         top of the glyph with smooth curve.
12992
12993 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12994
12995         * Documentation/user/global.itely (Page layout): remove
12996         printpagenumber.
12997
12998 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12999
13000         * input/regression/mensural-ligatures.ly: new file (with examples
13001         compiled by Pal Benko).
13002
13003         * Documentation/user/instrument-notation.itely: Bugfix: yet some
13004         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
13005         musicglyph access.  Many small beautifications in ancient
13006         examples.
13007
13008         * input/test/divisiones.ly: fixed indentation; small
13009         beautifications
13010
13011         * ly/engraver-init.ly: added FIXME comment
13012
13013         * scripts/lilypond-book.py,
13014         Documentation/user/lilypond-book.itely: added music fragment
13015         option "packed" to lilypond-book
13016
13017         * Documentation/user/instrument-notation.itely: Bugfix: added
13018         missing LedgerLineSpanner color setting in several places.  Added
13019         music fragment option "packed" to VaticanaContext example.
13020
13021 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13022
13023         * scm/define-grobs.scm (all-grob-descriptions): switch off
13024         Hyphen_spanner::set_spacing_rods 
13025
13026         * lily/lyric-hyphen.cc (print): add padding between syllable and
13027         hyphen.
13028         (print): shorten hyphen in tight situations (determine using
13029         minimum-length)
13030
13031         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
13032         0.4pt.
13033
13034 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
13035
13036         * ly/titling-init.ly (bookTitleMarkup): Refinements.
13037
13038         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
13039         header/footer markings for regression-test.
13040
13041         * scm/backend-library.scm (output-scopes, header-to-file): Move
13042         from framework-tex.scm.
13043
13044         * scm/framework-ps.scm (output-framework)
13045         (output-preview-framework):
13046         * scm/framework-eps.scm (output-classic-framework)
13047         (output-framework): Use it.  Fixes collated files.
13048
13049 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
13050
13051         * input/sakura-sakura.ly: 
13052         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
13053
13054         * buildscripts/guile-gnome.sh: Update.
13055
13056         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
13057
13058         * mf/aybabtu.pe.in: Capitalize Aybabtu.
13059
13060 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13061
13062         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
13063         culprit: always exit the loop if we find a rod, even if it has
13064         distance < 0. 
13065
13066         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
13067         algorithm.
13068
13069         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13070         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
13071
13072         * scm/output-svg.scm (dashed-line): new  function body.
13073         
13074         * GNUmakefile.in: create .htaccess.
13075
13076 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
13077
13078         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
13079
13080 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13081
13082         * VERSION (PACKAGE_NAME): release 2.5.15
13083
13084         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
13085
13086         * scm/framework-svg.scm (output-framework): put scaling in
13087         document header. Apply scaling only once.
13088         (output-framework): dump page size in px, not mm. 
13089
13090         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
13091         from font-size.
13092
13093         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13094         ly:outputter-output-scheme, new function.
13095
13096         * scm/output-svg.scm (pango-description-to-svg-font): new function
13097
13098 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13099
13100         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
13101         target.
13102
13103         * input/typography-demo.ly: new file.
13104
13105 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13106
13107         * Documentation/user/global.itely (File structure): Add markup blocks
13108         to toplevel expressions.
13109         (Multiple movements, Creating titles): Add markup blocks.
13110
13111         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
13112         <libc-extension.hh>).
13113
13114         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
13115
13116         * flower
13117         * lily
13118         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
13119
13120 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13121
13122         * lily/accidental.cc: special bboxes for natural. 
13123
13124         * mf/feta-toevallig.mf: make stems heavier.
13125
13126         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
13127         texts as well.
13128
13129         * mf/feta-klef.mf: revise. 
13130
13131         * mf/feta-schrift.mf: make thinning of accent less pronounced.
13132
13133         * mf/feta-klef.mf: add rounded curve at top. 
13134         make thinnib a little heavier.
13135
13136 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13137
13138         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
13139
13140         * buildscripts/fixcc.py: New file.
13141
13142         * input/regression/utf8.ly: Update Debian font description.
13143
13144 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13145
13146         * stepmake/aclocal.m4: Fix test.
13147
13148 2005-03-09  Graham Percival  <gperlist@shaw.ca>
13149
13150         * Documentation/user/invoking.itely: added Sebastino Vigna's
13151         docs for the --jail option.
13152
13153 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13154
13155         * lily/stem.cc (print): only produce stemlets if there are no
13156         noteheads on this stem.
13157
13158         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
13159         don't crash on stemlet (visible stem without heads).
13160
13161         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
13162         unbroken situations. 
13163
13164         * scm/output-lib.scm (center-invisible): new function.
13165
13166         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
13167         wishes to determine loose column space.
13168
13169         * lily/font-config.cc (init_fontconfig): add
13170         fonts/{otf,type1,cff}  to path.
13171
13172         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
13173
13174         * mf/GNUmakefile (Module): install all fonts under otf/
13175
13176         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
13177         replace /fonts/otf/ by /ps/ 
13178
13179         
13180 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13181
13182         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
13183
13184         * lily/book.cc (process): Oops, add score_.header_.
13185
13186         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
13187
13188         * lily/parser.yy: Handle toplevel and book texts as score.
13189
13190         * scm/page-layout.scm (default-page-make-stencil):
13191         Bugfix: (page-properties rename.
13192
13193         * scm/backend-library.scm (ly:system): Typo.
13194
13195 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13196
13197         * stepmake/stepmake/executable-targets.make (installexe): don't
13198         strip installed executables
13199
13200         * lily/font-select.cc (get_font_by_design_size): revert
13201         pango_description_string as well.
13202
13203         * lily/system.cc (set_loose_columns): put loose column just left
13204         of next column.
13205
13206         * lily/include/group-interface.hh (extract_grob_array): rename
13207         from Pointer_group_interface__extract_grobs
13208
13209         * input/regression/ledger-line-minimum.ly (texidoc): new file.
13210
13211         * lily/ledger-line-spanner.cc (set_spacing_rods): new
13212         function. Keep ledgered note heads at a minimum distance.
13213         Introduce minimum-length-fraction
13214         (print): introduce length-fraction property.
13215
13216 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13217
13218         * tex/GNUmakefile: remove latin1.enc rules.
13219
13220 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13221
13222         * scm/titling.scm: Typo.
13223
13224         * input/regression/score-text.ly: Really add.
13225
13226         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
13227
13228 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13229
13230         * lily/open-type-font-scheme.cc:  new file.
13231
13232 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13233
13234         * scm/titling.scm (layout-extract-page-properties): Rename from
13235         page-properties.  Update callers.
13236
13237         * lily/lexer.ll (Lily_lexer):
13238         * lily/parser.yy: Junk lyric_markup state.
13239
13240         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
13241
13242         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
13243         Add texts parameter.
13244
13245 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13246
13247         * lily/lexer.ll (lyric_markup): New mode.
13248         (Lily_lexer::push_lyric_markup_state): New method.
13249         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
13250
13251         * lily/parser.yy (book_body):
13252         (toplevel_expression): Grok \markup texts.
13253
13254         * lily/score-scheme.cc (ly:music-scorify): 
13255         * scm/lily-library.scm (collect-music-for-book): Take texts
13256         parameter.
13257
13258         * lily/score.cc (texts_): New member.
13259
13260         * lily/paper-book.cc (systems): Format score texts.
13261
13262         * score-text.ly: New file.
13263
13264         * ttftool/SConscript:
13265         * kpath-guile/SConscript: New file.
13266
13267         * lily/SConscript:
13268         * SConstruct: Update.
13269
13270 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13271
13272         * VERSION (PACKAGE_NAME): release 2.5.14
13273
13274 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13275
13276         * lily/main.cc: Add dummy xgettext markers.
13277
13278 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13279
13280         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
13281         requirements
13282
13283         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
13284         executable is < 40k
13285
13286         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
13287         hack.
13288
13289 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13290
13291         * flower/libc-extension.cc:
13292         * flower/include/libc-extension.hh: [Open]BSD simply cast
13293         cookie/funopen declarations.
13294
13295         * stepmake/aclocal.m4: Check for libkpathsea.so.
13296
13297         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
13298         dl_kpse_find_file.
13299
13300 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13301
13302         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
13303         (open_library): alternative for static library.
13304
13305 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13306
13307         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
13308
13309         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
13310
13311         Drop run-time dependency on teTeX.
13312
13313         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
13314
13315         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
13316         KPATHSEA_LIBS in LIBS.
13317         (STEPMAKE_DLOPEN): New function.
13318
13319         * lily/font-config.cc (init_fontconfig): Use dir for directory,
13320         not path.
13321
13322         * flower/file-path.cc (directories): Rename from paths, as this
13323         return an array of directories (a single path).
13324
13325 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13326
13327         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
13328
13329         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
13330         new ly:kpathsea-find-file
13331
13332         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
13333
13334         * kpath-guile/GNUmakefile: new file
13335
13336         * buildscripts/gen-emmentaler-scripts.py (i): generate
13337         emmentaler-X.fontname as well.
13338
13339         * buildscripts/ps-embed-cff.py: new script
13340
13341         * scm/lily-library.scm: remove ps-embed-cff.
13342
13343         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
13344         font loading. 
13345
13346         * scm/font.scm (add-music-fonts): load dynamics/numbers through
13347         fontconfig as well.
13348
13349         * lily/font-config.cc (init_fontconfig): add cff/ too.
13350
13351         * ly/generate-embedded-cff.ly: capitalize.
13352
13353         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
13354         so as to register the pango font.
13355
13356         * lily/font-config.cc (init_fontconfig): add
13357         prefix/{otf,type1,mf/out} to fontconfig path.
13358
13359         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
13360         overrides all. 
13361
13362         * configure.in (gui_b): remove ec mftrace check
13363
13364         * config.hh.in: use lilypond-Major.Minor as data directory.
13365
13366         * scm/framework-ps.scm (dump-page): use output-units for landscape.
13367
13368         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
13369         name.
13370
13371 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13372
13373         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
13374         error messages.
13375
13376         * flower/libc-extension.cc:
13377         * flower/include/libc-extension.hh: [Open]BSD fixes for
13378         cookie/funopen declarations.
13379
13380 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13381
13382         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
13383         emmentaler.
13384
13385         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
13386         lcrm10.
13387
13388         * scm/define-markup-commands.scm (fontsize): new markup
13389         command. Also set baseline-skip
13390
13391 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
13392         
13393         * lily/main.cc (do_chroot_jail): paranoia security for webserver
13394         use.
13395
13396 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13397
13398         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
13399
13400         * lily/pdf.cc: remove PDF related files
13401
13402 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13403
13404         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
13405         <hamamatsu@gmx.de>
13406
13407 2005-03-05  Graham Percival  <gperlist@shaw.ca>
13408
13409         * Documentation/user/advanced-notation.itely: first draft
13410         of reorg done.
13411
13412         * Documentation/user/global.itely: fixed (sub)section
13413         bits of MIDI.
13414
13415 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13416
13417         * cygwin/mknetrel (extras): Bufix (Bertalan).
13418
13419         * Documentation/user/basic-notation.itely (Chords): @ref fix.
13420         * Documentation/user/instrument-notation.itely (Introducing chord
13421         names): Compile fix: must have unique name.
13422
13423 2005-03-02  Graham Percival  <gperlist@shaw.ca>
13424
13425         * Documentation/user/instrument-notation.itely: reorg.
13426
13427 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13428
13429         * scm/output-gnome.scm:
13430         * scm/output-svg.scm: Fix font scaling.
13431
13432 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13433
13434         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
13435         what link to use best.
13436
13437         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
13438         * Documentation/user/tutorial.itely (Automatic and manual beams):
13439         Fix @ref.
13440
13441         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13442         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13443         * scm/framework-gnome.scm (tweak): Use it.
13444
13445 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13446
13447         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13448
13449         * scm/output-ps.scm (white-text): reinstate white-text
13450
13451 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13452
13453         * scm/output-ps.scm (offset-add): Remove.
13454
13455         * scm/lily-library.scm (offset-flip-y): New function.
13456         * scm/framework-gnome.scm (tweak): Use it.
13457
13458         * scm/output-gnome.scm (grob-cause): Add parameter.
13459
13460         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13461         * scm/output-ps.scm (url-link): Move.
13462         (white-text): Warn user about brokenness.
13463
13464         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13465         wrt ghostscript.
13466
13467 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13468
13469         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13470         if body length smaller than measure length.
13471
13472         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13473         for Y.
13474
13475         * ly/titling-init.ly (tagline): put default tagline in \paper
13476
13477 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13478
13479         * lily/kpath.cc: 
13480         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13481
13482         * scm/lily-library.scm (version-not-seen-message): New function.
13483         * ly/init.ly: Use it.
13484
13485         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13486         breaks as progess.
13487
13488         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13489         whitespace with l10n message.
13490
13491         * scm/framework-tex.scm (convert-to-ps):
13492         (convert-to-dvi): Do not use overly specific l10n messages.
13493
13494         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13495
13496         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13497         merge stderr with stdout.  
13498
13499 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13500
13501         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13502         Neeracher).
13503
13504 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13505
13506         * Documentation/user/instrument-notation.teily: moved
13507         \arpeggio to Basic.
13508
13509         * Documentation/user/advanced-notation.itely: Articulation to
13510         Basic, a bunch of stuff from Basic moved to Advanced.
13511
13512         * Documentation/user/basic.itely: swapped various sections,
13513         reorganized Basic.
13514
13515 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13516
13517         * flower/memory-stream.cc: 
13518         * flower/libc-extension.cc: Remove obsolete #undefs.
13519
13520         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13521         more carefully.
13522
13523 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13524
13525         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13526         dependency.
13527
13528         * VERSION (PACKAGE_NAME): release 2.5.13
13529
13530         * GNUmakefile.in (web-ext): don't ship ps.gz
13531
13532         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13533         stdout
13534
13535 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13536
13537         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13538         without libintl.  Now it compiles too.
13539
13540 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13541
13542         * Documentation/user/basic-notation.itely,
13543         instument-notation.itely, advanced-notation.itely:
13544         split up contents of notation.itely.
13545
13546         * Documentation/user/notation.itely: file removed.
13547
13548         * Documentation/user/invoking.itely, converters.itely:
13549         moved convert-ly info to invoking.itely.
13550
13551         * Documentation/user/global.itely, changing-defaults.itely,
13552         sound-output.itexi: moved global settings, file layout, and
13553         sound into global.itely.
13554
13555         * Documentation/user/sound-output.itexi: file removed.
13556
13557         * Documentation/user/lilypond.tely: removed links to
13558         notation.itely and sound.itely.
13559
13560 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13561
13562         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13563
13564         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13565  
13566         * THANKS: add sponsor.
13567
13568         * scm/define-markup-commands.scm (with-url): new markup command.
13569
13570         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13571         tagline.
13572         
13573         * scm/output-tex.scm (url-link): stub.
13574
13575         * scm/output-ps.scm (url-link): new function.
13576
13577         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13578         ly:set-point-and-click
13579
13580 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13581
13582         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13583         based on pdf-viewer setting.
13584
13585         * scm/framework-ps.scm (write-preamble): Find and set preferred
13586         pdf-viewer.
13587
13588 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13589
13590         * Documentation/user/point-and-click.itely: update for PDF point &
13591         click.
13592
13593         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13594         editors based on EDITOR setting.
13595
13596 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13597
13598         * scm/*: Oops, more grand 2005 replace bits.
13599
13600 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13601
13602         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13603
13604         * scm/output-ps.scm (grob-cause): point & click support for
13605         PostScript
13606
13607 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13608
13609         * lily/input-scheme.cc (LY_DEFINE): rename to
13610         ly:input-file-line-column
13611
13612 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13613
13614         * Documentation/user/examples.itely: small fix from Steve Doonan.
13615
13616         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13617
13618         * THANKS: added Yuval Harel.
13619
13620         * Documentation/user/{various}: inserted two spaces after a period.
13621
13622         * Documentation/user/lilypond.tely: added framework for reorg.
13623
13624         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13625         advanced-notation.itely, global.itely: new files, placeholder for
13626         future reorg.
13627
13628 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13629
13630         * Documentation/user/notation.itely: revamped Polyphony section
13631         
13632 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13633
13634         * Documentation/user/lilypond-book.itely (Music fragment options):
13635         doc fontload.
13636
13637         * Documentation/user/changing-defaults.itely (Text encoding): add
13638         fontload option to utf8 include
13639
13640         * scripts/lilypond-book.py (compose_ly): add fontload option
13641
13642         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13643         force-eps-font-include option.
13644
13645         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13646         black triangle
13647
13648         * Documentation/user/invoking.itely (Editor support): remove
13649         lilypond-latex section.
13650
13651         * scripts/lilypond-latex.py (Module): remove script.
13652
13653         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13654         overwrite .log. 
13655
13656         * lily/main.cc: remove -m, --no-layout
13657
13658         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13659         to define. We don't want to override fprintf everywhere.
13660
13661 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13662
13663         * cygwin/lilypond.hint: 
13664         * cygwin/README.in: Update dependencies.
13665
13666         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13667         Bugfix: do not pollute CPPFLAGS, LIBS.
13668
13669         * cygwin/mknetrel (extras): Cross compile fixes.
13670
13671         * ttftool/util.c: 
13672         * ttftool/ttfps.c: 
13673         * ttftool/ps.c: #include libc-extension.hh
13674
13675         * flower/include/libc-extension.hh:
13676         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13677         wrapper using funopen.
13678         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13679         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13680
13681         * config.hh.in:
13682         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13683         (AC_CHECK_HEADERS): Add libio.h
13684
13685         * scripts/convert-ly.py: Uniformize, internationalize.
13686         (2.5.2): Remove fatal encoding rule.
13687         (2.5.13): Handle latin1 encoding gracefully.
13688
13689 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13690
13691         * HACKING: Fix line breaks.
13692
13693 2005-02-23  Werner Lemberg  <wl@gnu.org>
13694
13695         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13696         contains those two files.
13697
13698 2005-02-21  Werner Lemberg  <wl@gnu.org>
13699
13700         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13701         to improve overlap removal process.
13702
13703         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13704         left and right ending.  This ensures better overlapping.
13705         Update all callers.
13706         ("lineprall"): Don't use draw_gridline to get better overlapping.
13707
13708 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13709
13710         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13711
13712         * Documentation/topdocs/NEWS.tely (Top): oops.
13713
13714 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13715
13716         * HACKING: new file.
13717
13718         * input/regression/utf8.ly (portuguese): added a portuguese example
13719         to show latin1 accents.
13720
13721 2005-02-21  Pal Benko  <benkop@freestart.hu>
13722
13723         * lily/mensural-ligature-engraver.cc:
13724         * lily/mensural-ligature.cc:
13725         * lily/include/mensural-ligature.hh: new algorithm implemented
13726
13727         * scm/define-grob-properties.scm: join-left killed (add-join may
13728         be used); join-left-amount changed to join-right-amount
13729
13730 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13731
13732         * Documentation/user/notation.itely: small but urgent fix.
13733
13734 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13735
13736         * lily/duration-scheme.cc: bugfix: correct parameters to
13737         SCM_ASSERT_TYPE.
13738
13739         * THANKS: added Pal.
13740
13741         * Documentation/user/notation.itely: bugfix: unTeXified
13742         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13743         "timesig.*x/y" -> "timesig.*xy".
13744
13745 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13746         
13747         * VERSION (PACKAGE_NAME): release 2.5.12
13748
13749 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13750
13751         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13752
13753         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13754
13755         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13756
13757         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13758
13759 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13760
13761         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13762         latin1..utf-8.
13763
13764         * input/regression/stanza-number.ly:
13765         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13766
13767         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13768
13769 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13770
13771         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13772         NEWS. Refer to website for older news.  
13773
13774         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13775         .HTML. This should be done for specific servers only.
13776
13777         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13778         .ly image examples.
13779
13780         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13781         in layer 0 too.
13782
13783         * scm/define-context-properties.scm
13784         (all-user-translation-properties): add tieWaitForNote
13785
13786         * scm/define-grobs.scm (all-grob-descriptions): add
13787         Tie_column::before_line_breaking
13788
13789         * lily/tie.cc (get_column_rank): new function
13790
13791         * lily/tie-column.cc (before_line_breaking): new function.
13792         (werner_directions): take into account ties that start on
13793         different columns.  
13794
13795         * lily/score-engraver.cc (set_columns): move add_column() so we
13796         have column rank available.
13797
13798         * lily/tie.cc (get_column_rank): new function.
13799
13800         * input/regression/utf8.ly (japanese): add japanese lyrics.
13801
13802         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13803
13804         * THANKS: add Steve D
13805
13806         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13807         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13808
13809 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13810
13811         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13812         to show harmonic notes
13813         * scm/define-markup-commands.scm: in \markup-by-number
13814         "dots-dot" -> "dots.dot" to show dotted notes
13815
13816 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13817
13818         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13819
13820         * flower/memory-stream.cc (writer): new file.
13821
13822         * configure.in: add endian test.
13823
13824 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13825
13826         * Documentation/user/examples.itely: small
13827         simplification/beautification
13828
13829         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13830         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13831         notation manual.
13832
13833         * lily/mensural-ligature.cc: bugfix: another few victims of the
13834         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13835
13836         * ly/gregorian-init.ly: commit some experimental code for hi-level
13837         ligature input language lying around here for several months.
13838
13839         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13840         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13841
13842         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13843         "x-y-z"->"x.y.s-z" fixes.
13844
13845 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13846
13847         * scm/framework-pdf.scm (scm): new file
13848
13849         * lily/include/pdf.hh (class Pdf_file): new file.
13850
13851         * lily/pdf.cc (write_trailer): new file.
13852
13853 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13854
13855         * input/regression/color.ly: new file
13856
13857         * lily/stencil.cc (interpret_stencil_expression):
13858         when a color expression is encountered: save current color,
13859         process the rest of the expression, and restore previous color.
13860
13861         * lily/system.cc (get_line): check all grobs for color property and
13862         prepare the stencil scheme expressions for further processing.
13863         Fix layer-loop.
13864
13865         * scm/define-grob-properties.scm: introduce the color property.
13866
13867         * scm/output-lib.scm: color helper functions.
13868
13869         * scm/output-ps.scm: introduce setcolor/resetcolor.
13870
13871 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13872
13873         * ly/*.ly, input/regression/*.ly: Added missing \version
13874         statements in some files.
13875
13876 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13877
13878         * Documentation/user/notation.itely: minor editing.
13879
13880         * Documentation/user/converters.itely: updated convert-ly bugs.
13881
13882         * Documentation/user/lilypond-book.itely: add info about using
13883         feta characters in latex.
13884
13885 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13886
13887         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13888
13889 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13890
13891         * scm/define-grob-properties.scm (all-user-grob-properties):
13892         removed 'dashed property.
13893
13894 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13895
13896         * scm/lily.scm (define-safe-public): new macro for defining
13897         variables that can be used in --safe mode. Use it in *.scm
13898         instead of manually setting safe-objects in safe-lily.scm.
13899
13900 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13901         
13902         * lily/slur.cc: Slur-dash patch by Bertalan.
13903
13904         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13905
13906         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13907
13908 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13909
13910         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13911
13912 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13913
13914         * mf/GNUmakefile: teTeX-3.0 install fix.
13915
13916         * Cygwin patch from Bertalan.
13917
13918         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13919
13920 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13921
13922         * GNUmakefile.in: 
13923         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13924
13925         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13926         2.0.x compatibility.
13927
13928 2005-02-08  Werner Lemberg  <wl@gnu.org>
13929
13930         * mf/feta-din-code.mf: Format; clean up code.
13931         Replace `---' with `--' plus explicit path directions.
13932         (linethickness#, stafflinethickness#): Remove.
13933         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13934         ("dynamic s"): Improve shape.
13935         ("dynamic p"): Improve shape.
13936         Replace `draw' with better outline approximation.
13937         ("dynamic r"): Improve shape.
13938         Don't call `fill' and `draw' at the same time.
13939
13940 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13941
13942         * SConstruct (symlink):
13943         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13944         build fix: add enc symlink.
13945
13946         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13947
13948         Support for DESTDIR besides prefix=/foo
13949
13950         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13951
13952         * stepmake/stepmake/*.make:
13953         * */GNUmakefile:
13954         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13955
13956         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13957
13958         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13959         mawk in fontforge (date) test.
13960
13961 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13962
13963         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13964         font-family=roman. Add Luxi Sans as sans
13965
13966 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13967
13968         * Documentation/user/notation.itely: add warning about
13969         percent repeats and Voice contexts.
13970
13971         * Documentation/user/lilypond-book.itely: clarified the
13972         necessity of dvips -u arguments.
13973
13974 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13975
13976         * THANKS: Added a bunch of bug hunters.
13977
13978 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13979
13980         * scm/framework-ps.scm (output-preview-framework): bugfix.
13981
13982         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13983         o/ for chord modifier..
13984
13985         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13986
13987         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13988         Welsh Duggan). 
13989
13990 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13991
13992         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13993
13994         * ly/titling-init.ly: Do not also print intstrument in header on
13995         first page.  Do not print page number on first and only page.
13996
13997 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13998
13999         * input/regression/*.ly: remove old-relative everywhere
14000
14001         * lily/music-sequence.cc (simultaneous_relative_callback): do
14002         what-if analysis on copy, not on original. Fixes old-relative
14003         compatibility.
14004
14005         * scm/backend-library.scm (postscript->png): space before
14006         --verbose.
14007         
14008 2005-02-05  Werner Lemberg  <wl@gnu.org>
14009
14010         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
14011         is defined.
14012
14013         * mf/feta-alphabet.mf: Define `staffsize#'.
14014         Include `feta-params.mf'.
14015         s/staffheight/design_size/.
14016
14017         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
14018
14019         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
14020
14021         * mf/feta-nummer-code.mf: Reformatted.
14022         (draw_six): Use outline intersection to avoid a self-intersecting
14023         path.
14024         ("Numeral comma"): Fix serious outline glitches.  This slightly
14025         changes the glyph shape.
14026         ("Numeral dash"): Use `draw_rounded_block'.
14027         ("Numeral dot"): Use `drawdot'.
14028         ("Numeral 1"): Assure identical tangent directions for the
14029         intersection points of paths.  The glyph shape improvement is only
14030         visible at very high magnifications.
14031         ("Numeral 2"): Use `solve' macro to make the lower right part of
14032         the glyph outline touch the x axis exactly.  This changes the
14033         glyph shape.
14034         Minor fixes for better overlap removal support.
14035         ("Numeral 4"): Make lefter corner `rounder'.
14036         ("Numeral 5"): Assure identical tangent directions for the
14037         intersection points of paths.  This improves the glyph shape at
14038         high magnifications.
14039         ("Numeral 7"): Use `solve' macro to make the upper right part of
14040         the glyph outline touch the metrics box exactly.  This changes the
14041         glyph shape.
14042         Avoid corner in the upper left part of the glyph (causing a minor
14043         shape change).
14044
14045         * mf/feta-ital-*.mf: Removed.  Unused.
14046
14047 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14048
14049         * VERSION (PATCH_LEVEL): release 2.5.11
14050
14051         * input/regression/fill-line-test.ly: new file.
14052
14053         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
14054         emmentaler name, eg. emmentaler-23. 
14055
14056 2005-02-04  Christian Hitz  <chhitz@gmx.net>
14057
14058         * scm/scm/define-markup-commands.scm (fill-line): rework for better
14059         alignment with centered texts
14060
14061         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
14062         list of paddings
14063
14064 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14065
14066         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
14067
14068         * lily/note-column.cc (translate_rests): call flush_extent_cache()
14069         of parents when translating rests. Fixes: c-chord-rest.ly 
14070
14071         * lily/include/dimension-cache.hh (struct Dimension_cache): add
14072         dimension_callback_ member.
14073
14074         * lily/grob.cc (flush_extent_cache): new function. Force recompute
14075         of extents.
14076
14077 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
14078
14079         * all but lily/*: The grand 2004/2005 replace.
14080
14081 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14082
14083         * lily/*: add space after ,  
14084
14085         * scm/music-functions.scm (has-request-chord): don't use
14086         ly:music-name anywhere. Fixes <<\\>> notation. 
14087
14088         * scm/define-markup-commands.scm (box): use font-size for
14089         padding. Fixes boxed-rehearsal-marks.ly
14090
14091         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
14092         identifier definition too, so foo = \lyrics { ...   } bar = #1
14093         doesn't complain about "bar" being LYRICS_STRING.
14094
14095         * lily/paper-def.cc (find_pango_font): new routine; Store
14096         pango_fonts in hash tab too. This is necessary for retrieving
14097         Pango_fonts::physical_font_tab() later on.
14098  
14099         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
14100         crash if psname is null.
14101
14102         * lily/lily-guile.cc (ly_hash2alist): new function
14103
14104         * Documentation/user/changing-defaults.itely (Text encoding):
14105         rewrite. 
14106
14107         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
14108         -> font_filename mapping.
14109
14110         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
14111         ly_pango_font_physical_fonts
14112
14113         * scm/framework-ps.scm (supplies-or-needs): extract names from
14114         physical Pango_fonts.
14115
14116         * utf8.ly: new file.
14117
14118 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14119
14120         * Documentation/user/changing-defaults.itely (Page layout): add
14121         doco about systemSeparatorMarkup.
14122
14123         * scm/page-layout.scm (default-page-make-stencil): add-to-page
14124         function.
14125         (default-page-make-stencil): insert system separators.
14126
14127         * scm/define-markup-commands.scm (hcenter): add
14128         (beam): add.
14129
14130 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14131
14132         * scm/output-ps.scm (ez-ball): reinstate ez notation.
14133
14134 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
14135
14136         * lily/main.cc: Spell backend consistently.  Sort options.
14137
14138 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14139
14140         * scripts/lilypond-book.py (Module): revert @include.
14141         
14142 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
14143
14144         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
14145         Bugfix: @include .tex (not .texi).  Small cleanups.
14146
14147         * stepmake/bin/add-html-footer.py (i18n): New function.
14148
14149 2005-01-31  Werner Lemberg  <wl@gnu.org>
14150
14151         * mf/feta-nummer.mf: Removed.  Unused.
14152
14153 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14154
14155         * lily/ : 2004 -> 2005 s&r
14156
14157         * scm/file-cache.scm (cached-file-contents): add file. Read each
14158         file only once.
14159
14160         * scm/font.scm (add-pango-fonts): change order. Medium weight is
14161         now default.
14162
14163         * VERSION: release 2.5.10
14164         
14165         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
14166
14167         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
14168
14169         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
14170         that both X and Y extents of bbox are non-nil.
14171
14172 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14173
14174         * scm/chord-name.scm (alteration->text-accidental-markup): change
14175         - to . 
14176
14177         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
14178
14179         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
14180
14181         * Documentation/user/invoking.itely (Invoking lilypond): add note
14182         about EPS backend.
14183
14184         * scm/framework-eps.scm: new file: create per-system/per-page EPS
14185         files for inclusion in lilypond-book document.
14186
14187         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
14188
14189         * input/tutorial/lbook-texi-test.texi: new file.
14190
14191         * scm/safe-lily.scm (safe-objects): add
14192         {begin,end}-of-line-(in)?visible as safe.
14193  
14194 2005-01-30  Graham Percival  <gperlist@shaw.ca>
14195
14196         * Documentation/user/changing-defaults.itely: fixed example
14197         of (dynamics).
14198
14199 2005-01-29  Graham Percival  <gperlist@shaw.ca>
14200
14201         * lily/main.cc: fix info about -o=FILE.
14202
14203 2005-01-29  Werner Lemberg  <wl@gnu.org>
14204
14205         * mf/feta-toevallig.mf ("Natural"): Completely changed the
14206         construction to assure smooth transition from straight to curved
14207         lines.
14208
14209 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14210
14211         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
14212         stencils.
14213
14214         * ps/lilyponddefs.ps: add start-page, start-system doesn't
14215         translate to top of page. Fixes alignment problems of
14216         lilypond-generated EPS files.
14217
14218 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14219
14220         * scm/part-combiner.scm (analyse-spanner-states): trigger on
14221         crescendo-end as well, since Decrescendo maybe ended with Stop
14222         Crescendo.). Fixes: partcombine-diminuendo.ly
14223
14224         * scm/script.scm (default-script-alist): swap portato symbols.
14225
14226         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
14227
14228         * lily/paper-outputter-scheme.cc (LY_DEFINE):
14229         ly:outputter-port. New function.
14230
14231         * scm/framework-ps.scm (output-classic-framework): dump a
14232         -systems.texi too
14233         (output-classic-framework): dump multiple systems on an "infinite"
14234         page EPS including fonts. 
14235
14236         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
14237         .eps files for both texi and tex formats. Use PNG coming from
14238         lilypond.
14239         
14240 2005-01-28  Graham Percival  <gperlist@shaw.ca>
14241
14242         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
14243
14244         * scripts/lilypond-latex.py: fix info about -o=FILE.
14245
14246 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14247
14248         * ly/generate-embedded-cff.ly: write .cff.ps files.
14249
14250         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
14251
14252         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
14253         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
14254
14255 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
14256
14257         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
14258
14259 2005-01-28  Werner Lemberg  <wl@gnu.org>
14260
14261         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
14262         macros.
14263         (draw_bulb): Improved.
14264
14265         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
14266         metapost bug.
14267         (draw_pedal_P): Use soft_end_penstroke.
14268         (draw_pedal_d): Use soft_start_penstroke.
14269
14270         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
14271         path.
14272         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
14273         doesn't change the glyph shape.
14274
14275         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
14276         changing the shape) to avoid fontforge warnings.
14277
14278         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
14279         soft_end_penstroke and fix glyph shape.
14280
14281 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14282
14283         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
14284
14285 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14286
14287         * scm/define-markup-commands.scm (line): filter out empty stencils
14288         from line command.
14289
14290         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
14291         amount.
14292
14293 2005-01-27  Graham Percival  <gperlist@shaw.ca>
14294
14295         * Documentation/user/notation.itely: added info about what
14296         \voiceFoo does.  Also rewrote warning about marks at
14297         a line break.
14298
14299         * Documentation/user/changing-defaults.itely: added info
14300         about putting dynamics in parenthesis and brackets.
14301
14302 2005-01-27  Werner Lemberg  <wl@gnu.org>
14303
14304         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
14305
14306 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14307
14308         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
14309         portato-direction.ly
14310
14311         * lily/beam.cc (consider_auto_knees): add beam height to
14312         threshold. Fixes: knee-multiple-beam.ly
14313
14314         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
14315         pedal line spanners. Fixes: instrument-center-pedal.ly
14316
14317         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
14318         if encountering barline. Fixes: auto-beam-repeat.ly
14319
14320 2005-01-26  Werner Lemberg  <wl@gnu.org>
14321
14322         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
14323         overlapping.
14324
14325         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
14326         with inflections for the 1/2 sharp glyph.
14327
14328         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
14329         connection between `t' and `r'.
14330         Unify bulb with the rest of `r' to avoid grazing outlines which
14331         confuses the overlap removal algorithm of fontforge.
14332
14333         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
14334         inflections.
14335         (draw_cross): Fix shape to have uniform thickness in corners.
14336
14337         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
14338         to avoid an uneven number of self-intersections; this confuses
14339         fontforge.
14340         Fix a slight bug in the shape at left bottom (which is visible only
14341         at high magnifications).
14342         `Center' the stem horizontally to avoid overlapping.
14343
14344 2005-01-24  Werner Lemberg  <wl@gnu.org>
14345
14346         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
14347         to `asis'.
14348         (fet_begingroup): Save group name in string `feta_group'.
14349         (fet_endgroup): Updated.
14350         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
14351
14352         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
14353
14354         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
14355         in metapost.
14356
14357 2005-01-24  Graham Percival  <gperlist@shaw.ca>
14358
14359         * Documentation/user/notation.itely: really minor editing.
14360
14361 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14362
14363         * Documentation/user/examples.itely: minor editing.
14364
14365         * Documentation/user/changing-defaults.itely: minor editing.
14366
14367         * Documentation/user/notation.itely: clarified info on polyphony
14368         and \addlyrics.
14369
14370 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14371
14372         * scm/output-gnome.scm: 
14373         * scm/output-svg.scm:
14374         * scm/lily-library.scm (font-name-style): Update font name
14375         kludging for fontconfig use.
14376
14377 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
14378
14379         * scm/define-markup-commands.scm: Document right-align and
14380         larger markup commands. Remove "TODO" from the topmost comment
14381         "each markup function should have a doc string." More consistent
14382         use of new-lines.
14383
14384 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14385
14386         * Documentation/user/changing-defaults: removed info about
14387         copyright symbol, since it's likely to change soon.
14388         Added info about betweensystemspace.
14389
14390         * Documentation/user/notation.itely: minor fixes.
14391
14392         * Documentation/user/lilypond.tely,
14393         Documentation/user/music-glossary.tely: changed copyright
14394         date to 2005 instead of 2004.
14395
14396         * input/test/volta-chord-names.ly: added old example back.
14397
14398 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14399
14400         * mf/feta-beugel.mf: use design size 20 (not 15).
14401
14402         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
14403         change name to aybabtu completely
14404
14405 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14406
14407         * buildscripts/gen-emmentaler-scripts.py (outdir): add
14408         design_size to fontname
14409
14410 2005-01-19  Werner Lemberg  <wl@gnu.org>
14411
14412         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
14413         mf/feta-schrift.mf: s/p/pat/ if a path variable.
14414
14415         * mf/feta-autometric.mf (set_char_box): Add code which emits
14416         specials for mf2pt1 if run with metapost.
14417         (to_bp): New macro for mf2pt1.
14418
14419 2005-01-18  Graham Percival  <gperlist@shaw.ca>
14420
14421         * Documentation/user/changing-defaults: added info on
14422         creating a copyright symbol.
14423
14424 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14425
14426         * VERSION: release 2.5.9
14427         
14428 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
14429
14430         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14431
14432         * Documentation/user/notation.itely: Document
14433         score-override-auto-beam-setting Fix documentation for
14434         revert-auto-beam-setting.
14435
14436 2005-01-18  Werner Lemberg  <wl@gnu.org>
14437
14438         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14439         (procset): New function to define a procset resource.
14440         (ps-embed-pfa): New function to define a font resource.
14441         (setup): New function to define a `Setup' environment.
14442         (preamble): Use new functions.
14443
14444         * ps/lilypond.defs (init-lilypond-parameters): New function to
14445         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14446
14447 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14448
14449         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14450
14451 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14452
14453         * scm/define-markup-commands.scm: Change number->markletter-string
14454         to take two arguments (vector number). Add number->mark-alphabet-vector
14455         and markalphabet markup command.
14456
14457         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14458         format-mark-alphabet, format-mark-box-barnumbers and
14459         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14460
14461 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14462
14463         * Documentation/user/examples.itely: add SATB automatic piano
14464         reduction template.
14465
14466         * Documentation/user/notation.itely: added info about changing
14467         partcombine texts.  Also adds examples of alternate lyrics.
14468
14469         * Documentation/user/changing-defaults.itely: added warning
14470         about \RemoveEmptyStaffContext overriding previous changes.
14471
14472 2005-01-17  Werner Lemberg  <wl@gnu.org>
14473
14474         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14475         feta-alphabet*.
14476
14477 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14478
14479         * python/lilylib.py (make_ps_images): don't do final showpage for
14480         multi-page documents.
14481         
14482         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14483
14484 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14485
14486         * Documentation/user/lilypond.tely: changed order of appendices;
14487         unified index should be last.
14488
14489         * Documentation/user/notation.itely: add example of key signatures
14490         and info about Staff.printKeyCancellation.
14491
14492 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14493
14494         * lily/include/repeated-music.hh (class Repeated_music): change
14495         into "namespace" class.
14496
14497         * lily/event.cc: remove Key_change_event.
14498
14499         * lily/include/transposed-music.hh (class Transposed_music): remove.
14500
14501         * lily/transposed-music.cc: remove
14502
14503         * lily/include/relative-music.hh: remove.
14504
14505         * lily/include/music-sequence.hh (struct Music_sequence): change
14506         into "namespace" class.
14507
14508         * lily/untransposable-music.cc (Module): remove
14509
14510         * lily/include/un-relativable-music.hh (Module): remove
14511
14512         * lily/include/untransposable-music.hh (Module): remove
14513
14514         * lily/include/music-list.hh (Module): remove file
14515
14516         * lily/un-relativable-music.cc: remove file.
14517
14518 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14519
14520         * lily/parser.yy: Compile fix.
14521
14522 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14523
14524         * lily/include/music.hh (class Music): unvirtualize transpose().
14525
14526         * lily/sequential-music.cc: remove file.
14527
14528         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14529
14530         * lily/slur-scoring.cc (get_best_curve): only switch on
14531         DEBUG_SLUR_SCORING for non NDEBUG builds.
14532
14533         * lily/include/music.hh (class Music): replace Music::start_mom()
14534         by start-callback property
14535
14536         * lily/include/grace-music.hh: remove file. 
14537
14538         * lily/stem.cc (height): robustness fix.
14539
14540         * lily/time-scaled-music.cc: remove file.
14541
14542         * lily/include/music.hh (class Music): include SCM init argument.
14543         (class Music): replace Music::get_length() virtual by
14544         length-callback property everywhere.
14545
14546         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14547
14548         * mf/GNUmakefile: don't install *list.ly
14549
14550 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14551
14552         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14553
14554 2005-01-12  Werner Lemberg  <wl@gnu.org>
14555
14556         This patch addresses the following problems in the feta sources
14557         files which contribute to the fetaXX fonts.
14558
14559         . Many fixes for rasterization at low resolutions (consistent use of
14560           `vround' and `hround', integer shift values for paths, applying
14561           `eps' for mirrored paths, use of `define_whole_pixels' and
14562           friends, etc.) -- while this probably looks like a waste of time
14563           it has revealed deficiencies in some glyph shapes.  See comment at
14564           the end of feta-params.mf how vertical symmetry is achieved.
14565
14566         . The `---' operator has been replaced everywhere with `--'; this
14567           both improves and considerably reduces the font size after
14568           conversion with mf2pt1.
14569
14570         These change aren't explicitly mentioned below since virtually all
14571         glyphs are affected.
14572
14573         Other notable differences:
14574
14575         . Glyphs from feta-accordion.mf now have charboxes around the
14576           outline.
14577
14578         . Fixed incorrect charbox for `accDot'.
14579
14580         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14581
14582         . Fixed position of the bow in the `upprall' glyph and its siblings.
14583
14584         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14585           dependent on the staff line thickness to avoid touching the middle
14586           staff line at smaller sizes.
14587
14588         . Largely extended output for feta-testXX: Where useful, glyphs
14589         are shown both between and on staff lines.
14590
14591
14592         * mf/feta-params.mf (staff_space_rounded,
14593         stafflinethickness_rounded, linethickness_rounded,
14594         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14595         Update all code which uses them where appropriate.
14596         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14597         New variables used to control rasterization at low resolutions.  Set
14598         to zero if feta code is processed with metapost.
14599
14600         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14601         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14602         (flare_path): Updated.
14603         Make it work with `filldraw' (but only circular pens).
14604         (hfloor, vfloor, hceiling, vceiling): New macros.
14605
14606         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14607         Use `draw' again in mf mode to have good pixel dropout control.
14608         Fix intersection points of horizontal lines with circle.
14609         ("accDot"): Fix parameters for set_char_box.
14610         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14611         control.
14612
14613         * mf/feta-banier.mf: Updated.
14614
14615         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14616         testing.
14617         (undraw_inside_ellipse): Remove `center' argument.  Update all
14618         callers.
14619         (draw_brevis): New macro, called by "Brevis notehead".
14620         (draw_whole_triangle_head): New macro, called by "Whole
14621         trianglehead".
14622         (draw_small_triangle_head): Use `filldraw'.
14623
14624         * mf/feta-eindelijk.mf: Remove useless global group.
14625         Updated.
14626
14627         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14628         `filldraw'.
14629
14630         * mf/feta-pendaal.mf: Updated.
14631
14632         * mf/feta-puntje.mf: Updated.
14633
14634         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14635         less points.
14636         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14637         dropout control.
14638         ("Varied Coda"): Use `draw_block'.
14639         (draw_comma): Fix typo.
14640         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14641         pixel dropout control.
14642
14643         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14644         position of bow.
14645
14646         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14647         sizes.
14648
14649         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14650         testing.
14651         (draw_meta_sharp): Much simplified.
14652         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14653
14654         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14655
14656 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14657
14658         * Documentation/user/notation.itely (Ancient rests): Fix typo
14659         (thanks Anthony)
14660
14661 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14662
14663         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14664
14665         * lily/main.cc (setup_paths): Add cff.
14666
14667         * mf/GNUmakefile (foe): Include actual target %.cff.
14668         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14669
14670 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14671
14672         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14673         suffix for main_input_b_.
14674
14675         * scm/music-functions.scm (toplevel-music-functions):
14676         precompute music lengths for music expressions.  
14677
14678 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14679
14680         * lily/include/input.hh (class Input): new `end_' slot for end of
14681         input. Renamed defined_str0_ to start_.
14682
14683         * lily/input.cc (Input): Add Input::Input (Input const &) and
14684         remove Input::Input (Source_file*, char const *). Use the new
14685         slots.
14686         (set_location): method used by bison to propagate input
14687         locations (YYLLOC_DEFAULT).
14688         (end_line_number, end_column_number, step_forward): new methods
14689         
14690         * lily/input-scheme.cc (ly:input-both-locations): new function,
14691         similar to ly:input-location, but also return the end line and
14692         column.
14693
14694         * lily/include/includable-lexer.hh: 
14695         * lily/includable-lexer.cc: 
14696         * lily/include/lily-lexer.hh (class Lily_lexer): 
14697         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14698         Includable_lexer to Lily_lexer, in order to update lexloc (the
14699         yylloc), a new slot of Lily_lexer.
14700         (here_input, LexerError): simplify by using the lexloc slot (aka
14701         yylloc)
14702
14703         * lily/lexer.ll: #define yylloc to use input locations (it may
14704         be useless here?). Fixed the #embedded_scm rule (step the location
14705         forward in order to skip the sharp sign before parsing the scheme
14706         expression)
14707
14708         * lily/include/lily-parser.hh (class Lily_parser): 
14709         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14710         here_input()
14711         (parser_error): overload for more precise locations of errors.
14712
14713         * lily/parser.yy (YYLTYPE): set location type to Input
14714         (YYLLOC_DEFAULT): use Input::set_location()
14715         (yylex): add the YYLTYPE* location parameter.
14716         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14717         Give an Input parameter to THIS->parser-error() for more accurate
14718         messages.
14719
14720 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14721
14722         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14723
14724         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14725         on BEAMQUANTING for non-NDEBUG builds.
14726
14727         * lily/stem.cc (head_count): performance: avoid String::String()
14728         inside oft called function.
14729
14730 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14731
14732         * Documentation/user/examles.itely: attempted fix for broken
14733         string quartet template.
14734
14735         * Documentation/user/notation.itely: remove unnecessary broken
14736         link.
14737
14738 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14739
14740         * VERSION (PACKAGE_NAME): release 2.5.7
14741
14742 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14743
14744         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14745         mf-nowin for teTeX-3.0.  Backportme.
14746
14747         * scm/output-svg.scm (utf8-string): New function.
14748
14749         * scm/output-gnome.scm (utf8-string): New function.
14750         (otf-name-mangling): Remove.
14751
14752         * lily/pango-font.cc (Pango_font): Use font string iso font
14753         filename for utf8-text.
14754
14755         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14756         name.
14757
14758 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14759
14760         * Documentation/user/notation.itely: add info about
14761         Staff.extraNatural = ##f in Pitches section.  Also
14762         fixed some minor issues in the Vocal music section.
14763
14764 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14765
14766         * scm/output-ps.scm (white-text): comment out Helvetica font,
14767         which is broken for my GS install.
14768
14769         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14770         which provides a tighter bbox.
14771
14772         * scm/define-grobs.scm (all-grob-descriptions): remove all
14773         extra-offsets from definitions.
14774
14775 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14776
14777         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14778         add tuning for 4-string bass and some common 4/5-string banjo
14779         tunings.  New function (four-string-banjo) turns a 5-string tuning
14780         into a 4-string tuning.  New function
14781         (fret-number-tablature-format-banjo) computes correct fret numbers
14782         on 5-string banjos.
14783
14784         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14785         Add beam correction to TabVoice.
14786
14787         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14788         using bold font; makes tabs more readable.
14789
14790 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14791
14792         * lily/font-select.cc (get_font_by_design_size): don't make
14793         Modified_font_metric; this causes trouble, since we don't know the
14794         font magnification from inside Pango_font::text_stencil()
14795
14796         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14797
14798         * Documentation/user/notation.itely (The Lyrics context): comment out
14799         broken {Small ensembles} link.
14800
14801         * scm/framework-svg.scm (output-framework): change calling convention.
14802
14803         * lily/object-key-dumper-scheme.cc: new file.
14804
14805         * lily/object-key-undumper-scheme.cc: new file.
14806
14807         * lily/tweak-registration-scheme.cc: new file.
14808
14809         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14810
14811         * Documentation/user/examples.itely (String quartet): uncomment
14812         broken example.
14813
14814         * lily/font-config.cc: new file.
14815
14816 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14817
14818         * scm/output-svg.scm: 
14819         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14820
14821         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14822
14823 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14824
14825         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14826         Add headers.
14827
14828         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14829
14830 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14831
14832         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14833
14834         * lily/include/main.hh: lose _b hungarian suffixes for global
14835         variables.
14836
14837         * lily/include/lily-guile-macros.hh: new file.
14838
14839         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14840
14841         * lily/general-scheme.cc: new file. 
14842
14843         * lily/font-select.cc (get_font_by_design_size): retrieve
14844         PangoFont for (designsize . "pango-descr") entries.
14845
14846         * lily/lily-parser-scheme.cc: new file.
14847
14848         * lily/output-def-scheme.cc: new file.
14849
14850         * lily/paper-book-scheme.cc: new file.
14851
14852         * lily/duration-scheme.cc (LY_DEFINE): new file.
14853
14854         * lily/pitch-scheme.cc:  new file.
14855
14856         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14857
14858 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14859
14860         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14861
14862 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14863
14864         * Documentation/user/notation.itely: minor editing.
14865
14866         * Documentation/user/changing-defaults: minor editing.
14867
14868         * Documentation/user/examples.itely: add template for
14869         string quartet part extraction; demonstrates tag.
14870
14871 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14872
14873         * Documentation/user/notation.itely: documents
14874         format-mark-box-letters and format-mark-box-numbers
14875
14876         * scm/define-context-properties.scm: change comment.
14877
14878 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14879
14880         * scm/framework-ps.scm (output-classic-framework): new function:
14881         dump systems as separate .eps files (without fonts) and write a
14882         single collecting .tex file.
14883
14884 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14885
14886         * Documentation/user/notation.itely (Setting simple songs):
14887         Correct several errors in the equivalent formulation of
14888         \addlyrics. 
14889         (The Lyrics context): Corrected link to the SATB example.
14890
14891 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14892
14893         * scm/lily.scm (completize-formats): new function
14894         (postprocess-output): new function
14895
14896         * lily/paper-book.cc (classic_output): change calling
14897         convention. Give basename as first argument. 
14898         remove Paper_book::post_processing().
14899
14900         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14901
14902 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14903
14904         * lily/paper-outputter.cc (LY_DEFINE): new function
14905         ly:outputter-close.
14906
14907         * lily/main.cc: change --format,-f to --backend,-b
14908
14909         * lily/include/main.hh: rename format to backend.
14910
14911         * scm/translation-functions.scm (format-mark-box-numbers): add.
14912         patch by Erlend Aasland
14913
14914 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14915
14916         * lily/pango-font.cc (text_stencil): dump string as
14917         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14918
14919 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14920
14921         * configure.in (gui_b): Remove handy developer-only
14922         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14923         CVS source installations (but break other non-default but correct
14924         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14925
14926         * SConstruct: 
14927         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14928         compatibility (backportme).
14929
14930         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14931
14932 2005-01-03  Werner Lemberg  <wl@gnu.org>
14933
14934         Prepare glyph shapes for mf2pt1 conversion.
14935
14936         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14937         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14938         `penstroke'.
14939         (accDot): Use `drawdot'.
14940         (accBayanbase): Replace `draw' with `draw_gridline'.
14941         (print_penpos): Moved to feta-macros.mf.
14942         (accOldEE): Replace `filldraw' with `penstroke'.
14943         Replace `draw' with `penstroke' and `drawdot'.
14944
14945         * mf/feta-banier.mf: Code clean-up.
14946         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14947         `fill'.
14948
14949         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14950
14951         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14952         paremeter to control drawing of labels.  Update all callers.
14953
14954         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14955         (new_bulb): Return a bulb as a single path.  To do that, it now
14956         takes some more parameters.  Updated all callers.
14957         (draw_gclef): Major clean-up.  `draw' has been replaced with
14958         `penstroke', unnecessary outlines have been removed.
14959         Remove (unused) gnome-canvas code.
14960
14961         * mf/feta-macros.mf (print_penpos): New macro (from
14962         feta-accordion.mf).
14963         Other minor fixes.
14964
14965         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14966         ("Pedal dot"): Use `drawdot'.
14967         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14968         all callers.
14969         Fix shape at top.
14970         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14971         all callers.
14972         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14973         all callers.
14974         Revert drawing direction.
14975
14976         * mf/feta-schrift.mf (draw_fermata): Use single path.
14977         (draw_short_fermata): Replace `filldraw' with `fill'.
14978         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14979         `draw_rounded_block' with a single path.
14980         ("Thumb"): Draw full circle instead of mirroring segments.
14981         (draw_accent): New macro.
14982         ("> accent", "espr"): Use it.
14983         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14984         ("open (unstopped)"): Draw full circle instead of mirroring
14985         segments.
14986         (draw_vee): Removed.
14987         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14988         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14989         path.
14990         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14991         partial pieces drawn with `fill' -- these do still overlap with the
14992         stem of the `t' but just once, not multiple times so that fontforge
14993         can handle it gracefully.
14994         Change other parts of the glyph so that fontforge's overlapping
14995         algorithm reliably works.
14996         (draw_heel): Replace `draw' with `fill'.
14997         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14998         ("Flageolet"): Replace `draw' with `penstroke'.
14999         ("Segno"): Replace `filldraw' with `penstroke'.
15000         Replace `draw' with `drawdot'.
15001         ("Coda"): Replace `fill' with `penstroke', using a single path.
15002         ("Varied Coda"): Use less overlapping paths.
15003         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
15004         single path.
15005
15006         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
15007         group to better control the `labels' command.
15008         Rename argument to `offset' and use it actually.  Update all
15009         callers.
15010         Replace `filldraw' with `fill'.
15011         ("mordent", "prallmordent", "upmordent", "downmordent",
15012         "lineprall"): Replace `draw' with `draw_gridline'.
15013         ("upprall", "downprall"): Replace `draw' with `fill'.
15014
15015         * mf/feta-timesig.mf: Formatting.
15016
15017         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
15018         to...
15019         ("Flat"): Here.
15020         (draw_paren): Move code to draw labels to...
15021         ("Right Parenthesis"): Here.
15022
15023 2005-01-02  Graham Percival <gperlist@shaw.ca>
15024
15025         * Documentation/user/notation.itely: add example of \setTextDecresc
15026         and \setTextDim.
15027
15028 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
15029
15030         * scm/define-markup-commands.scm :  fix glyph-strings of
15031         accidentals and \note-by-number
15032
15033 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15034
15035         * VERSION: 2.5.6 released.
15036         
15037         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
15038
15039         * input/regression/new-markup-scheme.ly: oops. font-family=music
15040         -> font-encoding fetaMusic.  
15041
15042         * lily/main.cc: put default to PS.
15043
15044         * lily/tfm.cc: idem.
15045
15046         * lily/afm.cc: idem.
15047
15048         * lily/include/modified-font-metric.hh (struct
15049         Modified_font_metric): remove coding_scheme() method.
15050
15051         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
15052
15053         * scripts/convert-ly.py (conv): crash on encountering \encoding.
15054
15055         * input/les-nereides.ly: convert to utf8
15056
15057         * lily/modified-font-metric.cc (text_dimension): idem.
15058
15059         * lily/parser.yy (TODO): idem.
15060
15061         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
15062
15063         * lily/lexer.ll: remove encoding
15064
15065         * scm/framework-ps.scm (output-variables): separately scale the
15066         page to mm 
15067
15068         * lily/pango-font.cc (Pango_font): fix scaling.
15069
15070         * lily/font-metric.cc (design_size): design_size returns a
15071         dimension now as well.
15072
15073 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15074
15075         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
15076         brace generation. 
15077
15078         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
15079
15080 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
15081
15082         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
15083         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
15084
15085 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15086
15087         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
15088         in first run as well.
15089
15090         * scm/paper.scm (layout-set-staff-size): use text-font-size in
15091         dimension less points (ie. 12 = 12 point)
15092
15093         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
15094
15095         * lily/all-font-metrics.cc (find_pango_font): set description_
15096
15097         * lily/pango-font.cc (text_stencil): export size as well.
15098         (text_stencil): fix scaling and extents box.
15099
15100 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15101
15102         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
15103
15104         * Documentation/user/invoking.itely (Invoking lilypond): document
15105         texstr
15106
15107         * scripts/convert-ly.py (conv): add ancient rules.
15108
15109         * scm/clef.scm (c0-pitch-alist): replace - with .
15110
15111         * scripts/lilypond-book.py (process_snippets): add texstr support.
15112
15113         * scm/framework-texstr.scm (header): change extension to .textmetrics
15114
15115         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
15116         -f tex.
15117
15118         * lily/text-metrics.cc: new file.
15119         (try_load_text_metrics): new function
15120
15121         * lily/include/text-metrics.hh: new file.
15122
15123 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15124
15125         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
15126         ly_scheme_function to ly_lily_module_constant.
15127
15128         * lily/modified-font-metric.cc (text_dimension): try
15129         lookup_tex_text_dimension() first.
15130
15131         * lily/tfm.cc: new function ly:load-text-dimensions
15132
15133 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15134
15135         * scm/output-texstr.scm (text): use \lilygetmetrics
15136
15137         * scm/framework-texstr.scm (header): dump in new format.
15138
15139         * tex/lilypond-tex-metrics: new file.
15140         
15141 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
15142
15143         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
15144         mapping.
15145         (index_to_charcode): New method.
15146
15147         * scm/output-ps.scm (glyph-string): 
15148         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
15149
15150 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
15151
15152         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
15153         implement fully, need FONT to get to charcode.
15154
15155         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
15156
15157         * scm: Cleanups.
15158
15159         * Documentation/user/changing-defaults.itely: Fix internalsrefs
15160         {Tunable context properties},
15161         {All layout objects},
15162         {Music definitions}.
15163
15164 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15165
15166         * VERSION: release 2.5.5
15167         
15168         * lily/main.cc: use TeX as default output format.
15169
15170         * flower/file-path.cc (find): try to open directly as well, so we
15171         find absolute path files. 
15172
15173         * lily/pango-select.cc: new file.
15174
15175         * scm/framework-ps.scm: remove all encoding code. 
15176         load pfb/pfa for PangoFont too.
15177         
15178         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
15179
15180 2004-12-22  Werner Lemberg  <wl@gnu.org>
15181
15182         Prepare glyph shapes for mf2pt1 conversion.
15183
15184         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
15185
15186         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
15187         (define_triangle_shape): Use it to replace `draw' with `fill' and
15188         `unfill'.  Update all callers.
15189         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
15190         (draw_cross): Ditto.
15191         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
15192         Use penrazor for better conversion with mf2pt1.
15193         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
15194         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
15195         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
15196         draw_la_head, draw_ti_head): Replace `filldraw' with
15197         `fill'.  Update all callers.
15198
15199 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15200
15201         * lily/paper-book.cc (output): revert: only allow a single output
15202         format.
15203
15204         * lily/include/pango-font.hh: new file.
15205
15206         * lily/pango-font.cc: new file.
15207
15208         * lily/font-metric.cc (text_stencil): new routine
15209
15210         * lily/all-font-metrics.cc (find_pango_font): new routine.
15211
15212         * lily/include/font-metric.hh (struct Font_metric): add
15213         text_stencil()
15214
15215         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
15216
15217 2004-12-22  Werner Lemberg  <wl@gnu.org>
15218
15219         Prepare glyph shapes for mf2pt1 conversion.
15220
15221         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
15222
15223         * mf/feta-toevallig.mf: Formatting.
15224         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
15225         ("Natural"): Fix paths to allow better postprocessing.
15226         (draw_meta_flat): Use `z3l' as additional point in path to get
15227         better conversion with mf2pt1.
15228         Other minor cleanups.
15229         ("3/4 Flat"): Add auxiliary points and modify path to replace
15230         `draw' with `fill'.
15231         ("Double Sharp"): Mirror path segments instead of picture elements
15232         to get a single outline.
15233         Modify path to replace `filldraw' with `fill'.
15234
15235 2004-12-22  Graham Percival  <gperlist@shaw.ca>
15236
15237         * input/test/unfold-all-repeats.ly: added file back.
15238
15239         * Documentation/user/notation.itely,
15240         Documentation/user/programming-interface.itely
15241         Documentation/user/changing-defaults.itely: fixed misc broken
15242         links to input/test/ files.
15243
15244 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15245
15246         * tex/texinfo.tex: Update.  We should not be distributing this,
15247         but since we do, use latest version.
15248
15249         * Documentation/user/macros.itexi: Comment-out \fetaflat,
15250         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
15251         macros for feta glyphs.
15252
15253 2004-12-22  Graham Percival  <gperlist@shaw.ca>
15254
15255         * Documentation/user/changing-defaults.itely: fix index for set.
15256
15257         * Documentation/user/converters.itely: added convert-ly bugs list
15258         from CVS.
15259
15260 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15261
15262         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
15263         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
15264         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
15265         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
15266
15267         * mf/GNUmakefile (pfa_warning): Use less broken check.
15268
15269         * python/lilylib.py (setup_environment): Remove cruft from
15270         GS_FONTPATH.
15271
15272         * configure.in: Bump mftrace requirement to 1.1.1.
15273
15274 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
15275
15276         * scm/output-svg.scm (beam): Use polygon.
15277
15278         * scm/lily-library.scm: Bugfix.
15279
15280         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
15281
15282         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
15283
15284 2004-12-19  Werner Lemberg  <wl@gnu.org>
15285
15286         Prepare glyph shapes for mf2pt1 conversion.
15287
15288         * mf/feta-eindelijk: Some formatting.
15289         (multi_rest_x, multi_beam_height): Removed.  Unused.
15290         ("Quarter rest"): Use `intersectiontimes' to create a single
15291         outline.
15292         (rest_crook): Removed.  Unused.
15293         (draw_rest_bulb): Return path (without filling).  Update callers.
15294         Simplified.
15295         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
15296         "128th rest"): Simplify `pat'.
15297         Create single outline.
15298
15299 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15300
15301         * mf/GNUmakefile (ALL_GEN_FILES):
15302         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
15303
15304         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
15305         function.
15306
15307 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15308
15309         * scm/output-texstr.scm (placebox): add routine
15310
15311         * VERSION (PACKAGE_NAME): release 2.5.4
15312
15313         * scm/framework-texstr.scm (output-framework): new file.  
15314
15315         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
15316         processing.
15317
15318         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
15319
15320         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
15321         rule.
15322
15323         * configure.in (gui_b): bump mftrace requirement to 1.1.0
15324
15325         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
15326
15327         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
15328
15329 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15330
15331         * scm/framework-svg.scm (dump-page): Implement landscape.
15332
15333 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15334
15335         * lily/main.cc (setup_paths): Add svg to search path.
15336
15337         * scm/output-svg.scm:
15338         * scm/framework-svg.scm: Add pageSet.  Update.
15339         (dump-fonts): New function.
15340         (output-framework): Use it.
15341
15342         * mf/GNUmakefile: 
15343         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
15344
15345 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15346
15347         * tex/lilyponddefs.tex: comment out new ifpdf code.
15348
15349 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15350
15351         * GNUmakefile.in: 
15352         * SConstruct (symlink): Replace afm by otf.
15353
15354         * scm/framework-gnome.scm (gnome-main): Remove invocation of
15355         ly:pango-add-afm-decoder.
15356
15357         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
15358
15359 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15360
15361         * scm/output-ps.scm (new-text): don't access t glyph for getting
15362         space dimension.
15363
15364         * ly/init.ly: warn about \version
15365
15366         * lily/lexer.ll: set version-seen?
15367
15368 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15369
15370         * scm/output-svg.scm (string->entities): Update.
15371
15372 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15373
15374         * lily/main.cc (setup_paths): replace afm by otf for path. 
15375
15376         * lily/pangofc-afm-decoder.cc: remove.
15377
15378         * lily/include/pangofc-afm-decoder.hh: remove.
15379
15380         * scm/framework-scm.scm (output-framework): new file.
15381
15382         * mf/GNUmakefile: remove SAUTER_FONTS.
15383         remove SVG/sodipodi hacks.
15384
15385         * scm/lily-library.scm (stderr): move stderr.
15386
15387         * mf/GNUmakefile: remove AFM support.
15388
15389         * buildscripts/mf-to-table.py (base): remove AFM support.
15390
15391         * lily/open-type-font.cc (design_size): use design_size
15392
15393 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
15394
15395         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
15396
15397 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15398
15399         * mf/GNUmakefile: Generate combined aybabtu info.
15400         * mf/aybabtu.pe.in (i): Load it.
15401
15402         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
15403         are not symbols.
15404
15405         * lily/include/open-type-font.hh (count): New method.
15406
15407         * mf/aybabtu.pe.in: Typo.
15408
15409         * Documentation/user/out/lilypond-internals.nexi (Scheme
15410         functions): Typo.
15411
15412         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
15413
15414 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15415
15416         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
15417         subfonts.
15418
15419         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
15420
15421         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
15422         (tex-font-command-raw): new function.
15423
15424         * lily/include/virtual-font-metric.hh (Module): remove file
15425
15426         * lily/virtual-font-metric.cc (Module): remove file.
15427         
15428
15429         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15430         (get_indexed_char): read bbox from lily table if present.
15431
15432 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15433
15434         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15435         aybabtu.subfonts
15436
15437         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15438         global glyphname. Enables more than 64 glyphs in the OTF.
15439
15440 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15441
15442         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15443         braces.
15444
15445         * lily/open-type-font.cc (design_size): Use 12 as default for
15446         design size.
15447
15448         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15449
15450         * mf/GNUmakefile: Generate aybabtu.
15451
15452         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15453
15454 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15455
15456         * scm/lily-library.scm (char->unicode-index): Remove.
15457
15458         * scm/output-gnome.scm (text): Bugfix for plain string input.
15459         Updates.
15460
15461         * scm/output-svg.scm (svg-font): Add weight to font selection.
15462
15463 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15464
15465         * Documentation/topdocs/INSTALL.texi (Top): Point to
15466         buildscripts/out/clean-fonts instead of
15467         buildscripts/clean-fonts.sh. 
15468
15469 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15470
15471         * input/regression/figured-bass.ly: attempt to clarify text.
15472
15473         * Documentation/user/notation.tely: add cindex for tag, attempt to
15474         add figured bass example.
15475
15476         * Documentation/user/changing-defaults: basic editing.
15477
15478 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15479
15480         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15481
15482         * lily/open-type-font.cc (LY_DEFINE): new function
15483         ly:font-sub-fonts
15484
15485         * lily/include/font-metric.hh (struct Font_metric): new method
15486         sub_fonts()
15487
15488         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15489         . with - in add.stem.
15490         
15491 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15492
15493         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15494         and fetaDynamic.
15495
15496         * lily/rest.cc (glyph_name): Change - to . .
15497
15498         * scm/output-gnome.scm (text): Hello world, again.
15499
15500         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15501
15502         * lily/modified-font-metric.cc (index_to_charcode): New method.
15503
15504         * lily/include/font-metric.hh (index_to_charcode): New function.
15505
15506         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15507         new function.
15508         (ly:font-glyph-to-index): Remove.
15509
15510 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15511
15512         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15513
15514         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15515
15516         * lily/open-type-font.cc (load_scheme_table): new function
15517
15518         * lily/dots.cc (print): replace - 
15519
15520         * lily/open-type-font.cc (attachment_point): new function.
15521         (load_table): read LILC table
15522
15523         * buildscripts/gen-bigcheese-scripts.py (Module): new
15524         file. Generate FF scripts.
15525
15526         * mf/feta-din10.mf: idem.
15527
15528         * mf/feta-nummer10.mf: remove mf files.
15529
15530         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15531
15532 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15533
15534         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15535
15536         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15537         compatibility.
15538
15539 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15540
15541         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15542         design-size and units_per_EM.
15543
15544         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15545
15546 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15547
15548         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15549         does not crash fontforge.
15550
15551         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15552         PUA.
15553
15554 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15555
15556         * scm/framework-ps.scm (ps-embed-cff): new function.
15557
15558         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15559
15560 2004-12-12  Werner Lemberg  <wl@gnu.org>
15561
15562         * mf/bigcheese.pe.in: Add PUA mapping.
15563         Don't create Type 42 but bare CFF font.
15564
15565 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15566
15567         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15568         within canvas boundaries.
15569
15570         * mf/merge.pe.in: Set font names, version, license GPL.
15571
15572         * make/substitute.make: Add FONTFORGE.
15573
15574         * config.make.in (FONTFORGE): Add.
15575
15576         * configure.in (gui_b): Use PATH_PROG for fontforge.
15577
15578 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15579
15580         * scm/define-markup-commands.scm: add baseline-skip to info
15581         about \column.
15582
15583 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15584
15585         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15586
15587         * scm/output-gnome.scm (named-glyph): Use it.
15588
15589         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15590
15591         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15592         (upper_string, lower_string, reverse_string): Remove.
15593
15594         * configure.in (fontforge): Reinstate version check.
15595
15596         * ly/engraver-init.ly: Fix clef glyph names.
15597
15598         * lily/time-signature.cc (special_time_signature): Fix fraction
15599         glyph names.
15600
15601 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15602
15603         * mf/merge.pe: new file.
15604
15605         * lily/freetype.cc: new file.
15606
15607         * lily/include/open-type-font.hh (class Open_type_font): new file.
15608
15609         * lily/include/freetype.hh: new file.
15610
15611         * lily/open-type-font.cc: new file.
15612
15613         * lily/all-font-metrics.cc (find_otf): new function.
15614
15615 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15616
15617         * lily/time-signature.cc (special_time_signature): Fix.
15618
15619         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15620         GTK2 before checking for pango.  Fixes -fgnome.
15621
15622         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15623         Scheme name.
15624
15625         * scm/define-markup-commands.scm:
15626         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15627
15628         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15629
15630         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15631         date versions.  Fixes configure.
15632         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15633         argument.
15634
15635 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15636
15637         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15638         names in .enc
15639
15640         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15641
15642 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15643
15644         * Documentation/user/changing-defaults.itely: add info about
15645         make-dynamic-script
15646
15647         * Documentation/user/notation.itely: add link in dynamics to
15648         section about make-dynamic-script.
15649
15650 2004-12-09  Christian hitz  <chhitz@gmx.net>
15651
15652         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15653
15654 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15655
15656         * buildscripts/mf-to-table.py (parse_logfile): use . for
15657         concatting name and group.
15658         (parse_logfile): use M for Minus (negative.)
15659
15660         * lily/include/type-swallow-translator.hh
15661         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15662
15663         * lily/*.cc: cosmetics around = sign.
15664
15665         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15666         lyric spacing on the penultimate column.
15667
15668 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15669
15670         * configure.in:
15671         * lily/accidental-placement.cc:
15672         * lily/bar-line.cc:
15673         * lily/beam-concave.cc:
15674         * lily/beam-quanting.cc:
15675         * lily/beam.cc:
15676         * lily/bezier-bow.cc:
15677         * lily/bezier.cc:
15678         * lily/break-align-interface.cc:
15679         * lily/custos.cc:
15680         * lily/dimension-cache.cc:
15681         * lily/dot-column.cc:
15682         * lily/font-metric.cc:
15683         * lily/font-select.cc:
15684         * lily/gourlay-breaking.cc:
15685         * lily/grob-property.cc:
15686         * lily/grob.cc:
15687         * lily/lily-guile.cc:
15688         * lily/line-spanner.cc:
15689         * lily/lookup.cc:
15690         * lily/lyric-extender.cc:
15691         * lily/lyric-hyphen.cc:
15692         * lily/mensural-ligature.cc:
15693         * lily/midi-def.cc:
15694         * lily/misc.cc:
15695         * lily/note-collision.cc:
15696         * lily/note-column.cc:
15697         * lily/note-head.cc:
15698         * lily/paper-outputter.cc:
15699         * lily/percent-repeat-item.cc:
15700         * lily/rest-collision.cc:
15701         * lily/side-position-interface.cc:
15702         * lily/simple-spacer.cc:
15703         * lily/slur-configuration.cc:
15704         * lily/slur-scoring.cc:
15705         * lily/slur.cc:
15706         * lily/spaceable-grob.cc:
15707         * lily/spacing-spanner.cc:
15708         * lily/spanner.cc:
15709         * lily/staff-symbol-referencer.cc:
15710         * lily/stem.cc:
15711         * lily/stencil.cc:
15712         * lily/system-start-delimiter.cc:
15713         * lily/system.cc:
15714         * lily/text-item.cc:
15715         * lily/tie.cc:
15716         * lily/tuplet-bracket.cc:
15717         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15718         <cmath> beacause isinf/isnan is undefined in <cmath>
15719
15720 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15721
15722         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15723
15724 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15725
15726         * VERSION: release 2.5.3
15727         
15728 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15729
15730         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15731
15732 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15733
15734         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15735
15736         * lily/note-head.cc (internal_print): always try the "s" head if
15737         u/d not found.
15738
15739         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15740
15741 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15742
15743         * mf/parmesan-heads.mf (overdone_heads): typos.
15744
15745 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15746
15747         * lily/parser.yy (markup): in markups, { .. } without command
15748         before are also flattened, ie \line must be explicitely used.
15749
15750         * Documentation/user/changing-defaults.itely:
15751         * Documentation/user/notation.itely: 
15752         * input/wilhelmus.ly: 
15753         * input/regression/instrument-name-markup.ly: 
15754         * input/regression/markup-score.ly: 
15755         * input/regression/new-markup-scheme.ly: 
15756         * input/regression/new-markup-syntax.ly: 
15757         * input/test/coriolan-margin.ly: use \line in markups where
15758         appropriate
15759         
15760 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15761
15762         * scm/new-markup.scm (map-markup-command-list): helper function
15763         used in parser.yy to map markup commands on a markup list.
15764
15765         * lily/parser.yy: get rid off < > in markups by treating { } as
15766         real lists.
15767
15768         * lily/lexer.ll: remove < > from markup lexer mode.
15769
15770         * scripts/convert-ly.py (conv): add rule for converting 
15771         \markup < > to \markup { }
15772
15773         * ly/titling-init.ly: 
15774         * input/test/coriolan-margin.ly: 
15775         * input/regression/new-markup-syntax.ly: 
15776         * input/regression/new-markup-scheme.ly: 
15777         * input/regression/multi-measure-rest-text.ly: 
15778         * input/regression/markup-stack.ly: 
15779         * input/regression/markup-score.ly: 
15780         * input/regression/instrument-name-markup.ly: 
15781         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15782         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15783         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15784         * input/wilhelmus.ly: 
15785         * Documentation/user/notation.itely: 
15786         * Documentation/user/music-glossary.tely: 
15787         * Documentation/user/changing-defaults.itely: change < > to { } in
15788         markups
15789
15790 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15791
15792         * lily/accidental-placement.cc (position_accidentals): shortcut if
15793         no accidentals to place.
15794
15795 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15796
15797         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15798         typo s/ly:dimension ?/ly:dimension?/
15799
15800         * input/regression/lily-in-scheme.ly: 
15801         * input/regression/music-function.ly: 
15802         * ly/spanners-init.ly (assertBeamSlope): 
15803         * scm/music-functions.scm (def-grace-function): add the paper
15804         argument to music function definitions.
15805
15806 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15807
15808         * lily/moment.cc (LY_DEFINE):
15809         ly:moment-main-{denominator,numberator}, new function.
15810
15811         * lily/score-engraver.cc (typeset_all): assign to column on basis
15812         of axis-group-parent-X setting.
15813
15814         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15815         add_element() on basis of axis-group-parent-Y setting.
15816
15817         * lily/grob.cc: add axis-group-parent-{XY} properties.
15818
15819         * input/regression/spacing-stick-out.ly: new file.
15820
15821         * lily/simple-spacer.cc (add_columns): use binary search for
15822         setting column rods. Changes O(n^2) to O(n log(n)) for
15823         constructing spacing problem from columns.
15824         (add_columns): read allow-outside-line to make sure no texts stick
15825         out.
15826         (solve): Simple_spacer::is_active() only determines
15827         satisfies_constraints_ for non-ragged typesetting.
15828
15829         * lily/simultaneous-music.cc (to_relative_octave): only set
15830         old_relative_used if return pitch actually changed.
15831
15832         * scm/define-context-properties.scm
15833         (all-user-translation-properties): change to match implementation.
15834
15835         * python/lilylib.py: Replace re.match by re.search and adds "-c
15836         showpage" to the gs command line (Johannes Schindelin)
15837
15838         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15839         before processing. Prevents crash when inf is in the extent.
15840
15841         * scm/define-markup-commands.scm (note-by-number): add "s" to
15842         "noteheads-" glyphname.
15843  
15844         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15845         music function as well.
15846         
15847 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15848
15849         * VERSION: release 2.5.2
15850
15851         * Documentation/user/changing-defaults.itely (Creating titles):
15852         add breakbefore variable.
15853
15854         * lily/paper-book.cc (set_system_penalty): new function. Set
15855         penalty_ based on breakBefore setting
15856
15857         * lily/context-specced-music-iterator.cc (construct_children):
15858         interpret special context id $uniqueContextId 
15859
15860         * lily/context.cc (create_unique_context): new method. Move
15861         creation of unique (\new) contexts into interpreting phase. This
15862         makes
15863
15864           foo= \new Staff ..
15865           << \foo \foo >>
15866
15867         produce 2 staves.
15868         
15869
15870         * scm/define-music-properties.scm (all-music-properties): add
15871         quoted-voice-direction
15872
15873         * ly/music-functions-init.ly: killCues function.
15874
15875         * scm/music-functions.scm (cue-substitute): move creation of voice
15876         contexts further to the back. 
15877
15878 2004-11-25  Werner Lemberg  <wl@gnu.org>
15879
15880         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15881         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15882
15883 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15884
15885         * buildscripts/guile-gnome.sh: Fixed typo.
15886
15887 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15888
15889         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15890
15891         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15892
15893         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15894         to regular engraver. 
15895
15896 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15897
15898         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15899
15900 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15901
15902         * scm/define-markup-commands.scm (fill-line): Typo.
15903
15904         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15905         and newer.
15906
15907 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15908
15909         * ly/dynamic-scripts-init.ly: Fixed typo.
15910
15911 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15912
15913         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15914         note-head, to have different attachment points for up and down.
15915
15916         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15917
15918         * mf/feta-generic.mf (else): remove solfa.
15919
15920         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15921
15922         * scm/define-context-properties.scm
15923         (all-user-translation-properties): add shapeNoteStyles property.
15924
15925         * lily/shape-note-heads-engraver.cc (process_music): new file.
15926
15927         * lily/event.cc (transpose): call Event::transpose() for
15928         transposing the tonic.
15929
15930 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15931
15932         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15933         Unicode/OpenType and AFM.
15934
15935         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15936
15937 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15938
15939         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15940
15941         * lily/context.cc (Context): unprotect key from ctor.
15942
15943         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15944         is '()
15945         (stack-stencils): idem.
15946
15947         * Documentation/user/changing-defaults.itely (Creating titles):
15948         document new title layout options.
15949
15950         * lily/parser.yy (lilypond_header_body): copy previous
15951         $globalheader if present.
15952
15953         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15954         ly:module-copy
15955         
15956         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15957
15958         * scm/titling.scm: remove old titling functions
15959
15960         * lily/stencil.cc (translate): remove absolute dimension.
15961
15962         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15963         via markup.
15964
15965         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15966         field from user-supplied markup
15967
15968         * scm/define-markup-commands.scm (on-the-fly): new markup
15969         command. Enter SCM markup procedure directly in Scheme.
15970         (fromproperty): new markup command. Read markup from props argument.
15971
15972         * scm/titling.scm (marked-up-title): create title via
15973         user-specified markup. 
15974
15975         * scm/define-markup-commands.scm (column): remove empty stencils
15976         from column.
15977
15978         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15979         not have side-effect of creating variable stub.
15980
15981         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15982
15983 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15984
15985         * scm/encoding.scm (coding-alist): 
15986         * scm/font.scm (add-ec-fonts):
15987         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15988         Extended-TeX-Font-Encoding---Latin.
15989
15990         * lily/side-position-interface.cc (general_side_position): Add
15991         actual offset to error message (avoid constant error messages).
15992
15993         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15994         block.
15995
15996         * lily/font-select.cc (select_encoded_font)
15997         (get_font_by_mag_step, get_font_by_design_size): 
15998         * lily/modified-font-metric.cc (Modified_font_metric): 
15999         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
16000
16001         * scm/encoding.scm (coding-alist): Add fetaDynamic.
16002         (read-encoding-file): Bugfix: do not require space after bracket.
16003
16004         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
16005         these do not exist.
16006
16007 2004-11-20  Graham Percival  <gperlist@shaw.ca>
16008
16009         * Documentation/user/notation.itely: added info about typesetting
16010         boxed bar numbers.
16011
16012 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16013
16014         * flower/interval.cc (T_to_string): gcc4 fixes.
16015
16016         * scm/define-markup-commands.scm (fill-line): use
16017         stack-stencils. This fixes problems with putting already centered
16018         stencils in a line.
16019
16020         * VERSION: release 2.5.1
16021
16022         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
16023
16024 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16025
16026         * input/example-[1-3].ly: simplify.
16027
16028         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
16029
16030         * scm/output-ps.scm (new-text): new function. Use glyphshow to
16031         show glyphs.
16032
16033         * scm/encoding.scm (decode-byte-string): new function.
16034
16035         * scripts/convert-ly.py (conv): add warning about
16036         set-global-staff-size.
16037
16038         * Doxyfile: add. 
16039
16040         * scripts/convert-ly.py (conv): add raggedlastbottom rule
16041         (conv): warn for TextSpanner split.
16042         (conv): warn for textheight.
16043
16044 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
16045
16046         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
16047         building the documentation, info with images are installed.
16048         (final-install): Fix description.  Mention sourcing of login
16049         scripts (instead of running).
16050
16051 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
16052
16053         * Debian lmodern support.  Note that LilyPond will issue warnings
16054         
16055             no such encoding: "FontSpecific"
16056
16057           The font selection mechanism wants to get the encoding from the
16058           font itself, but the idea of lmodern is that it is usable with
16059           different encodings, ie, Lily should get the encoding from the
16060           font tree, rather than the font itself.  This would require some
16061           more work.
16062         
16063         * configure.in: Test for and accept lmodern if EC fonts not found.
16064
16065         * scm/framework-tex.scm (font-load-command): TeX font name
16066         mangling for latin1 encoded cork-lm fonts.
16067         (convert-to-ps): Load lm.map if available.
16068
16069         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
16070         available.
16071
16072         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
16073
16074         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
16075         available.
16076
16077         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
16078         path for absolute file name, that is silly.
16079
16080         * lily/score-engraver.cc (initialize): 
16081
16082         * Documentation/user/GNUmakefile (local-install-info): Invoke
16083         install-info --remove first.
16084
16085         * #include cleanup (Andreas Scherer).
16086
16087 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
16088
16089         * input/test/script-abbreviations.ly: fix typos.
16090
16091 2004-11-17  Werner Lemberg  <wl@gnu.org>
16092
16093         * python/lilylib.py (options_help_str): Support pretty-printing of
16094         newlines in fourth element of option description.
16095
16096         * scripts/lilypond-book.py (option_definitions): Use new lilylib
16097         feature.
16098         Sort options.
16099
16100         * Documentation/user/lilypond-book.itely: Finish update.
16101
16102 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
16103
16104         * Documentation/user/macros.itexi: Add comment about \command.
16105
16106         * Documentation/user/lilypond.tely:
16107         * Documentation/user/lilypond-book.itely: Fix names of lilypond
16108         and lilypond-book nodes, so that `info lilypond' visits the manual
16109         at top level, and `info lilypond-book' visits the lilypond-book
16110         section.
16111
16112         * Documentation/user/GNUmakefile (local-install-info): Fix rules
16113         and packager messages.
16114
16115         * lily/pangofc-afm-decoder.cc: Update test.
16116
16117 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
16118
16119         * scm/lily-library.scm (char->unicode-index): New function.
16120
16121         * scm/output-gnome.scm: 
16122         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
16123
16124         * Proper naming of file name throughout; s/filename/file[-_]name/.
16125
16126         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
16127
16128         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
16129
16130 2004-11-16  Werner Lemberg  <wl@gnu.org>
16131
16132         * scripts/lilypond-book.py: The Lord has commanded me to use only
16133         tabs for indentation.  Your humble servant obeys.
16134
16135 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
16136
16137         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
16138         including font, if LilyPond-feta font is only feta font in path.
16139
16140         * scm/output-gnome.scm (text): Revert to file name of font if font
16141         has no name.  Fixes ec font selection.
16142         (char): Bugfix: do not utf8 twice.  Fixes clefs.
16143
16144         * scm/framework-svg.scm:
16145         * scm/output-svg.scm: New file.  TODO: figure out how to
16146         do character by index in font.
16147
16148         * scm/output-sodipodi.scm: Remove.
16149
16150         * scm/output-ps.scm (stem): Remove.
16151
16152 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
16153
16154         * scm/output-gnome.scm (beam): New function.
16155         (slur): Round corners.
16156         (round-filled-box): Round corners.
16157
16158 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16159
16160         * scm/output-gnome.scm (beam): add function.
16161         (draw-line): new routine.
16162         (dashed-line): stub; call draw-line
16163         (polygon): new routine.
16164
16165 2004-11-15  Werner Lemberg  <wl@gnu.org>
16166
16167         * Documentation/user/lilypond-book.itely: Revise section on
16168         lilypond-book options.
16169         Other minor fixes.
16170
16171         * scripts/lilypond-book.py: Change indentation to 4.
16172         Minor formatting.
16173
16174 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16175
16176         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
16177         grobs that have tweaks specced.
16178         
16179 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
16180
16181         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
16182
16183 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
16184
16185         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
16186         actual char #, not 0 based index.
16187
16188         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
16189
16190         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
16191         Warning: do make -C mf clean.
16192
16193         * lily/context-property.cc: Compile fix.
16194
16195         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
16196         Grok ec-fonts, braces and dynamics.
16197
16198         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
16199
16200 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16201
16202         * lily/include/tweak-registration.hh: new file.
16203
16204         * lily/tweak-registration.cc: new file.
16205
16206         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
16207         saving tweaks.
16208
16209         * scm/output-gnome.scm (text): comment dribble.
16210
16211 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
16212
16213         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
16214
16215         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
16216         path-def before using.  Fixes muchtomany slurs in wrong places
16217         bug.
16218
16219 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16220
16221         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
16222
16223         * lily/include/object-key-undumper.hh (Module): new file.
16224
16225         * lily/object-key-undumper.cc (Module): New file. Deserialize
16226         keys. SCM bindings
16227
16228         * lily/object-key-dumper.cc (Object_key_dumper): idem.
16229         Provide SCM bindings.
16230
16231         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
16232         new file. Serialize object keys.
16233         
16234         * lily/object-key.cc (dump): new function.
16235         (as_scheme): new virtual function
16236         (undump): new function
16237         (undumpers): new table.
16238
16239         * lily/include/global-context.hh (Context): take \score key upon init.
16240
16241         * lily/object-key-dumper.cc (serialize_key): new file.
16242
16243         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
16244
16245         * lily/lily-lexer.cc: remove \quote.
16246
16247         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
16248
16249         * lily/context.cc (Context): take key argument in ctor.
16250         (create_context): new function
16251
16252         * lily/grob.cc (Grob): take key argument in ctor.  
16253
16254         * lily/lilypond-key.cc (do_compare): new file.
16255
16256         * lily/object-key.cc (Object_key): new file.
16257
16258         * lily/include/object-key.hh (class Object_key): new file.
16259
16260         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
16261
16262 2004-11-13  Graham Percival  <gperlist@shaw.ca>
16263
16264         * Documentation/user/lilypond-book.itely: add small warning about
16265         noindent default in lilypond-book.
16266
16267         * Documentation/user/converters.itely: add examples for convert-ly.
16268
16269         * Documentation/user/examples.itely: change version string in templates
16270         to 2.4.0.
16271
16272 2004-11-12  Karl Hammar  <karl@aspodata.se>
16273
16274         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
16275         cmdline, use xargs instead (backportme)
16276
16277 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
16278         
16279         * Documentation/user/: Numerous fixes in the user manual.
16280
16281 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16282
16283         * lily/parser.yy (re_rhythmed_music): search music expression for
16284         context-id, surround by \new Voice if not found. Fixes:
16285         addlyrics-second-staff.ly
16286
16287         * VERSION: 2.5.0 released.
16288         
16289 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
16290
16291         * Documentation/index.html.in: Fix url to one big page.  (backportme)
16292
16293         * Documentation/user/GNUmakefile: Separate rules for split and
16294         unsplit html documents.  Remove perl massaging.  (backportme)
16295
16296 2004-11-11  Graham Percival  <gperlist@shaw.ca>
16297
16298         * Documentation/user/lilypond-book.itely: add short warning about
16299         \lilypond{} in LaTeX docs.
16300
16301 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
16302
16303         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
16304         found.  (backportme)
16305
16306         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
16307         version requirement.  (backportme)
16308
16309         * configure.in: Be explicit about old versions of
16310         ec-fonts-mtraced.  (backportme)
16311
16312         * lily/context-selector.cc (set_tweaks): New function.
16313         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
16314         web with -DTWEAK.
16315
16316         * Documentation/user/introduction.itely (Automated engraving):
16317         Remove fragment option.  Fixes web.
16318
16319         * lily/context-property.cc (make_item_from_properties):
16320         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
16321         #ifdef.
16322
16323         * scm/define-context-properties.scm
16324         (all-internal-translation-properties): Add tweakRank and tweakCount.
16325
16326         * lily/grob.cc: 
16327         * scm/define-grob-properties.scm (all-internal-grob-properties):
16328         Add tweak-rank and tweak-count.
16329
16330 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16331
16332         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
16333         New function.
16334         (text): Use them.
16335
16336         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
16337         animated/opaque grob dragging tweaks.
16338
16339         * buildscripts/guile-gnome.sh: Update.
16340
16341 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
16342
16343         * scm/define-grobs.scm (all-grob-descriptions): Added
16344         line-interface to the LigatureBracket object.
16345
16346 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16347
16348         * scm/framework-gnome.scm (item-event): Support non-animated mouse
16349         dragging tweaks.
16350
16351         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
16352
16353         * lily/context-selector.cc (store_context): New function.
16354
16355         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
16356         (store_grob): New function.
16357         (identify_grob): Add Moment parameter.
16358
16359         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
16360         exists.
16361
16362         * scm/framework-gnome.scm (save-tweaks): Write as alist.
16363
16364 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
16365
16366         * scm/framework-gnome.scm (item-event): Print grob id.
16367         (save-tweaks): New function.
16368         (tweak): New funtion.
16369         (item-event): Use it, bound to arrow keys.
16370
16371         * lily/context-property.cc (make_item_from_properties): Register grob.
16372         * lily/context.cc (add_context): Register context.
16373
16374         * lily/include/context-selector.hh:
16375         * lily/include/grob-selector.hh:
16376         * lily/context-selector.cc:
16377         * lily/grob-selector.cc: New file.
16378
16379 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16380
16381         * lily/slur.cc: add 'positions to interface
16382
16383         * lily/main.cc: reinstate PS as standard output format. 
16384
16385         * scm/framework-tex.scm (output-preview-framework): print systems
16386         up to first non title system.
16387
16388         * lily/grace-engraver.cc (start_translation_timestep): split
16389         scm_cadddr
16390         
16391 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16392
16393         * lily/quote-iterator.cc (Module): remove old quote-iterator
16394
16395         * scm/define-music-types.scm (music-descriptions): move
16396         NewQuoteMusic over QuoteMusic
16397
16398         * Documentation/user/notation.itely (Formatting cue notes): use
16399         \cueDuring.
16400
16401         * lily/new-quote-iterator.cc (quote_ok): new function.
16402
16403         * input/regression/quote-cue-during.ly: new file.
16404
16405         * input/regression/quote-grace.ly: new file.
16406
16407         * scm/define-context-properties.scm (Module): change definition of
16408         graceSettings
16409
16410         * lily/context-property.cc (Module): rename from
16411         translator-property.cc
16412
16413         * lily/context.cc (context_name_symbol): new function
16414
16415         * lily/grace-engraver.cc: new file. Set properties for grobs based
16416         on the grace-ness of now_moment().
16417
16418         * scm/music-functions.scm (add-grace-property): use list
16419         iso. vector for graceSettings
16420         remove set-{start,stop}-grace-properties. 
16421
16422         * lily/new-quote-iterator.cc (construct_children): set
16423         quote_outlet_ if no quoted-context-{id,type} specified.
16424
16425         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
16426
16427         * lily/parser.yy (command_element): remove \quote.
16428
16429         * ly/music-functions-init.ly (location): add quoteDuring music
16430         function. 
16431
16432         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
16433         optional semicolon. (backportme)
16434
16435 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16436
16437         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16438         need to link to GUILE et al.
16439
16440 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16441
16442         * scm/define-music-properties.scm (all-music-properties): add
16443         quoted-context-type, quoted-context-id.
16444
16445         * scm/lily.scm (type-check-list): new function.
16446         
16447         * scm/lily-library.scm: new file. Generic library routines.
16448
16449         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16450         parser.
16451
16452         * ly/music-functions-init.ly: add quoteDuring function.
16453
16454         * lily/include/music-iterator.hh (class Music_iterator): rename
16455         set_translator -> set_context
16456
16457         * lily/parser.yy (Generic_prefix_music_scm): add
16458         MUSIC_FUNCTION_SCM_SCM_MUSIC
16459
16460         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16461
16462         * scm/framework-tex.scm (header): sanitize TeX paper size.
16463         (backportme)
16464
16465 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16466
16467         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16468
16469         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16470
16471         * scm/framework-tex.scm (font-load-command): Use T1 if no
16472         font-encoding set.  (backportme)
16473
16474         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16475         exists before converting.  (backportme)
16476
16477         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16478         exists before converting.  (backportme)
16479         (convert-to-ps): Remove .ps file if it exists before
16480         converting.  (backportme)
16481
16482         * lily/lexer.ll: Remove extra progress newline, use present tense.
16483
16484         * scm/paper.scm (paper-alist): public.
16485         * scm/framework-tex.scm (convert-to-ps):
16486         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16487         command line.
16488
16489 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16490
16491         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16492
16493         * lily/recording-group-engraver.cc (derived_mark): mark
16494         now_events_. (backportme)
16495
16496 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16497
16498         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16499
16500         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16501         invoking latex. (backportme.)
16502
16503         * lily/stem.cc (off_callback): center stems for all rest stems.
16504
16505 2004-11-05  Werner Lemberg  <wl@gnu.org>
16506
16507         * Documentation/user/lilypond.tely: Add more guidelines for writing
16508         lilypond texinfo documents.
16509
16510 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16511
16512         * Documentation/index.html.in: remove <hr>.
16513
16514         * THANKS: change 2.3 to 2.4.
16515
16516 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16517
16518         * scm/output-gnome.scm: More fontconfig comment.
16519
16520 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16521
16522         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16523         <package> directory in $(builddir)/share according with
16524         PACKAGE_NAME defined in the VERSION file.
16525
16526 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16527
16528         * lily/beam.cc (rest_collision_callback): use local beam
16529         multiplicity.
16530
16531         * input/regression/stem-stemlet.ly: new file.
16532
16533         * lily/stem.cc (add_head): store rests as well.
16534
16535         * scm/define-grob-properties.scm (all-user-grob-properties): add
16536         stemlet-length
16537
16538         * lily/stem.cc: store rests as well.
16539         
16540         * input/regression/new-slur.ly: mention forcing.
16541
16542 2004-11-04  Werner Lemberg  <wl@gnu.org>
16543
16544         * Documentation/user/*: A new round of layout fixes and document
16545         structure cleanup.
16546
16547 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16548
16549         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16550
16551 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16552
16553         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16554
16555 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16556
16557         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16558
16559         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16560
16561         * lily/main.cc (main): Invoke identify.
16562
16563         * scm/lily.scm (postscript->pdf): Remove progress newline.
16564         Write progress to stderr.
16565
16566         * lily/paper-book.cc (output): Remove progress newline.
16567
16568         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16569         gettext on user messages, and remove whitespace.
16570
16571         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16572
16573         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16574         argv[0] (Thomas Scharkowski).
16575
16576         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16577         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16578         for ec-fonts-mtraced.
16579
16580         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16581         --srcdir build (Bertalan).
16582
16583         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16584         headers and library too (Laura Conrad).
16585
16586         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16587         package for guile too (Laura Conrad).
16588
16589         * lily/main.cc (usage): Typo.
16590
16591 2004-11-02  Werner Lemberg  <wl@gnu.org>
16592
16593         * Documentation/user/notation.ly: More fixes to improve appearance.
16594
16595         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16596         better output for multicolumn tables.
16597
16598 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16599
16600         * lily/main.cc (dir_info): Fixed typo in the printouts.
16601
16602 2004-11-01  Werner Lemberg  <wl@gnu.org>
16603
16604         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16605         of output.
16606         Set `per_line' to 2; replace hard-coded value with it.
16607
16608         * Documentation/user/*: Many fixes to improve appearance of
16609         printed manual.
16610
16611 2004-11-01  Werner Lemberg  <wl@gnu.org>
16612
16613         * Documentation/user/changing-defaults.itely,
16614         Documentation/user/notation.ly,
16615         Documentation/user/programming-interface.itely: Use @/.
16616         Fix formatting of some lilypond snippets and tables.
16617
16618         * scripts/lilypond-book.py (compose_ly): Provide useful default
16619         for LINEWIDTH in `override'.
16620
16621 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16622
16623         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16624
16625 2004-10-31  Werner Lemberg  <wl@gnu.org>
16626
16627         Resetting @exampleindent to `5' gives ugly results with texinfo's
16628         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16629         (if not quoting) to change @exampleindent only locally.
16630
16631         * scripts/lilypond-book.py (NOQUOTE): New variable.
16632         (output) [LATEX]: Remove AFTER and BEFORE.
16633         [TEXINFO]: Remove AFTER and BEFORE.
16634         Fix QUOTE and VERBATIM pattern.
16635         Add NOQUOTE pattern.
16636         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16637         and BEFORE.
16638         [output_texinfo]: Use NOQUOTE.
16639
16640 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16641
16642         * Documentation/user/changing-defaults.itely: clarify paper
16643         size commands with correct info.
16644
16645         * Documentation/user/lilypond-book.itely: add more docs for
16646         filename extensions.
16647
16648 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16649
16650         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16651         (PATCH_LEVEL): start 2.5.0.
16652
16653 #Local variables:
16654 #coding: utf-8
16655 #End:
16656